正しい回転サムネイル位置決めと復元回転変換
ThumbnailCanvasの2つのバグ: 1. 高さを置き換える:\${displayAspect * 100}%\`(absのパーセンテージの高さ) 配置された要素 — ブロックの高さを含むときの信頼できない `aspectRatio: String(baseAspect)` でパディングトップ) なので、ブラ...
Fix floating zoom control visibility and polish thumbnail placeholders
- Move floating zoom controls outside the scroll container and use position:absolute so they remain visible at all times regardless of scroll position; offs...
Page selection with animated glow border synced between canvas and thumbnail sidebar
- DesignTab holds selectedPageIndex as the single source of truth - Clicking any page in the main canvas selects it (onPageSelect) - Clicking a thumbnail select...
Move scroll ownership from PdfCanvas to canvasContainerRef
PdfCanvas root Box previously had overflow-auto + h-full, making it its own scroll container. This meant: - scrollbarGutter: stable on canvasContainerRef had no...
Fit to Width calculates actual container width instead of resetting to zoom 1
Reads **************** (which accounts for the stable scrollbar gutter) and the page's natural width via **************** then computes fitZoom = (availableWidt...
Replace all hardcoded purple with var(--color-primary) on Settings & Signers page
Signers icon, icon background, count badge, Add Signer buttons, Add First Signer button, empty-state illustration tint, add-another hover, and the ALL_OF_TYPE s...
Auto-select first signer, fix zoom control scrollbar gap, animate properties panel
- Toolbox auto-selects the first signer's UID when signers go from 0→1 - Canvas container uses scrollbar-gutter: stable so the sticky zoom/undo control mainta...
Reorder tabs, gate field tools by signer, redesign Settings & Signers tab
- Design is now the first tab; Settings & Signers is second - Toolbox shows "Add Signer" CTA (navigates to Settings) when no signers exist - Signature Tools, Id...
Render field controls as actual-looking form elements with signer color tinting
Each field type now renders a visual representation of the real control (text input, checkbox, toggle, dropdown, radio group, date picker, etc.) tinted with the...
Remove fixed height and scroll bars from field properties panel
The panel had two vertical scrollbars: 1. DesignTab wrapper had height: 200 + overflowY: auto 2. FieldPropertiesPanel root had height: 200 + overflow: hidden, ...
PDF.js のワーカーの飽和を防止するために PDF ダイム ループの後に setTotalPage をディーファーします
50ページ PDF では、getPage() 次元ループマウントの前に setTotalPages を呼び出す 50 個の ThumbnailCanvas コンポーネントをすぐに使用できます。 それぞれがPDF.js(サーバー)に戻ります thumbnails はテンプレートでは生成されません)、共有中の 50 個の同...
Expand component scan and add full datasource/JPA/Redis/MinIO config
ConversionServiceApplication was only scanning com.kamo.ConversionService, missing all shared library beans (ImageService, MinIOStorageService, MemberRepository...
Add kamo-shared-library build stage to resolve missing dependency
The Dockerfile was trying to fetch kamo-shared-library from Maven Central, which doesn't exist there. Mirror the SecurityService pattern: clone the shared libra...
SecurityService から ConversionService/DocsService へすべてのイメージング API ルートを移行
ルートをアップロードすると、ConVERSION SERVICE URL からコンバージョンサービスを直接呼び出します。 - POST /api/imaging/upload → /api/conversion/imaging/upload - POST /api/imaging/templates/upload → ...
ImageController と Bean/imaging を削除 — コンバージョンサービスと DocsService に移動
/api/conversion/imaging/* でコンバージョンサービスでエンドポイントをアップロードできるようになりました。 /api/docs/imaging/* で DocsService に、エンドポイントを管理およびダウンロードできるようになりました.
Add imaging management endpoints — move all non-upload imaging from SecurityService
- Add 17 imaging DTOs to beans/imaging/ (folders, documents, templates, updates) - Add ImagingController at /api/docs/imaging with all management + download end...
Add imaging upload endpoints — move all upload logic from SecurityService
- Add JPA, Redis, NATS, kamo-shared-library, JJWT, commons-io, jackson-hibernate6 to pom.xml - Add datasource, Redis master/replica, NATS, MinIO config to appli...
Next.js 16.2.3、TypeScript 6.0.2、Node 24, React 19タイプへのアップグレード
- 16.2.3 と eslint-config-next の横のピン - アップグレードタイプスクリプトを正確に 6.0.2、@types/node に ^24 - モーションでフレーム・モーションを交換する^12(モーション/リアクト・インポート) - ノード24.14.1にピン留めされた.nvmrcを追加 - t...
Delegate thumbnail generation to ConversionService, remove PDFBox dependency
ThumbnailGenerationJob now POSTs the converted PDF to ConversionService **************** unzips the response, and stores each thumb_p{n}.png in MinIO. PDFBox re...
サムネイル生成を変換サービスに委譲し、PDFBoxの依存性を削除
generateAndStoreThumbnails が変換されたPDFを変換サービスにPOST メニュー 応答を解凍し、それぞれ保存します thumb p{n}.png は MinIO で、ページごとの WS の進捗状況を公開します。 PDFBox を削除しました.
Add ThumbnailService and POST **************** endpoint
Accepts a PDF file, renders each page at 150 DPI via PDFBox, packs per-page PNGs into a ZIP (thumb_p0.png, thumb_p1.png, …) and returns it. Centralises all thum...
テンプレートのアップロード時のシンクロパーページサムネイル生成と粒状WSの進捗
- pom.xml に PDFBox の依存性を追加 - 変換されたPDFを保存した後、PDFRendererを介してすべてのページをレンダリングし、それぞれを{id} thumb p{n}.pngとしてアップロードします。 - 公開 generate thumbnails WS の進行イベントページ(72-95% の...
ページの積み重ねを防ぎ、サムネイルのスライバーを固定し、PDF.jsフォールバックでサーバーサイドのサムネイルを追加します
- flexShrinkを追加する: 0 から PdfCanvas 内のページ divs へページ flex カラムで圧縮しない - flexShrink: 0 を PageThumbnailSidebar に同じ理由でサムネイル項目に追加する - ThumbnailCanvasの自然なスケールを修理して下さい従ってサ...
Generate per-page thumbnails for all PDF pages, store as {id}_thumb_p{n}.png
ThumbPageCount フィールドを追加し、ページごとのサムネイルサポートのためのNeedingPageThumbnailsクエリを検索
Eager PDFレンダリング、自然スケールの正規化、水平スクロールなし
- PdfCanvas: IntersectionObserverをエイジャーレンダーオールページで置き換えます。 デザインタブが始まると、オブザーバーベースのアプローチは信頼できませんでした display:none — ブラウザは確実に交差点イベントを直火しない ancestor が display:none から...
Next.js 16.2.3、TypeScript 6.0.2、Node 24, React 19タイプへのアップグレード
- デフォルト dev サーバとして Turbopack を使って Next.js 16.2.3 - 消去可能なSyntaxOnlyおよびES2022ターゲットのTypeScript 6.0.2 - @types/react@^19と@types/react-dom@^19(React 19タイプ) - Node 24...
PDFのサムネイルレンダリングでremoideChild DOMの競合を排除
ThumbnailCanvasでcontainer.innerHTML + appendChildパターンを置き換える React マネージド <canvas> ref を使って。 古いアプローチはReact-ownedをクリアしました DOM ノードは直接、React の調整を試みたときに失敗させる 今従ったTypo...
ApplicationIds と applicationBillingCycle を文字列配列として扱う
これらのフィールドは string[] とタイプされますが、 .split(",") はそれらに対して呼び出します。 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...
プロキシ ルートを OTK auth に変換し、未使用の esigProxy ヘルパーを削除
OTKは正しいauthのメカニズムです。セッション前のアプローチ 確立されたセキュリティパターンをバイパスしました。 すべての esig プロキシ ルート 今使用 apiProxy.ts から apiProxy.ts を再び生成します.
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...
OTK の代わりに、ESigService プロキシ ルートの直接セッション ヘッダーを使用する
Next.js で Redis のセッションを読んで、 orgId/memberId を信頼できるものにします。 内部のK8s DNS経由でESigServiceにヘッダします。 OTKの依存性を削除します.
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 ...
エディタのロードで imgId によるテンプレートの検索や作成に init エンドポイントを使用する
作成ページは URL で imgId を渡します。 編集ページがコールされました ESignTemplate を見つけるか、または作成する init エンドポイントは、 設計操作とバージョン履歴のUUIDを返します.
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
E-signatureテンプレートエディタをデザインキャンバス、サイダー、バージョンアップに追加
/doc/sign/editページをタブ付きインターフェイス(Settings & Signers)で完全に書き直し、 デザイン)、ドラッグ可能なフィールドオーバーレイ、アノテーションツール、署名器を備えたPDF.jsキャンバス 管理、ページサムネイルのサイドバー、バージョン履歴、およびundo/redo。 パッケージ...
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...
E-signatureテンプレートエンティティティ、enum、リポジトリを追加
E-signatureテンプレート設計システム用の新しいJPAエンティティティティ: ESignTemplate, ESignTemplateSigner、ESignTemplateDesignVersion、ESignTemplateFieldLink 対応するenumと Spring Dataリポジトリ.
アクセスレベルの API のバックエンドとフロントエンド間の正しいフィールド名マッピング
バックエンドのセキュリティレベルId→accessLevel、isOrganizationOwner→isOwner、API ルートのmemberType→isTeamMemberをマップします。 MANAGE MEMBER SECURITY の代わりに EDIT MEMBER ACCESS LEVEL を使用するよう...
