From 2be72885e2d49a5637c2741e1844dfe92d3e197e Mon Sep 17 00:00:00 2001 From: crupest Date: Thu, 3 Sep 2020 18:35:44 +0800 Subject: Beatify login page. --- Timeline/ClientApp/.editorconfig | 1 + .../src/app/views/common/LoadingButton.tsx | 28 ++++++++++++++++++++++ Timeline/ClientApp/src/app/views/login/index.tsx | 24 ++++++++++--------- 3 files changed, 42 insertions(+), 11 deletions(-) create mode 100644 Timeline/ClientApp/src/app/views/common/LoadingButton.tsx diff --git a/Timeline/ClientApp/.editorconfig b/Timeline/ClientApp/.editorconfig index 54d8316a..779719e0 100644 --- a/Timeline/ClientApp/.editorconfig +++ b/Timeline/ClientApp/.editorconfig @@ -1,4 +1,5 @@ root = true +end_of_line = lf [*.ts] tab_width = 2 diff --git a/Timeline/ClientApp/src/app/views/common/LoadingButton.tsx b/Timeline/ClientApp/src/app/views/common/LoadingButton.tsx new file mode 100644 index 00000000..fa721afe --- /dev/null +++ b/Timeline/ClientApp/src/app/views/common/LoadingButton.tsx @@ -0,0 +1,28 @@ +import React from "react"; +import { Button, ButtonProps, Spinner } from "react-bootstrap"; + +const LoadingButton: React.FC<{ loading?: boolean } & ButtonProps> = ({ + loading, + variant, + ...otherProps +}) => { + return ( + + ); +}; + +export default LoadingButton; diff --git a/Timeline/ClientApp/src/app/views/login/index.tsx b/Timeline/ClientApp/src/app/views/login/index.tsx index 5d1e8f06..545fc05a 100644 --- a/Timeline/ClientApp/src/app/views/login/index.tsx +++ b/Timeline/ClientApp/src/app/views/login/index.tsx @@ -6,6 +6,7 @@ import { Form, Spinner, Button } from "react-bootstrap"; import { useUser, userService } from "@/services/user"; import AppBar from "../common/AppBar"; +import LoadingButton from "../common/LoadingButton"; const LoginPage: React.FC = (_) => { const { t } = useTranslation(); @@ -89,7 +90,7 @@ const LoginPage: React.FC = (_) => { isInvalid={usernameDirty && username === ""} /> {usernameDirty && username === "" && ( - + {t("login.emptyUsername")} )} @@ -108,7 +109,7 @@ const LoginPage: React.FC = (_) => { isInvalid={passwordDirty && password === ""} /> {passwordDirty && password === "" && ( - + {t("login.emptyPassword")} )} @@ -124,15 +125,16 @@ const LoginPage: React.FC = (_) => { label={t("user.rememberMe")} /> - {error ?

{t(error)}

: null} -
- {process ? ( - - ) : ( - - )} + {error ?

{t(error)}

: null} +
+ + {t("user.login")} +
-- cgit v1.2.3