Render PDF pemuat, normalisasi skala alami, tak ada gulungan horisontal
- PdfCanvas: ganti IntersectionObserver dengan render- semua halaman. Pendekatan observer- berbasis tidak dapat diandalkan ketika tab desain dimulai dengan tamp...
Upgrade to Next.js 16.2.3, TypeScript 6.0.2, Node 24, React 19 tipe
- Next.js 16.2.3 dengan Turbopack sebagai server default dev - TypeScript 6.0.2 dengan erasableSyntax Hanya dan target ES2022 - @ tipe / bereaksi @ ^ 19 dan @ t...
Hapus konflik DPR Anak dalam rendering thumbnail PDF
Ganti convener.innerHTML + appendChild pola dalam ThumnailCanvas dengan Reakt- dikelola < kanvas > ref. Pendekatan lama dibersihkan Reakt- dimiliki Titik DOM se...
Handle applicablePlands dan applicableBillingCycles sebagai string array
Bidang ini diketik sebagai string [] tetapi memiliki .split (",") memanggil mereka, menyebabkan kegagalan membangun TypeScript.
Add CockroachDB transaction retry for template init endpoint
CockroachDB serializable isolation can trigger RETRY_SERIALIZABLE on the read-then-write pattern in initTemplate. Retries up to 3 times with backoff when detect...
Revert rute proksi ke OTK auth, hapus pembantu esigProxy yang tidak digunakan
OTK adalah mekanisme auth yang benar - pendekatan header sesi sebelumnya Melewati pola keamanan yang ditetapkan. Semua rute proksi esig sekarang gunakan generat...
Correct OTK Redis key format and add imaging template list endpoint
OTK keys use OTK<id> and ***<id> (no colon) matching the Next.js proxy. Added POST /api/esig/templates/list to query imaging templates via shared library ImgRep...
Gunakan header sesi langsung daripada OTK untuk rute proksi ESigService
Baca * * * sesi dari Redis dalam Next.js dan lulus orgId / memberId sebagai dipercaya tajuk ke ESigService melalui DNS K8s internal. Menghapus ketergantungan OT...
Replace OTK auth with trusted session headers for internal K8s calls
ESigService is internal — the Next.js backend reads the session from Redis and passes orgId/memberId/userId as X-Org-Id, X-Member-Id, X-User-Id headers. No OTK ...
Gunakan titik akhir init ke find-or-create template oleh idId pada load penyunting
Halaman pembuatan melewati imgId dalam URL. Halaman penyuntingan kini memanggil init titik akhir untuk menemukan atau membuat EjigTemplate, kemudian menggunakan...
Add template init endpoint to find-or-create templates by imgId
The create page uploads to the imaging system and redirects with imgId. The edit page now calls POST /api/esig/templates/init with the imgId to find an existing...
Scan all shared library repository packages to resolve bean dependencies
ComponentScan picks up shared library services which depend on repos in donotmodify.dao.repos and commerce packages — must scan those too.
Remove .mvn/ copy from Dockerfile — directory does not exist in this project
Tambah penyunting templat e- signature dengan kanvas desain, penanda, dan versi
Lengkap tulis ulang halaman / doc / sign / edit dengan antar muka bertab (Pengaturan & Signers, Desain), kanvas PDF.js dengan overlay field dapat dilepas, alat-...
Initial ESigService Spring Boot project for e-signature template management
New microservice with REST API for e-signature template CRUD, signer management, design version snapshots, and field link tracking. Includes OTK auth filter, Fo...
Tambahkan entitas template e--signature, enums, dan repositori
Entitas baru JPA bagi sistem desain template e--signature: EgnagTemplate, Epigged TemplateSigner, EvigTePraTDesignVersion, and Egnable TemplateFieldLink dengan ...
Pemetaan nama field benar antara backend dan frontend untuk tingkat akses API
Backend Map securityLevelId EncessLevel, is OrganizationHolner Abopemilik, memberType TeamMemarber di rute API. Perbaiki pemeriksaan kanan untuk memakai EDIT _ ...
Tambahkan fallback statis untuk halaman penawaran ketika API berlangganan tidak tersedia
* * * * * * * * * * * * * * * meja tidak ada dalam produksi belum, Sehingga API kembali kesalahan. Kembali ke hardcode promosi dan data rencana sehingga halaman...
Mutakhirkan tipe ApiPromotion untuk mencocokkan respon backend Daftar < String > yang baru
applicablePlands dan applicableBillingCycles sekarang array, tidak string JSON.
Extend 18DOFF promotion end date to 2026-12-31
The April 14 end date was causing the offer page to show as expired.
Hapus validasi rahasia webhook berlebihan, APIService menangani HMAC auth
Validate Forgejo HMAC-SHA256 signature instead of plain secret header
Forgejo sends webhook secret as X-Gitea-Signature / X-Forgejo-Signature HMAC-SHA256 hash, not as a plain header value. Read body, verify HMAC, then forward to S...
Statistik sisi server bagi total nyata, gulungan tak terbatas, jumlah penyaring yang akurat
Jumlah pil dan karat kini berasal dari / api / changelog / public / statistik (kumpulan DB sebenarnya, bukan jumlah halaman membenci). Tombol Tambah Muat dengan...
Hapus KamoGamesRoboCluck dari proyek publik changelog, tambahkan skrip backfill
Tambah / api / changelog / public / statistik titik akhir untuk jumlah kumpulan dengan tipe dan projek
Tambahkan findByProjectIn query ke Community LogRepositori untuk statistik titik akhir
Paksa halaman changelog untuk membuat dinamis, bukan statik pada waktu bangun
Gunakan port 80 untuk SecurityService URL layanan K8, bukan port aplikasi mentah 4201
Pemenggalan judul commit melebihi 500 chars untuk mencegah DB menyisipkan kegagalan
Tambahkan validasi rahasia webhook ke titik akhir changelog
Defense- in- kedalaman: validates * * * header di Bagian Layanan SecuritySelain gerbang APIService validasi.
Expose changelog webhook through APIService with secret key auth
Adds POST /api/changelog/webhook route that validates *** header before forwarding to SecurityService. Secret configured via CHANGELOG_WEBHOOK_SECRET env var / ...
Pindah Ubah Log ke Sumber Daya nav / footer dan tambahkan ke semua sitemaps
Hapus kerja parsing JSON untuk rentetan rencana ID berlangganan
Backend sekarang kembali arrays yang tepat bukan string JSON, jadi coba / parse / catch fallback logika tidak lagi dibutuhkan di add- on, bundle, dan para penye...
Use List<String> instead of manual JSON strings for promotion plan/cycle IDs
Update KamoCRMPricingLoader to use List.of() for applicablePlanIds and applicableBillingCycles, matching the shared library's migration from JSON strings to ent...
Migrasi berlangganan kolom JSON untuk hak berbasis @ ManyToMany hubungan
Ganti kolom string jsonb (CompatiblePlanid, termasuk InPlanid, applicablePlanids, applicableBillingCycles) dengan JPA @ ManyToMany bergabung dengan tabel dan @ ...
Tambahkan pengganti teks tidak sensitif untuk tampilan changelog
Mengganti nama alat internal dengan nama yang dihadapi publik (Dokter- > Docs, Meet- > Bertemu, Capcha- > Capcha, Avatar Creator- > Pembuat Avatar, dll) dalam j...
Tambahkan halaman Log Live Ubah dengan timeline UI, filter, dan statistik
Fetch Server- sisi changelog dari SecurityService, komponen klien menyediakan penyaringan projek / tipe, pengelompokan tanggal, deskripsi yang dapat dijelaskan,...
Tambahkan Community Type enum, Entitas CommitLog, dan CompleLoLogRepositori untuk sistem changelog
Tambahkan penyunting level akses ke pengaturan anggota dengan penggantian label org-specific
Ubah nama CLIENT MEMBER dan INTERNAL TEAM _ MEMBER di ImageAccessLevelType.ts dengan {var} placeholder. Tambahkan daerah tingkat akses ke RIesPermissionsTab den...
Seperti apa yang Anda lihat pengiriman?
Semua pembaruan ini secara otomatis mendarat di ruang kerja Anda. Mulai bebas dan menontonnya tumbuh minggu demi minggu.