ahmad-module 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of ahmad-module might be problematic. Click here for more details.
- package/.bin/sshpk-conv +12 -0
- package/.bin/sshpk-conv.cmd +17 -0
- package/.bin/sshpk-conv.ps1 +28 -0
- package/.bin/sshpk-sign +12 -0
- package/.bin/sshpk-sign.cmd +17 -0
- package/.bin/sshpk-sign.ps1 +28 -0
- package/.bin/sshpk-verify +12 -0
- package/.bin/sshpk-verify.cmd +17 -0
- package/.bin/sshpk-verify.ps1 +28 -0
- package/.bin/uuid +12 -0
- package/.bin/uuid.cmd +17 -0
- package/.bin/uuid.ps1 +28 -0
- package/ajv/.tonic_example.js +20 -0
- package/ajv/LICENSE +22 -0
- package/ajv/README.md +1497 -0
- package/ajv/dist/ajv.bundle.js +7189 -0
- package/ajv/dist/ajv.min.js +3 -0
- package/ajv/dist/ajv.min.js.map +1 -0
- package/ajv/lib/ajv.d.ts +397 -0
- package/ajv/lib/ajv.js +506 -0
- package/ajv/lib/cache.js +26 -0
- package/ajv/lib/compile/async.js +90 -0
- package/ajv/lib/compile/equal.js +5 -0
- package/ajv/lib/compile/error_classes.js +34 -0
- package/ajv/lib/compile/formats.js +142 -0
- package/ajv/lib/compile/index.js +387 -0
- package/ajv/lib/compile/resolve.js +270 -0
- package/ajv/lib/compile/rules.js +66 -0
- package/ajv/lib/compile/schema_obj.js +9 -0
- package/ajv/lib/compile/ucs2length.js +20 -0
- package/ajv/lib/compile/util.js +239 -0
- package/ajv/lib/data.js +49 -0
- package/ajv/lib/definition_schema.js +37 -0
- package/ajv/lib/dot/_limit.jst +113 -0
- package/ajv/lib/dot/_limitItems.jst +12 -0
- package/ajv/lib/dot/_limitLength.jst +12 -0
- package/ajv/lib/dot/_limitProperties.jst +12 -0
- package/ajv/lib/dot/allOf.jst +32 -0
- package/ajv/lib/dot/anyOf.jst +46 -0
- package/ajv/lib/dot/coerce.def +51 -0
- package/ajv/lib/dot/comment.jst +9 -0
- package/ajv/lib/dot/const.jst +11 -0
- package/ajv/lib/dot/contains.jst +55 -0
- package/ajv/lib/dot/custom.jst +191 -0
- package/ajv/lib/dot/defaults.def +47 -0
- package/ajv/lib/dot/definitions.def +203 -0
- package/ajv/lib/dot/dependencies.jst +79 -0
- package/ajv/lib/dot/enum.jst +30 -0
- package/ajv/lib/dot/errors.def +194 -0
- package/ajv/lib/dot/format.jst +106 -0
- package/ajv/lib/dot/if.jst +73 -0
- package/ajv/lib/dot/items.jst +98 -0
- package/ajv/lib/dot/missing.def +39 -0
- package/ajv/lib/dot/multipleOf.jst +22 -0
- package/ajv/lib/dot/not.jst +43 -0
- package/ajv/lib/dot/oneOf.jst +54 -0
- package/ajv/lib/dot/pattern.jst +14 -0
- package/ajv/lib/dot/properties.jst +245 -0
- package/ajv/lib/dot/propertyNames.jst +52 -0
- package/ajv/lib/dot/ref.jst +85 -0
- package/ajv/lib/dot/required.jst +108 -0
- package/ajv/lib/dot/uniqueItems.jst +62 -0
- package/ajv/lib/dot/validate.jst +276 -0
- package/ajv/lib/dotjs/README.md +3 -0
- package/ajv/lib/dotjs/_limit.js +163 -0
- package/ajv/lib/dotjs/_limitItems.js +80 -0
- package/ajv/lib/dotjs/_limitLength.js +85 -0
- package/ajv/lib/dotjs/_limitProperties.js +80 -0
- package/ajv/lib/dotjs/allOf.js +42 -0
- package/ajv/lib/dotjs/anyOf.js +73 -0
- package/ajv/lib/dotjs/comment.js +14 -0
- package/ajv/lib/dotjs/const.js +56 -0
- package/ajv/lib/dotjs/contains.js +81 -0
- package/ajv/lib/dotjs/custom.js +228 -0
- package/ajv/lib/dotjs/dependencies.js +168 -0
- package/ajv/lib/dotjs/enum.js +66 -0
- package/ajv/lib/dotjs/format.js +150 -0
- package/ajv/lib/dotjs/if.js +103 -0
- package/ajv/lib/dotjs/index.js +33 -0
- package/ajv/lib/dotjs/items.js +140 -0
- package/ajv/lib/dotjs/multipleOf.js +80 -0
- package/ajv/lib/dotjs/not.js +84 -0
- package/ajv/lib/dotjs/oneOf.js +73 -0
- package/ajv/lib/dotjs/pattern.js +75 -0
- package/ajv/lib/dotjs/properties.js +335 -0
- package/ajv/lib/dotjs/propertyNames.js +81 -0
- package/ajv/lib/dotjs/ref.js +124 -0
- package/ajv/lib/dotjs/required.js +270 -0
- package/ajv/lib/dotjs/uniqueItems.js +86 -0
- package/ajv/lib/dotjs/validate.js +482 -0
- package/ajv/lib/keyword.js +146 -0
- package/ajv/lib/refs/data.json +17 -0
- package/ajv/lib/refs/json-schema-draft-04.json +149 -0
- package/ajv/lib/refs/json-schema-draft-06.json +154 -0
- package/ajv/lib/refs/json-schema-draft-07.json +168 -0
- package/ajv/lib/refs/json-schema-secure.json +94 -0
- package/ajv/package.json +106 -0
- package/ajv/scripts/.eslintrc.yml +3 -0
- package/ajv/scripts/bundle.js +61 -0
- package/ajv/scripts/compile-dots.js +73 -0
- package/ajv/scripts/info +10 -0
- package/ajv/scripts/prepare-tests +12 -0
- package/ajv/scripts/publish-built-version +32 -0
- package/ajv/scripts/travis-gh-pages +23 -0
- package/asn1/Jenkinsfile +65 -0
- package/asn1/LICENSE +19 -0
- package/asn1/README.md +50 -0
- package/asn1/lib/ber/errors.js +13 -0
- package/asn1/lib/ber/index.js +27 -0
- package/asn1/lib/ber/reader.js +262 -0
- package/asn1/lib/ber/types.js +36 -0
- package/asn1/lib/ber/writer.js +317 -0
- package/asn1/lib/index.js +20 -0
- package/asn1/package.json +31 -0
- package/assert-plus/AUTHORS +6 -0
- package/assert-plus/CHANGES.md +14 -0
- package/assert-plus/README.md +162 -0
- package/assert-plus/assert.js +211 -0
- package/assert-plus/package.json +23 -0
- package/asynckit/LICENSE +21 -0
- package/asynckit/README.md +233 -0
- package/asynckit/bench.js +76 -0
- package/asynckit/index.js +6 -0
- package/asynckit/lib/abort.js +29 -0
- package/asynckit/lib/async.js +34 -0
- package/asynckit/lib/defer.js +26 -0
- package/asynckit/lib/iterate.js +75 -0
- package/asynckit/lib/readable_asynckit.js +91 -0
- package/asynckit/lib/readable_parallel.js +25 -0
- package/asynckit/lib/readable_serial.js +25 -0
- package/asynckit/lib/readable_serial_ordered.js +29 -0
- package/asynckit/lib/state.js +37 -0
- package/asynckit/lib/streamify.js +141 -0
- package/asynckit/lib/terminator.js +29 -0
- package/asynckit/package.json +63 -0
- package/asynckit/parallel.js +43 -0
- package/asynckit/serial.js +17 -0
- package/asynckit/serialOrdered.js +75 -0
- package/asynckit/stream.js +21 -0
- package/aws-sign2/LICENSE +55 -0
- package/aws-sign2/README.md +4 -0
- package/aws-sign2/index.js +212 -0
- package/aws-sign2/package.json +17 -0
- package/aws4/.github/FUNDING.yml +3 -0
- package/aws4/.travis.yml +9 -0
- package/aws4/LICENSE +19 -0
- package/aws4/README.md +183 -0
- package/aws4/aws4.js +373 -0
- package/aws4/lru.js +96 -0
- package/aws4/package.json +17 -0
- package/axios/CHANGELOG.md +775 -0
- package/axios/LICENSE +19 -0
- package/axios/README.md +868 -0
- package/axios/SECURITY.md +5 -0
- package/axios/UPGRADE_GUIDE.md +162 -0
- package/axios/dist/axios.js +2193 -0
- package/axios/dist/axios.map +1 -0
- package/axios/dist/axios.min.js +3 -0
- package/axios/dist/axios.min.map +1 -0
- package/axios/index.d.ts +168 -0
- package/axios/index.js +1 -0
- package/axios/lib/adapters/README.md +37 -0
- package/axios/lib/adapters/http.js +331 -0
- package/axios/lib/adapters/xhr.js +189 -0
- package/axios/lib/axios.js +56 -0
- package/axios/lib/cancel/Cancel.js +19 -0
- package/axios/lib/cancel/CancelToken.js +57 -0
- package/axios/lib/cancel/isCancel.js +5 -0
- package/axios/lib/core/Axios.js +148 -0
- package/axios/lib/core/InterceptorManager.js +54 -0
- package/axios/lib/core/README.md +8 -0
- package/axios/lib/core/buildFullPath.js +20 -0
- package/axios/lib/core/createError.js +18 -0
- package/axios/lib/core/dispatchRequest.js +82 -0
- package/axios/lib/core/enhanceError.js +42 -0
- package/axios/lib/core/mergeConfig.js +87 -0
- package/axios/lib/core/settle.js +25 -0
- package/axios/lib/core/transformData.js +22 -0
- package/axios/lib/defaults.js +134 -0
- package/axios/lib/helpers/README.md +7 -0
- package/axios/lib/helpers/bind.js +11 -0
- package/axios/lib/helpers/buildURL.js +70 -0
- package/axios/lib/helpers/combineURLs.js +14 -0
- package/axios/lib/helpers/cookies.js +53 -0
- package/axios/lib/helpers/deprecatedMethod.js +24 -0
- package/axios/lib/helpers/isAbsoluteURL.js +14 -0
- package/axios/lib/helpers/isAxiosError.js +11 -0
- package/axios/lib/helpers/isURLSameOrigin.js +68 -0
- package/axios/lib/helpers/normalizeHeaderName.js +12 -0
- package/axios/lib/helpers/parseHeaders.js +53 -0
- package/axios/lib/helpers/spread.js +27 -0
- package/axios/lib/helpers/validator.js +105 -0
- package/axios/lib/utils.js +349 -0
- package/axios/package.json +84 -0
- package/bcrypt-pbkdf/CONTRIBUTING.md +13 -0
- package/bcrypt-pbkdf/LICENSE +66 -0
- package/bcrypt-pbkdf/README.md +45 -0
- package/bcrypt-pbkdf/index.js +556 -0
- package/bcrypt-pbkdf/package.json +15 -0
- package/caseless/LICENSE +28 -0
- package/caseless/README.md +45 -0
- package/caseless/index.js +67 -0
- package/caseless/package.json +27 -0
- package/caseless/test.js +67 -0
- package/combined-stream/License +19 -0
- package/combined-stream/Readme.md +138 -0
- package/combined-stream/lib/combined_stream.js +208 -0
- package/combined-stream/package.json +25 -0
- package/combined-stream/yarn.lock +17 -0
- package/core-util-is/LICENSE +19 -0
- package/core-util-is/README.md +3 -0
- package/core-util-is/float.patch +604 -0
- package/core-util-is/lib/util.js +107 -0
- package/core-util-is/package.json +32 -0
- package/core-util-is/test.js +68 -0
- package/dashdash/CHANGES.md +364 -0
- package/dashdash/LICENSE.txt +24 -0
- package/dashdash/README.md +574 -0
- package/dashdash/etc/dashdash.bash_completion.in +389 -0
- package/dashdash/lib/dashdash.js +1055 -0
- package/dashdash/package.json +26 -0
- package/delayed-stream/License +19 -0
- package/delayed-stream/Makefile +7 -0
- package/delayed-stream/Readme.md +141 -0
- package/delayed-stream/lib/delayed_stream.js +107 -0
- package/delayed-stream/package.json +27 -0
- package/ecc-jsbn/LICENSE +21 -0
- package/ecc-jsbn/README.md +8 -0
- package/ecc-jsbn/index.js +58 -0
- package/ecc-jsbn/lib/LICENSE-jsbn +40 -0
- package/ecc-jsbn/lib/ec.js +561 -0
- package/ecc-jsbn/lib/sec.js +170 -0
- package/ecc-jsbn/package.json +40 -0
- package/ecc-jsbn/test.js +14 -0
- package/extend/.editorconfig +20 -0
- package/extend/.eslintrc +17 -0
- package/extend/.jscs.json +175 -0
- package/extend/.travis.yml +230 -0
- package/extend/CHANGELOG.md +83 -0
- package/extend/LICENSE +23 -0
- package/extend/README.md +81 -0
- package/extend/component.json +32 -0
- package/extend/index.js +117 -0
- package/extend/package.json +42 -0
- package/extsprintf/.gitmodules +0 -0
- package/extsprintf/LICENSE +19 -0
- package/extsprintf/Makefile +24 -0
- package/extsprintf/Makefile.targ +285 -0
- package/extsprintf/README.md +46 -0
- package/extsprintf/jsl.node.conf +137 -0
- package/extsprintf/lib/extsprintf.js +183 -0
- package/extsprintf/package.json +14 -0
- package/fast-deep-equal/LICENSE +21 -0
- package/fast-deep-equal/README.md +96 -0
- package/fast-deep-equal/es6/index.d.ts +2 -0
- package/fast-deep-equal/es6/index.js +72 -0
- package/fast-deep-equal/es6/react.d.ts +2 -0
- package/fast-deep-equal/es6/react.js +79 -0
- package/fast-deep-equal/index.d.ts +4 -0
- package/fast-deep-equal/index.js +46 -0
- package/fast-deep-equal/package.json +61 -0
- package/fast-deep-equal/react.d.ts +2 -0
- package/fast-deep-equal/react.js +53 -0
- package/fast-json-stable-stringify/.eslintrc.yml +26 -0
- package/fast-json-stable-stringify/.github/FUNDING.yml +1 -0
- package/fast-json-stable-stringify/.travis.yml +8 -0
- package/fast-json-stable-stringify/LICENSE +21 -0
- package/fast-json-stable-stringify/README.md +131 -0
- package/fast-json-stable-stringify/benchmark/index.js +31 -0
- package/fast-json-stable-stringify/benchmark/test.json +137 -0
- package/fast-json-stable-stringify/example/key_cmp.js +7 -0
- package/fast-json-stable-stringify/example/nested.js +3 -0
- package/fast-json-stable-stringify/example/str.js +3 -0
- package/fast-json-stable-stringify/example/value_cmp.js +7 -0
- package/fast-json-stable-stringify/index.d.ts +4 -0
- package/fast-json-stable-stringify/index.js +59 -0
- package/fast-json-stable-stringify/package.json +52 -0
- package/fast-json-stable-stringify/test/cmp.js +13 -0
- package/fast-json-stable-stringify/test/nested.js +44 -0
- package/fast-json-stable-stringify/test/str.js +46 -0
- package/fast-json-stable-stringify/test/to-json.js +22 -0
- package/follow-redirects/LICENSE +18 -0
- package/follow-redirects/README.md +155 -0
- package/follow-redirects/debug.js +15 -0
- package/follow-redirects/http.js +1 -0
- package/follow-redirects/https.js +1 -0
- package/follow-redirects/index.js +598 -0
- package/follow-redirects/package.json +59 -0
- package/forever-agent/LICENSE +55 -0
- package/forever-agent/README.md +4 -0
- package/forever-agent/index.js +138 -0
- package/forever-agent/package.json +17 -0
- package/form-data/License +19 -0
- package/form-data/README.md +234 -0
- package/form-data/README.md.bak +234 -0
- package/form-data/lib/browser.js +2 -0
- package/form-data/lib/form_data.js +457 -0
- package/form-data/lib/populate.js +10 -0
- package/form-data/package.json +65 -0
- package/form-data/yarn.lock +2662 -0
- package/getpass/.travis.yml +9 -0
- package/getpass/LICENSE +18 -0
- package/getpass/README.md +32 -0
- package/getpass/lib/index.js +123 -0
- package/getpass/package.json +18 -0
- package/har-schema/LICENSE +13 -0
- package/har-schema/README.md +49 -0
- package/har-schema/lib/afterRequest.json +30 -0
- package/har-schema/lib/beforeRequest.json +30 -0
- package/har-schema/lib/browser.json +20 -0
- package/har-schema/lib/cache.json +21 -0
- package/har-schema/lib/content.json +29 -0
- package/har-schema/lib/cookie.json +36 -0
- package/har-schema/lib/creator.json +20 -0
- package/har-schema/lib/entry.json +53 -0
- package/har-schema/lib/har.json +13 -0
- package/har-schema/lib/header.json +20 -0
- package/har-schema/lib/index.js +22 -0
- package/har-schema/lib/log.json +36 -0
- package/har-schema/lib/page.json +32 -0
- package/har-schema/lib/pageTimings.json +18 -0
- package/har-schema/lib/postData.json +43 -0
- package/har-schema/lib/query.json +20 -0
- package/har-schema/lib/request.json +57 -0
- package/har-schema/lib/response.json +54 -0
- package/har-schema/lib/timings.json +42 -0
- package/har-schema/package.json +54 -0
- package/har-validator/LICENSE +9 -0
- package/har-validator/README.md +43 -0
- package/har-validator/lib/async.js +105 -0
- package/har-validator/lib/error.js +17 -0
- package/har-validator/lib/promise.js +102 -0
- package/har-validator/package.json +43 -0
- package/http-signature/.dir-locals.el +6 -0
- package/http-signature/CHANGES.md +46 -0
- package/http-signature/LICENSE +18 -0
- package/http-signature/README.md +79 -0
- package/http-signature/http_signing.md +363 -0
- package/http-signature/lib/index.js +29 -0
- package/http-signature/lib/parser.js +315 -0
- package/http-signature/lib/signer.js +401 -0
- package/http-signature/lib/utils.js +112 -0
- package/http-signature/lib/verify.js +88 -0
- package/http-signature/package.json +39 -0
- package/is-typedarray/LICENSE.md +18 -0
- package/is-typedarray/README.md +16 -0
- package/is-typedarray/index.js +41 -0
- package/is-typedarray/package.json +30 -0
- package/is-typedarray/test.js +34 -0
- package/isstream/.jshintrc +59 -0
- package/isstream/.travis.yml +12 -0
- package/isstream/LICENSE.md +11 -0
- package/isstream/README.md +66 -0
- package/isstream/isstream.js +27 -0
- package/isstream/package.json +33 -0
- package/isstream/test.js +168 -0
- package/jsbn/LICENSE +40 -0
- package/jsbn/README.md +175 -0
- package/jsbn/example.html +12 -0
- package/jsbn/example.js +3 -0
- package/jsbn/index.js +1357 -0
- package/jsbn/package.json +21 -0
- package/json-schema/LICENSE +195 -0
- package/json-schema/README.md +3 -0
- package/json-schema/lib/links.js +65 -0
- package/json-schema/lib/validate.js +271 -0
- package/json-schema/package.json +24 -0
- package/json-schema-traverse/.eslintrc.yml +27 -0
- package/json-schema-traverse/.travis.yml +8 -0
- package/json-schema-traverse/LICENSE +21 -0
- package/json-schema-traverse/README.md +83 -0
- package/json-schema-traverse/index.js +89 -0
- package/json-schema-traverse/package.json +43 -0
- package/json-schema-traverse/spec/.eslintrc.yml +6 -0
- package/json-schema-traverse/spec/fixtures/schema.js +125 -0
- package/json-schema-traverse/spec/index.spec.js +171 -0
- package/json-stringify-safe/CHANGELOG.md +14 -0
- package/json-stringify-safe/LICENSE +15 -0
- package/json-stringify-safe/Makefile +35 -0
- package/json-stringify-safe/README.md +52 -0
- package/json-stringify-safe/package.json +31 -0
- package/json-stringify-safe/stringify.js +27 -0
- package/json-stringify-safe/test/mocha.opts +2 -0
- package/json-stringify-safe/test/stringify_test.js +246 -0
- package/jsprim/CHANGES.md +53 -0
- package/jsprim/CONTRIBUTING.md +19 -0
- package/jsprim/LICENSE +19 -0
- package/jsprim/README.md +287 -0
- package/jsprim/lib/jsprim.js +735 -0
- package/jsprim/package.json +20 -0
- package/m3u8stream/LICENSE +21 -0
- package/m3u8stream/README.md +81 -0
- package/m3u8stream/dist/dash-mpd-parser.d.ts +11 -0
- package/m3u8stream/dist/dash-mpd-parser.js +183 -0
- package/m3u8stream/dist/dash-mpd-parser.js.map +1 -0
- package/m3u8stream/dist/index.d.ts +31 -0
- package/m3u8stream/dist/index.js +180 -0
- package/m3u8stream/dist/index.js.map +1 -0
- package/m3u8stream/dist/m3u8-parser.d.ts +18 -0
- package/m3u8stream/dist/m3u8-parser.js +111 -0
- package/m3u8stream/dist/m3u8-parser.js.map +1 -0
- package/m3u8stream/dist/parse-time.d.ts +16 -0
- package/m3u8stream/dist/parse-time.js +59 -0
- package/m3u8stream/dist/parse-time.js.map +1 -0
- package/m3u8stream/dist/parser.d.ts +19 -0
- package/m3u8stream/dist/parser.js +3 -0
- package/m3u8stream/dist/parser.js.map +1 -0
- package/m3u8stream/dist/queue.d.ts +39 -0
- package/m3u8stream/dist/queue.js +58 -0
- package/m3u8stream/dist/queue.js.map +1 -0
- package/m3u8stream/node_modules/sax/LICENSE +41 -0
- package/m3u8stream/node_modules/sax/README.md +225 -0
- package/m3u8stream/node_modules/sax/lib/sax.js +1565 -0
- package/m3u8stream/node_modules/sax/package.json +25 -0
- package/m3u8stream/package.json +54 -0
- package/mime-db/HISTORY.md +507 -0
- package/mime-db/LICENSE +23 -0
- package/mime-db/README.md +100 -0
- package/mime-db/db.json +8519 -0
- package/mime-db/index.js +12 -0
- package/mime-db/package.json +60 -0
- package/mime-types/HISTORY.md +397 -0
- package/mime-types/LICENSE +23 -0
- package/mime-types/README.md +113 -0
- package/mime-types/index.js +188 -0
- package/mime-types/package.json +44 -0
- package/miniget/LICENSE +21 -0
- package/miniget/README.md +111 -0
- package/miniget/dist/index.d.ts +65 -0
- package/miniget/dist/index.js +281 -0
- package/miniget/dist/index.js.map +1 -0
- package/miniget/package.json +49 -0
- package/oauth-sign/LICENSE +55 -0
- package/oauth-sign/README.md +11 -0
- package/oauth-sign/index.js +146 -0
- package/oauth-sign/package.json +23 -0
- package/package.json +11 -0
- package/performance-now/.tm_properties +7 -0
- package/performance-now/.travis.yml +6 -0
- package/performance-now/README.md +30 -0
- package/performance-now/lib/performance-now.js +36 -0
- package/performance-now/lib/performance-now.js.map +10 -0
- package/performance-now/license.txt +7 -0
- package/performance-now/package.json +35 -0
- package/performance-now/src/index.d.ts +8 -0
- package/performance-now/src/performance-now.coffee +17 -0
- package/performance-now/test/mocha.opts +3 -0
- package/performance-now/test/performance-now.coffee +43 -0
- package/performance-now/test/scripts/delayed-call.coffee +11 -0
- package/performance-now/test/scripts/delayed-require.coffee +12 -0
- package/performance-now/test/scripts/difference.coffee +6 -0
- package/performance-now/test/scripts/initial-value.coffee +10 -0
- package/performance-now/test/scripts.coffee +27 -0
- package/psl/.env +0 -0
- package/psl/LICENSE +9 -0
- package/psl/README.md +211 -0
- package/psl/browserstack-logo.svg +90 -0
- package/psl/data/rules.json +9376 -0
- package/psl/dist/psl.js +10187 -0
- package/psl/dist/psl.min.js +1 -0
- package/psl/index.js +269 -0
- package/psl/package.json +43 -0
- package/punycode/LICENSE-MIT.txt +20 -0
- package/punycode/README.md +122 -0
- package/punycode/package.json +58 -0
- package/punycode/punycode.es6.js +441 -0
- package/punycode/punycode.js +440 -0
- package/qs/.editorconfig +43 -0
- package/qs/.eslintrc +37 -0
- package/qs/.github/FUNDING.yml +12 -0
- package/qs/.nycrc +13 -0
- package/qs/CHANGELOG.md +250 -0
- package/qs/LICENSE.md +29 -0
- package/qs/README.md +510 -0
- package/qs/bower.json +21 -0
- package/qs/component.json +15 -0
- package/qs/dist/qs.js +648 -0
- package/qs/lib/formats.js +18 -0
- package/qs/lib/index.js +11 -0
- package/qs/lib/parse.js +175 -0
- package/qs/lib/stringify.js +217 -0
- package/qs/lib/utils.js +215 -0
- package/qs/package.json +54 -0
- package/qs/test/index.js +7 -0
- package/qs/test/parse.js +649 -0
- package/qs/test/stringify.js +642 -0
- package/qs/test/utils.js +65 -0
- package/request/CHANGELOG.md +717 -0
- package/request/LICENSE +55 -0
- package/request/README.md +1133 -0
- package/request/index.js +155 -0
- package/request/lib/auth.js +167 -0
- package/request/lib/cookies.js +38 -0
- package/request/lib/getProxyFromURI.js +79 -0
- package/request/lib/har.js +205 -0
- package/request/lib/hawk.js +89 -0
- package/request/lib/helpers.js +66 -0
- package/request/lib/multipart.js +112 -0
- package/request/lib/oauth.js +148 -0
- package/request/lib/querystring.js +50 -0
- package/request/lib/redirect.js +154 -0
- package/request/lib/tunnel.js +175 -0
- package/request/package.json +86 -0
- package/request/request.js +1553 -0
- package/safe-buffer/LICENSE +21 -0
- package/safe-buffer/README.md +584 -0
- package/safe-buffer/index.d.ts +187 -0
- package/safe-buffer/index.js +65 -0
- package/safe-buffer/package.json +51 -0
- package/safer-buffer/LICENSE +21 -0
- package/safer-buffer/Porting-Buffer.md +268 -0
- package/safer-buffer/Readme.md +156 -0
- package/safer-buffer/dangerous.js +58 -0
- package/safer-buffer/package.json +34 -0
- package/safer-buffer/safer.js +77 -0
- package/safer-buffer/tests.js +406 -0
- package/sax/AUTHORS +10 -0
- package/sax/LICENSE +32 -0
- package/sax/LICENSE-W3C.html +188 -0
- package/sax/README.md +216 -0
- package/sax/component.json +12 -0
- package/sax/examples/big-not-pretty.xml +8002 -0
- package/sax/examples/example.js +29 -0
- package/sax/examples/get-products.js +58 -0
- package/sax/examples/hello-world.js +4 -0
- package/sax/examples/not-pretty.xml +8 -0
- package/sax/examples/pretty-print.js +74 -0
- package/sax/examples/shopping.xml +2 -0
- package/sax/examples/strict.dtd +870 -0
- package/sax/examples/test.html +15 -0
- package/sax/examples/test.xml +1254 -0
- package/sax/lib/sax.js +1355 -0
- package/sax/package.json +12 -0
- package/sax/test/attribute-name.js +33 -0
- package/sax/test/attribute-no-space.js +75 -0
- package/sax/test/buffer-overrun.js +26 -0
- package/sax/test/case.js +50 -0
- package/sax/test/cdata-chunked.js +11 -0
- package/sax/test/cdata-end-split.js +15 -0
- package/sax/test/cdata-fake-end.js +28 -0
- package/sax/test/cdata-multiple.js +15 -0
- package/sax/test/cdata.js +10 -0
- package/sax/test/cyrillic.js +8 -0
- package/sax/test/duplicate-attribute.js +13 -0
- package/sax/test/end_empty_stream.js +5 -0
- package/sax/test/entities.js +10 -0
- package/sax/test/entity-mega.js +16 -0
- package/sax/test/flush.js +13 -0
- package/sax/test/index.js +86 -0
- package/sax/test/issue-23.js +43 -0
- package/sax/test/issue-30.js +24 -0
- package/sax/test/issue-35.js +15 -0
- package/sax/test/issue-47.js +12 -0
- package/sax/test/issue-49.js +31 -0
- package/sax/test/issue-84.js +13 -0
- package/sax/test/parser-position.js +28 -0
- package/sax/test/script-close-better.js +12 -0
- package/sax/test/script.js +12 -0
- package/sax/test/self-closing-child-strict.js +44 -0
- package/sax/test/self-closing-child.js +44 -0
- package/sax/test/self-closing-tag.js +25 -0
- package/sax/test/stray-ending.js +17 -0
- package/sax/test/trailing-attribute-no-value.js +10 -0
- package/sax/test/trailing-non-whitespace.js +18 -0
- package/sax/test/unclosed-root.js +11 -0
- package/sax/test/unquoted.js +18 -0
- package/sax/test/utf8-split.js +32 -0
- package/sax/test/xmlns-as-tag-name.js +15 -0
- package/sax/test/xmlns-issue-41.js +68 -0
- package/sax/test/xmlns-rebinding.js +63 -0
- package/sax/test/xmlns-strict.js +74 -0
- package/sax/test/xmlns-unbound-element.js +33 -0
- package/sax/test/xmlns-unbound.js +15 -0
- package/sax/test/xmlns-xml-default-ns.js +31 -0
- package/sax/test/xmlns-xml-default-prefix-attribute.js +36 -0
- package/sax/test/xmlns-xml-default-prefix.js +21 -0
- package/sax/test/xmlns-xml-default-redefine.js +41 -0
- package/simple-csv-reader/.editorconfig +8 -0
- package/simple-csv-reader/LICENSE +21 -0
- package/simple-csv-reader/README.md +32 -0
- package/simple-csv-reader/dist/simple-csv-reader.min.js +2 -0
- package/simple-csv-reader/dist/simple-csv-reader.min.js.map +1 -0
- package/simple-csv-reader/gulpfile.js +26 -0
- package/simple-csv-reader/index.js +131 -0
- package/simple-csv-reader/package.json +38 -0
- package/sshpk/.travis.yml +11 -0
- package/sshpk/Jenkinsfile +86 -0
- package/sshpk/LICENSE +18 -0
- package/sshpk/README.md +804 -0
- package/sshpk/bin/sshpk-conv +243 -0
- package/sshpk/bin/sshpk-sign +191 -0
- package/sshpk/bin/sshpk-verify +167 -0
- package/sshpk/lib/algs.js +168 -0
- package/sshpk/lib/certificate.js +410 -0
- package/sshpk/lib/dhe.js +397 -0
- package/sshpk/lib/ed-compat.js +92 -0
- package/sshpk/lib/errors.js +84 -0
- package/sshpk/lib/fingerprint.js +220 -0
- package/sshpk/lib/formats/auto.js +124 -0
- package/sshpk/lib/formats/dnssec.js +287 -0
- package/sshpk/lib/formats/openssh-cert.js +352 -0
- package/sshpk/lib/formats/pem.js +290 -0
- package/sshpk/lib/formats/pkcs1.js +373 -0
- package/sshpk/lib/formats/pkcs8.js +631 -0
- package/sshpk/lib/formats/putty.js +194 -0
- package/sshpk/lib/formats/rfc4253.js +166 -0
- package/sshpk/lib/formats/ssh-private.js +262 -0
- package/sshpk/lib/formats/ssh.js +115 -0
- package/sshpk/lib/formats/x509-pem.js +88 -0
- package/sshpk/lib/formats/x509.js +752 -0
- package/sshpk/lib/identity.js +373 -0
- package/sshpk/lib/index.js +40 -0
- package/sshpk/lib/key.js +294 -0
- package/sshpk/lib/private-key.js +247 -0
- package/sshpk/lib/signature.js +314 -0
- package/sshpk/lib/ssh-buffer.js +149 -0
- package/sshpk/lib/utils.js +404 -0
- package/sshpk/man/man1/sshpk-conv.1 +135 -0
- package/sshpk/man/man1/sshpk-sign.1 +81 -0
- package/sshpk/man/man1/sshpk-verify.1 +68 -0
- package/sshpk/package.json +60 -0
- package/tough-cookie/LICENSE +12 -0
- package/tough-cookie/README.md +527 -0
- package/tough-cookie/lib/cookie.js +1482 -0
- package/tough-cookie/lib/memstore.js +181 -0
- package/tough-cookie/lib/pathMatch.js +61 -0
- package/tough-cookie/lib/permuteDomain.js +56 -0
- package/tough-cookie/lib/pubsuffix-psl.js +38 -0
- package/tough-cookie/lib/store.js +75 -0
- package/tough-cookie/lib/version.js +2 -0
- package/tough-cookie/package.json +78 -0
- package/tunnel-agent/LICENSE +55 -0
- package/tunnel-agent/README.md +4 -0
- package/tunnel-agent/index.js +244 -0
- package/tunnel-agent/package.json +22 -0
- package/tweetnacl/AUTHORS.md +28 -0
- package/tweetnacl/CHANGELOG.md +221 -0
- package/tweetnacl/LICENSE +24 -0
- package/tweetnacl/PULL_REQUEST_TEMPLATE.md +20 -0
- package/tweetnacl/README.md +459 -0
- package/tweetnacl/nacl-fast.js +2388 -0
- package/tweetnacl/nacl-fast.min.js +2 -0
- package/tweetnacl/nacl.d.ts +98 -0
- package/tweetnacl/nacl.js +1175 -0
- package/tweetnacl/nacl.min.js +1 -0
- package/tweetnacl/package.json +58 -0
- package/uri-js/LICENSE +11 -0
- package/uri-js/README.md +203 -0
- package/uri-js/dist/es5/uri.all.d.ts +59 -0
- package/uri-js/dist/es5/uri.all.js +1443 -0
- package/uri-js/dist/es5/uri.all.js.map +1 -0
- package/uri-js/dist/es5/uri.all.min.d.ts +59 -0
- package/uri-js/dist/es5/uri.all.min.js +3 -0
- package/uri-js/dist/es5/uri.all.min.js.map +1 -0
- package/uri-js/dist/esnext/index.d.ts +1 -0
- package/uri-js/dist/esnext/index.js +17 -0
- package/uri-js/dist/esnext/index.js.map +1 -0
- package/uri-js/dist/esnext/regexps-iri.d.ts +3 -0
- package/uri-js/dist/esnext/regexps-iri.js +3 -0
- package/uri-js/dist/esnext/regexps-iri.js.map +1 -0
- package/uri-js/dist/esnext/regexps-uri.d.ts +4 -0
- package/uri-js/dist/esnext/regexps-uri.js +42 -0
- package/uri-js/dist/esnext/regexps-uri.js.map +1 -0
- package/uri-js/dist/esnext/schemes/http.d.ts +3 -0
- package/uri-js/dist/esnext/schemes/http.js +28 -0
- package/uri-js/dist/esnext/schemes/http.js.map +1 -0
- package/uri-js/dist/esnext/schemes/https.d.ts +3 -0
- package/uri-js/dist/esnext/schemes/https.js +9 -0
- package/uri-js/dist/esnext/schemes/https.js.map +1 -0
- package/uri-js/dist/esnext/schemes/mailto.d.ts +12 -0
- package/uri-js/dist/esnext/schemes/mailto.js +148 -0
- package/uri-js/dist/esnext/schemes/mailto.js.map +1 -0
- package/uri-js/dist/esnext/schemes/urn-uuid.d.ts +7 -0
- package/uri-js/dist/esnext/schemes/urn-uuid.js +23 -0
- package/uri-js/dist/esnext/schemes/urn-uuid.js.map +1 -0
- package/uri-js/dist/esnext/schemes/urn.d.ts +10 -0
- package/uri-js/dist/esnext/schemes/urn.js +49 -0
- package/uri-js/dist/esnext/schemes/urn.js.map +1 -0
- package/uri-js/dist/esnext/schemes/ws.d.ts +7 -0
- package/uri-js/dist/esnext/schemes/ws.js +41 -0
- package/uri-js/dist/esnext/schemes/ws.js.map +1 -0
- package/uri-js/dist/esnext/schemes/wss.d.ts +3 -0
- package/uri-js/dist/esnext/schemes/wss.js +9 -0
- package/uri-js/dist/esnext/schemes/wss.js.map +1 -0
- package/uri-js/dist/esnext/uri.d.ts +59 -0
- package/uri-js/dist/esnext/uri.js +480 -0
- package/uri-js/dist/esnext/uri.js.map +1 -0
- package/uri-js/dist/esnext/util.d.ts +6 -0
- package/uri-js/dist/esnext/util.js +36 -0
- package/uri-js/dist/esnext/util.js.map +1 -0
- package/uri-js/package.json +77 -0
- package/uri-js/yarn.lock +2558 -0
- package/uuid/AUTHORS +5 -0
- package/uuid/CHANGELOG.md +119 -0
- package/uuid/LICENSE.md +21 -0
- package/uuid/README.md +276 -0
- package/uuid/bin/uuid +65 -0
- package/uuid/index.js +8 -0
- package/uuid/lib/bytesToUuid.js +26 -0
- package/uuid/lib/md5-browser.js +216 -0
- package/uuid/lib/md5.js +25 -0
- package/uuid/lib/rng-browser.js +34 -0
- package/uuid/lib/rng.js +8 -0
- package/uuid/lib/sha1-browser.js +89 -0
- package/uuid/lib/sha1.js +25 -0
- package/uuid/lib/v35.js +57 -0
- package/uuid/package.json +49 -0
- package/uuid/v1.js +109 -0
- package/uuid/v3.js +4 -0
- package/uuid/v4.js +29 -0
- package/uuid/v5.js +3 -0
- package/verror/CHANGES.md +28 -0
- package/verror/CONTRIBUTING.md +19 -0
- package/verror/LICENSE +19 -0
- package/verror/README.md +528 -0
- package/verror/lib/verror.js +451 -0
- package/verror/package.json +22 -0
- package/xml2js/.travis.yml +5 -0
- package/xml2js/83.coffee +6 -0
- package/xml2js/LICENSE +19 -0
- package/xml2js/README.md +248 -0
- package/xml2js/canon.xml +482 -0
- package/xml2js/lib/xml2js.js +299 -0
- package/xml2js/package.json +47 -0
- package/xml2js/text.coffee +11 -0
- package/xml2js/text.xml +485 -0
- package/youtube-search/.travis.yml +5 -0
- package/youtube-search/README.md +61 -0
- package/youtube-search/index.d.ts +77 -0
- package/youtube-search/index.js +111 -0
- package/youtube-search/package.json +29 -0
- package/youtube-search/tests/test-search.js +32 -0
- package/ytdl-core/LICENSE +21 -0
- package/ytdl-core/README.md +238 -0
- package/ytdl-core/lib/cache.js +54 -0
- package/ytdl-core/lib/format-utils.js +250 -0
- package/ytdl-core/lib/formats.js +524 -0
- package/ytdl-core/lib/index.js +214 -0
- package/ytdl-core/lib/info-extras.js +365 -0
- package/ytdl-core/lib/info.js +495 -0
- package/ytdl-core/lib/sig.js +122 -0
- package/ytdl-core/lib/url-utils.js +91 -0
- package/ytdl-core/lib/utils.js +286 -0
- package/ytdl-core/node_modules/sax/LICENSE +41 -0
- package/ytdl-core/node_modules/sax/README.md +225 -0
- package/ytdl-core/node_modules/sax/lib/sax.js +1565 -0
- package/ytdl-core/node_modules/sax/package.json +25 -0
- package/ytdl-core/package.json +61 -0
- package/ytdl-core/typings/index.d.ts +426 -0
- package/ytdl-getinfo/.travis.yml +3 -0
- package/ytdl-getinfo/README.md +77 -0
- package/ytdl-getinfo/index.js +105 -0
- package/ytdl-getinfo/package.json +33 -0
- package/ytdl-getinfo/playlist.js +50 -0
- package/ytdl-getinfo/test/test.js +68 -0
- package/ytdl-getinfo/updater.js +42 -0
- package/ytdl-getinfo/yarn.lock +533 -0
- package/ytdl-getinfo/ytdl/.gitkeep +0 -0
- package/ytdl-getinfo/ytdl/youtube-dl.exe +0 -0
package/ajv/lib/ajv.js
ADDED
|
@@ -0,0 +1,506 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var compileSchema = require('./compile')
|
|
4
|
+
, resolve = require('./compile/resolve')
|
|
5
|
+
, Cache = require('./cache')
|
|
6
|
+
, SchemaObject = require('./compile/schema_obj')
|
|
7
|
+
, stableStringify = require('fast-json-stable-stringify')
|
|
8
|
+
, formats = require('./compile/formats')
|
|
9
|
+
, rules = require('./compile/rules')
|
|
10
|
+
, $dataMetaSchema = require('./data')
|
|
11
|
+
, util = require('./compile/util');
|
|
12
|
+
|
|
13
|
+
module.exports = Ajv;
|
|
14
|
+
|
|
15
|
+
Ajv.prototype.validate = validate;
|
|
16
|
+
Ajv.prototype.compile = compile;
|
|
17
|
+
Ajv.prototype.addSchema = addSchema;
|
|
18
|
+
Ajv.prototype.addMetaSchema = addMetaSchema;
|
|
19
|
+
Ajv.prototype.validateSchema = validateSchema;
|
|
20
|
+
Ajv.prototype.getSchema = getSchema;
|
|
21
|
+
Ajv.prototype.removeSchema = removeSchema;
|
|
22
|
+
Ajv.prototype.addFormat = addFormat;
|
|
23
|
+
Ajv.prototype.errorsText = errorsText;
|
|
24
|
+
|
|
25
|
+
Ajv.prototype._addSchema = _addSchema;
|
|
26
|
+
Ajv.prototype._compile = _compile;
|
|
27
|
+
|
|
28
|
+
Ajv.prototype.compileAsync = require('./compile/async');
|
|
29
|
+
var customKeyword = require('./keyword');
|
|
30
|
+
Ajv.prototype.addKeyword = customKeyword.add;
|
|
31
|
+
Ajv.prototype.getKeyword = customKeyword.get;
|
|
32
|
+
Ajv.prototype.removeKeyword = customKeyword.remove;
|
|
33
|
+
Ajv.prototype.validateKeyword = customKeyword.validate;
|
|
34
|
+
|
|
35
|
+
var errorClasses = require('./compile/error_classes');
|
|
36
|
+
Ajv.ValidationError = errorClasses.Validation;
|
|
37
|
+
Ajv.MissingRefError = errorClasses.MissingRef;
|
|
38
|
+
Ajv.$dataMetaSchema = $dataMetaSchema;
|
|
39
|
+
|
|
40
|
+
var META_SCHEMA_ID = 'http://json-schema.org/draft-07/schema';
|
|
41
|
+
|
|
42
|
+
var META_IGNORE_OPTIONS = [ 'removeAdditional', 'useDefaults', 'coerceTypes', 'strictDefaults' ];
|
|
43
|
+
var META_SUPPORT_DATA = ['/properties'];
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Creates validator instance.
|
|
47
|
+
* Usage: `Ajv(opts)`
|
|
48
|
+
* @param {Object} opts optional options
|
|
49
|
+
* @return {Object} ajv instance
|
|
50
|
+
*/
|
|
51
|
+
function Ajv(opts) {
|
|
52
|
+
if (!(this instanceof Ajv)) return new Ajv(opts);
|
|
53
|
+
opts = this._opts = util.copy(opts) || {};
|
|
54
|
+
setLogger(this);
|
|
55
|
+
this._schemas = {};
|
|
56
|
+
this._refs = {};
|
|
57
|
+
this._fragments = {};
|
|
58
|
+
this._formats = formats(opts.format);
|
|
59
|
+
|
|
60
|
+
this._cache = opts.cache || new Cache;
|
|
61
|
+
this._loadingSchemas = {};
|
|
62
|
+
this._compilations = [];
|
|
63
|
+
this.RULES = rules();
|
|
64
|
+
this._getId = chooseGetId(opts);
|
|
65
|
+
|
|
66
|
+
opts.loopRequired = opts.loopRequired || Infinity;
|
|
67
|
+
if (opts.errorDataPath == 'property') opts._errorDataPathProperty = true;
|
|
68
|
+
if (opts.serialize === undefined) opts.serialize = stableStringify;
|
|
69
|
+
this._metaOpts = getMetaSchemaOptions(this);
|
|
70
|
+
|
|
71
|
+
if (opts.formats) addInitialFormats(this);
|
|
72
|
+
if (opts.keywords) addInitialKeywords(this);
|
|
73
|
+
addDefaultMetaSchema(this);
|
|
74
|
+
if (typeof opts.meta == 'object') this.addMetaSchema(opts.meta);
|
|
75
|
+
if (opts.nullable) this.addKeyword('nullable', {metaSchema: {type: 'boolean'}});
|
|
76
|
+
addInitialSchemas(this);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Validate data using schema
|
|
83
|
+
* Schema will be compiled and cached (using serialized JSON as key. [fast-json-stable-stringify](https://github.com/epoberezkin/fast-json-stable-stringify) is used to serialize.
|
|
84
|
+
* @this Ajv
|
|
85
|
+
* @param {String|Object} schemaKeyRef key, ref or schema object
|
|
86
|
+
* @param {Any} data to be validated
|
|
87
|
+
* @return {Boolean} validation result. Errors from the last validation will be available in `ajv.errors` (and also in compiled schema: `schema.errors`).
|
|
88
|
+
*/
|
|
89
|
+
function validate(schemaKeyRef, data) {
|
|
90
|
+
var v;
|
|
91
|
+
if (typeof schemaKeyRef == 'string') {
|
|
92
|
+
v = this.getSchema(schemaKeyRef);
|
|
93
|
+
if (!v) throw new Error('no schema with key or ref "' + schemaKeyRef + '"');
|
|
94
|
+
} else {
|
|
95
|
+
var schemaObj = this._addSchema(schemaKeyRef);
|
|
96
|
+
v = schemaObj.validate || this._compile(schemaObj);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
var valid = v(data);
|
|
100
|
+
if (v.$async !== true) this.errors = v.errors;
|
|
101
|
+
return valid;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* Create validating function for passed schema.
|
|
107
|
+
* @this Ajv
|
|
108
|
+
* @param {Object} schema schema object
|
|
109
|
+
* @param {Boolean} _meta true if schema is a meta-schema. Used internally to compile meta schemas of custom keywords.
|
|
110
|
+
* @return {Function} validating function
|
|
111
|
+
*/
|
|
112
|
+
function compile(schema, _meta) {
|
|
113
|
+
var schemaObj = this._addSchema(schema, undefined, _meta);
|
|
114
|
+
return schemaObj.validate || this._compile(schemaObj);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Adds schema to the instance.
|
|
120
|
+
* @this Ajv
|
|
121
|
+
* @param {Object|Array} schema schema or array of schemas. If array is passed, `key` and other parameters will be ignored.
|
|
122
|
+
* @param {String} key Optional schema key. Can be passed to `validate` method instead of schema object or id/ref. One schema per instance can have empty `id` and `key`.
|
|
123
|
+
* @param {Boolean} _skipValidation true to skip schema validation. Used internally, option validateSchema should be used instead.
|
|
124
|
+
* @param {Boolean} _meta true if schema is a meta-schema. Used internally, addMetaSchema should be used instead.
|
|
125
|
+
* @return {Ajv} this for method chaining
|
|
126
|
+
*/
|
|
127
|
+
function addSchema(schema, key, _skipValidation, _meta) {
|
|
128
|
+
if (Array.isArray(schema)){
|
|
129
|
+
for (var i=0; i<schema.length; i++) this.addSchema(schema[i], undefined, _skipValidation, _meta);
|
|
130
|
+
return this;
|
|
131
|
+
}
|
|
132
|
+
var id = this._getId(schema);
|
|
133
|
+
if (id !== undefined && typeof id != 'string')
|
|
134
|
+
throw new Error('schema id must be string');
|
|
135
|
+
key = resolve.normalizeId(key || id);
|
|
136
|
+
checkUnique(this, key);
|
|
137
|
+
this._schemas[key] = this._addSchema(schema, _skipValidation, _meta, true);
|
|
138
|
+
return this;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Add schema that will be used to validate other schemas
|
|
144
|
+
* options in META_IGNORE_OPTIONS are alway set to false
|
|
145
|
+
* @this Ajv
|
|
146
|
+
* @param {Object} schema schema object
|
|
147
|
+
* @param {String} key optional schema key
|
|
148
|
+
* @param {Boolean} skipValidation true to skip schema validation, can be used to override validateSchema option for meta-schema
|
|
149
|
+
* @return {Ajv} this for method chaining
|
|
150
|
+
*/
|
|
151
|
+
function addMetaSchema(schema, key, skipValidation) {
|
|
152
|
+
this.addSchema(schema, key, skipValidation, true);
|
|
153
|
+
return this;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Validate schema
|
|
159
|
+
* @this Ajv
|
|
160
|
+
* @param {Object} schema schema to validate
|
|
161
|
+
* @param {Boolean} throwOrLogError pass true to throw (or log) an error if invalid
|
|
162
|
+
* @return {Boolean} true if schema is valid
|
|
163
|
+
*/
|
|
164
|
+
function validateSchema(schema, throwOrLogError) {
|
|
165
|
+
var $schema = schema.$schema;
|
|
166
|
+
if ($schema !== undefined && typeof $schema != 'string')
|
|
167
|
+
throw new Error('$schema must be a string');
|
|
168
|
+
$schema = $schema || this._opts.defaultMeta || defaultMeta(this);
|
|
169
|
+
if (!$schema) {
|
|
170
|
+
this.logger.warn('meta-schema not available');
|
|
171
|
+
this.errors = null;
|
|
172
|
+
return true;
|
|
173
|
+
}
|
|
174
|
+
var valid = this.validate($schema, schema);
|
|
175
|
+
if (!valid && throwOrLogError) {
|
|
176
|
+
var message = 'schema is invalid: ' + this.errorsText();
|
|
177
|
+
if (this._opts.validateSchema == 'log') this.logger.error(message);
|
|
178
|
+
else throw new Error(message);
|
|
179
|
+
}
|
|
180
|
+
return valid;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
function defaultMeta(self) {
|
|
185
|
+
var meta = self._opts.meta;
|
|
186
|
+
self._opts.defaultMeta = typeof meta == 'object'
|
|
187
|
+
? self._getId(meta) || meta
|
|
188
|
+
: self.getSchema(META_SCHEMA_ID)
|
|
189
|
+
? META_SCHEMA_ID
|
|
190
|
+
: undefined;
|
|
191
|
+
return self._opts.defaultMeta;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
/**
|
|
196
|
+
* Get compiled schema from the instance by `key` or `ref`.
|
|
197
|
+
* @this Ajv
|
|
198
|
+
* @param {String} keyRef `key` that was passed to `addSchema` or full schema reference (`schema.id` or resolved id).
|
|
199
|
+
* @return {Function} schema validating function (with property `schema`).
|
|
200
|
+
*/
|
|
201
|
+
function getSchema(keyRef) {
|
|
202
|
+
var schemaObj = _getSchemaObj(this, keyRef);
|
|
203
|
+
switch (typeof schemaObj) {
|
|
204
|
+
case 'object': return schemaObj.validate || this._compile(schemaObj);
|
|
205
|
+
case 'string': return this.getSchema(schemaObj);
|
|
206
|
+
case 'undefined': return _getSchemaFragment(this, keyRef);
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
function _getSchemaFragment(self, ref) {
|
|
212
|
+
var res = resolve.schema.call(self, { schema: {} }, ref);
|
|
213
|
+
if (res) {
|
|
214
|
+
var schema = res.schema
|
|
215
|
+
, root = res.root
|
|
216
|
+
, baseId = res.baseId;
|
|
217
|
+
var v = compileSchema.call(self, schema, root, undefined, baseId);
|
|
218
|
+
self._fragments[ref] = new SchemaObject({
|
|
219
|
+
ref: ref,
|
|
220
|
+
fragment: true,
|
|
221
|
+
schema: schema,
|
|
222
|
+
root: root,
|
|
223
|
+
baseId: baseId,
|
|
224
|
+
validate: v
|
|
225
|
+
});
|
|
226
|
+
return v;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
function _getSchemaObj(self, keyRef) {
|
|
232
|
+
keyRef = resolve.normalizeId(keyRef);
|
|
233
|
+
return self._schemas[keyRef] || self._refs[keyRef] || self._fragments[keyRef];
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
* Remove cached schema(s).
|
|
239
|
+
* If no parameter is passed all schemas but meta-schemas are removed.
|
|
240
|
+
* If RegExp is passed all schemas with key/id matching pattern but meta-schemas are removed.
|
|
241
|
+
* Even if schema is referenced by other schemas it still can be removed as other schemas have local references.
|
|
242
|
+
* @this Ajv
|
|
243
|
+
* @param {String|Object|RegExp} schemaKeyRef key, ref, pattern to match key/ref or schema object
|
|
244
|
+
* @return {Ajv} this for method chaining
|
|
245
|
+
*/
|
|
246
|
+
function removeSchema(schemaKeyRef) {
|
|
247
|
+
if (schemaKeyRef instanceof RegExp) {
|
|
248
|
+
_removeAllSchemas(this, this._schemas, schemaKeyRef);
|
|
249
|
+
_removeAllSchemas(this, this._refs, schemaKeyRef);
|
|
250
|
+
return this;
|
|
251
|
+
}
|
|
252
|
+
switch (typeof schemaKeyRef) {
|
|
253
|
+
case 'undefined':
|
|
254
|
+
_removeAllSchemas(this, this._schemas);
|
|
255
|
+
_removeAllSchemas(this, this._refs);
|
|
256
|
+
this._cache.clear();
|
|
257
|
+
return this;
|
|
258
|
+
case 'string':
|
|
259
|
+
var schemaObj = _getSchemaObj(this, schemaKeyRef);
|
|
260
|
+
if (schemaObj) this._cache.del(schemaObj.cacheKey);
|
|
261
|
+
delete this._schemas[schemaKeyRef];
|
|
262
|
+
delete this._refs[schemaKeyRef];
|
|
263
|
+
return this;
|
|
264
|
+
case 'object':
|
|
265
|
+
var serialize = this._opts.serialize;
|
|
266
|
+
var cacheKey = serialize ? serialize(schemaKeyRef) : schemaKeyRef;
|
|
267
|
+
this._cache.del(cacheKey);
|
|
268
|
+
var id = this._getId(schemaKeyRef);
|
|
269
|
+
if (id) {
|
|
270
|
+
id = resolve.normalizeId(id);
|
|
271
|
+
delete this._schemas[id];
|
|
272
|
+
delete this._refs[id];
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
return this;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
|
|
279
|
+
function _removeAllSchemas(self, schemas, regex) {
|
|
280
|
+
for (var keyRef in schemas) {
|
|
281
|
+
var schemaObj = schemas[keyRef];
|
|
282
|
+
if (!schemaObj.meta && (!regex || regex.test(keyRef))) {
|
|
283
|
+
self._cache.del(schemaObj.cacheKey);
|
|
284
|
+
delete schemas[keyRef];
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
/* @this Ajv */
|
|
291
|
+
function _addSchema(schema, skipValidation, meta, shouldAddSchema) {
|
|
292
|
+
if (typeof schema != 'object' && typeof schema != 'boolean')
|
|
293
|
+
throw new Error('schema should be object or boolean');
|
|
294
|
+
var serialize = this._opts.serialize;
|
|
295
|
+
var cacheKey = serialize ? serialize(schema) : schema;
|
|
296
|
+
var cached = this._cache.get(cacheKey);
|
|
297
|
+
if (cached) return cached;
|
|
298
|
+
|
|
299
|
+
shouldAddSchema = shouldAddSchema || this._opts.addUsedSchema !== false;
|
|
300
|
+
|
|
301
|
+
var id = resolve.normalizeId(this._getId(schema));
|
|
302
|
+
if (id && shouldAddSchema) checkUnique(this, id);
|
|
303
|
+
|
|
304
|
+
var willValidate = this._opts.validateSchema !== false && !skipValidation;
|
|
305
|
+
var recursiveMeta;
|
|
306
|
+
if (willValidate && !(recursiveMeta = id && id == resolve.normalizeId(schema.$schema)))
|
|
307
|
+
this.validateSchema(schema, true);
|
|
308
|
+
|
|
309
|
+
var localRefs = resolve.ids.call(this, schema);
|
|
310
|
+
|
|
311
|
+
var schemaObj = new SchemaObject({
|
|
312
|
+
id: id,
|
|
313
|
+
schema: schema,
|
|
314
|
+
localRefs: localRefs,
|
|
315
|
+
cacheKey: cacheKey,
|
|
316
|
+
meta: meta
|
|
317
|
+
});
|
|
318
|
+
|
|
319
|
+
if (id[0] != '#' && shouldAddSchema) this._refs[id] = schemaObj;
|
|
320
|
+
this._cache.put(cacheKey, schemaObj);
|
|
321
|
+
|
|
322
|
+
if (willValidate && recursiveMeta) this.validateSchema(schema, true);
|
|
323
|
+
|
|
324
|
+
return schemaObj;
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
|
|
328
|
+
/* @this Ajv */
|
|
329
|
+
function _compile(schemaObj, root) {
|
|
330
|
+
if (schemaObj.compiling) {
|
|
331
|
+
schemaObj.validate = callValidate;
|
|
332
|
+
callValidate.schema = schemaObj.schema;
|
|
333
|
+
callValidate.errors = null;
|
|
334
|
+
callValidate.root = root ? root : callValidate;
|
|
335
|
+
if (schemaObj.schema.$async === true)
|
|
336
|
+
callValidate.$async = true;
|
|
337
|
+
return callValidate;
|
|
338
|
+
}
|
|
339
|
+
schemaObj.compiling = true;
|
|
340
|
+
|
|
341
|
+
var currentOpts;
|
|
342
|
+
if (schemaObj.meta) {
|
|
343
|
+
currentOpts = this._opts;
|
|
344
|
+
this._opts = this._metaOpts;
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
var v;
|
|
348
|
+
try { v = compileSchema.call(this, schemaObj.schema, root, schemaObj.localRefs); }
|
|
349
|
+
catch(e) {
|
|
350
|
+
delete schemaObj.validate;
|
|
351
|
+
throw e;
|
|
352
|
+
}
|
|
353
|
+
finally {
|
|
354
|
+
schemaObj.compiling = false;
|
|
355
|
+
if (schemaObj.meta) this._opts = currentOpts;
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
schemaObj.validate = v;
|
|
359
|
+
schemaObj.refs = v.refs;
|
|
360
|
+
schemaObj.refVal = v.refVal;
|
|
361
|
+
schemaObj.root = v.root;
|
|
362
|
+
return v;
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
/* @this {*} - custom context, see passContext option */
|
|
366
|
+
function callValidate() {
|
|
367
|
+
/* jshint validthis: true */
|
|
368
|
+
var _validate = schemaObj.validate;
|
|
369
|
+
var result = _validate.apply(this, arguments);
|
|
370
|
+
callValidate.errors = _validate.errors;
|
|
371
|
+
return result;
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
|
|
376
|
+
function chooseGetId(opts) {
|
|
377
|
+
switch (opts.schemaId) {
|
|
378
|
+
case 'auto': return _get$IdOrId;
|
|
379
|
+
case 'id': return _getId;
|
|
380
|
+
default: return _get$Id;
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
/* @this Ajv */
|
|
385
|
+
function _getId(schema) {
|
|
386
|
+
if (schema.$id) this.logger.warn('schema $id ignored', schema.$id);
|
|
387
|
+
return schema.id;
|
|
388
|
+
}
|
|
389
|
+
|
|
390
|
+
/* @this Ajv */
|
|
391
|
+
function _get$Id(schema) {
|
|
392
|
+
if (schema.id) this.logger.warn('schema id ignored', schema.id);
|
|
393
|
+
return schema.$id;
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
|
|
397
|
+
function _get$IdOrId(schema) {
|
|
398
|
+
if (schema.$id && schema.id && schema.$id != schema.id)
|
|
399
|
+
throw new Error('schema $id is different from id');
|
|
400
|
+
return schema.$id || schema.id;
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
|
|
404
|
+
/**
|
|
405
|
+
* Convert array of error message objects to string
|
|
406
|
+
* @this Ajv
|
|
407
|
+
* @param {Array<Object>} errors optional array of validation errors, if not passed errors from the instance are used.
|
|
408
|
+
* @param {Object} options optional options with properties `separator` and `dataVar`.
|
|
409
|
+
* @return {String} human readable string with all errors descriptions
|
|
410
|
+
*/
|
|
411
|
+
function errorsText(errors, options) {
|
|
412
|
+
errors = errors || this.errors;
|
|
413
|
+
if (!errors) return 'No errors';
|
|
414
|
+
options = options || {};
|
|
415
|
+
var separator = options.separator === undefined ? ', ' : options.separator;
|
|
416
|
+
var dataVar = options.dataVar === undefined ? 'data' : options.dataVar;
|
|
417
|
+
|
|
418
|
+
var text = '';
|
|
419
|
+
for (var i=0; i<errors.length; i++) {
|
|
420
|
+
var e = errors[i];
|
|
421
|
+
if (e) text += dataVar + e.dataPath + ' ' + e.message + separator;
|
|
422
|
+
}
|
|
423
|
+
return text.slice(0, -separator.length);
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
|
|
427
|
+
/**
|
|
428
|
+
* Add custom format
|
|
429
|
+
* @this Ajv
|
|
430
|
+
* @param {String} name format name
|
|
431
|
+
* @param {String|RegExp|Function} format string is converted to RegExp; function should return boolean (true when valid)
|
|
432
|
+
* @return {Ajv} this for method chaining
|
|
433
|
+
*/
|
|
434
|
+
function addFormat(name, format) {
|
|
435
|
+
if (typeof format == 'string') format = new RegExp(format);
|
|
436
|
+
this._formats[name] = format;
|
|
437
|
+
return this;
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
|
|
441
|
+
function addDefaultMetaSchema(self) {
|
|
442
|
+
var $dataSchema;
|
|
443
|
+
if (self._opts.$data) {
|
|
444
|
+
$dataSchema = require('./refs/data.json');
|
|
445
|
+
self.addMetaSchema($dataSchema, $dataSchema.$id, true);
|
|
446
|
+
}
|
|
447
|
+
if (self._opts.meta === false) return;
|
|
448
|
+
var metaSchema = require('./refs/json-schema-draft-07.json');
|
|
449
|
+
if (self._opts.$data) metaSchema = $dataMetaSchema(metaSchema, META_SUPPORT_DATA);
|
|
450
|
+
self.addMetaSchema(metaSchema, META_SCHEMA_ID, true);
|
|
451
|
+
self._refs['http://json-schema.org/schema'] = META_SCHEMA_ID;
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
|
|
455
|
+
function addInitialSchemas(self) {
|
|
456
|
+
var optsSchemas = self._opts.schemas;
|
|
457
|
+
if (!optsSchemas) return;
|
|
458
|
+
if (Array.isArray(optsSchemas)) self.addSchema(optsSchemas);
|
|
459
|
+
else for (var key in optsSchemas) self.addSchema(optsSchemas[key], key);
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
|
|
463
|
+
function addInitialFormats(self) {
|
|
464
|
+
for (var name in self._opts.formats) {
|
|
465
|
+
var format = self._opts.formats[name];
|
|
466
|
+
self.addFormat(name, format);
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
|
|
470
|
+
|
|
471
|
+
function addInitialKeywords(self) {
|
|
472
|
+
for (var name in self._opts.keywords) {
|
|
473
|
+
var keyword = self._opts.keywords[name];
|
|
474
|
+
self.addKeyword(name, keyword);
|
|
475
|
+
}
|
|
476
|
+
}
|
|
477
|
+
|
|
478
|
+
|
|
479
|
+
function checkUnique(self, id) {
|
|
480
|
+
if (self._schemas[id] || self._refs[id])
|
|
481
|
+
throw new Error('schema with key or id "' + id + '" already exists');
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
|
|
485
|
+
function getMetaSchemaOptions(self) {
|
|
486
|
+
var metaOpts = util.copy(self._opts);
|
|
487
|
+
for (var i=0; i<META_IGNORE_OPTIONS.length; i++)
|
|
488
|
+
delete metaOpts[META_IGNORE_OPTIONS[i]];
|
|
489
|
+
return metaOpts;
|
|
490
|
+
}
|
|
491
|
+
|
|
492
|
+
|
|
493
|
+
function setLogger(self) {
|
|
494
|
+
var logger = self._opts.logger;
|
|
495
|
+
if (logger === false) {
|
|
496
|
+
self.logger = {log: noop, warn: noop, error: noop};
|
|
497
|
+
} else {
|
|
498
|
+
if (logger === undefined) logger = console;
|
|
499
|
+
if (!(typeof logger == 'object' && logger.log && logger.warn && logger.error))
|
|
500
|
+
throw new Error('logger must implement log, warn and error methods');
|
|
501
|
+
self.logger = logger;
|
|
502
|
+
}
|
|
503
|
+
}
|
|
504
|
+
|
|
505
|
+
|
|
506
|
+
function noop() {}
|
package/ajv/lib/cache.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var Cache = module.exports = function Cache() {
|
|
5
|
+
this._cache = {};
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
Cache.prototype.put = function Cache_put(key, value) {
|
|
10
|
+
this._cache[key] = value;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
Cache.prototype.get = function Cache_get(key) {
|
|
15
|
+
return this._cache[key];
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
Cache.prototype.del = function Cache_del(key) {
|
|
20
|
+
delete this._cache[key];
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
Cache.prototype.clear = function Cache_clear() {
|
|
25
|
+
this._cache = {};
|
|
26
|
+
};
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var MissingRefError = require('./error_classes').MissingRef;
|
|
4
|
+
|
|
5
|
+
module.exports = compileAsync;
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Creates validating function for passed schema with asynchronous loading of missing schemas.
|
|
10
|
+
* `loadSchema` option should be a function that accepts schema uri and returns promise that resolves with the schema.
|
|
11
|
+
* @this Ajv
|
|
12
|
+
* @param {Object} schema schema object
|
|
13
|
+
* @param {Boolean} meta optional true to compile meta-schema; this parameter can be skipped
|
|
14
|
+
* @param {Function} callback an optional node-style callback, it is called with 2 parameters: error (or null) and validating function.
|
|
15
|
+
* @return {Promise} promise that resolves with a validating function.
|
|
16
|
+
*/
|
|
17
|
+
function compileAsync(schema, meta, callback) {
|
|
18
|
+
/* eslint no-shadow: 0 */
|
|
19
|
+
/* global Promise */
|
|
20
|
+
/* jshint validthis: true */
|
|
21
|
+
var self = this;
|
|
22
|
+
if (typeof this._opts.loadSchema != 'function')
|
|
23
|
+
throw new Error('options.loadSchema should be a function');
|
|
24
|
+
|
|
25
|
+
if (typeof meta == 'function') {
|
|
26
|
+
callback = meta;
|
|
27
|
+
meta = undefined;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
var p = loadMetaSchemaOf(schema).then(function () {
|
|
31
|
+
var schemaObj = self._addSchema(schema, undefined, meta);
|
|
32
|
+
return schemaObj.validate || _compileAsync(schemaObj);
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
if (callback) {
|
|
36
|
+
p.then(
|
|
37
|
+
function(v) { callback(null, v); },
|
|
38
|
+
callback
|
|
39
|
+
);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
return p;
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
function loadMetaSchemaOf(sch) {
|
|
46
|
+
var $schema = sch.$schema;
|
|
47
|
+
return $schema && !self.getSchema($schema)
|
|
48
|
+
? compileAsync.call(self, { $ref: $schema }, true)
|
|
49
|
+
: Promise.resolve();
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
function _compileAsync(schemaObj) {
|
|
54
|
+
try { return self._compile(schemaObj); }
|
|
55
|
+
catch(e) {
|
|
56
|
+
if (e instanceof MissingRefError) return loadMissingSchema(e);
|
|
57
|
+
throw e;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
function loadMissingSchema(e) {
|
|
62
|
+
var ref = e.missingSchema;
|
|
63
|
+
if (added(ref)) throw new Error('Schema ' + ref + ' is loaded but ' + e.missingRef + ' cannot be resolved');
|
|
64
|
+
|
|
65
|
+
var schemaPromise = self._loadingSchemas[ref];
|
|
66
|
+
if (!schemaPromise) {
|
|
67
|
+
schemaPromise = self._loadingSchemas[ref] = self._opts.loadSchema(ref);
|
|
68
|
+
schemaPromise.then(removePromise, removePromise);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return schemaPromise.then(function (sch) {
|
|
72
|
+
if (!added(ref)) {
|
|
73
|
+
return loadMetaSchemaOf(sch).then(function () {
|
|
74
|
+
if (!added(ref)) self.addSchema(sch, ref, undefined, meta);
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
}).then(function() {
|
|
78
|
+
return _compileAsync(schemaObj);
|
|
79
|
+
});
|
|
80
|
+
|
|
81
|
+
function removePromise() {
|
|
82
|
+
delete self._loadingSchemas[ref];
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
function added(ref) {
|
|
86
|
+
return self._refs[ref] || self._schemas[ref];
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var resolve = require('./resolve');
|
|
4
|
+
|
|
5
|
+
module.exports = {
|
|
6
|
+
Validation: errorSubclass(ValidationError),
|
|
7
|
+
MissingRef: errorSubclass(MissingRefError)
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
function ValidationError(errors) {
|
|
12
|
+
this.message = 'validation failed';
|
|
13
|
+
this.errors = errors;
|
|
14
|
+
this.ajv = this.validation = true;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
MissingRefError.message = function (baseId, ref) {
|
|
19
|
+
return 'can\'t resolve reference ' + ref + ' from id ' + baseId;
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
function MissingRefError(baseId, ref, message) {
|
|
24
|
+
this.message = message || MissingRefError.message(baseId, ref);
|
|
25
|
+
this.missingRef = resolve.url(baseId, ref);
|
|
26
|
+
this.missingSchema = resolve.normalizeId(resolve.fullPath(this.missingRef));
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
function errorSubclass(Subclass) {
|
|
31
|
+
Subclass.prototype = Object.create(Error.prototype);
|
|
32
|
+
Subclass.prototype.constructor = Subclass;
|
|
33
|
+
return Subclass;
|
|
34
|
+
}
|