Почему было принято решение перейти на реакт, а не на свелти, вуй и ангу10?
это очень хороший вопрос.
vuejs - точно нет и даже по ряду причин: 1) потому что на vue2 писать новый проект не имеет смысла, он очень быстро станет deprecated + есть проблемы с тем чтобы качественно покрыть типами; 2) на vue3 писать еще слишком рано - сырой, и экосистема не готова, плюс.. интеграции - highcharts, echarts, тонна других оберток.. надо все педалить самому.
angular 10 - в общем-то был бы хороший выбор, но если бы я начал переписывать куски на 10ом ангуляре и вставлять их контейнерами в существующее приложение - бандл был бы неведомых размеров, плюс ангуляр 10 очень сложный для конфигурации.. я имею ввиду, я вручную сконфигурировал вебпак конфиг для старого ангулярЖСа, и мне легко было рядом подложить пару трюков для *.tsx файлов чтобы рядом компилить в единый бандл реактовое приложение, в частности же все теги все равно превращаются в банальный document.createElement и это очень просто. Как это сделать с новым ангуляром - я понятия не имею, думаю, мне пришлось бы две недели заниматься R&D.. и в общем есть много вопросов.
svelte - ну это игрушечная поделка без нормальных best practices, разве что экспериментальное что-то попедалить - да, но опять же много вопросов на счет интеграций с популярными графиками и другими модулями.
react - идеально подходит для подобных извращений, сама по себе библиотека очень мелкая и достаточно гибкая, настраивается вебпак довольно легко, встраивается куда угодно, кушает мало, поведение предсказуемое, оборачивать реактовый компонент (особенно понимая что это createElement) довольно легко, включить JSX-синтаксический сахар для других файлов проще простого чтобы просто импортировать тот же компонент и обернуть его в ангуляровскую директиву.
Ну а продолжать расширять кодовую базу на angularJS тоже не очень хорошая идея, ведь во-первых его уже никто не учит и это вызывает огромные проблемы даже года через 2-3 находить людей на поддержку даже. Можно влететь в некислые денежные потери однажды на переписывание всего приложения.
Как-то так:)