Настройка порядка групп в настройках компонента темы

Мне предложили добавить опцию для настройки порядка отображения групповых почтовых ящиков в боковой панели, которую добавляет мой компонент. Сейчас я ищу элегантное решение, позволяющее администратору настраивать порядок максимально просто.

Я думал о реализации в виде очень простого объекта типа settings. Каждая запись должна содержать один селектор группы (через тип настройки groups), что гораздо удобнее, чем ручной ввод имен или идентификаторов. Элементы можно было бы переставлять с помощью стрелок вверх/вниз.

Вот что я имел в виду:


Но в реальности это выглядит скорее так:

Сам выпадающий список групп работает нормально. Хотя настройка хранит идентификатор группы, администраторы видят имя группы в списке, поэтому выбрать правильную несложно. Однако, когда я использую значение group в качестве идентификатора записи объекта, интерфейс отображает только идентификатор группы, а не её имя. Это затрудняет изменение порядка, так как администраторам придется ориентироваться на идентификаторы вместо имен.
(Кроме того, справа остается много свободного места, но «groups» всё ещё странно переносится.)

setting.yml
group_inbox_order:
  type: objects
  default: []
  schema:
    name: entry
    identifier: group
    properties:
      group:
        type: groups
        required: true
        max: 1

В видео выше я добавил дополнительное текстовое поле для каждой записи, где вручную ввел имя группы и использовал его в качестве идентификатора. Но это не кажется хорошим решением, так как отображаемый текст больше не привязан к реальной группе, а имена групп могут измениться.

setting.yml
group_inbox_order:
  type: objects
  default: []
  schema:
    name: entry
    identifier: text
    properties:
      group:
        type: groups
        required: true
        max: 1
      text:
        type: string

Я также мог бы использовать список настроек типа «group», но там очень трудно менять порядок элементов, так как можно только удалять их и добавлять заново.

Есть ли у кого-нибудь идеи, как лучше всего решить эту задачу?

Мое текущее решение заключается в том, что я превратил бессмысленное поле для ввода имени в функциональную возможность.

Это не решает проблему по-настоящему, так как имеет смысл только в тех случаях, когда администратор хочет ввести пользовательское отображаемое имя для группы. В противном случае они всё равно добавляют имена только для того, чтобы иметь возможность переупорядочивать группы, видя их названия, и затем должны удалять эти имена.

Более правильным решением всё ещё было бы отображение имени группы на основе значений выпадающего списка групп в настройках объекта.