feat: create register
ci-front / build (push) Successful in 2m1s

This commit is contained in:
2026-04-04 05:57:34 +03:00
parent ed439656f8
commit 96f82b4162
3 changed files with 59 additions and 17 deletions
@@ -17,12 +17,18 @@ const login = async (credentials: LoginCredentials): Promise<LoginResponse> => {
return response.data;
};
const register = async (data: RegisterData): Promise<LoginResponse> => {
const response = await apiClient.post<LoginResponse>("/auth/register", {
const register = async (
data: RegisterData,
): Promise<Record<string, string>> => {
const response = await apiClient.post<Record<string, string>>("/auth/token", {
login: data.login,
password: data.password,
name: data.firstName,
last_name: data.lastName,
is_active: data.is_active,
permission_admin: data.permission_admin,
permission_manage_agent: data.permission_manage_agent,
permission_view: data.permission_view,
});
return response.data;
};
@@ -62,9 +68,10 @@ export const useAuthStore = create<AuthState>()(
register: async (data: RegisterData) => {
set({ isLoading: true, error: null });
try {
const response = await register(data);
const user = mapResponseToUser(response);
set({ user, token: response.token, isLoading: false });
await register(data);
// После регистрации пользователь не авторизуется автоматически
// Нужно войти через /auth/login
set({ isLoading: false });
} catch (error) {
set({
error:
@@ -8,6 +8,10 @@ export interface RegisterData {
password: string;
firstName: string;
lastName: string;
is_active?: boolean;
permission_admin?: boolean;
permission_manage_agent?: boolean;
permission_view?: boolean;
}
export interface LoginResponse {