Refactor ReceiverUI: Rename files, update routes
Renamed Razor component files in ReceiverUI to follow a consistent "Page" naming convention. Updated routes to reference the renamed files. Introduced the root route (`/`) with `Index.razor` as the application entry point. Updated documentation to reflect the file renames, route changes, and multi-envelope support. Clarified Redis/SQL caching details and deprecated the "Web" frontend in favor of `ReceiverUI`. These changes improve maintainability, consistency, and developer experience.
This commit is contained in:
@@ -36,17 +36,22 @@ Client ? API:8088 (YARP Proxy) ? ReceiverUI:52936 (Blazor WASM)
|
||||
|
||||
## ReceiverUI Route Structure
|
||||
|
||||
### Root Route
|
||||
| Route | File | Purpose |
|
||||
|---|---|---|
|
||||
| `/` | `Index.razor` | Application entry point (landing page). |
|
||||
|
||||
### Sender Routes
|
||||
| Route | File | Purpose |
|
||||
|---|---|---|
|
||||
| `/sender/login` | `LoginSender.razor` | Username/password authentication |
|
||||
| `/sender` | `EnvelopeSender.razor` | Sender dashboard (envelope list) |
|
||||
| `/sender/login` | `LoginSenderPage.razor` | Username/password authentication |
|
||||
| `/sender` | `EnvelopeSenderPage.razor` | Sender dashboard (envelope list) |
|
||||
|
||||
### Receiver Routes
|
||||
| Route | File | Purpose |
|
||||
|---|---|---|
|
||||
| `/envelope/login/{EnvelopeKey}` | `LoginReceiver.razor` | Access code authentication for specific envelope |
|
||||
| `/envelope/{EnvelopeKey}` | `EnvelopeReceiver.razor` | View & sign envelope (PDF.js viewer) |
|
||||
| `/envelope/login/{EnvelopeKey}` | `LoginReceiverPage.razor` | Access code authentication for specific envelope |
|
||||
| `/envelope/{EnvelopeKey}` | `EnvelopeReceiverPage.razor` | View & sign envelope (PDF.js viewer) |
|
||||
|
||||
**Multi-Envelope Support:** Receivers can login to multiple envelopes simultaneously (per-envelope cookie authentication).
|
||||
|
||||
@@ -87,10 +92,11 @@ Client ? API:8088 (YARP Proxy) ? ReceiverUI:52936 (Blazor WASM)
|
||||
|
||||
| File | Route/Purpose |
|
||||
|---|---|
|
||||
| `ReceiverUI/Pages/EnvelopeSender.razor` | `/sender` — Sender dashboard (envelope list). |
|
||||
| `ReceiverUI/Pages/EnvelopeReceiver.razor` | `/envelope/{key}` — Receiver PDF viewer & signing. |
|
||||
| `ReceiverUI/Pages/LoginSender.razor` | `/sender/login` — Sender username/password auth. |
|
||||
| `ReceiverUI/Pages/LoginReceiver.razor` | `/envelope/login/{EnvelopeKey}` — Receiver access code auth. |
|
||||
| `ReceiverUI/Pages/Index.razor` | `/` — Application entry point (landing page). |
|
||||
| `ReceiverUI/Pages/EnvelopeSenderPage.razor` | `/sender` — Sender dashboard (envelope list). |
|
||||
| `ReceiverUI/Pages/EnvelopeReceiverPage.razor` | `/envelope/{key}` — Receiver PDF viewer & signing. |
|
||||
| `ReceiverUI/Pages/LoginSenderPage.razor` | `/sender/login` — Sender username/password auth. |
|
||||
| `ReceiverUI/Pages/LoginReceiverPage.razor` | `/envelope/login/{EnvelopeKey}` — Receiver access code auth. |
|
||||
| `ReceiverUI/wwwroot/js/pdf-viewer.js` | PDF.js wrapper (zoom, pagination, thumbnails). |
|
||||
| `ReceiverUI/wwwroot/js/receiver-signature.js` | Signature pad (draw/type/image). |
|
||||
| `ReceiverUI/wwwroot/css/envelope-viewer.css` | EnvelopeViewer styles. |
|
||||
@@ -133,7 +139,7 @@ Client ? API:8088 (YARP Proxy) ? ReceiverUI:52936 (Blazor WASM)
|
||||
|
||||
**Route:** `/envelope/{EnvelopeKey}`
|
||||
**Tech:** PDF.js 3.11.174 + Blazor WASM + configurable quality
|
||||
**File:** `ReceiverUI/Pages/EnvelopeReceiver.razor`
|
||||
**File:** `ReceiverUI/Pages/EnvelopeReceiverPage.razor`
|
||||
|
||||
### Key Features
|
||||
1. HiDPI/Retina support (4x quality)
|
||||
@@ -261,7 +267,7 @@ public class SignatureCacheService {
|
||||
## Sender Login
|
||||
|
||||
**Route:** `/sender/login`
|
||||
**File:** `ReceiverUI/Pages/LoginSender.razor`
|
||||
**File:** `ReceiverUI/Pages/LoginSenderPage.razor`
|
||||
**Tech:** Bootstrap 5 + DevExpress Blazing Berry theme
|
||||
|
||||
### AuthService Extension
|
||||
@@ -310,7 +316,7 @@ public async Task<SenderLoginResult> LoginSenderAsync(string username, string pa
|
||||
## Receiver Login
|
||||
|
||||
**Route:** `/envelope/login/{EnvelopeKey}`
|
||||
**File:** `ReceiverUI/Pages/LoginReceiver.razor`
|
||||
**File:** `ReceiverUI/Pages/LoginReceiverPage.razor`
|
||||
|
||||
**Multi-Envelope Support:** Cookies are stored per-envelope (e.g., `AuthTokenSignFLOWReceiver.{envelopeKey}`), allowing simultaneous authentication for multiple envelopes in the same browser session.
|
||||
|
||||
@@ -415,4 +421,4 @@ Proves database uses INCHES natively.
|
||||
|
||||
---
|
||||
|
||||
**Last Updated:** Session 18 (File renames & routing restructure)
|
||||
**Last Updated:** Session 19 (Razor file naming convention + Index route proxy)
|
||||
|
||||
Reference in New Issue
Block a user