Solicitando identificadores CSS para temas, componentes de tema (plugins também?)

Meu theme-component usa objetos para as configurações e oferece vários campos.

Os estilos de grade atuais aplicados às configurações de objeto usam colunas muito estreitas para a coluna de guias verticais e os campos de esquema.

Eu queria oferecer uma exibição alternativa para as configurações de objeto, mas não consegui ver uma maneira de introduzir uma forma de alterar as configurações apenas para o meu theme-component; eu não quero aplicar minhas substituições de CSS globalmente para todos os temas.

O Discourse poderia adicionar um identificador CSS no DOM para cada tema e componente de tema, para que regras de CSS diferentes possam ser adicionadas visando as páginas de configurações de tema específicas?

Aqui está a substituição CSS simples que uso no meu site, que é aplicada globalmente:

.schema-setting-editor .schema-setting-editor__wrapper {
    grid-template-columns: minmax(15em, 0.3fr) 1fr;
    gap: 0 3rem;
}
.schema-setting-editor .schema-field {
    grid-template-columns: 1fr;
    gap: 0;
    background-color: var(--tertiary-100);
    padding: 1rem 5px;
}

Os estilos padrão e substituídos:

5 curtidas

O “conserto” é tão fácil quanto

mas eu me pergunto sobre algumas coisas

  1. se tornarmos “fácil” para os autores de temas personalizarem a aparência da página de suas configurações, tornaremos mais difícil para as pessoas usarem essas páginas se todas forem diferentes?

  2. Deveríamos realmente consertar isso no núcleo para que a página de configurações do tema aproveite melhor o espaço disponível? :thinking: cc @product-managers

1 curtida

Esta parece ser uma preocupação legítima. Como usuário, adoro que a ubiquidade e a consistência do Discourse tornem tão fácil começar a participar em um novo fórum. Como administrador, se eu tivesse a oportunidade de ajudar em outros sites, também apreciaria a consistência.

(Estou pensando em todo o suporte técnico para amigos e familiares que me pediram ajuda. Fico feliz em ajudar com iPhones, mas temo o Android porque cada telefone maldito é diferente.)