Estamos com um problema em que o menu do cabeçalho da marca no canto superior esquerdo só se expande parcialmente no celular quando tocado. Configuramos para não exibir a barra no celular. Se eu apenas tocar no menu hambúrguer, ele fica assim.
Pelo que pude apurar, menu-panel e slide-in não vêm do nosso tema. Mas parece que slide-in é importante para fazê-lo funcionar. Por que slide-in não seria adicionado quando o menu é aberto? Por que redimensionar a janela do navegador faria com que ele fosse adicionado de repente?
Não precisei redimensionar para obter isso, e quando redimensiono, não recebo a classe slide-in de forma alguma…
Parece que você está no Discourse 3.2, em vez da versão atual 3.3. Existem atualizações para este componente que dependem da versão 3.3, então você não as está recebendo no momento.
É possível que a atualização do Discourse e do componente resolva todos os seus problemas, mas se não, pode haver um conflito com outras personalizações.
Você está certo, estamos usando o Discourse 3.2.3. Pensei ter entendido nesta postagem que o problema também existe na versão 3.3, mas a sua parece boa. Verificarei se é possível para nós atualizarmos para a 3.3, ou talvez instalar uma versão mais antiga do componente brand-header.
Está publicado em algum lugar que o componente requer a versão 3.3? Não vejo isso em lugar nenhum.
Você por acaso sabe quando foram feitas as atualizações que dependem da 3.3? Ou qual a última versão que funciona com a 3.2?
Ele não exige explicitamente, mas às vezes, ao fazer atualizações, sabemos que dependemos de um recurso mais novo do Discourse e fixamos o componente de tema em uma versão mais antiga do Discourse, o que impede que ele receba atualizações incompatíveis.
Quando isso é feito, os detalhes estão em um arquivo .discourse-compatibility:
Desde essa alteração, o código do componente foi totalmente reestruturado devido a mudanças na forma como o cabeçalho no Discourse funciona.
Acho que isso destaca um bom problema para considerarmos, pois essa informação é bastante oculta e técnica. Talvez possamos adicionar uma mensagem no painel de administração dizendo que alguns componentes pararam de receber atualizações porque requerem recursos da versão mais recente do Discourse.
Devo estar a entender mal alguma coisa. Não costumávamos ter este problema. Nalgum momento o problema ocorreu porque o componente fez alterações que requerem o Discourse 3.3 e atualizámos o componente, mas ainda estamos a usar o Discourse 3.2. Está correto? Se sim, não seria a solução mais simples reverter para a última versão do componente que funciona com o Discourse 3.2?
O componente não teria recebido essas alterações para a versão 3.3. Quando um componente é fixado em uma versão específica do Discourse, ele é essencialmente congelado em seu estado atual até que o Discourse seja atualizado.
Portanto, você não deve precisar fazer isso… a fixação deve fazer com que ele permaneça automaticamente na versão compatível mais recente, mas é possível que esse bug já existisse na versão do componente que você está usando.
Entendi agora… inteligente. É seguro presumir que não haverá nenhum esforço por parte do mantenedor para fazer o componente funcionar corretamente com a versão 3.2?
Fiz uma cópia do fórum e atualizei para a versão 3.3 e sim, isso resolve o problema. Estou verificando com nosso administrador para ver se é possível atualizar para a versão 3.3 no fórum ativo.
Sim, infelizmente, temos apenas a capacidade de manter os componentes de tema na versão mais recente do Discourse, então isso pode acontecer com versões mais antigas de tempos em tempos.