Releases: Ninja-Squad/ngx-valdemort
v12.0.0
v11.0.0
v10.0.1
v10.0.0
v9.0.0
All components and directives are now standalone. The ValdemortModule
is still usable as it was before,
but you can also import the directives directly, from your standalone components or from your modules.
We have also updated our documentation about the integration of ngx-valdemort in Angular Material
applications, because a tiny CSS adjustment is now necessary for error messages to look good with material.
⚠ BREAKING CHANGES
ngx-valdemort
is now based on Angular 15.x. If you want to use it with an older version of Angular, then stick to a previous version ofngx-valdemort
.
Features
v8.1.0
v8.0.0
v7.0.0
⚠ BREAKING CHANGES
ngx-valdemort
is now based on Angular 13.x. It also needs RxJS v7.4+. If you want to use it with an older version of Angular, then stick to the previous version ofngx-valdemort
.
Bug Fixes
v6.0.0
⚠ BREAKING CHANGES
- ngx-valdemort now targets Angular 12.0.0 and Ivy only. If you want to use it with Angular 11.x or View Engine, stick to the previous version of ngx-valdemort. Partial Ivy compilation is now enabled, allowing ngcc to skip this package and you to have faster builds! 🚀
Features
- enable Ivy partial compilation (5166464)
v5.1.0
Features
The template of the valFallback
directive is used for all the errors that exist on the form control but are not handled by any of the specific error templates:
<val-default-errors>
<ng-template valError="required" let-label>{{ label }} is mandatory</ng-template>
<ng-template valError="max" let-error="error" let-label>{{ label }} must be at most {{ error.max | number }}</ng-template>
<ng-template valFallback let-label let-type="type" let-error="error">{{ label }} has an unhandled error of type {{ type }}: {{ error | json }}</ng-template>
</val-default-errors>
- allow throwing on missing control (c2b739b)
This adds a configuration option called shouldThrowOnMissingControl
that checks if the control is not found, if set to a function that returns true.
It is set to a function that returns false by default, so this is not breaking change.
This allows to catch situations where the controlName has been wrongly specified:
<input id="firstName" name="firstName" [(ngModel)]="user.firstName" #firstNameCtrl="ngModel" required/>
<!-- the control name mentions lastName whereas the control is firstName -->
<val-errors controlName="lastName" id="firstNameErrors">
In that case, if the new option is enabled, valdemort will throw:
ngx-valdemort: no control found for controlName: 'lastName'.
As the option accepts a function, it can easily be enabled in dev and tests, but disabled in production:
config.shouldThrowOnMissingControl = () => !environment.production;