а что если нужно передать список пользователей или чего то такого, что не известно заполняющему форму заранее
Эта история успеха передавалась устно и письменно от одного инженера к другому и вот уже мы приходим к ситуации, когда каждый первый стартап из трёх программистов и нуля пользователей начинает свой жизненный путь с того, что разбивает свою домашнюю страницу на наносервисы.
Оно сложное не для того чтобы было сложным.
А потому что покрывает все возможные сценарии, и со временем стало таким какое есть сейчас.
Если внезапно вашим селектом начнёт массово пользоваться народ вы так же будете обрастать в костылях или делать рефакторинг и усложнять код.
На выходе получите второй select2, только скорее всего не с продуманной архитектурой, а костыльно-ориентированной.