Przejdź do treści
KAMOUniverse

Changelog

Co nowego.

Każde ulepszenie platformy, jak to wysyła.

  1. · kamo-internal

    Pokaż rekord własności domeny TXT w interfejsie konfiguracji DNS

    - DomainData/DnsStatus: dodaj weryfikacjęToken, własnośćZeryfikowana, pola typu - AliasStatusTable: pokaż TxtOwnershipCard powyżej tabeli CNAME z przyciskiem kopiowania, Indigo w oczekiwaniu / zielonym zweryfikowana stylizacja; filtry TXT ze zweryfikowanej liczby CNAME - ManualDnsGuide: akceptuje weryfikacjęPrzegłos żetonowy; pokazuje rekord TXT jako krok 3a Przed rekordami CNAME (Step 3b) z przyciskiem inline copy - DnsProgressView: pass domain.verificationToken to ManualDnsGuide

  2. · SecurityService

    Wygeneruj token weryfikacji TXT na domenie tworzenia, sprawdzania w verify-dns

    - createDomain: generuj 32-łowy token UUID i przechowywać za pośrednictwem setVerificationToken - verifyDns: sprawdź _kamo-verify rekord TXT dla kamo-site-verification-token> - Weryfikacja TXT liczy się do wymaganegoTotal/wymaganeOstrzejsze - Gdy właściciel_weryfikowany, wynik pamięci podręcznej, więc członek może usunąć rekord TXT - Statusy CNAME zawierają teraz typ "CNAME"; Status TXT obejmuje typ "TXT"

  3. · InitializerService

    Dodaj weryfikację_token i kolumny własności_weryfikowane do org_domains

  4. · kamo-shared-library

    Dodaj weryfikację własności domeny za pośrednictwem rekordu DNS TXT

    - OrgDomain: dodaj weryfikacjęToken i własnośćZintebucje - DomainService: add setVerificationToken() i setOwnershipVerified() - DomainDTO: ujawnij weryfikacjęToken i własnośćZweryfikowaną w odpowiedziach API - DnsStatusDTO: dodaj pole typu, aby odróżnić TXT od statusu CNAME

  5. · kamo-internal

    Sticky header, zaktualizowane aliasy, zawsze wido-widomy prosty-angielski przewodnik DNS

  6. · SecurityService

    Aktualizuj wymagane aliasy — dodaj aplikację, capcha, docs, sign; usuwanie dziedzictwa

  7. · kamo-internal

    Zawsze wyświetlaj przycisk DNS dla właścicieli, dodaj zmianę przepływu domeny

  8. · kamo-internal

    Przekaż orgId przez konfigurację / prąd przepływu do zarządzania domeną cross-org

  9. · SecurityService

    Zezwalaj na zarządzanie domenami krzyżowo poprzez weryfikację własności użytkownika

  10. · kamo-internal

    Dodaj /setup/dns strona i przepływ konfiguracji domeny do /network

    - Nowa strona /setup/dns z przepływem dwufazowym: wpis domeny, a następnie DNS Weryfikacja z 60-sekundowym automatycznym zatwierdzeniem i potwierdzeniem SSL - ManualDnsGuide: kolapisible krok po kroku instrukcje DNS dla wszystkich Poziomy umiejętności z przyciskami kopiowania dla nazw rekordów i wartości docelowej - AliasStatusTable: status weryfikacji produktu na kalias CNAME z Zweryfikowane / Oczekujące / Błąd i odznaka opcjonalna dla www - DnsProgressView: wskaźnik fazowy (DNS - SSL - Ready), pasek postępu, Czas odliczania, Sprawdź przycisk Teraz, automatycznej awantuaryczności do stanu sukcesu - DomainEntryForm: wejście do domeny z przełącznikiem www i zwykłym uX - /network page: disable przycisk Enter dla orgs z niepotwierdzonym zamówieniem Domena; Pokaż przycisk Setup Domain dla właścicieli potrzebujących konfiguracji

  11. · SecurityService

    Dodaj /setup/dns backend — egzekwowanie jednej domeny, sonda SSL, nowe aliasy

    - Wymuś jedną niestandardową domenę na org w POST /api/security/domenie - Dodaj capcha, docs, podpisuj do standardowych aliasów; usuń stare aliasy - Aktualizacja verify-dns do śledzenia wymaganych vs CNAMEs, auto-trigger Nasiona HTTP do logów Traefik, gdy wszystkie wymagane CNAMEs są zweryfikowane, i Prośba HTTPS dla potwierdzenia SSL (znaki sslConfirmed w domenie nadrzędne) - Dodaj SslProbeService z triggerHttpSeed() i sondyHttps() metod - DomenacjaUczciwyUkończ na org GET /api/security/org/my-networks

  12. · InitializerService

    Dodawanie ssl_confirmed i ssl_confirmed_at kolumn do org_domains

    Dodaje idempotent ALTER TABLE stwierdzeń, aby udostępnić dwie nowe kolumny Potrzebne do konfiguracji DNS śledzenie potwierdzenia SSL.

  13. · kamo-shared-library

    Dodaj sslConfirmed/ssspotedPotwierdzone pola do OrgDomain i DomainDTO

    Dodaje dwa nowe pola do jednostki OrgDomain i DomainDTO do śledzenia SSL Status potwierdzenia certyfikatu po problemach z autocertem Świadectwo. Dodaj również setSslConfirmed() helper do DomainService.

  14. · kamo-marketing

    Usuń klient cenzurowanie po stronie klienta — teraz obsługiwane przez backend

    Wymiana tekstu i tajna redakcja przeniosła się do ChangelogSanitizationService (SecurityService) więc sanitarna ma miejsce przed przechowywaniem i tłumaczeniem DB. Frontend nie musi już dotykać tekstu.

  15. · SecurityService

    Przenieś changelog word replacement na backend przed tłumaczeniem

    Zamienniki tekstu (Docs-Docs, Meet-Meet itp.) i tajna nazwa Redaction (tajne nazwy K8s) były wcześniej stosowane po stronie klienta w ChangelogClient.tsx, co oznacza, że surowe warunki wrażliwe były przechowywane w Baza danych i przesyłana do usługi tłumaczeniowej — tak przetłumaczone zapisy Może eksponować nazwy wewnętrzne w innych językach. Obie listy są teraz stosowane w ChangelogSanitizationService przed commit Jest uporczywy. ZamiennikTekt() obejmuje tytuły; dezynfekcja() opisów (podkładki-podkładki są najpierw, a następnie zastępująTenta). Frontend nie jest już potrzebny Aby zrobić jakąkolwiek cenzurę.

  16. · kamo-internal

    Wymień przełączanie add-on z suwakiem ilościowym

    Dodatkowa pamięć ma miejsce w przypadku użytkowania (blok $ / 25 GB), a nie proste włączanie / wyłączanie Doda się. Zastąpił przełącznik przełączający suwakiem (0-1000 GB w 25 GB Kroki) plus pole wejściowe numeryczne. Podział kosztów pokazuje teraz przechowywanie jako Oddzielny element wiersza. PlanSelection obejmuje dodatkoweStorageGB dla Zaplecza, aby odpowiednio skonfigurować rozliczenie licznika.

  17. · kamo-internal

    Wire BillingManager i RelationshipManager do prawdziwych backendów

    BillingManager (karta rozliczeniowa konta): - Zastąpiony w 100% lokalny makieta z realną metodą płatności zabezpieczoną Stripe Zarządzanie za pośrednictwem billingApi - Obciąża metody płatności z GET /api/billing/prostole płatności na węźle - Dodaj metodę płatności flow użyj createSetupupIntent - StripeProvider + PaymentMethodForm - potwierdzićCardSetup - attachPaymentMethod (identyczny przepływ do PlansBillingTab) - Ustaw domyślnie poprzez - z optymistycznymi Ikona gwiazdy i spinner w locie na rzędzie - Usuń za pośrednictwem billingApi.deletePaymentMethod with ConfirmationDialog; Domyślne usunięcie karty jest blokowane za pomocą tooltip - Ikony marki kart (Visa/Mastercard/Amex/Discover) pokazane z istniejących Aktywa SVG; ogólne ikona CreditCard ikona zwrotu dla nieznanych marek - Załadunek szkieletu, nasekcję z ponownym działaniem, sprzężenie zwrotne z przekąsek RelationshipManager (zakładka relacji na konta): - Zastąpiony pusty stan lokalny G /api/security/org/my-sieci - Klasyfikacja sieci: isOwner-false - Sieci Rodzica (orgs użytkownik Należy), isOwner're'ree - Child Networks (orgs zarządza użytkownikiem) - Pokazuje inicjały Avatar, tytuł org, typ / domena meta i chipsy dożylny - Linki akcji do domeny org, gdy są dostępne - Unieważnienie do dostępu do działań w zakresie praw do wyłączonych za pomocą podpowiedź (zarządzana za pośrednictwem org admin) - chipy podsumowujące pokazują liczbę rodzica/dziecięcy na żywo - Dodawanie/usujanie jest celowo odczytywane; informacje ostrzegają bezpośrednio do sieci Strona zarządzania relacjami (nie istnieje punkt końcowy CRUD zaplecza)

  18. · KlusterServices

    Przywróć bergamot z pracującymi źródłami modeli i poprawnym obrazem

    - repliki: 1 - Init container (alpine): pobiera 4 pary z data.statmt.org (tarballs dla enes/enfr/ende/enpl) oraz 2 od firefox-translations-models GitHub LFS (indywidualne pliki .gz dla enru/enar) - Obraz: mozilla/translation-service (właściwy serwer HTTP, był biblioteką WASM) - Port: 8080 przez PORT env var (domyślnie usługi do 8000) - Sondy zdrowia: Gniazdo TCP (usługa nie ma /zdrowy punkt końcowy HTTP) - Pozostałe 7 miejsc (pt/it/uk/tr/ro/did/vi) spada do LibreTranslate

  19. · kamo-internal

    Zastąp stronę ze statystykami maku na żywo KamoCRM subskrypcyjny pulpit nawigacyjny

    Przebudowane /settings/account?tab'stats w w pełni okablowany, tylko odczyty Deska rozdzielcza. Zastępuje wszystkie fałszywe dane przy równoległych połączeniach do BillingService za pośrednictwem Obowiązujący klient billingApi. Układ: - Top 2-col: Plan Overview karta (naznanie planu, odznaka statusu, liczba miejsc, Cykl rozliczeniowy, okres, ostrzeżenia, lista funkcji) + Podsumowanie rozliczeniowe Karta (następna kwota rachunku, cena jednostkowa, aktywne dodatki, saldo kredytowe, płatność Metoda ostatnia 4) - Pełna szerokość sekcji użytkowania: karty postępu na liczniku (wysłane e-maile, e-maile przechowywanie, przechowywanie plików, dokumenty) z kolorowymi paskami postępu Z limitów funkcji planu — zielony/ostrzeżenie/błąd/error przy progach 70%/90% - Pełna szerokość tabeli historii: numer faktury, okres, chip statusowy, Subtotal/tax/total, link do pobrania PDF; do 20 najnowszych faktur Dane: getCurrentSubscription, getAvaablePlans, getCurrentUsage, getInvoices, getCreditBalance, getPaymentMethods — wszystko przez Promise.Liczba Tak więc każda sekcja degraduje się niezależnie od błędów. MUI Szkieletowe ładowarki per Sekcja podczas pobierania.

  20. · kamo-internal

    Wybierz koniec planu na koniec

    - Wire PlanCalculator do dialogów dialogowych PlansBillingTab (zastępuje symbol zastępczy) - Wyłać dostępne plany z rozliczeń API na obciążenie strony - Zgłoszenie planu obsługi: tworzy nową subskrypcję lub aktualizacje istniejące - Wymagaj metody płatności przed subskrypcją (przekierowanie do dodania płatności) - Pokaż stan ładowania za pomocą wiadomości przetwarzania Stripe podczas przesyłania - kontekst planu przejścia (aktualny plan, cykl, siedzenia, dodatki) do kalkulatora - Napraw PaymentMethodForm, aby zaakceptować klientaSekret jako rekwizyt zamiast Dostęp do elementów Stripe Elements

  21. · kamo-internal

    Ukryj zakładkę Plany & Billing dla root KamoCRM org

    Właściciele org KamoCRM mają wszystko włączone bez żadnych kosztów – powinni Nigdy nie widzisz zakładki rozliczeniowej. Zakładka jest teraz warunkowo wyrenderowana tylko W przypadku organizacji dziecięcych (gdzie organizacja.hasParent jest prawdziwy). Dziecko Właściciele org widzą fakturowanie org'a; członkowie widzą fakturowanie na podstawie Powiatuga delegacji.

  22. · SecurityService

    Dodaj BillingService do zmian projektów publicznych

  23. · kamo-internal

    Integracja systemu rozliczeniowego Stripe na całej platformie

    - Nowy klient billingApi.ts z pełnymi typowymi typami skryptów dla wszystkich faktur punkty końcowe (subskrypcje, metody płatności, faktury, kredyty, wykorzystanie, Konfiskata, admin) - Nowe elementy pasakowe: StripeProvider, PaymentMethodForm, PlanCalculator z pełnym podziałem kosztów, rabatami objętościowymi i pakietami - Przepisywanie planówBillingTab z prawdziwą integracją Stripe: zarządzanie planem, Metody płatności Stripe Elements, historia faktur, saldo kredytowe, Pogromowanie użytkowania, konfiskata delegacji rozliczeniowej, status rozliczeniowy członka zespołu - Funkcje aktualizacjiManager z planowym szczypcem: ikony zamków i aktualizacja CTA dla funkcji nieumieszczonych w bieżącym planie subskrypcji - Usuń kartę rozliczeniową z ustawień konta (przesunięta na stronę członkowską) - Zainstaluj ?stripe/stripe-js i .stripe/react-stripe-js

  24. · BillingService

    Początkowa BillingService — Rozliczenia zintegrowane ze paskami dla KamoCRM

    Kompletna usługa Spring Boot do zarządzania fakturowaniem KamoCRM za pośrednictwem Stripe: - Stripe Klient, Subskrypcja, PaymentMethod, Zarządzanie cyklem życia faktury - System kredytowy z audytem księgi (Stripe Customer Balance) - pomiary użytkowania dla KamoMail i DocManager (codziennie cronc sync do Stripe) - Delegacja rozliczeniowa (ORG_PAYS_ALL / MEMBERS_PAY_OWN) - Konfigurowalne egzekwowanie luksów (SOFT_LOCK, HARD_LOCK, OWNER_FALLBACK) - Przetwarzanie na taśmie webhook dla synchronizacji stanu w czasie rzeczywistym - Stripe Price/Product auto-creation z katalogu subskrypcji - Full REST API: klienci, subskrypcje, metody płatności, faktury, Kredyty, użycie, konfiguracja, punkty końcowe administratora - manifesty wdrożeniowe K8 + Forgejo CI/CD rurociąg - Usługa tylko wewnętrzna (bez IngressRoute), dostępna za pośrednictwem bramki APIService

  25. · APIService

    Dodaj Stripe webhook spedytor i routing routing bramowy API

    - POST /api/billing/webhooks/stripe odbiera Stripe webhooks i forwards Do BillingService z zachowanym nagłówkiem Stripe-Signature - /api/billing/' tras bramowe Zatalerowanie uwierzytelnionych połączeń API Do BillingService za pośrednictwem istniejącego mechanizmu forward() - Dodaje konfigurację billing.service.url i stripe.webhook.secret - Dodaje sekretne odniesienie do stripe-webhook-secret k8s

  26. · InitializerService

    Dodaj inicjację konfiguracji rozliczeniowej do KamoCRMPricingLoader

    Nasiona domyślnego BillingConfig (ORG_PAYS_ALL, SOFT_LOCK, 7-dniowa gracja) dla organizacji KamoCRM podczas startupu ładowarek cenowych. Wsparcie Nowy system rozliczeń Stripe.

  27. · kamo-shared-library

    Dodaj podmioty rozliczeniowe i repozytoria integracji Stripe

    Nowy pakiet z 9 podmiotami (BillingCustomer, BillingSubscription, BillingPaymentmetod, BillingInvoice, BillingCredit, BillingCreditLedger, BillingConfig, BillingUsageSnapshot, BillingStripePriceMapping) i 9 odpowiadającymi mu Repozytoria JPA. Podmioty te odzwierciedlają stan Stripe lokalnie dla Nowy system rozliczeń KamoCRM.

  28. · kamo-marketing

    Dodawanie /kalkulator i /priing/offer do wszystkich map witryn; i18n HTML sitemap etykiet

    - aplikacja/sitemap.ts: dodaj /pricing/offer i /calculator wpisy z lokalnymi alternatywami - aplikacja/api/sitemap/route.ts: dodaj kalkulator cen i specjalne wpisy w ofercie - SitemapClient.tsx: przesuń statycznieSections wewnątrz komponentu z t() dla wszystkich etykiet / opisów; dodaj Calculator link w sekcji Produkt - wiadomości/en.json: dodaj 38 nowych przycisków linku witryny / kluczy opisu

  29. · kamo-marketing

    W pełni wyjąć pozostałe ciągi ciała z produktu, bloga, ceny, demo, kontakt, kalkulator

  30. · kamo-marketing

    W pełni wyciągać struny ciała z cech, o, w domu

Twój wszechświat czeka.

Rozpocznij bezpłatnie w kilka minut.Dodaj produkty, kiedy tylko będziesz gotowy — bez migracji, bez nowych logowań.

Bezpłatne na zawsze — nie wymaga karty kredytowej