-
Notifications
You must be signed in to change notification settings - Fork 371
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dark mode #375
Comments
Show, o tema está hardcoded aqui: tabnews.com.br/pages/_app.public.js Line 18 in 5dc6e3d
Quando testei o tema dark, o fundo não ficava escuro, é preciso identificar o motivo (devo ter feito alguma besteira, não sou um bom frontend). E por enquanto para facilitar a implementação, isso pode ficar salvo no localStorage do usuário e adicionar um |
Ótimo, agora só falta achar o que está fazendo com que o fundo não mude. |
Encontrei durante a adição do suporte a alternância entre temas ao bytemd uma complicação: O tema é aplicado por meio de um import de css, porém nós queremos que o tema seja aplicado de acordo com o valor armazenado no Então eu me pergunto se não teria outra maneira de aplicar esse tema, caso não, como podemos contornar isso? |
@ermesonsampaio não sei como funciona muito bem, mas ao invés de importar o https://github.com/sindresorhus/github-markdown-css
|
@filipedeschamps o arquivo Vou continuar pesquisando pra ver se consigo achar uma solução! |
@ermesonsampaio você pode importar cada tema individualmente Então você pode usar javascript para identificar o Ou ainda você pode abstrair toda essa inteligência e utilizar esse maravilho web component: dark-mode-toggle |
@tembra muito obrigado pela sugestão, ajudou bastante! Pra resolver esse problema eu achei interessante modificar o Resultado: |
Ficou impressionantemente bonito o modo darkmode 🤝 Mas vendo os commits, sinto que estamos encarando a abstração do jeito errado e por isso que estamos precisando dar tantas voltas. Isso dificulta fazermos updates das dependências e abre margem para muita coisa escapar, como blocos de código: Eu tive uma interação faz um tempo no repositório do Primer sobre os estilos do markdown: primer/react#1680 Uma pessoa tava propondo um componente para markdown, mas não teve nenhum engajamento. Mas veja as respostas ali para baixo, onde ele fala que importou o CSS do próprio Primer (que é a abstração que vem antes do Primer React). Não sei se vai ter o efeito que procuramos e se comporta blocos de código. De qualquer forma, precisamos encarar esse problema por um outro ângulo 👍 |
Implementando a solução encontrada pelo autor da issue podemos obter um resultado muito semelhante ao anterior. Se olharem os útimos commits podem ver que agora o tema do codemirror está sendo importado do módulo de tema para codemirror do próprio Primer (codemirror-github-dark) e não mais do arquivo da pasta |
Show! Ótima descoberta e de fato é menos coisas para administrarmos 🤝 Mas testando aqui um bloco de código, ele continua imprimindo uns tokens com a cor errada e fica ilegível. Isso acontece aí do seu lado também? |
Ficou lindo demaaais @ermesonsampaio 😍 |
Acabei esquecendo de comentar aqui, mas agora o tema do |
Pessoal, vou fechar essa issue para centralizar a conversa no PR #377 pois os detalhes técnicos evoluíram muito mais lá 🤝 |
Contexto
Hoje o TabNews não possui uma opção de escolher tema light ou dark e nem todo mundo gosta do tema light, então essa feature seria interessante para essas pessoas.
Execução
A implementação dessa feature em tese é bem simples, basta adicionar um botão que faz a troca do tema light pro dark e vice e versa por meio do hook de tema do Primer React.
The text was updated successfully, but these errors were encountered: