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 を使用するよう...
サブスクリプション API が利用できなくなったときにオファーページ用の静的なフォールバックを追加します
**************** テーブルはまだ生産に存在しません, API はエラーを返します。 難易度の高いプロモーションと計画データに戻る 従って提供ページはバックエンドの状態に関係なく働きます。 終了日を 4/20/20/2026 に設定します.
ApiPromotionタイプを更新して、新しいList<String>バックエンドのレスポンスにマッチする
applicationBillingCycles は、JSON 文字列ではなく配列です.
Extend 18DOFF promotion end date to 2026-12-31
The April 14 end date was causing the offer page to show as expired.
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...
実質の合計、無限スクロール、正確なフィルター計算のためのサーバー側の統計量
Stats bar と filter ピルカウント 今 /api/changelog/public/stats から来ています (実際のDB集計、読み込まれないページ数) 置換 ロード ボタン IntersectionObserver で 600px をトリガーする無限スクロール ボトム.
Add Webhook シークレット検証 変更ログエンドポイント
Defense-in-depth: validates *** ヘッダ上の APIService ゲートウェイの検証に加えて、SecureService 側.
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 / ...