remove result of user creation
This commit is contained in:
@@ -26,12 +26,15 @@ export const AuthProvider = ({ children, ...rest }: AuthProviderProps) => {
|
|||||||
const [loading] = useState(true);
|
const [loading] = useState(true);
|
||||||
const [isLoginDialogOpen, setIsLoginDialogOpen] = useState(false);
|
const [isLoginDialogOpen, setIsLoginDialogOpen] = useState(false);
|
||||||
const token = cookies.token;
|
const token = cookies.token;
|
||||||
const setToken = (value: string) => {
|
const setToken = useCallback(
|
||||||
|
(value: string) => {
|
||||||
setCookie("token", value);
|
setCookie("token", value);
|
||||||
};
|
},
|
||||||
const removeToken = () => {
|
[setCookie]
|
||||||
|
);
|
||||||
|
const removeToken = useCallback(() => {
|
||||||
removeCookie("token");
|
removeCookie("token");
|
||||||
};
|
}, [removeCookie]);
|
||||||
const apiClient = createApiClient(token ?? "");
|
const apiClient = createApiClient(token ?? "");
|
||||||
|
|
||||||
const login = useCallback<LoginCallback>(
|
const login = useCallback<LoginCallback>(
|
||||||
@@ -44,6 +47,7 @@ export const AuthProvider = ({ children, ...rest }: AuthProviderProps) => {
|
|||||||
}),
|
}),
|
||||||
}).then(async (res) => {
|
}).then(async (res) => {
|
||||||
setToken(await res.json());
|
setToken(await res.json());
|
||||||
|
setIsLoginDialogOpen(false);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
[apiClient, setToken]
|
[apiClient, setToken]
|
||||||
@@ -55,7 +59,7 @@ export const AuthProvider = ({ children, ...rest }: AuthProviderProps) => {
|
|||||||
}).then(() => {
|
}).then(() => {
|
||||||
removeToken();
|
removeToken();
|
||||||
});
|
});
|
||||||
}, [apiClient, setToken]);
|
}, [apiClient, removeToken]);
|
||||||
|
|
||||||
const authenticated = !!token;
|
const authenticated = !!token;
|
||||||
|
|
||||||
|
|||||||
@@ -1,67 +1,63 @@
|
|||||||
import { Router } from 'express';
|
import { Router } from "express";
|
||||||
import { UserDto } from '../dto/user.dto';
|
import { AuthService } from "../service/auth.service";
|
||||||
import { AuthService } from '../service/auth.service';
|
import { UserService } from "../service/user.service";
|
||||||
import { UserService } from '../service/user.service';
|
|
||||||
|
|
||||||
const router = Router();
|
const router = Router();
|
||||||
export const UserRoutes = router;
|
export const UserRoutes = router;
|
||||||
|
|
||||||
export const apiNamespace = '/users'
|
export const apiNamespace = "/users";
|
||||||
|
|
||||||
router.post(apiNamespace, (req, res) => {
|
router.post(apiNamespace, (req, res) => {
|
||||||
const { email, password } = req.body;
|
const { email, password } = req.body;
|
||||||
|
|
||||||
UserService.create({
|
UserService.create({
|
||||||
email,
|
email,
|
||||||
password
|
password,
|
||||||
}).then(user => {
|
|
||||||
const respose: UserDto = {
|
|
||||||
id: user.id,
|
|
||||||
email: user.email
|
|
||||||
}
|
|
||||||
|
|
||||||
res.json(respose);
|
|
||||||
}).catch(err => {
|
|
||||||
res.status(422).json({
|
|
||||||
error: err.message
|
|
||||||
});
|
|
||||||
})
|
})
|
||||||
})
|
.then(() => {
|
||||||
|
res.json();
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
res.status(422).json({
|
||||||
|
error: err.message,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
router.post(`${apiNamespace}/sign_in`, async (req, res) => {
|
router.post(`${apiNamespace}/sign_in`, async (req, res) => {
|
||||||
const { email, password } = req.body;
|
const { email, password } = req.body;
|
||||||
|
|
||||||
const user = await UserService.findByEmail(email)
|
const user = await UserService.findByEmail(email);
|
||||||
|
|
||||||
const isPasswordValid = await AuthService.isUserPasswordValid(user, password)
|
const isPasswordValid = await AuthService.isUserPasswordValid(user, password);
|
||||||
|
|
||||||
if (isPasswordValid) {
|
if (isPasswordValid) {
|
||||||
const token = await AuthService.createSession(user)
|
const token = await AuthService.createSession(user);
|
||||||
|
|
||||||
res.json({
|
res.json({
|
||||||
auth: true,
|
auth: true,
|
||||||
token
|
token,
|
||||||
})
|
});
|
||||||
} else {
|
} else {
|
||||||
res.status(500).json({
|
res.status(500).json({
|
||||||
auth: false,
|
auth: false,
|
||||||
token: null,
|
token: null,
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
|
|
||||||
router.delete(`${apiNamespace}/sign_out`, async (req, res) => {
|
router.delete(`${apiNamespace}/sign_out`, async (req, res) => {
|
||||||
const token = req.headers['x-access-token']
|
const token = req.headers["x-access-token"];
|
||||||
|
|
||||||
if (typeof token === 'string') {
|
if (typeof token === "string") {
|
||||||
await AuthService.destoySession(token)
|
await AuthService.destoySession(token);
|
||||||
|
|
||||||
res.status(204).json({
|
res.status(204).json({
|
||||||
success: true
|
success: true,
|
||||||
})
|
});
|
||||||
} else {
|
} else {
|
||||||
res.status(422).json({
|
res.status(422).json({
|
||||||
success: false
|
success: false,
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user