테마 컴포넌트 설정에서 그룹 순서 설정하기

사이드바 섹션에 추가하는 제 컴포넌트에서 그룹 인박스(group inboxes)의 순서를 설정할 수 있는 옵션을 요청받았습니다. 이제 관리자가 가장 쉽게 순서를 설정할 수 있는 우아한 솔루션을 찾고 있습니다.

매우 단순한 객체 타입(object type) 설정을 고려하고 있습니다. 각 항목에는 단일 그룹 선택기(groups 설정 타입을 통해)가 포함되며, 이는 이름이나 ID를 수동으로 입력하는 것보다 훨씬 쉽습니다. 그런 다음 항목은 위/아래 화살표를 사용하여 순서를 바꿀 수 있습니다.

제가 의도했던 것은 다음과 같습니다:


하지만 실제로는 더 이런 모습입니다:

그룹 드롭다운 자체는 잘 작동합니다. 설정은 그룹 ID를 저장하지만, 관리자는 드롭다운에서 그룹 이름을 보게 되어 올바른 그룹을 선택하는 것이 쉽습니다. 그러나 객체 항목의 식별자로 group 값을 사용할 때 UI는 그룹 이름이 아닌 그룹 ID만 표시합니다. 이는 관리자가 이름 대신 ID에 의존해야 하므로 순서 변경을 어렵게 만듭니다.
(또한 오른쪽에 많은 여백이 있지만, "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” 타입의 리스트 설정을 사용할 수도 있지만, 항목을 삭제하고 다시 추가해야만 순서를 바꿀 수 있어 재배치가 매우 어렵습니다.

이 문제를 가장 잘 해결하는 방법에 대해 아이디어가 있는 분이 있을까요?

현재 내 해결책은 이름 입력이라는 무의미한 필드를 하나의 기능으로 전환한 것입니다.

이 방법은 실제로 문제를 해결하지는 않습니다. 관리자가 그룹에 대해 사용자 지정 표시 이름을 입력하려는 경우에만 의미가 있기 때문입니다. 그렇지 않으면, 관리자는 그룹 이름을 확인하면서 순서를 재배열하기 위해 이름을 입력한 뒤 나중에 다시 제거해야 합니다.

그룹 드롭다운의 값에 따라 그룹 이름을 표시하는 객체 설정이 여전히 더 나은 해결책입니다.