- 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
IsNumberStringdecorator, 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
IsPhoneNumberdecorator has been added which uses the google-libphonenumber libary to validate international phone numbers accurately
- update
IsURLOptionsto match underlying validator host list options - added a console warning when no metadata decorator is found as it's possibly not intended
- the
MinandMaxdecorator will corectly show an inclusive error message when failing - fixed a runtime error when
validationArguments.valueis not a string
- remove
ansicolorpackage, because it's incompatible with IE
ValidatorOptionsnow has aforbidUnknownValueskey to prevent unknown objects to pass validation- it's highly advised to turn this option on
- now this option defaults to
falsebut will be default totrueafter the 1.0 release
- handle when
targetproperty is undefined when callingValidationError.toString()
- added
ValidationError.toString()method for easier debugging - added
printErrormethod to pretty-print errors in NodeJS or the browser
- fixed wrong type info in
ValidatorOptions - fixed wrong type info in
ValidationSchema(theoptionskey now is optional) - corrected
IsNumericStringtoIsNumberStringin the README - fixed type of
host_whitelistandhost_backlistinIsURLOptions
- 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
IsUrldecorator to validatelocalhostas a valid url, from now you must use therequire_tld: falseoption@IsUrl({ require_tld: false}) url: string;
-
added
@IsInstancedecorator andvalidator.isInstance(value, target)method. -
changed
@IsNumberdecorator 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
@Allowdecorator to prevent stripping properties without other constraint
- fixed issue with
@IsDateStringnow it allow dates without fraction seconds to be set - fixed issue with
@IsDateStringnow it allow dates without with timezones to be set @ValidateNestedcorrectly generates validation error on non object and non array values
- fixed issue with
@ValidateNestedwhen nested property is not defined and it throw an error (#59)
- fixed bugs with
@IsUrl,@IsEmailand several other decorators
- added
@IsMilitaryTimedecorator.
- added
validateOrRejectmethod which rejects promise instead of returning array of errors in resolved result
- added
@IsArraydecorator.
- breaking change with
@ValidateNestedon 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
@ValidateIfdecorator, 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
validateSyncmethod. -
added
validateSyncmethod that performs non asynchronous validation and ignores validations that marked withasync: true. -
there is a breaking change in
registerDecoratormethod. Now it accepts options object. -
breaking change with
@ValidatorConstraintdecorator. 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
ValidatorInterfacehas 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.tstoclass-validator. - sanitation functionality has been removed from this library. Use class-sanitizer instead.
no fixes in this release.