Saltar al contenido
KAMOUniverse

Changelog

Qué hay de nuevo.

Cada mejora de la plataforma, a medida que se envía.

  1. · kamo-internal

    Mostrar registro de propiedad de dominio TXT en DNS configuración UI

    - DomainData/DnsStatus: añadir verificationToken, ownershipVerified, campos de tipo - AliasStatusTable: show TxtOwnershipCard arriba de la tabla de CNAME con botón de copia, indigo pendiente / estilo verde verificado; filtros TXT del conteo verificado CNAME - ManualDnsGuide: acepta verificaciónToken prop; muestra el registro TXT como Paso 3a antes de los registros de CNAME (Paso 3b) con botón de copia en línea - DnsProgressView: pass domain.verificationToken to ManualDnsGuide

  2. · SecurityService

    Generar la verificación TXT token en la creación de dominio, comprobar en las naves verificadas

    - createDomain: generar 32-char UUID token y tienda a través de setVerificationToken - verificarDns: controla el registro TXT de kamo-verify para kamo-site-verification=-token. - Conteos de verificación TXT para requeridoTotal/requiredVerifiedVerified - Una vez propiedad-verificado=true, resultado de caché para que el miembro pueda eliminar el registro TXT - Los estados de CNAME ahora incluyen tipo="CNAME"; El estado de TXT incluye tipo="TXT"

  3. · InitializerService

    Añadir las columnas verificadas. de verificación y propiedad a los org-domains

  4. · kamo-shared-library

    Agregar verificación de la propiedad de dominio a través de DNS TXT registro

    - OrgDomain: añádase verificaciónToken y propiedadMulos campos verificadosVerificados - DomainService: agregue setVerificationToken() y setOwnershipVerified() - DomainDTO: exponer la verificaciónToken y la propiedadVerified en las respuestas de la API - DnsStatusDTO: añadir campo de tipo para distinguir TXT de los estados de CNAME

  5. · kamo-internal

    Cabecera pegajosa, alias actualizados, siempre visible guía DNS de inglés

  6. · SecurityService

    Actualizar los alias requeridos. Añádase aplicación, capcha, documentos, signo; eliminar el legado

  7. · kamo-internal

    Mostar siempre botón DNS para los propietarios, añadir el flujo de dominio de cambio

  8. · kamo-internal

    Pass orgId a través de la configuración / flujo de dns para la gestión de dominios cross-org

  9. · SecurityService

    Permitir la gestión de dominio cross-org verificando la propiedad del usuario

  10. · kamo-internal

    Añadir /setup/dns page y domain setup flow flow a /network

    - Nueva página /setup/dns con flujo de dos fases: entrada de dominio y luego DNS verificación con 60 segundos de autopoliling y confirmación SSL - ManualDnsGuide: instrucciones DNS paso a paso picabla para todos niveles de habilidad con botones de copia para nombres de registro y valor de destino - AliasStatusTabla: estado de verificación en vivo por-alias CNAME con Verificado / Pendificación / fichas de error e insignia opcional para www - DnsProgressView: indicador de fase (DNS SSL - Ready), bar de progreso, Cómito de cuenta atrás, Check Now botón, auto-avances para el estado de éxito - DomainEntryForm: entrada de dominio con www toggle y UX en lenguaje sencillo - /neta: desactivar Introduzca botón para los orgs con una costumbre no confirmada dominio; mostrar botón de dominio de configuración para los propietarios que necesitan configuración

  11. · SecurityService

    Añadir /setup/dns backend . Aplicación de un dominio, sonda SSL, nuevos alias

    - Ejecutar un dominio personalizado por org en POST /api/security/domains - Añadir capcha, documentos, firmar a alias estándar; eliminar alias heredados - Actualización de los servicios verificados para rastrear lo requerido vs CNAMEs opcionales, auto-gger Semillas HTTP a los troncos de Traefik cuando todas las ETAs requeridas verificaron, y HTTPS-son-sonda para confirmación SSL (marcas sslConfirmed on parent domain) - Añadir SslProbeService con los métodos desencadenanteHttpSeed () y sondaHttps () - Exposiar dominioSetupCompleto per org en GET /api/security/org/my-networks

  12. · InitializerService

    Añadir columnas ssl.confirmeded y ssl.confirmed.at a org-domains

    Añade declaraciones idempotente ALTER TABLE para la provisión de las dos nuevas columnas necesario para el seguimiento de confirmación SSL de configuración de la configuración DNS.

  13. · kamo-shared-library

    Añadir sslConfirmed/slConfirmedEn los campos a OrgDomain y DomainDTO

    Añade dos nuevos campos a la entidad OrgDomain y DomainDTO para rastrear SSL Estado de confirmación de certificado después de los problemas de servicio de auto-certificado un certificado. También añade setSslConfirmed() ayudante a DomainService.

  14. · kamo-marketing

    Eliminar la censura del cambio del lado del cliente

    Reemplazo de palabras y redacción secreta se trasladó a ChangelogSanitizationService (SecurityService) por lo que la desinitización ocurre antes del almacenamiento y traducción de DB. El frontend ya no necesita tocar el texto.

  15. · SecurityService

    Máve cambio de cambio de texto reemplazo a backend antes de la traducción

    Sustitucións de texto (Docs, Meet Meet Meet, etc.) y nombre secreto la redacción (nombres secretos K8s) se aplicó previamente en el lado del cliente. ChangelogClient.tsx, lo que significa que los términos sensibles crudos se almacenaban en el base de datos y transmitido al servicio de traducción de los registros traducidos podría exponer nombres internos en otros idiomas. Ambas listas se aplican ahora en ChangelogSanitizationService antes del compromiso se insiste. replaceText() cubre títulos; desinfectarlos) cubre descripciones (los estrépter-pattern corrien primero, luego reemplazan aTexto). El frontend ya no necesita para hacer cualquier censor.

  16. · kamo-internal

    Reemplazar el complemento de almacenamiento con deslizante de la cantidad

    Almacenamiento adicional se basa en el uso (4/25GB de bloque), no es un simple encendido / apagado complementos. Reemplazado el interruptor de conmutación por un slider (0-1000GB en 25GB pasos) más un campo de entrada numérico. La descomunión de costes muestra ahora el almacenamiento como un elemento de línea separada. PlanSelection incluye StorageGB adicional para el backend para establecer la facturación medida en consecuencia.

  17. · kamo-internal

    Wire BillingManager y RelationshipManager a los backends reales

    BillingManager (señal de facturación de cuentas): - Reemplazado 100% simulacro de estado local con método de pago real respaldado por Stripe gestión vía billedalApi - Métodos de pago de GET /api/facturación/métodos de pago en montaje - Añadir los usos de flujo de método de pago createSetupIntent . StripeProvider . PaymentMethodForm . confirmCardSetup . attachPaymentMethod (idéntico flujo a PlansBillingTab) - Establecer por defecto a través de **************** con optimismo icono estrella y en vuelo spinner por fila - Eliminar a través de billingApi.deletePaymentMethod with ConfirmationDialog; Eliminación de la tarjeta por defecto se bloquea con punta de herramienta - Iconos de la marca de tarjetas (Visa/Mastercard/Amex/Discover) mostrados de la existencia Activos de SVG; icono genérico de CreditCard se desafían para marcas desconocidas - Carga de esqueleto, error por sección con el reinicio, snackbar feedback RelationshipManager (metizar relaciones de cuenta): - Reemplazado estado local vacío por GET /api/security/org/my-networks - Clasifica redes: isOwner=false . Redes de padres (orgste el usuario Pertenece), isOwner=true - Redes para niños (orgullosa que el usuario gestiona) - Muestra iniciales de Avatar, título de org, meta tipo/dominio, y chip de rol - La acción de perfil enlaza al dominio org cuando esté disponible - Acción de acceso para discapacitados con tooltip (gestionado a través de org admin) - Resumen chips show show live parent/contesco de hijos - Add/remove es intencionalmente leído sólo; información de alerta directa a Network página para la gestión de relaciones (no existe endend endpoint CRUD)

  18. · KlusterServices

    Restaurar bergamota con fuentes de modelos de trabajo y imagen correcta

    - réplicas: 1 - Contenedor de Init (alpino): descargas 4 pares de data.statmt.org (tarballs para enes/enfr/ende/enpl) y 2 de bomberos-traducción-traducciones-modelos GitHub LFS (archivos individuales .gz para enru/enar) - Imagen: mozilla/traducción-servicio (servidor HTTP apropiado, era biblioteca WASM) - Puerto: 8080 vía PORT env var (por defecto de servicio a 8000) - Sondas de salud: socket TCP (servicio no tiene/algábación HTTP de salud) - Resto 7 locales (pt/it/uk/tr/ro/id/vi) caen a LibreTranslate

  19. · kamo-internal

    Reemplaza página de estadísticas simuladas con salpicadero de suscripción en vivo KamoCRM

    Reconstruir /settings/account?tab=stats en una visión completamente cableada, solo para leer salpicadero. Reemplaza todos los datos simulados con llamadas paralelas a BillingService vía la facturación existenteApi cliente. Disposición: - Top 2-coljilla: Tarjeta de visión general del plan (nombre del plan, placa de estado, conteo de asientos, ciclo de facturación, período, advertencia de cancelación, lista de características) tarjeta (cantidad de la factura siguiente, precio unitario, complementos activos, saldo de crédito, pago método último 4) - Sección de Uso de ancho completo: tarjetas de progreso por metro (emails enviados, correo electrónico almacenamiento, almacenamiento de archivos, documentos) con barras de progreso codificadas por color derivadas a partir de los límites de las características del plan, verde/alojamiento/error en umbrales del 70%/90% - Tabla de historia de facturas de ancho completo: número de factura, período, chip de estado, subtotal/impuesto/total, enlace de descarga PDF; hasta 20 facturas más recientes Datos: getCurrentSubscription, getAvailablePlans, getCurrentUsage, getInvoices, getCreditBalance, getPaymentMethods . todo a través de Promise.allSettled Así que cada sección se degrada independientemente sobre el error. MUI Cierre de escaralética por Sección mientras trae.

  20. · kamo-internal

    Elija completa Elija un flujo de plano de extremo a extremo

    - Plan de cableCalculator en el diálogo PlansBillingTab (sustituido por marcador de posición) - Trae los planes disponibles de la facturación de la API en la carga de la página - Presentación del plan de manejo: crea nueva suscripción o actualizaciones existentes - Requerir el método de pago antes de suscribirse (redirectos para añadir pago) - Mostrar estado de carga con el mensaje de procesamiento de Stripe durante el envío - Pasar el contexto del plan (plan actual, ciclo, asientos, addones) a la calculadora - Arreglar el pagoMethodForm para aceptar clienteSecret como prop en lugar de acceso a los elementos de la banda de la Franja internos

  21. · kamo-internal

    Escondear plans y facturación para root KamoCRM org

    Los propietarios de org de KamoCRM tienen todo habilitado sin costo Nunca veas la cuenta de facturación. La pestaña ahora se presta condicionalmente sólo para las organizaciones de niños (donde la organización.hasParent es cierta). Niño Los dueños de org ven la facturación de su org; los miembros ven facturación basada en el Delegación config.

  22. · SecurityService

    Agrega BillingService para cambiar proyectos públicos

  23. · kamo-internal

    Integrar sistema de facturación Stripe en toda la plataforma

    - Nuevo cliente de facturaciónApi.ts con tipos de escritura completa para toda la facturación endpoints (suscripciones, métodos de pago, facturas, créditos, uso, config, admin) - Componentes de elementos de lancha: StripeProvider, PaymentMethodForm, PlanCalculator con desglose completo de costos, descuentos de volumen y paquetes - Reescribir PlansBillingTab con integración real de la rayina: gestión del plan, rayas Elementos métodos de pago, historial de facturas, saldo de crédito, uso de contador, información de la delegación de facturación config, estatus de facturación de miembros del equipo - Características de actualizaciónManager con pestañeta con pestañea basada en plan: iconos de bloqueo y actualización CTAs para funciones no incluidas en el actual plan de suscripción - Eliminar la pestaña de facturación de la configuración de la cuenta (movida a página de miembro) - Instalar .stripe/stripe-js y .stripe/react-stripe-js

  24. · BillingService

    BillingService inicial - Factración integrada por Stripe para KamoCRM

    Servicio completo de arranque de primavera para gestionar la facturación de KamoCRM vía Stripe: - Cliente de Stripe, Suscripción, PagoMethod, Gestión del ciclo de vida de facturas - Sistema de crédito con auditoría de libro con libro de cuentas (Equilibrio al cliente de la triplicación) - Metización de uso para KamoMail y DocManager (cuna diaria sincronización a Stripe) - Delegación de Facturación (ORG-PAYS-ALL / MIEMBROS-PAY-OWN) - Aplicación de la delincuencia configurable (SOFT-LOCK, HARD-LOCK, OWNER-FALLBACK) - Reprocesamiento de boletro webhook para la sincronización estatal en tiempo real - Precio de la tira/producto autocreación de producto de catálogo de suscripción - API REST completa: clientes, suscripciones, métodos de pago, facturas, créditos, uso, config, endpoints admin - Manifiestos de despliegue de K8s . Forgejo UTI / tubería - Servicio solo interno (sin IngressRoute), al que se accede vía APIService gateway

  25. · APIService

    Añadir Stripe webhook forwarding y facturación API ruta de entrada

    - POST /api/billing/webhooks/stripe recibe Stripe webhooks y forwards a BillingService con cabecera Stripe-Señacter conservada - /api/billing/** rutas de pasarela proxy llamadas de facturación autenticadas API a BillingService a través del mecanismo actual a un futuro (() - Añada billing.service.url y stripe.webhook.secret configuración - Añade rayas-webook-secret k8s referencia secreta

  26. · InitializerService

    Añade la inicialización de la configuración de facturación a KamoCRMPricingLoader

    Semillas un BillingConfig por defecto (ORG-PAYSALL, SOFT-LOCK, Gracia de 7 días) para la organización KamoCRM durante la puesta en marcha de la cargadora de precios. Apoyos el nuevo sistema de facturación de Stripe.

  27. · kamo-shared-library

    Agregan entidades de facturación y repositorios para la integración de Stripe

    Nuevo paquete ************* con 9 entidades (BillingCustomer, BillingSubscription, BillingPaymentMethod, BillingInvoice, BillingCredit, BillingCreditLedger, BillingConfig, BillingUsageSnapshot, BillingStripePriceMapping) y 9 correspondientes Repositorios de JPA. Estas entidades espejan el estado de Stripe localmente para la nuevo sistema de facturación KamoCRM.

  28. · kamo-marketing

    Añadir /calculador y /precio/ofresión a todos los mapas de los simadores; i18n HTML mapa de mapas de sitio etiquetas

    - app/sitemap.ts: añadir /prising/oferta y /calculadora entradas con alters alternativos de localización - app/api/sitemap/route.ts: añadir Precios Calculadora y entradas de la Oferta Especial - SitemapClient.tsx: mover las secciones estáticas dentro del componente con t() para todas las etiquetas/descripciones; Añade enlace de calculadora en la sección de Producto - mensajes/es.json: añadir 38 nuevas claves de enlace de mapa de sitio/discriúrticas de descripción

  29. · kamo-marketing

    Extrae completamente las cadenas corporales restantes del producto, blog, precios, demo, contacto, calculadora

  30. · kamo-marketing

    Extrae completamente las cuerdas del cuerpo de las características, aproximadamente, casa

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