platformplatform / PlatformPlatform

🚀 Pre-alpha state. A platform designed for building enterprise-grade, multi-tenant products using Azure, .NET, React, TypeScript, Infrastructure as Code, etc.
https://platformplatform.github.io
MIT License
250 stars 27 forks source link

Fix registration bugs, update input design, and improve validation logic #543

Closed tjementum closed 3 months ago

tjementum commented 3 months ago

Summary & Motivation

Fix a bug in account registration where form state is lost, and address an issue where validation errors were not shown to users. Downgrading to React 18 Canary fixes this, as these bugs were related to React 19 Canary - Waiting for React Aria Components to catch up.

Restructure frontend pages to use a shared layout and move out components from pages / routing and into shared ui for a clearer seperation of concerns. Update the design of input fields to ensure they are all the same height.

Remove client-side validation and disable browser native validation that duplicates server-side validation to ease maintainability and provide a clear seperation of responsibility between client and server validation.

Change the Account Registration start endpoint to return the AccountRegistrationId and expiration data in the response body, simplifying the frontend and allowing central control of the expiration time.

Add "is subdomain" check in the register page and illustrated messages for better user experience.

Checklist

tjementum commented 3 months ago

Let's not merge this for now - it's not solving the underlying issue of why things working suddenly stopped working.

I've have never seen errors in the UI. And losing form data has been a problem since we upgraded to React 19 Canary :)

sonarcloud[bot] commented 3 months ago

Quality Gate Passed Quality Gate passed

Issues
10 New issues
0 Accepted issues

Measures
0 Security Hotspots
4.1% Coverage on New Code
0.0% Duplication on New Code

See analysis details on SonarCloud