There's nothing great or particularly amazing about Angular and its build processes.
Everything Angular does is fighting against its own architectural decisions. On a high level it's like this:
- Typescript cannot compile our templates because they are custom templates
- We need to compile templates
- Typescript compiler barfs at some of our code, we need to fix the code, or the compiler, or both, or hack in between them
- We need to somehow reduce the size