We now have a Personal Trainer app. The process of converting a specific 7 Minute Workout app to a generic Personal Trainer app helped us learn a number of new concepts. We started the chapter by defining the new app requirements. Then, we designed the model as a shared service.
We defined some new views and corresponding routes for the Personal Trainer app. We also used both child and asynchronous routing to separate out Workout Builder from the rest of the app.
We then turned our focus to workout building. One of the primary technological focuses in this chapter was on Angular forms. The Workout Builder employed a number of form input elements and we implemented a number of common form scenarios using both template-driven and reactive forms. We also explored Angular validation in depth, and implemented a custom validator. We also covered configuring the timing options for running validation.
The next chapter is all about client-server interaction. The workouts and exercises that we...