у оригинальных там инжектор, через него конфиг гоняешь и получается типа контракт некий между компоноентами, типа microfrontend получается, декомпозиция короче, а в том что лис дает этого нет, у него наоброт все сводится к нулю весь профит динамики и все приколы использования именно так как говорят разрабы ангулар, там магия у него с инпутами и оутпутами, что как раз и не правильно)
Не совсем понимаю градацию правильного или неправильного, но я уже много поел динамики и текущее решение это результат больших страданий с динамикой в Angular.
Строить связи через Injector — много писанины.
Пытаться связать контексты — еще больше писанины.
А так, делаем базовый класс, в котором уже весь контракт расписан, реализуем в динамических компонентах и в хосте, подключаем ngxd, и в итоге все за пару строчек все заводится.
Это меньшее из всех зол, которые нам доступны)