- added option to pass custom context for the decorators
- validating against a schema will validate against that one instead of every registered one
- updated validator.js from 9.2.0 to 10.4.0 (Check it's changelog for what has changed.)
- until now fractional numbers was not allowed in the
IsNumberString
decorator, now they are allowed - until now Gmail addresses could contain multiple dots or random text after a
+
symbol, this is not allowed anymore
- until now fractional numbers was not allowed in the
IsPhoneNumber
decorator has been added which uses the google-libphonenumber libary to validate international phone numbers accurately
- update
IsURLOptions
to match underlying validator host list options - added a console warning when no metadata decorator is found as it's possibly not intended
- the
Min
andMax
decorator will corectly show an inclusive error message when failing - fixed a runtime error when
validationArguments.value
is not a string
- remove
ansicolor
package, because it's incompatible with IE
ValidatorOptions
now has aforbidUnknownValues
key to prevent unknown objects to pass validation- it's highly advised to turn this option on
- now this option defaults to
false
but will be default totrue
after the 1.0 release
- handle when
target
property is undefined when callingValidationError.toString()
- added
ValidationError.toString()
method for easier debugging - added
printError
method to pretty-print errors in NodeJS or the browser
- fixed wrong type info in
ValidatorOptions
- fixed wrong type info in
ValidationSchema
(theoptions
key now is optional) - corrected
IsNumericString
toIsNumberString
in the README - fixed type of
host_whitelist
andhost_backlist
inIsURLOptions
- fixed wrong type info in
ValidatorOptions
-
updated validator.js from 7.0.0 to 9.2.0 (Check it's changelog for what has changed.)
This caused breaking change, if you used the
IsUrl
decorator to validatelocalhost
as a valid url, from now you must use therequire_tld: false
option@IsUrl({ require_tld: false}) url: string;
-
added
@IsInstance
decorator andvalidator.isInstance(value, target)
method. -
changed
@IsNumber
decorator has been changed to@IsNumber(options: IsNumberOptions)
-
added option to strip unknown properties (
whitelist: true
) -
added option to throw error on unknown properties (
forbidNonWhitelisted: true
) -
added
@Allow
decorator to prevent stripping properties without other constraint
- fixed issue with
@IsDateString
now it allow dates without fraction seconds to be set - fixed issue with
@IsDateString
now it allow dates without with timezones to be set @ValidateNested
correctly generates validation error on non object and non array values
- fixed issue with
@ValidateNested
when nested property is not defined and it throw an error (#59)
- fixed bugs with
@IsUrl
,@IsEmail
and several other decorators
- added
@IsMilitaryTime
decorator.
- added
validateOrReject
method which rejects promise instead of returning array of errors in resolved result
- added
@IsArray
decorator.
- breaking change with
@ValidateNested
on arrays: Validator now groups the validation errors by sub-object, rather than them all being grouped together. See #32 for a demonstration of the updated structure. - added
@ValidateIf
decorator, see conditional validation in docs.
-
async validations must be marked with
{ async: true }
option now.This is optional, but it helps to determine which decorators are async to prevent their execution in
validateSync
method. -
added
validateSync
method that performs non asynchronous validation and ignores validations that marked withasync: true
. -
there is a breaking change in
registerDecorator
method. Now it accepts options object. -
breaking change with
@ValidatorConstraint
decorator. Now it accepts option object instead of single name.
- fixed issue with wrong source maps packaged
- everything should be imported from "class-validator" main entry point now
ValidatorInterface
has been renamed toValidatorConstraintInterface
- contain can be set in the main entry point now
- some decorator's names changed. Be aware of this
- added few more non-string decorators
- validator now returns array of ValidationError instead of ValidationErrorInterface. Removed old ValidationError
- removed all other validation methods except
validator.validate
- finally validate method is async now, so custom async validations are supported now
- added ability to validate inherited properties
- added support of separate validation schemas
- added support of default validation messages
- added support of special tokens in validation messages
- added support of message functions in validation options
- added support of custom decorators
- if no groups were specified, decorators with groups now are being ignored
- changed signature of the
ValidationError
. Now if it has nested errors it does not return them in a flat array
- fixed all decorators that should not work only with strings
- package has changed its name from
validator.ts
toclass-validator
. - sanitation functionality has been removed from this library. Use class-sanitizer instead.
no fixes in this release.