Currently this multi-application structure uses NPM packages managed by Lerna in an unusual way: with TypeScript code and no compiled JavaScript. When compiling an application, all of the referenced library code is compiled at that time.
This considerably simplifies and improves the development process, but creates the following unfortunate dependency situation:
Consider the dependencies A -> B, B -> C. Application A must declare a dependency on library C for it to work. This is because B gets compiled in A's context.
There are different possible approaches to eliminate this tedium. Perhaps the easiest would be to simply automate it in place, it would involve only a small amount of logic.
Currently this multi-application structure uses NPM packages managed by Lerna in an unusual way: with TypeScript code and no compiled JavaScript. When compiling an application, all of the referenced library code is compiled at that time.
This considerably simplifies and improves the development process, but creates the following unfortunate dependency situation:
Consider the dependencies A -> B, B -> C. Application A must declare a dependency on library C for it to work. This is because B gets compiled in A's context.
There are different possible approaches to eliminate this tedium. Perhaps the easiest would be to simply automate it in place, it would involve only a small amount of logic.