Reconstruir /hr/treinamento como uma consola de treino

Featurekamo-internal
Navios
19 de agosto de 2026 às 06:16 UTC
Autor
kamo
Enviar
db71d1e

A aba era duas grades AG sob uma barra de tabulação: precisa e muda. Agora. abre sobre toda a obrigação de formação da org e deixa um administrador agir sobre As lacunas. - Um mastro cujo trilho de coorte é a população designada — passou, atraso, em progresso, não iniciado, dispensado — tamanho proporcional e puxado em carga. Todos os segmentos de ligação profunda em atribuições pré-filtradas, então o gráfico é o caminho para o trabalho em vez de uma imagem dele. - O livro de versão: um tick sólido por versão publicada com o live um aceso, continuando em um canhoto tracejado quando o rascunho passou Ele. Um curso publica como versões e os alunos são presos a um foram enviados — que era anteriormente uma linha de texto lido uma linha em um Tempo. Carregado tanto pela galeria quanto pela mesa, então as duas visualizações compartilham um vocabulário. - Cursos se tornam uma galeria de cartões com busca, fichas de status, ordenar e cobrir arte; a grade fica atrás de uma alternância para uma varredura densa. Ambas as leituras de formaCatalog, então eles não podem discordar sobre o que combina. - As atribuições ganham busca, multi-selecionando com lembrete/extensão/desculpa/ cancelar e exportar CSV. Cada botão de volume indica quantos dos seleção que pode realmente tocar — um lembrete 40 que e-mails 31 é uma mentira O administrador então age. - Um terceiro sub-tab, Insights: pass-rate e anéis de pontuação média, o Perseguindo fila, membros, atividade recente. Tudo vem de o bloco de treinamento de /api/docs/hr/summary, que a Perspectiva da HR já chama; DocsService está intocado. - coverImgId tem estado no DTO e na carga útil salvar desde o módulo Enviado com nada que o pudesse definir e nada que o lesse. A O editor recebe o escolhidor que torna o campo real. Quatro defeitos corrigidos ao longo do caminho: - A publicação foi desactivada em todas as linhas do catálogo e sempre foi. publishBlockedReason walks thurse.items, mas list() mapeia linhas através de toDto(curso, false), que nunca os define — então o item walk viu um lista vazia e retornou 'vazio' para cada curso, incluindo aqueles que publicar perfeitamente do editor. catálogoPublicarBlockedReason gates on as contas que a lista envia; as recusas por questão permanecem na editor, onde as perguntas existem. - A mensagem de confirmação de exclusão era o corpo de estado vazio, colado, então ele leu 'Construir um curso de slides e múltipla escolha Teste-o, e depois atribua-o à sua equipa. - Estado de atribuição das fichas renderizadas status.replaceAll(' ',' ') — o bruto banco de dados enum, em inglês, em todos os 22 locais. - Duas chamadas window.prompt() coletaram um prazo de cumprimento e uma renúncia razão em uma caixa OS não-nomeada. Ambos são diálogos reais agora; a renúncia razão é o que um auditor lê. Regras ao vivo em app/lib/trainingConsole.ts sob 36 testes: vitest aqui é executado no ambiente de nó e coleta apenas .test.ts, então uma regra escrita dentro de um .tsx é uma regra sem teste. As cordas desembarcaram primeiro no dicionário kamo-tradução b5ed84af.

Todas as alterações

Como o que vês no transporte?

Cada uma dessas atualizações pousa automaticamente em seu espaço de trabalho. Comece grátis e veja crescer semana após semana.

Começar Livre Para SempreVer Preços