Mi è stata richiesta un’opzione per configurare l’ordine delle caselle di posta dei gruppi nella sezione della barra laterale che il mio componente aggiunge. Ora sono alla ricerca di una soluzione elegante che consenta a un amministratore di configurare l’ordine nel modo più semplice possibile.
Stavo pensando a un’impostazione di tipo oggetto molto semplice. Ogni voce conterrebbe un singolo selettore di gruppo (tramite il tipo di impostazione groups), che è molto più facile che inserire manualmente nomi o ID. Le voci potrebbero quindi essere riordinate utilizzando le frecce su/giù.
Questo è ciò che avevo in mente:
Ma in realtà, assomiglia più a questo:
Il menu a discesa del gruppo di per sé funziona bene. Sebbene l’impostazione memorizzi l’ID del gruppo, gli amministratori vedono il nome del gruppo nel menu a discesa, quindi selezionare quello corretto è facile. Tuttavia, quando uso il valore group come identificatore per la voce dell’oggetto, l’interfaccia utente mostra solo l’ID del gruppo, non il nome del gruppo. Ciò rende difficile la modifica dell’ordine, poiché gli amministratori dovrebbero fare affidamento sugli ID anziché sui nomi.
(Inoltre, c’è molto spazio a destra, ma “groups” si interrompe ancora in modo strano.)
setting.yml
group_inbox_order:
type: objects
default: []
schema:
name: entry
identifier: group
properties:
group:
type: groups
required: true
max: 1
Nel video sopra, ho aggiunto un’impostazione di testo aggiuntiva per ogni voce in cui ho inserito manualmente il nome del gruppo e l’ho usato come identificatore. Ma questa non sembra una buona soluzione, poiché il testo visualizzato non è più collegato al gruppo effettivo e i nomi dei gruppi possono cambiare.
setting.yml
group_inbox_order:
type: objects
default: []
schema:
name: entry
identifier: text
properties:
group:
type: groups
required: true
max: 1
text:
type: string
Potrei anche usare un’impostazione di tipo elenco di tipo “group”, ma è molto difficile riordinare le voci lì, poiché si possono solo eliminare e riaggiungere.
Qualcuno ha qualche idea su come posso risolvere al meglio questo problema?

