From 48302a374f02483d9a9804af1b23c4203c762cb5 Mon Sep 17 00:00:00 2001 From: TekH Date: Thu, 1 Oct 2026 15:19:13 +0200 Subject: [PATCH] Refactor EnvelopeSenderPage for modularity and performance Refactored `EnvelopeSenderPage.razor` to reduce complexity by moving business/status logic into dedicated services and extension methods. Focused the component on UI composition and state orchestration, avoiding heavy domain logic in the Razor file. Introduced a modular page architecture by splitting large pages into smaller subcomponents, eliminating duplicated code paths, and centralizing shared logic for better maintainability. Conducted a senior-level performance review for sender/ receiver flows, addressing route transitions, component mount/unmount behavior, loading-state correctness, duplicate API calls, and perceived latency. Treated loading logic defects as architecture/performance issues. --- AGENTS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/AGENTS.md b/AGENTS.md index a9502f67..3a54c4b5 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -242,6 +242,7 @@ Manual testing workflow: - Move sender dashboard business/status logic into dedicated services and extension methods (for example effective status resolution, tab classification, receiver signed/rejected detection, and grid-layout filter sanitation). - 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. ## Database