Eagerowanie w PDF, normalizacja skali naturalnej, brak zwoju poziomego
- PdfCanvas: zastąp IntersectionObserver gorliwymi uliczkami render-all. Podejście oparte na obserwatorze było niewiarygodne, gdy zaczyna się zakładka projekt...
Upgrade do Next.js 16.2.3, TypeScript 6.0.2, węzłów 24, React 19 typów
- Next.js 16.2.3 z Turbopackiem jako domyślnym serwerem dev - TypeScript 6.0.2 z celem erasableSyntaxOn i ES2022 - "typy/reaktan"19 i . typu/react-dom-19 (zarea...
Wyeliminuj usuwanie konfliktu DOM w renderowaniu miniatur PDF
Zamień kontener.innerHTML + wyrostekWzór dziecka w ThumbnailCanvas Z React-managed ’canvas> ref. Stare podejście oczyściło React-owned Węzły DOM bezpośrednio, p...
Obsługa odpowiednich PlanIds i zastosowanieBillingCycles jako tablice strunowe
Pola te są typowane jako ciąg znaków[], ale miały .split(",") wzywa je, Powoduje to, że TypeScript kompiluje awarie.
Dodaj reprób transakcyjne CockroachDB dla szablonu init endpoint
Izolacja seryjna CockroachDB może wywołać RETRY_SERIALIZABLE w Wzór odczytu-wpis w initTemplate. Rachanie do 3 razy Z backoffem podczas wykrywania "reprób txn" ...
Odwróć trasy proxy do OTK auth, usuń nieużywany esigProxy helper
OTK jest właściwym mechanizmem auth – podejście wcześniejszego podejścia do sesji Ominął ustalony wzór bezpieczeństwa. Wszystkie trasy proxy esig teraz używają ...
Popraw format klucza OTK Redis i dodaj punkt końcowy szablonu obrazu
Klucze OTK używają OTK-id> i "no colon" pasujących do proxy Next.js. Dodano POST /api/esig/templates/list do szablonów obrazowania kwerendowego za pośrednictwem...
Używaj nagłówek sesji bezpośrednich zamiast OTK dla tras proxy ESigService
Odczyt - sesja z Redis w Next.js i pass orgId /memberId jako zaufany Nagłówki do ESigService za pośrednictwem wewnętrznego DNS K8. Usuwa zależność OTK.
Zamień OTK auth z zaufanymi nagłówkami sesji na połączeniach wewnętrznych K8
ESigService jest wewnętrzny — backend Next.js czyta sesję z Redis i przekazuje nagłówki orgId/memberId/userId jako X-Org-Id, X-Member-Id, X-User-Id. Nie jest po...
Użyj punktu końcowego init do find-or-create template by imgId na ładunek edytora
Strona tworzenia przechodzi imgId w adresie URL. Strona edycji teraz wywołuje: Init punkt końcowy, aby znaleźć lub utworzyć ESignTemplate, a następnie użyj Wróc...
Dodaj szablon init punkt końcowy do szablonów find-or-create by imgId
Strona twórz przesyła do systemu obrazowania i przekierowuje za pomocą imgId. Strona edycji wywołuje teraz POST /api/esig/templates/init z imgId do Znajdź istni...
Zeskanuj wszystkie wspólne pakiety repozytorium biblioteki, aby rozwiązać zależności fasoli
ComponentScan odbiera usługi biblioteki wspólnej, które zależą od repozycji w Niemodify.dao.repos i pakiety handlowe - muszą je skanować.
Usunąć .mvn/ kopiowanie z Dockerfile — katalog nie istnieje w tym projekcie
Dodaj edytor szablonu e-podpisu z płótnem projektowym, sygnatariuszami i wersjonowania
Kompletne przepisywanie strony /doc/sign/edit ze znakiem zakładki (Ustawienia i sygnatariusze, Design), PDF.js płótno z nakładką na polu przeciągającą, narzędzi...
Początkowy projekt ESigService Spring Boot do zarządzania szablonami e-podpisu
Nowa mikroserwiska z REST API dla szablonu e-podpisu CRUD, zarządzanie sygnatariuszem, Zga migawki wersji projektowej i śledzenie linków w terenie. Zawiera filt...
Dodaj kody szablonowe e-podpisu, enums i repozytoria
Nowe podmioty JPA dla systemu projektowania szablonów e-podpisów: ESignTemplate, ESignTemplateSign, ESignTemplateDesignVersion i ESignTemplateFieldLink Wspieraj...
Prawidłowe mapowanie nazwy pola między backendem a frontendem dla API poziomu dostępu
Bezpieczeństwo zaplecza mapyLevelId-accessLevel, isOrganizationOner-isOwner, członekTypeisTeamMember w trasie API. Napraw kontrolę prawą, aby użyć EDIT_MEMBER_A...
Dodaj statyczne niepowodzenie dla strony oferty, gdy API subskrypcji jest niedostępny
Tabela nie istnieje jeszcze w produkcji, Tak więc API zwraca błąd. Z powrotem do zakodowanych danych promocyjnych i planowanych Tak więc strona oferty działa ni...
Aktualizacja ApiPromotion typ, aby dopasować nową listę-String> backend response
Wdrożowe układplanIds i zastosowanieBillingCycles są teraz macierzami, a nie ciągami JSON.
Rozszerz datę końcową promocji 18DOFF do 2026-12-31
Data zakończenia 14 kwietnia spowodowała, że strona ofert została pokazowana w miarę wygasania.
Usuń zbędną walidację sekretnej walidacji, APIService obsługuje HMAC auth
Walij Zatwierdzenie Forgejo HMAC-SHA256 zamiast zwykłego tajnego nagłówka
Forgejo wysyła webhook sekret jako X-Gitea-Signature / X-Forgejo-Signature HMAC-SHA256 hash, a nie jako zwykła wartość nagłówka. Czytaj ciało, weryfikację HMAC,...
Statystyki po stronie serwera dla rzeczywistych sum, nieskończony przewijanie, dokładna liczba filtrów
Stats bar i pigułki filtra pochodzą teraz z /api/changelog/public/stats (realne agregaty DB, nie naładowana liczba stron). Zamieść więcej przycisk ładowania Z I...
Usunąć KamoGamesRoboCluck z projektów zmianowych, dodać skrypty uzupełniania
Dodaj /api/changelog/publicpoint/statss endpoint dla liczby zagregowanych według typu i projektu
Dodaj findByProjectIn kwerenda do CommitLogRepository dla statystyk punktu końcowego
Wymuś stronę changelog do renderowania dynamicznie, a nie statycznie w czasie budowy
Użyj portu 80 dla SecurityService K8s usługi URL usługi, a nie surowego portu aplikacji 4201
Truncate commit tytuły przekraczające 500 znaków zapobiegających awariom wstawek DB
Dodaj tajną walidację webhook do punktu końcowego na blogu
Obrona-in-depth: poprawczaki - nagłówek na Strona SecurityService oprócz potwierdzenia bramki APIService.
Ekspsyt changelog webhook przez APIService z tajnym kluczem ath
POST /api/changelog/webhook, która potwierdza . . Nagłówek przed przekierowaniem do SecurityService. Sekret skonfigurowany przez CHANGELOG_WEBHOOK_SECRET env va...
Przenieś Zmień dziennik nav/footer Zasoby i dodaj do wszystkich map witryn
Usuń obejścia do planowania planów subskrypcji JSON
Backend zwraca teraz odpowiednie tablice zamiast ciągów JSON, więc Logika try/sese/catch fallback nie jest już potrzebna w dodatku, pakiecie, I rendererzy komór...
Użyj List-String> zamiast ręcznych ciągów JSON do planu promocji / identyfikatorów cyklu
Zaktualizuj KamoCRMPricingLoader do użycia Listof() dla odpowiednich PlanIds i zastosowanieBillingCycles, pasujący do migracji biblioteki współdzielonej z JSON ...
Migracja pól subskrypcji JSON na jednostki oparte na relacjach opartych na „ManyToManManMany)
Zastąp kolumny smyczkowe jsonb (kompatybilne PlanIds, includedInPlanIds, stosowane PlanIds, ObowiązujeBillingCycles) z odpowiednimi tabelami łącza JPA i ?Elemen...
Konfiguracja projektów publicznych na zaległości zmiany z wszystkimi 23 Forgejo repos
Dodawanie niewrażliwych na przypadek zamienników tekstu dla wyświetlacza changelog
Zastępuje nazwy narzędzi wewnętrznych na nazwy publiczne (Docs->Docs, Poznaj->Poznaj, Capcha->Capcha, Avatar Creator->Avatar Creator, itp.) w tytułach I opisy p...
Dodawanie Live Change Log page z timeline UI, filtrami i statystykami
Pozycje po stronie serwera changelog z SecurityService, komponent klienta zapewnia filtrowanie projektu/typu, grupowanie dat, opisy rozszerzalne, I pagowane ład...
Dodaj enum CommitType, CommitLog i CommitLogRepository dla systemu changelog
Dodaj edytor poziomu dostępu do ustawień członków za pomocą substytucji etykiety specyficznej dla org org
Nazwij nazwę CLIENT-MEMBER i INTERNAL-TEAM_MEMBER in ImageAccessLevelType.ts z symbolami zastępczymi .var. Dodaj sekcję poziomów dostępu do RolesPermissionsTab ...
Jak to, co widzisz żeglugę?
Każda z tych aktualizacji automatycznie ląduje w miejscu pracy. Zacznij za darmo i obserwuj, jak rośnie tydzień po tygodniu.