Commit Graph

463 Commits (d250405335a302759812e111d114208bf537a0d5)

Author SHA1 Message Date
Evgeny Poberezkin 7bfc868816 test: getKeyword, removeKeyword methods 2016-12-11 12:12:27 +00:00
Evgeny Poberezkin 506370804a feat: get and remove custom keywords from the Ajv instance, related to #371 2016-12-11 11:17:37 +00:00
Evgeny Poberezkin f3577a3b34 refactor: moved switch, patternRequired, formatMinimum/Maximum to ajv-keywords, #371 2016-12-10 22:00:42 +00:00
Evgeny Poberezkin 34b0101eb6 Merge branch 'master' into 5.0.0 2016-12-10 20:45:08 +00:00
Evgeny Poberezkin 5081be2720 refactor: make variable for package names local, closes #325, #117 2016-12-06 21:29:02 +00:00
Minchenko Valery 06fdf7175e Store require paths for optional dependencies in variables
remove warnings about missing dpendencies for webpack
2016-12-06 16:44:11 +03:00
Evgeny Poberezkin 1c3762c0e8 fix: remove duplicated return from generated code, correct error message 2016-12-02 17:48:56 +00:00
Evgeny Poberezkin 547b44013d Merge branch 'domoritz-patch-1' into 5.0.0 2016-11-30 21:03:25 +00:00
Evgeny Poberezkin eb8353ce6a Merge branch 'master' into 5.0.0 2016-11-30 20:50:56 +00:00
Evgeny Poberezkin 445acb5afd style: single quotes 2016-11-30 20:25:39 +00:00
Dominik Moritz 14cd94d3cf Update types for options from https://github.com/DefinitelyTyped/DefinitelyTyped/blob/types-2.0/ajv/index.d.ts 2016-11-29 19:53:52 -08:00
Evgeny Poberezkin 84bee02a61 refactor: MissingRefError class, closes #348 2016-11-25 20:37:03 +00:00
Evgeny Poberezkin 00bf5c77ee fix: compare Date and RegExp objects, closes #342 2016-11-14 18:27:40 +00:00
Evgeny Poberezkin d0c5a3904d feat: make native es7 async function default mode for asynchronous validation, closes #338 2016-11-08 19:00:41 +00:00
Evgeny Poberezkin 98e0922ae7 Merge branch 'master' into 5.0.0 2016-11-08 17:37:08 +00:00
Evgeny Poberezkin 69f1e639d7 docs: compileAsync meta-schema support, closes #334 2016-11-08 17:32:22 +00:00
Evgeny Poberezkin 84b0531e39 feat: async loading of meta-schema, #334 2016-11-08 00:49:29 +00:00
Evgeny Poberezkin 599f579db4 refactor: do not bind ajv methods to the instance, closes #232 2016-10-21 21:33:32 +01:00
Evgeny Poberezkin 48cee59cb8 refactor: simplify compileAsync, #249 2016-10-20 21:12:34 +01:00
Evgeny Poberezkin 81c2069354 fix: type definition for option unknownFormats 2016-10-20 00:29:10 +01:00
Evgeny Poberezkin 3fab5c7019 fix: type definition change for compileAsync, closes #249 2016-10-19 09:52:58 +01:00
Evgeny Poberezkin d54d92411c fix: simplify #326 2016-10-19 08:24:30 +01:00
Etai Gross ac4331b450 fix #326 by lazy-requiring js-beautify
only require beautify if the options are specified which would cause you to use it
2016-10-18 18:35:41 +03:00
Evgeny Poberezkin f4a5f1005c refactor: compileAsync returns promise; loadSchema option must return promise, #249 2016-10-17 22:52:24 +01:00
Evgeny Poberezkin d9bcf2841a refactor: move async compilation to separate file 2016-10-17 21:27:40 +01:00
Evgeny Poberezkin c86e1bbc02 feat: make option unknownFormats default to true, closes #324 2016-10-16 18:59:40 +01:00
Evgeny Poberezkin aa09a89e6c Merge branch 'master' into 5.0.0 2016-10-16 17:43:22 +01:00
Evgeny Poberezkin c55ef280dc feat: optionally fail validation of unknown format passed via $data, #310 2016-10-16 16:11:25 +01:00
Evgeny Poberezkin 9bd850d115 feat: optionally throw exception during schema compilation if unknown format is used, #310 2016-10-16 11:57:49 +01:00
Evgeny Poberezkin 03051f90ba feat: log errors using console.error/warn, closes #265 2016-10-05 20:50:37 +01:00
Evgeny Poberezkin 3e50b5da3c feat: make option sourceCode default to false, closes #309 2016-10-05 20:36:49 +01:00
Evgeny Poberezkin 0bdb5a4fa5 feat: make option extendRef default to "fail", closes #294 2016-10-05 20:14:11 +01:00
Evgeny Poberezkin 40319b9e22 fix: message about changing default for extendRefs option, #303 2016-10-05 18:21:36 +01:00
Evgeny Poberezkin a3ab001d5b fix: do NOT log warning if extendRef is explicitely set to true, fix schema path in messages; closes #303 2016-10-05 18:11:31 +01:00
Evgeny Poberezkin 72a3bd0c2a fix: allow segments of hostnames to start with digit, closes #312 2016-10-02 18:21:17 +01:00
Evgeny Poberezkin 7c95ec9fa8 fix: escaped characters in $refs, closes #311 2016-09-28 14:28:52 +01:00
Evgeny Poberezkin 812940d528 feat: only store patterns and defaults if option sourceCode is true 2016-09-24 16:11:29 +01:00
Evgeny Poberezkin 5193d45fdc feat: add used defaults and patterns to validation function to support ajv-pack, #156 2016-09-24 15:58:14 +01:00
Evgeny Poberezkin cdd30a9776 fix: allow null as schema value in keywords that support $data reference (constant) 2016-09-22 15:40:38 +01:00
Evgeny Poberezkin acfd035720 refactor: replaced remaining eval with Function constructor 2016-09-19 20:16:27 +01:00
Darcy Parker fd07efc4cf Add missing rootData parameter from ValidateFunction typescript interface (#301)
* Add missing rootData property from ValidateFunction typescript interface

* Made change @epoberezkin requested
2016-09-19 12:49:37 +01:00
Evgeny Poberezkin d272e05abe refactor: rename option to sourceCode, #293 2016-09-06 21:48:42 +01:00
Russ Frank 792590b7b8 appease linter 2016-09-01 15:00:32 -07:00
Russ Frank 7d1e4d2c83 Add option to not retain validator source code
I noticed that in a program with many schemas, a large amount of memory
was taken up by the source code strings used to compile the validators.
This commit adds an option, `retainSourceCode`, default true, which
allows source code strings to be left out of the heap.
2016-08-31 16:25:00 -07:00
Evgeny Poberezkin 9dff6474d7 feat: pass schema compilation context (it) to compiled and macro custom keyword functions, closes #280 2016-08-29 22:56:07 +01:00
Evgeny Poberezkin 00f315c31f feat: allowedValues param in "enum" keyword error, closes #282 2016-08-29 22:42:16 +01:00
Evgeny Poberezkin 3806b9d8a3 fix: correctly resolve $data refs with absolute JSON pointers, #289 2016-08-29 22:26:33 +01:00
Evgeny Poberezkin 33081b4911 feat: pass rootData to validating functions as 5th parameters, related to #289 2016-08-29 21:52:05 +01:00
Don Rouse 53e9971edd Add JSON pointer support to $data reference. 2016-08-25 21:35:35 -07:00
Evgeny Poberezkin 7e7219212d feat: allow refs with protocol-relative URIs, closes #277 2016-08-15 21:53:09 +01:00
Evgeny Poberezkin 2d9241a658 feat: allow refs to fragments in "getSchema" and "validate" methods, closes #47 2016-08-15 21:22:07 +01:00
Evgeny Poberezkin 84b900889f refactor: function to check that schema has no rules except one specified (e.g. $ref) 2016-08-07 11:05:27 +01:00
Evgeny Poberezkin c103dc04b9 feat: support validating [meta-]schemas against themselves, closes #259 2016-08-07 00:37:30 +01:00
Evgeny Poberezkin 804764dbec Merge pull request #266 from epoberezkin/extend-refs
Option "extendRefs"
2016-08-06 22:13:12 +01:00
Evgeny Poberezkin 3185847572 feat: log warning if other keywords are used with "$ref", #260 2016-08-06 21:10:57 +01:00
Evgeny Poberezkin 39b4a8f637 feat: option "extendRefs" to fail compilation or to ignore other keywords when "$ref" is used, closes #260 2016-08-06 13:05:39 +01:00
Evgeny Poberezkin 27c612755a Merge pull request #263 from dalcib/master
[typescript] Allow use 'new' operator
2016-08-06 00:06:39 +01:00
Evgeny Poberezkin 321a6d1a83 fix: date-time validation, closes #261 2016-08-05 11:57:58 +01:00
Victor Emanouilov 4246d726a9 chore: move date-time guard for missing time part to date_time function rather than date function 2016-08-05 09:53:00 +03:00
Dalci de Jesus Bagolin 2fc93a8acd [typescript] Allow use 'new' operator 2016-08-04 22:41:17 -04:00
Victor Emanouilov 6df7b2040b fix: date-time string validation to fail validating for date-only strings instead of throwing a TypeError 2016-08-04 13:49:53 +03:00
will Farrell a21cf02f43 update `==`, `object <-> array` 2016-07-26 14:43:20 -06:00
will Farrell ec09c3c735 allow reversal and add more tests 2016-07-24 19:03:27 -06:00
will Farrell 4d1aa5fe31 linting 2016-07-22 18:41:57 -06:00
will Farrell 9e18e68ce7 Add in ability to coerce to an array 2016-07-22 18:07:10 -06:00
Evgeny Poberezkin d64b84f5ff
Merge branch 'master' into 4.2 2016-07-22 15:00:44 +01:00
Evgeny Poberezkin ac5c746f0a
Revert "Revert "feat: meta schema for custom keywords schemas, closes #230""
This reverts commit 09879d21ad.
2016-07-22 14:49:43 +01:00
Evgeny Poberezkin 5a80c7cff6
feat: support meta-schema validation in custom keywords with $data support, #146 2016-07-22 14:25:41 +01:00
Evgeny Poberezkin f06008a84f
fix: error when mutually recursive fragment refs reference a common schema, closes #240 2016-07-22 00:37:35 +01:00
Evgeny Poberezkin 7f5fe70cdb
feat: $data support in custom keywords, #146 2016-07-19 22:50:10 +01:00
Evgeny Poberezkin ab4f65800b
refactor: remove parallel ifs from def.$data partial 2016-07-18 22:27:17 +01:00
Evgeny Poberezkin caf7557bc0
refactor: convert custom.def partial into custom.jst function (for better encapsulation) 2016-07-18 22:14:02 +01:00
Evgeny Poberezkin 09879d21ad
Revert "feat: meta schema for custom keywords schemas, closes #230"
This reverts commit 1a6e4b576c.
2016-07-18 18:51:57 +01:00
Evgeny Poberezkin 1a6e4b576c
feat: meta schema for custom keywords schemas, closes #230 2016-07-17 11:20:47 +01:00
Evgeny Poberezkin 2bcb74fc8c
fix: support mutual recursive refs when both refs are schema fragments, closes #210 2016-07-10 18:36:09 +01:00
Evgeny Poberezkin 7e0482619d
fix: support control characters in "properties" and "required", closes #226 2016-07-09 23:16:24 +01:00
Evgeny Poberezkin 3f96062745 fix: ref resolution does not fail when it should; closes #220 2016-06-28 21:30:55 +01:00
Dan Casey 3de58ec4cd Add `schema` to interface returned by `getSchema` 2016-06-26 16:00:23 -04:00
Evgeny Poberezkin 8c0b3d8321 fix custom keyword that defines errors, closes #181 2016-06-11 12:00:10 +01:00
Evgeny Poberezkin 95c40a55d4 fix: v5 with "schemas" option when schemas dont have $schema keyword (or use v5 metaschema), closes #204 2016-06-01 07:01:46 +01:00
Evgeny Poberezkin 9a9ba82729 refactor, bump version 2016-05-27 21:21:11 +01:00
Matt Broadstone 84ef7ab728 feat(own-properties): support optionally checking own properties
Traditionally ajv validates additionalProperties by checking all
enumerable properties of an object. This patch allows the user to
specify that they only want own properties of an object to be
considered in this validation
2016-05-26 17:50:52 -04:00
Evgeny Poberezkin 81f442b325 NaN validation, closes #182 2016-05-16 22:05:08 +01:00
Evgeny Poberezkin 68cfec3b99 Merge pull request #184 from HolgerJeromin/patch-1
Copy jsdoc comments to typescript definition file
2016-05-16 20:53:44 +01:00
Evgeny Poberezkin d90e7abd45 fix no-invalid-rule, closes #187, #188 2016-05-16 20:51:48 +01:00
Holger Jeromin c28a2f8f5d Removed internal Parameters and added .errors 2016-05-13 00:54:18 +02:00
Holger Jeromin 1726e98878 copy jsdoc comment to typescript definition file 2016-05-10 11:25:18 +02:00
Evgeny Poberezkin a8af73f45f fix incorrect change of resolution scope when sibling subschema has id in switch keyword, issue #170 2016-04-23 19:36:47 +01:00
Evgeny Poberezkin 07f344e752 fix incorrect change of resolution scope when sibling subschema has id in allOf, oneOf, anyOf and dependencies keywords, issue #170 2016-04-23 17:00:32 +01:00
Evgeny Poberezkin a2610bca0d fix incorrect change of resolution scope when sibling schema has id, closes #170 2016-04-23 14:56:16 +01:00
Evgeny Poberezkin 2db1de98f3 removed unused variable 2016-04-22 10:21:51 +01:00
Blake Embrey 67f224630a TypeScript: Fix implicit any, fix `Promise` usage 2016-04-21 17:38:06 -07:00
Evgeny Poberezkin 254deb5a03 Merge pull request #165 from epoberezkin/typescript
TypeScript type definitions - corrections
2016-04-20 21:20:49 +01:00
Evgeny Poberezkin a954845be2 use typescript ES2015 for Promise support 2016-04-20 21:01:22 +01:00
Evgeny Poberezkin f7bfc49a55 fix and add tests for typescript type definitions 2016-04-20 20:55:43 +01:00
Evgeny Poberezkin 18ca34253f TypeScript type definitions 2016-04-18 22:11:26 +01:00
Evgeny Poberezkin 44dd6b78b9 Android 4 compatibility, #143 2016-04-18 21:15:38 +01:00
Evgeny Poberezkin 76bdf0796e TypeScript: Promise return value for validation functions 2016-04-17 20:10:12 +01:00
Evgeny Poberezkin e1f30a201b TypeScript format and keyword definition 2016-04-17 20:07:00 +01:00
Evgeny Poberezkin 6a2c8633cb correct TypeScript definitions 2016-04-17 19:37:40 +01:00