diff --git a/signup-ui/public/locales/en.json b/signup-ui/public/locales/en.json
index e81b5bea..61998739 100644
--- a/signup-ui/public/locales/en.json
+++ b/signup-ui/public/locales/en.json
@@ -41,13 +41,17 @@
"login": "Login",
"okay": "Okay",
"continue": "Continue",
+ "forgot_password": "Forgot Password?",
+ "forgot_password_description": "Please enter your 8-9 digit registered mobile number and full name.",
"page_under_construction": "Page Under Construction!",
"page_under_construction_detail": "Our experts are working hard to make this page available. Meanwhile, we request you to please visit after some time.",
"something_went_wrong": "Something went wrong!",
"something_went_wrong_detail": "Our experts are working hard to make things working again.",
"attempts_left": "{attemptLeft} of {totalAttempt} attempts left",
"captcha_token_validation": "Please verify that you are a human.",
+ "username_validation": "Please enter a valid username",
"full_name_validation": "Please enter a valid name",
+ "full_name_in_lng_validation": "Full Name has to be in Khmer only.",
"password_validation": "Please enter a valid password",
"password_validation_must_match": "Passwords must match",
"terms_and_conditions_validation": "You must accept the terms and conditions",
diff --git a/signup-ui/public/locales/km.json b/signup-ui/public/locales/km.json
index e0ebc735..afc4e1a8 100644
--- a/signup-ui/public/locales/km.json
+++ b/signup-ui/public/locales/km.json
@@ -41,13 +41,17 @@
"login": "ចូលគណនី",
"okay": "យល់ព្រម",
"continue": "បន្ត",
+ "forgot_password": "ភ្លេចលេខសម្ងាត់?",
+ "forgot_password_description": "សូមបញ្ចូលលេខទូរសព្ទដែលបានចុះឈ្មោះ 8-9 ខ្ទង់ និងឈ្មោះពេញរបស់អ្នក",
"page_under_construction": "ទំព័រកំពុងសាងសង់!",
"page_under_construction_detail": "អ្នកជំនាញកំពុងធ្វើការដើម្បីឱ្យទំព័រនេះអាចប្រើប្រាស់បាន។ សូមចូលម្ដងទៀតនៅពេលក្រោយ។",
"something_went_wrong": "មានអ្វីមួយខុសប្រក្រតី!",
"something_went_wrong_detail": "អ្នកជំនាញកំពុងធ្វើការដើម្បីឱ្យអ្វីៗដំណើរការឡើងវិញ។",
"attempts_left": "ការព្យាយាមនៅសល់ {attemptLeft} នៃ {totalAttempt}",
"captcha_token_validation": "សូមបញ្ជាក់ថាអ្នកជាមនុស្ស",
+ "username_validation": "សូមបញ្ចូលឈ្មោះអ្នកប្រើប្រាស់ត្រឹមត្រូវ",
"full_name_validation": "សូមបញ្ចូលគោត្តនាម-នាមឱ្យបានត្រឹមត្រូវ",
+ "full_name_in_lng_validation": "គោត្តនាម-នាមត្រូវតែមានតែអក្សរខ្មែរ",
"password_validation": "សូមបញ្ចូលលេខសម្ងាត់ឱ្យបានត្រឹមត្រូវ",
"password_validation_must_match": "លេខចម្ងាត់ត្រូវតែដូចគ្នា",
"terms_and_conditions_validation": "អ្នកត្រូវយល់ព្រមតាមលក្ខខណ្ឌ និងគោលការណ៍",
diff --git a/signup-ui/src/App.tsx b/signup-ui/src/App.tsx
index 8699a971..eb0e5fa3 100644
--- a/signup-ui/src/App.tsx
+++ b/signup-ui/src/App.tsx
@@ -18,7 +18,7 @@ import Footer from "~components/ui/footer";
const queryClient = new QueryClient({
defaultOptions: {
queries: {
- staleTime: Infinity,
+ staleTime: 60 * 1000, // set to one minutes
retry: (failureCount, error) => {
// Do not retry on 4xx error codes
if (error instanceof HttpError && String(error.code).startsWith("4")) {
diff --git a/signup-ui/src/app/AppRouter.tsx b/signup-ui/src/app/AppRouter.tsx
index d7be722b..97d171d7 100644
--- a/signup-ui/src/app/AppRouter.tsx
+++ b/signup-ui/src/app/AppRouter.tsx
@@ -1,12 +1,26 @@
import { lazy, ReactNode, Suspense, useEffect } from "react";
-import { Route, Routes, useNavigate, useLocation, Navigate } from "react-router-dom";
+import { AppLayout } from "~layouts/AppLayout";
+import {
+ Navigate,
+ Route,
+ Routes,
+ useLocation,
+ useNavigate,
+} from "react-router-dom";
-import { ROOT_ROUTE, SIGNUP_ROUTE, SOMETHING_WENT_WRONG, UNDER_CONSTRUCTION } from "~constants/routes";
-import Footer from "~components/ui/footer";
-import NavBar from "~components/ui/nav-bar";
+import {
+ RESET_PASSWORD,
+ ROOT_ROUTE,
+ SIGNUP_ROUTE,
+ SOMETHING_WENT_WRONG,
+ UNDER_CONSTRUCTION,
+} from "~constants/routes";
import { lazyRetry } from "~utils/lazyRetry";
const SignUpPage = lazy(() => lazyRetry(() => import("~pages/SignUpPage")));
+const ResetPasswordPage = lazy(() =>
+ lazyRetry(() => import("~pages/ResetPasswordPage"))
+);
const LandingPage = lazy(() => lazyRetry(() => import("~pages/LandingPage")));
const UnderConstructionPage = lazy(() =>
lazyRetry(() => import("~pages/UnderConstructionPage"))
@@ -31,26 +45,23 @@ export const AppRouter = () => {
}, [navigate]);
return (
-
-
-
-
-
- } />
- }
- />
- }
- />
- } />
- } />
-
-
-
-
-
+
+
+ }>
+ } />
+ } />
+ }
+ />
+ }
+ />
+ } />
+ } />
+
+
+
);
};
diff --git a/signup-ui/src/components/ui/active-message.tsx b/signup-ui/src/components/ui/action-message.tsx
similarity index 70%
rename from signup-ui/src/components/ui/active-message.tsx
rename to signup-ui/src/components/ui/action-message.tsx
index f20d033a..68c031be 100644
--- a/signup-ui/src/components/ui/active-message.tsx
+++ b/signup-ui/src/components/ui/action-message.tsx
@@ -2,10 +2,10 @@ import * as React from "react";
import { cn } from "~utils/cn";
-export interface ActiveMessageProps
+export interface ActionMessageProps
extends React.HTMLAttributes {}
-const ActiveMessage = React.forwardRef(
+const ActionMessage = React.forwardRef(
({ className, hidden, children, ...props }, ref) => (
(
)
);
-ActiveMessage.displayName = "ActiveMessage";
+ActionMessage.displayName = "ActionMessage";
-export { ActiveMessage };
+export { ActionMessage };
diff --git a/signup-ui/src/components/ui/nav-bar.tsx b/signup-ui/src/components/ui/nav-bar.tsx
index a25d3378..f1b302e2 100644
--- a/signup-ui/src/components/ui/nav-bar.tsx
+++ b/signup-ui/src/components/ui/nav-bar.tsx
@@ -4,7 +4,7 @@ import { Language } from "~components/language";
const NavBar = () => {
return (
-