From af674a811df637f17182a21c2247ff969d152ff1 Mon Sep 17 00:00:00 2001 From: TekH Date: Thu, 1 Oct 2026 15:53:28 +0200 Subject: [PATCH] Refactor EnvelopeSenderPage and improve architecture Refactored `EnvelopeSenderPage.razor` to reduce complexity by moving business and status logic into dedicated services and extension methods, focusing the component on UI composition and state orchestration. Introduced a modular page architecture by splitting large pages into smaller subcomponents, eliminating duplicated code paths, and centralizing shared UI/domain logic for better maintainability. Performed an audit of `EnvelopeGenerator.Server.Client/Services/` to remove unnecessary request/payload remapping and redundant transformations, ensuring direct request DTO usage where safe. Planned a senior-level performance review for sender/receiver flows to address route transitions, loading-state correctness, duplicate API calls, and perceived latency issues. Updated `AGENTS.md` to document manual testing workflow changes and reflect the refactoring efforts. --- AGENTS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/AGENTS.md b/AGENTS.md index 3a54c4b5..f98fa098 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -243,6 +243,7 @@ Manual testing workflow: - Keep `EnvelopeSenderPage.razor` focused on UI composition/state orchestration; avoid embedding heavy domain logic directly in the Razor component. - Apply a modular page architecture across Server pages (starting with `EnvelopeGenerator.Server/EnvelopeGenerator.Server/Components/Pages/EnvelopeSenderPage.razor`): split large pages into smaller subcomponents/partial modules, eliminate duplicated code paths, and centralize shared UI/domain logic for maintainability. - Perform a senior-level page performance review across sender/receiver flows before further UX changes: verify route transitions, component mount/unmount behavior, loading-state correctness, duplicate API calls, and perceived latency (first meaningful paint and return-navigation responsiveness). Treat loading logic defects as architecture/performance issues first, not styling problems. +- Audit `EnvelopeGenerator.Server/EnvelopeGenerator.Server.Client/Services/` for unnecessary request/payload remapping and remove redundant mappings where direct request DTO usage is safe; review client HTTP methods end-to-end for similar avoidable transformation layers. ## Database