Create new Material components, redesign the chat UI, add security settings

This commit is contained in:
2025-11-01 14:55:36 +03:00
Unverified
parent 5f49b45eed
commit fc11d06570
40 changed files with 917 additions and 618 deletions
+3 -2
View File
@@ -7,12 +7,12 @@ import { API_BASE_URL } from "@/core/config";
import { useRef } from "react";
import type { TextField } from "mdui/components/text-field";
import { useAppState } from "@/pages/chat/state";
import { MaterialTextField } from "@/core/components/MaterialTextField";
import { initialize, isSupported, startElectronReceiver, subscribe } from "@/core/push-notifications/push-notifications";
import { isElectron } from "@/core/electron/electron";
import { useNavigate } from "react-router-dom";
import "./auth.scss";
import useDownloadAppScreen from "@/core/hooks/useDownloadAppScreen";
import { MaterialButton, MaterialTextField } from "@/utils/material";
export default function LoginPage() {
const [alerts, updateAlerts] = useImmer<Alert[]>([]);
@@ -114,6 +114,7 @@ export default function LoginPage() {
showAlert("danger", "Ошибка соединения с сервером");
}
}}>
<MaterialTextField
label="@Имя пользователя"
id="login-username"
@@ -136,7 +137,7 @@ export default function LoginPage() {
required
ref={passwordElement} />
<mdui-button type="submit">Войти</mdui-button>
<MaterialButton type="submit">Войти</MaterialButton>
</form>
<div className="text-center">
+2 -2
View File
@@ -6,7 +6,7 @@ import { TextField } from "mdui/components/text-field";
import type { ErrorResponse, RegisterRequest, LoginResponse } from "@/core/types";
import { API_BASE_URL } from "@/core/config";
import { useAppState } from "@/pages/chat/state";
import { MaterialTextField } from "@/core/components/MaterialTextField";
import { MaterialButton, MaterialTextField } from "@/utils/material";
import { ensureKeysOnLogin, deriveAuthSecret } from "@/core/api/authApi";
import { useNavigate } from "react-router-dom";
import "./auth.scss";
@@ -156,7 +156,7 @@ export default function RegisterPage() {
required
ref={confirmPasswordElement} />
<mdui-button type="submit">Зарегистрироваться</mdui-button>
<MaterialButton type="submit">Зарегистрироваться</MaterialButton>
</form>
<div className="text-center">