Add SVG assets for login devices and passkey icons
- Created a new SVG file for login devices with detailed paths and styles. - Added a new SVG file for the passkey icon with multiple vector paths and fill attributes.
This commit is contained in:
@@ -59,13 +59,7 @@ export function AuthProvider({ children }) {
|
||||
password
|
||||
});
|
||||
|
||||
const { user, accessToken, refreshToken } = response.data;
|
||||
|
||||
localStorage.setItem('accessToken', accessToken);
|
||||
localStorage.setItem('refreshToken', refreshToken);
|
||||
|
||||
setUser(user);
|
||||
navigate('/');
|
||||
completeLogin(response.data);
|
||||
|
||||
return { success: true };
|
||||
} catch (error) {
|
||||
@@ -77,6 +71,32 @@ export function AuthProvider({ children }) {
|
||||
}
|
||||
};
|
||||
|
||||
const loginWithPasskey = async (credential) => {
|
||||
try {
|
||||
const response = await axios.post(
|
||||
`${API_BASE_URL}/auth/passkeys/authentication/verify`,
|
||||
{ response: credential }
|
||||
);
|
||||
|
||||
completeLogin(response.data);
|
||||
return { success: true };
|
||||
} catch (error) {
|
||||
console.error('Passkey login error:', error);
|
||||
return {
|
||||
success: false,
|
||||
error: error.response?.data?.error || 'Не удалось выполнить вход по passkey'
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
const completeLogin = ({ user, accessToken, refreshToken }) => {
|
||||
localStorage.setItem('accessToken', accessToken);
|
||||
localStorage.setItem('refreshToken', refreshToken);
|
||||
|
||||
setUser(user);
|
||||
navigate('/');
|
||||
};
|
||||
|
||||
const logout = async () => {
|
||||
const refreshToken = localStorage.getItem('refreshToken');
|
||||
|
||||
@@ -102,6 +122,7 @@ export function AuthProvider({ children }) {
|
||||
user,
|
||||
loading,
|
||||
login,
|
||||
loginWithPasskey,
|
||||
logout,
|
||||
getAccessToken,
|
||||
isAuthenticated: !!user,
|
||||
|
||||
Reference in New Issue
Block a user