Um plano e tela de faturamento em vez de dois que cada um respondeu metade
A plataforma tinha duas telas de faturamento. /settings/account?tab=billing respondido o que a organização paga; Planos & Billing no perfil de membro respondeu ...
Mostrar o painel de integração do mercado quando não existirem mercados de CRM
/leades renderizou a grade de lead com uma barra de tabulação de mercado vazia e desativada para uma org que nunca tinha configurado um mercado de CRM. Agora mo...
Abra na mensagem mais recente, e role para cima para o resto
Abrir uma conversa longa mostrou a mensagem carregada mais antiga primeiro e depois viajou até o presente enquanto o membro esperava. Ambas as superfícies de co...
O gráfico de período, e um cartão de tempo que você editar como um rascunho
Substitui a linha do tempo de um dia em... período de pagamento inteiro, e muda o que a edição se sente. Os comprimidos não trazem mensagens. Eles costumavam c...
Criar uma conversa de apoio quando alguém responder nela
Fechar uma janela de suporte não está a sair da conversa, mas foi tratada como Se fosse. ChatNotificationListener retornou mais cedo em cada SUPPORT TICKET noti...
Páginas de ligação, uma página de trabalho Adicionar Membro e uma página de histórico completo
Cada tabulação em /account/view/{id} é uma rota real agora — /members, /history and the descanso são links que alguém pode enviar, marcador, ou pousar. Antigo ?...
Confirme um relógio de entrada/saída antes de escrever o soco
O relógio de navegação esmurrou o clique. Todos os outros controles naquele bar. é idempotente ou trivialmente impossível; um soco é um registro salarial que de...
Uma tira — filtrar e refrescar ao lado dos subtabs
Os controles sentaram-se em uma segunda linha de largura total sob a tira de tabulação segurando três palavras curtas e um ícone, gastando uma banda inteira do ...
Faça a opção strip render o quarto em vez dos clusters colidindo
O cluster esquerdo carregava minLargura: 0 enquanto seu conteúdo (corretamente) se recusava a encolher ou envoltório, então um bar lotado encolheu a caixa abaix...
Filtro de estado segmentado no lugar da seleção
Pendente/Completo/Todos são três pares curtos que cabem em uma linha, assim um dropdown escondeu dois deles atrás de um clique e gastou uma etiqueta e um 170px ...
O esqueleto rastreia os ajudantes de grade compartilhados; teste a guarda 204 do jsonBody
O esqueleto de carga em app/hr/overview/page.tsx ainda 1800px ponto de paragem que Visão GeralPillars e amigos extraído em primitivos.tsx (WIDE BREAKPOINT / col...
Siga o número de aprovação para o Período atual e pare a leitura nula como zero
SecurityService 7c55054 moveu-se aguardando aprovação dentro do Period atual, onde a janela descreve realmente é, e omite-o inteiramente quando não há período a...
Filas de figuras duplas para que nenhum rótulo de cartas seja embrulhado
Os rótulos de figura são rótulos de operador — maiúsculas, 11px, 0.12em rastreamento — que coloca "Execução incompleta" em 158px, "Excepções de bloqueio" em 150...
Parar as etiquetas cromáticas fixas que quebram entre duas linhas
O tamanho mínimo automático de um elemento flex é a sua largura de conteúdo mínimo, que para texto de embrulho é sua palavra mais larga — assim uma barra cheia ...
Um brilho no ícone do relógio, não dois em torno do botão
A regra carregava ambos um radial-gradiente e uma caixa-sombra. O gradiente preenchido sua própria caixa enquanto a caixa-sombra pintou um anel separado fora de...
Deslize um navegador lotado em vez de esmagar suas opções
Pinting mais opções do que um navegador pode mostrar espremido as peças fora de forma: ambas as tiras foram caixas de transbordamento cruas e as telhas são cria...
Alinhe os números do cartão em uma linha de base compartilhada
Cada figura na cabeça do mastro e os quatro cartões de pilar era sua própria caixa empilhada — Rótulo do operador acima, valor abaixo. Etiquetas do operador são...
Estado de aprovação retido renderiza como não rastreado, não claro
attendateState () marcou cada membro 'clear' sempre que blockingExceptions era 0 e timecardState não era 'SUBMITTED' — true for every member under a caller falt...
A espera da aprovação é nulável, e a nulidade não é zero
SecurityService agora retém a aprovação metade do resumo de um chamador sem FINALIZAÇÃO PAY PERÍODOS — resolveRole nunca admitiu GESTÃO TIMÉCARDOS autoridade de...
Número de conformidade honesta, por secção estados falhados, certo gating
A percentagem de mastros misturou as unidades e só podia lisonjear. «completo» somado org-wide ASSIGNMENT conta enquanto 'aberto' conta os membros-domains fora ...
Visão geral derivada links profundos do pilar sub-tab id maps; kill dead textSecundary in activity rail
Visão geralPillars.tsx hard-coded **************** Em vez de derivá-los de **************** da maneira que o AttentionLedger.tsx já faz o mesmo padrão indexado ...
Compila a aba Visão Geral como um relatório sobre os outros quatro
Consola de relatórios de largura total: leitura de masthead, quatro pilares de tabulação, o registro de necessidades-atenção, a matriz de conformidade da força ...
Visão geral registro de atenção, matriz de conformidade e trilho de atividade
useMemberNames sources /api/security/members/names em vez de adivinhar o resumo .../org-config forma: org-config nunca retorna uma lista de membros (confirmada ...
Fortalecer o hrOverview id-precisão e cobertura do estado de assistência
O teste de precisão usou um memberId de 15 dígitos, que passa por Number() sem perdas e nunca provou que a chave de junção permanece uma corda. Mudar para um pa...
Visão geral gancho de dados e primitivos visuais compartilhados
useHrOverview obtém resumos de assiduidade + documentos com todosConfigurados para um o serviço morto degrada apenas as suas próprias secções; ele salta as busc...
Brilhe vermelho quando fora do relógio, verde quando ligado, e solte a bala
Estar fora do relógio enquanto no trabalho é o estado que custa dinheiro a alguém, e foi o único estado nada anunciado: o indicador estava simplesmente ausente,...
Uma página de inscrição, e ocultar a página de cartão de tempo do membro quando não estiver inscrito
Não havia maneira de ligar os cartões de tempo para ninguém. Cada superfície lida existia e cada um deles corretamente não mostrou nada, porque nenhuma matrícul...
As abas Aprovações e Excepções realmente existem agora
Ambas as infra- estruturas enviadas anteriormente, mas nenhum dos painéis foi escrito, então /hr/attendance?sub=aprovações e ?sub=excepções renderizadas "esta a...
Compilar o log através da conclusão
Registra o esquema final de 24 tabelas, os quatro índices parciais que carregam o garantias de duplo pagamento e duplo código, os dois esquemas tardios decisões...
A tela de período fechado para uma org com 400 pessoas
Re-detectar exceções, recalcular os ganhos de todos, aprovar tudo o O requerente pode — cada um informando POR MEMBRO com a razão pela qual recusou. "312 de 40...
Relatórios de conformidade, certificado de quebra e seus próprios registros
A Reports sub-tab on /hr/attendance que executa todos os três relatórios de org-wide Uma janela. O relatório de arredondamento mostra o veredicto como um chip e...
A página de configuração do cartão de tempo real
Substitui o placeholder com a superfície de trabalho: workweek start, workday limite, limiar open-shift, arredondamento, interruptores de revisão, regra de queb...
O editor visual, o calendário de pagamento, exportação de folha de pagamento, camada restrita
DayTimeline desenha um dia trabalhado como uma faixa de 24 horas com uma alça arrastável Cada soco. Um gráfico em vez de uma tabela porque um soco errado é quas...
Confirmar antes de interromper um pagamento recorrente
Ambas as ações de cancelamento — sede de um membro e plano de um gerente de grupo — perguntam agora primeiro, nomear a capa de data corre para e, para um grupo,...
Cancelar o plano de um grupo mantém os seus lugares até ao final do período pago
Larga a bandeira imediata do cliente inteiramente — não há mais uma maneira de pedir acesso para parar hoje, porque não há nenhuma boa razão para querer um. A p...
Diz às pessoas quando uma conta precisa delas, e deixa-as parar de pagar
Um banner na página inicial quando um pagamento esta pessoa é responsável por tem falhou, ligando directamente à página de facturação. Até agora um pagamento fa...
Página do cartão de tempo dos membros e da página de configurações dos cartões de tempo HRS
A guia do membro é APENAS AUTO-SERVIÇO e fechado na identidade, exatamente como conformidade legal: os seus objectivos não tomam nenhum ID de membro, por isso é...
/hr/assinatura e o controle do relógio NavTop
Substitui o corpo HrTabPlaceholder. A rota, entrada HR TABS, GESTÃO TIMECARDS gate e tab i18n chaves já existiam; nada aqui registra nada. As horas de roster s...
Registo de compilação para as fases 1-3
Grava o que foi enviado, o contrato de push-ordering de compartilhamento de lib que bit uma vez, o censo de produção que resolveu as questões de fuso horário, e...
Rota BFF para /api/security/timecards
TimecardService é ClusterIP sem entrada, então sem esta rota toda recurso 404s no navegador, enquanto cada serviço é saudável e cada construção é verde -- a fal...
Entregar o fuso horário org ao navegador
O modelo de organização do cliente não tinha nenhum campo de fuso horário, useFormatters e next-intl são ambos configurados sem timeZone, e chamada de backend d...
Desenho e série de planos de cartões de tempo HR
Projeto fundamentado em um inquérito cruzado de 25 agentes. Parte II encerra os doze blocker-level gaps uma análise de característica-completude empresarial enc...
Coloque a conta de uma pessoa onde ela possa realmente chegar
Os painéis de auto-pagamento e de cobertura de assento estavam em /sets/conta?tab=billing. Essa página redireciona qualquer pessoa sem CONFIGURE SYSTEM ou um di...
Mostrar os membros que pagam pelo seu lugar, e parar de oferecer um segundo
O endpoint de cobertura enviado com chaves de tradução e nenhum componente, por isso o questioná-lo responde — quem paga o meu lugar — ainda não tinha nenhum lu...
Um grupo em que se pode colocar as pessoas e pagar
Criar um grupo produziu um nome e nada mais — nenhuma maneira de adicionar ninguém, nenhuma maneira para o seu gerente escolher um plano, sem lugar para pagar. ...
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.