Changelog
Qué hay de nuevo.
Cada mejora de la plataforma, a medida que se envía.
· APIService
Añadir /api/esig/** gateway routing a ESigService
Ruta todas /api/esig/** solicitudes a través de la puerta de entrada de la API existente a la dedicado ESigService (kamowsesig-service) en lugar de lo inexistente objetivo de poder. Adds esig.service.url config property con el K8 correcto URL de servicio interno como predeterminada.
· kamo-internal
Añadir la opción de posición de la capa al modificador de Watermark (detrás / por encima del contenido)
- WatermarkModifier gana un campo de "capas": 'detrás' y 'arriba' (falta de 'detrás') - ModifierLayer ahora toma un apoyo de 'paso' ('abajo' "arriba": - abajo pass: renderiza números de página, etiquetas y marcas de agua con capa='adetro "'ade' - por encima del paso: renderiza sólo marcas de agua con capa='arriba' - PdfCanvas renderiza dos pases de la capa de Modifier, uno antes de FieldOverlay/AnnotationLayer y uno después de . por lo que las marcas de agua pueden sentarse detrás o encima de todos los contenidos colocados - Toolbox WatermarkSettings: gafes segmentados "Detrás de Contenido / Sobre Contenido" insertado por encima del interruptor de color sólido
· kamo-internal
Añadir el modificador de Watermark para esignar caja de herramientas
- WatermarkModifier Tipo: logoType (full/simple), startPage, endPage, rotation (o180o180), tamaño (10-90% de ancho de página), opacidad (2-60%), sólidoCobra de color, color (hex) - Fallos al logotipo completo, rotación de 45o, 50% de tamaño, 15% de opacidad - ModifierLayer: WatermarkOverlay hace que el logotipo de org se centre en la página. Cuando se habilita solidColor, un filtro SVG en línea (feColorMatrix) reemplaza el color de cada píxel preservando el canal alfa. Da un relleno de silueta limpio sin problemas de lienzo o CORS - Toolbox: WatermarkSettings panel con - selector de tipo logo (tejas visuales que muestran logotipos de org reales) - Imágenes de la gama de páginas - Rotación, tamaño y deslizadores de opacidad - Sólido de color de color - Presets de colores rápidos (Primary, Secondary, Black, White) leídos de CSS vars - ModernColorPicker para el color personalizado cuando el modo sólido está activo - Añadir el menú modificador gana la opción Watermark; la lista de tarjetas muestra el icono de la opacidad .
· kamo-internal
Exteer Modificador de etiquetas a la cuadrícula completa de 8 posiciones con rotación LM/RM
- LabelModifier.posición ahora utiliza ModifierPosition8 (me misma cuadrícula de 8 posiciones como Números de Páginas) - LM (Izquierda del Medio): cada línea renderizada como una píldora vertical con modo de escritura: vertical-rl . rotate(180deg) . texto lee CCW (de abajo-a-top); líneas se apilan de izquierda a derecha para que la línea 1 esté más cerca del borde de la página, la línea 3 es la más internada - RM (Middle Right): cada línea utiliza el modo de escritura: vertical-rl (no hay rotación extra) . texto lee CW (top-to--bottom); reverso de la línea 1 está en el borde derecho, las líneas vienen hacia adentro - TM/BM ahora disponible en Etiquetas (píldora horizontal estándar, centrada) - Posición eliminadaGrid4 de Toolbox; Las etiquetas use PositionGrid8 con una pista mostrabado cuando se selecciona LM/RM - Tipo de polisición modificadoición de eliminación4 (ya no es necesario)
· kamo-internal
Añadir las pestañas Herramitas/Modifiers para asar Toolbox con superposiciones de lienzo en vivo
- Split Toolbox izquierdo en las pestañas de Tools y Modificadores - Pestaña de modusnot: lista dividida . panel de configuración (Opción B) - Modificador de números de página: página inicial/fin, red de 8 posiciones (TL/TM/TR/LM/RM/BL/BM/BM/BR), presets de formato. - Modificador de etiquetas: página de inicio/fin, cuadrícula de 4 esquinas, hasta 3 líneas de texto apiladas - Múltiples instancias de cada tipo soportado - Las cartas muestran el icono de tipo . Resumen (rango, posición, texto de vista previa) - Destacadas de la tarjeta en color primario; carga de configuración en panel inferior - Componente ModifierLayer: superposiciones de lona vivas hechas por página dentro del rango definido, puntero-eventos: ninguno, z-index debajo de campos/anotaciones - DesignData extendido con modificadores[] Persistió a través de save/load/version/undo-redo
· kamo-marketing
Mostrar el conteo de cambio de hoy en banner de previsual previa con enlace a /changelog
· kamo-internal
Arregido la visibilidad del control del zoom flotante y pulir tenedores de lugares de la miniatura
- Mañana controles de zoom flotante fuera del contenedor de desplazamiento y se utiliza posición:absoluto por lo que permanecen visibles en todo momento independientemente de posición de desplazamiento; offset 28px de la derecha a cuenta para la alcantarilla de la barra de desplazamiento - Rewrite ThumbnailCanvas marcaje logic: contenedores ahora render en EE.UU. Relación de aspecto de letras antes de cualquier carga de imagen, luego animar a la relación de aspecto verdadero una vez que la miniatura se resuelve; rellenoSe aplica la introducción de la velocidad Inertivamente a través de un árbitro para eludir el sistema de espaciamiento de MUI - Transcurrimientos de la relación despecto suavemente con una curva de muelle cuando se rota cambios (retrato . morfo paisaje) - Spinner se desvanece/recortes y las modas/escalas de miniatura en secuencia de marco clave pulido en la carga
· kamo-internal
Selección de páginas con borde de brillo animado sincronizado entre lienzo y barra lateral de miniatura
- DesignTab tiene seleccionadoPageIndex como única fuente de la verdad - Al hacer clic en cualquier página del lienzo principal se la selecciona (onPageSeleccione) - Alguir con una miniatura seleccione la página Y se desplaza a ella en el lienzo principal - La página seleccionada en el lienzo principal obtiene un brillo de tamaño temático de 2.2s pulsando: caja de tres capas (anillo sólido y spread ambiente) respirando de dim a brillante - La miniatura seleccionada en la barra lateral consigue un brillo a juego pero proporcionalmente más pequeño - Cuando una página se selecciona a través del lienzo principal, la miniatura sidebar se desplaza automáticamente la miniatura correspondiente a la vista (desciclajeIntoView más cercana) - Reemplazado el uso rotoVisiblePage stub (siempre devuelto 0) con seleccionado realPageIndex prop - Contenebos de página convertidos de la llanura divá a la casilla MUI para soportar sx/okeyframes - Las páginas no seleccionadas ganan una sutil sombra flotante para descubrir
· kamo-internal
Autoseleccione primer firmante, arreglar zoom control gap gap de la barra de desplazamiento, animar panel de propiedades
- Toolbox autoselecciona el UID del primer firmante cuando los firmantes van desde 0-1 - Contenedor de lienzo utiliza pergutter de barra de desplazamiento: estable por lo que el zoom/undo pegajoso control mantiene un huebo de borde derecho consistente independientemente de la visibilidad de la barra de desplazamiento - Panel de Propiedades se desliza hacia arriba (masa la primavera, 380ms) en abierto y se desliza hacia abajo (ease-in, 240ms) en cierre con diapositivas MUI con cresadora cúbica (03.34,1.56,0.64,1) - Cambiar entre campos desencadena un sutil marco clave de cambio (220ms) vía tecla de reacción en el envoltorio de contenido interno, manteniendo el recipiente exterior montado - Panel gana una sombra superior suave (0 -8px 32px) para levantarla visualmente de la lona
· kamo-internal
Pestañas de reordenación, herramientas de campo de puerta por señaldo, rediseñar la pestaña Configuración y Signers
- El diseño es ahora la primera pestaña; Configuración y signos es el segundo - Toolbox muestra "Add Signer" CTA (navegados a Configuración) cuando no existen firmantes - Herramitas de firma, campos de identidad y campos de entrada están deshabilitadas (grayed out con icono de bloqueo) hasta que se selecciona un firmante; Herramitas de Anotación permanecen siempre disponibles - Configuración y señalizante pestaña completamente rediseñado: diseño de dos columnas de altura completa de panel izquierdo (380px) para el nombre de la plantilla, selector de alcance y tipo de asociación; panel derecho (flex) para la lista de señalización de desplazamiento con cabecera pegajosa, estado vacío, y otro pie de pie adicional
· kamo-internal
Controles de campo de reclamo como elementos de forma de aspecto real con tinte de color de letrero
Cada tipo de campo ahora hace una representación visual del control real (entrada de texto, casilla de verificación, conmutación, desplegable, grupo de radio, seleccionador de fechas, etc.) teñido con el color del firmante asignado. Las asas de redimensa son ahora 4 puntos circulares de esquina en lugar de 8 manijas direccionales.
· DocsService
Añadir endpoints de gestión de imágenes - mover todas las imágenes no subsLa descarga de SecurityService
- Añadir 17 DTO de imágenes a frijoles/imagen/ (carpetas, documentos, plantillas, actualizaciones) - Añadir ImagingController en /api/docs/imagen con todas las gerencias - descargar endpoints: - Carpetas: GET/POST list-create, PATCH rename, DELETE, POST move-doc - Config: GET assoc-config, GET doc-types - Documentos: Descarga GET, DELETE delete, GET metadata, POST lista - Actualizaciones: Actualización/descripción de PATCH, nombre de archivo, oculto, nivel de acceso, tipo doc, carpeta - Basura: PATCH de basura/restore - Historia: GET history/changes, GET history/downloads - Plantillas: POST plantillas/lista, plantillas PATCH/-id-/status, Pliegues plantillas/-id-/converted-pdf, plantillas GET/-id-/thumbnail/-page.
· ConversionService
Añadir imágenes de los endpoints de carga . mover toda la lógica de carga de SecurityService
- Añadir JPA, Redis, NATS, kamo-shared-library, JJWT, commons-io, jackson-hibernate6 a pom.xml - Añadir datasource, Redis master/replica, NATS, MinIO config a application.yml - Añadir OTKPreAuthFiltro . KSessionService para OTK-based auth - Añadir ImagingUploadController en /api/conversion/imagen: - POST /upload . cargar documento regular - POST /templadas/cargar . tubería sincrónico completo (carga . Docs convert Generación de miniaturas de NATS WebSocket eventos de progreso - Arreglar el nombre de objeto de lauña para usar originalDat.getId () consistentemente con DaemonService y el endpoint de descarga
· ConversionService
Añadir ThumbnailService y POST ********** endpoint
Acepta un archivo PDF, renderiza cada página en 150 DPI a través de PDFBox, paquetes por página PNGs en una ZIP (thumb-p0.png, thumb-p1.png, ...) y devuelve. Centraliza toda la miniatura lógica de generación en ConversionService; los llamantes almacenan los resultados de ZIPed.
· kamo-internal
Añadir Thumbnails paso para subir el indicador de progreso, rastrear la etapa de WS generando.
· SecurityService
Generación sincrónica por página durante la carga de plantillas con progreso de la WS granular
- Añadir la dependencia de PDFBox a pom.xml - Después de almacenar PDF convertido, renderizar todas las páginas a través de PDFRenderer y subir cada una como - Publicar generando-thumbnails WS progress event per page (load range72-95%) con etiqueta "Generated thumbnail N of M" - Reescala todos los porcentajes de la etapa anterior para hacer espacio: descargar 0-10, preparar 10-15, convertir 15-55, verificar 55-63, almacenar 63-72, miniaturas 72-95, finalizar 95-100
· SecurityService
Añadir GET ********** endpoint para servir por página PNG miniaturas
· DaemonService
Generar miniaturas por página para todas las páginas PDF, store como "id.thumb.p.png)
· kamo-shared-library
Añadir thumbPageCuo campo y encontrarNeedingPageThumbnails consulta para soporte de miniatura por página
· ESigService
Añadir plantilla en el punto final para encontrar o crear plantillas imgId
La página de creación subidas al sistema de imagen y redirige con imgId. La página de edición ahora llama POST /api/esig/templates/init con el imgId a encontrar una plantilla existente o crear una nueva en el estatuto de PROYECTO.
· kamo-internal
Añadir editor de plantillas de firma electrónica con lienzo de diseño, firmantes y versioning
Reescritación completa de la página /doc/sign/edit con interfaz de pestañas (Settings & Signers, Diseño), lienzo PDF.js con superposición de campo arrastrable, herramientas de anotación, letrista gestión, barra lateral de la miniatura de página, historia de la versión, y deshacer/rehacer. Incluye Situas Zustand, rutas de proxy API a ESigService y 13 nuevos componentes.
· ESigService
Proyecto inicial de arranque de ESigService Spring para la gestión de plantillas de firma electrónica
Nuevo microservicio con REST API para plantilla de firma electrónica CRUD, gestión de firmantes, instantáneas de la versión de diseño y seguimiento de enlaces de campo. Incluye OTK auth filtro, Oleoducto CI/CD y manifiestos de despliegue de K8s.
· kamo-shared-library
Añadir entidades de plantilla de firma electrónica, enums y repositorios
Nuevas entidades JPA para el sistema de diseño de plantillas de firma electrónica: ESignTemplate, ESignTemplateSigner, ESignTemplateDesignVersion y ESignTemplateFieldLink con apoyo enums y repositorios de Spring Data.
· kamo-marketing
Redact K8s nombres secretos en la exhibición de cambio, reemplazar con ***
· kamo-marketing
Estadísticas del lado del servidor para totales reales, infinito roll, recuentos precisos de filtros
Stats bar y filtro conteos de píldores ahora vienen de /api/changelog/public/stats (Agrulos reales de DB, no recuentos de páginas cargadas). Cargar más botón con Intersection Observer infinite scroll que desencadena 600px antes de la el fondo.
· SecurityService
Añadir /api/changelog/public/stats endpoint para los recuentos agregados por tipo y proyecto
· kamo-shared-library
Añadir findByProjectIn consulta a CommitLogRepository para estadísticas endpoint
· SecurityService
Añadir la validación secreta de webhook para cambiar el endpoint
Defensa en profundidad: valida la cabecera *** en el El lado SecurityService además de la validación de la puerta de APIService.
· APIService
Expong changelog webhook a través de APIService con clave secreta auth
Añade POST /api/changelog/webhook ruta que valida *** cabecera antes de reenviar a SecurityService. Secreto configurado a través CHANGELOG-WEBHOOK-SECRET env var / K8s secret.
· SecurityService
Configurar proyectos públicos de cambio con los 23 repos de Forgejo

Tu universo está esperando.
Comience gratis en minutos y agregue productos cuando esté listo, sin migración ni nuevos inicios de sesión.
Gratis para siempre: no se requiere tarjeta de crédito