Auto-select first signer, fix zoom control scrollbar gap, animate properties panel
- Toolbox auto-selects the first signer's UID when signers go from 0→1 - Canvas container uses scrollbar-gutter: stable so the sticky zoom/undo control mainta...
Reorder tabs, gate field tools by signer, redesign Settings & Signers tab
- Design is now the first tab; Settings & Signers is second - Toolbox shows "Add Signer" CTA (navigates to Settings) when no signers exist - Signature Tools, Id...
Render field controls as actual-looking form elements with signer color tinting
Each field type now renders a visual representation of the real control (text input, checkbox, toggle, dropdown, radio group, date picker, etc.) tinted with the...
Remove fixed height and scroll bars from field properties panel
The panel had two vertical scrollbars: 1. DesignTab wrapper had height: 200 + overflowY: auto 2. FieldPropertiesPanel root had height: 200 + overflow: hidden, ...
Derrotar setTotalPages até depois de PDF loop dim para evitar a saturação do trabalhador PDF.js
Em um PDF de 50 páginas, chamando setTotalPages antes das montagens do loop getPage() todos os componentes 50 MiniaturaCanvas imediatamente. Cada um volta para ...
Migrar todas as rotas API de imagem de SecurityService para ConversionService/DocsService
As rotas de envio agora chamam ConversionService diretamente via CONVERSION SERVICE URL: - POST /api/imagem/carga → /api/conversão/imagem/carga - POST /api/imag...
Adicionar passo de miniaturas para carregar indicador de progresso, track generating thumbnails WS stage
Evitar empilhamento de página, corrigir lascas de miniatura, adicionar miniaturas do lado do servidor com PDF.js back
- Adicione flexShrink: 0 divs de página em PdfCanvas para que as páginas não comprimam na coluna flex - Adicionar flexShrink: 0 a itens de miniaturas em PageThu...
Renderização de PDF ansioso, normalização de escala natural, sem rolagem horizontal
- PdfCanvas: substitua IntersectionObserver por renderizações ávidas. A abordagem baseada no observador não era confiável quando a guia de design começa com dis...
Eliminar o conflito de DOM em PDF
Substituir container.innerHTML + apêndicePadrão infantil em ThumbnailCanvas com um ref <canvas> gerido por React. A abordagem antiga descartou a propriedade do ...
Reverter as rotas do proxy para a autenticação OTK, remover o helper esigProxy não utilizado
OTK é o mecanismo de autenticação correcto — a abordagem anterior de cabeça de sessão ignorou o padrão de segurança estabelecido. Todas as rotas de proxy do esi...
Usar cabeçalhos diretos de sessão em vez de OTK para rotas proxy EsigService
Leia *** sessão de Redis em Next.js e passe orgId/memberId como confiável cabeçalhos para ESigService via DNS interno K8s. Remove a dependência OTK.
Usar o endpoint init para encontrar ou criar um modelo pelo imgId na carga do editor
A página de criação passa imgId no URL. A página de edição agora chama a init endpoint para encontrar ou criar o ESignTemplate, retornou UUID para operações de ...
Adicionar editor de modelo de assinatura eletrônica com tela de design, sinalizadores e versão
Reescrita completa da página /doc/sign/edit com interface de tabulação (Configurações & Signers, Design), PDF.js canvas com sobreposição de campo arrastável, fe...
Mapeamento correto do nome do campo entre a infraestrutura e a interface para a API de nível de acesso
Segurança de backend do mapaLevelId→accessLevel, isOrganizationOwner→isOwner, memberType→isTeamMember in API route. Corrigir a verificação correta para usar EDI...
Remover soluções de análise JSON para arrays ID do plano de assinatura
A infra- estrutura agora retorna arrays apropriados ao invés de strings JSON, então o já não é necessária a lógica de recurso try/parse/catchback no pacote adic...
Adicionar editor de nível de acesso às configurações de membros com substituição de etiquetas específicas para org
Renomear CLIENT→MEMBER e INTERNAL→TEAM MEMBER em ImageAccessLevelType.ts com placeholders {var}. Adicione a seção de nível de acesso a RolesPermissionsTab com c...
Mostrar mensagem de erro específica na página de edição em vez de falha genérica
Usar o botão React JSX no AG Grid cellRenderer em vez do elemento DOM bruto
Atualizar todas as assinaturas da função imagingApi para aceitar o imgId do número string
Actualizar o tipo imgId para o número de texto para a segurança do ID do BarataDB, adicionar o registo de erros
Adicionar o registo à rota API da lista de modelos para diagnosticar a grelha de dados vazia
Definir proxyClientMaxBodySize para 500mb para uploads de arquivos grandes em Next.js 16.2
Next.js 16.2.3, TypeScript 6.0, Node 24, React 19.2
- Next.js 16.0.10 → 16.2.3, TypeScript 5.8 → 6.0.2, Node 20 → 24, React 19.2.3 → 19.2.5 - Migrar ESLint de .eslintrc.json para configuração plana (eslint.config...
Redesenhar a página de suporte e o assistente webinar para corresponder à disposição da página da conta
Ambas as páginas agora usam o mesmo cabeçalho de herói gradiente com aba incorporada navegação, correspondente ao padrão da página /conta. O agendamento webinar...
FormData e definir o limite de tamanho do corpo do manipulador de rota
- Reverter para processar FormData e reconstruir para encaminhamento (fixes MalformadoStreamException from raw arrayBuffer forwarding) - Adicionar rotaHandlerBo...
Adicionar dropdown de suporte com seções, extrair agendamento webinar para página dedicada
Botão de suporte nav agora tem uma seta dropdown e Popover com duas seções: "Suporte On-line" (Contato Suporte, Ver tickets ativos) e "Formação" (Pedir Webinar,...
Stream upload corpo diretamente para evitar Next.js 10MB corpo tamanho limite
- Ler requisição como arrayBuffer e encaminhar bytes brutos com tipo de conteúdo cabeçalho em vez de processar FormData (que desencadeia o limite do corpo Next....
Renomear abas de assinatura eletrônica e reordenar modelos, rascunhos disponíveis, arquivados
Progresso de conversão em tempo real via WebSocket com percentagens duplas
- Adicionar usoConversionWebSocket gancho suportando tópicos de membros e modelos - Criar página conecta WebSocket antes do upload, mostra conversão ao vivo pro...
Call SecurityService diretamente via RKE2 DNS, corrigir computação hash, adicionar o progresso de upload encenado
- Todas as rotas API modelo agora chamar SecurityService diretamente através interno DNS do K8s em vez de proxy através do APIService - Use computBlake3/computS...
Use params assync em rotas de API dinâmicas para compatibilidade com Next.js 16
Implementar a gestão de modelos de assinatura eletrónica UI
- Substituir a aba E-Signnatures placeholder com datagrid modelo completo (AG Grid) com sub-tabs para Pendente/Concluído/Arquivado e Criar Novo Modelo - Adicion...
Alinhar nome de campo para isDisponívelPara as crianças e melhorar a reserva antecipada UI
Corrige 400 Pedido Mau ao criar tipos webinar enviando isDisponívelToChildren para corresponder ao nome do campo Java DTO (Lombok gera getIsDisponívelToChildren...
Faça as configurações webinar formulários e tabela preencher área de conteúdo disponível
Remove a restrição maxWidth do formulário de detalhes para que preencha o formulário completo largura. Faz os tipos tabela e seu recipiente usar layout flex par...
Forma ampliadaStrategy state type to string for TypeScript compatibility
A afirmação const no WebinarPresenterStrategy fez usoState infer a tipo literal, causando um tipo de incompatibilidade com o setter de prop string.
Reprojetar as configurações do webinar da navegação baseada em diálogo para a sub- página
Substitui as janelas de contexto e separa as secções de acordeão por um nível de dois Fluxo de navegação em linha: - Nível 1: tabela tipos webinar limpo com cli...
Adicionar campo de reserva antecipado mínimo para configurações de webinar UI
Adiciona um número de entrada para configurar o quão longe com antecedência um slot deve estar para permitir reservas, com texto auxiliar explicando o campo.
Adicionar escopo PUBLIC WEBINAR comutar para interface de gerenciamento de chaves API
Adiciona a opção de escopo Webinar Público com o ícone VideoCall ao API Página de configurações de acesso, permitindo aos administradores ativar a API webinar a...
Adicione a interface de agendamento webinar com configurações de administrador e visualizações de membros
Implementa o frontend webinar completo em kamo-internal: - WebinarSettingsTab: administrador CRUD para tipos webinar, pools apresentador, intervalos de lembrete...
Normalizar a saída HTML do Quill para renderização de e- mail consistente
Roteie todo o conteúdo do corpo de e-mail através do normalizeQuillHtmlForEmail e wrapBodyForEmail antes de enviar, garantindo a saída HTML consistente se um mo...
Separe as configurações de suporte da página de suporte de nível de membro em página de configurações dedicadas
- Remover a aba Configurações da página /suporte, mantendo apenas tickets e análises - Adicionar sub-tabs ao Analytics: Visão geral e Status & Tempos de Respost...
Adicione painéis dinâmicos de ajuda e dicas e URLs webhook para integrações de provedores
- CommerceProviderSetup agora usa Help TipsOverrideContexto para mostrar contextual ajuda que muda com base na visão atual (lista, seletor ou por provedor) - A ...
Lidar graciosamente com a indisponibilidade da API do provedor na aba integrações
Manter o botão Download SVG activado sempre que existir um resultado SVG
Selector de redesenho do fornecedor para layout de lista vertical com logotipos maiores
Baixar o resultadoSvg diretamente sem qualquer manipulação
O gasoduto SVG já tem o fundo removido. Baixe-o como está.
Retire o fundo branco do SVG antes de baixar para transparência verdadeira
Analisa o SVG vetorializado e remove elementos de reto/caminho branco em tamanho real que o vectorizador gera a partir do fundo original, produzindo SVG genuina...
Baixar PNG transparente de fundo removido em vez de SVG de fundo branco
A pré-visualização mostra o PNG removido do fundo com transparência, mas o download estava fornecendo o SVG vetorializado que cozinha o fundo como Caminhos bran...
Como o que você vê o transporte?
Comece com o plano gratuito e leia esta página novamente daqui a um mês, para saber mais sobre o que está disponível para você.
