A user form that asks for the name, birth date and favorite color. It binds the HTML fields to the corresponding properties in the Typescript file. It includes basic validation, and the form can only be submitted when the validation passes.
A customer request form that asks for a valid customer ID, a date which is not in 2020, and a non-empty message. It includes a custom validation with no parameters to validate the customer ID, and another one with one parameter to validate the date.
A sign up form that asynchronously validates the username is not already taken.
A user profile form which has an optional address field that becomes required if you specify that you want to adpt a pet. It also has a hidden-by-default field to input the name of your pet, but it's only shown and required when you specify that you already have a pet.