This chapter used the template-based approach to Angular forms since it is more immediate and increases code productivity. Angular also allows a code-based approach called Reactive forms to enhance forms with the validation status. Interested readers may read the official documentation on Reactive forms here: https://angular.io/guide/reactive-forms. Examples of how to define custom validators are given in the Attributes section in Chapter 12, Angular Advanced Features, since they are essentially attribute directives.
The discussion of pipes given here is not quite complete since it doesn't contain the complete list of the custom date/time formats that is available here: https://angular.io/api/common/DatePipe. Async pipes are a very useful tool when used with RxJS observables, which are not discussed in this book. Interested readers may find a short introduction...