Tabs agora aparecem somente para usuários logados
This commit is contained in:
8
src/services/api/api.ts
Normal file
8
src/services/api/api.ts
Normal file
@@ -0,0 +1,8 @@
|
||||
import axios from 'axios';
|
||||
import apiConfig from '../../config/api.config';
|
||||
|
||||
const instance = axios.create({
|
||||
baseURL: apiConfig.getBaseUrl(),
|
||||
});
|
||||
|
||||
export default instance;
|
||||
33
src/services/api/session.ts
Normal file
33
src/services/api/session.ts
Normal file
@@ -0,0 +1,33 @@
|
||||
import instance from './api';
|
||||
import sessionRoutes from '../../constants/routes/sessionRoutes';
|
||||
import LocalStorage from '../../LocalStorage';
|
||||
import { AxiosRequestHeaders } from 'axios';
|
||||
|
||||
let token: string | null;
|
||||
let header: AxiosRequestHeaders;
|
||||
|
||||
interface createData {
|
||||
login: string,
|
||||
password: string,
|
||||
}
|
||||
|
||||
function updateHeader() {
|
||||
token = LocalStorage.getToken();
|
||||
header = {
|
||||
"Accept": 'application/json',
|
||||
"Content-Type": 'application/json',
|
||||
"Authorization": 'Bearer ' + token
|
||||
}
|
||||
}
|
||||
|
||||
export async function create(data: createData) {
|
||||
const response = await instance.post(sessionRoutes.create.url, data);
|
||||
return response.data;
|
||||
}
|
||||
|
||||
export async function refresh() {
|
||||
updateHeader();
|
||||
|
||||
let response = await instance.post(sessionRoutes.refresh.url, { token }, { headers: header });
|
||||
return response.data;
|
||||
}
|
||||
71
src/services/api/users.ts
Normal file
71
src/services/api/users.ts
Normal file
@@ -0,0 +1,71 @@
|
||||
import instance from './api';
|
||||
// import LocalStorage from '../LocalStorage';
|
||||
|
||||
import userRoutes from '../../constants/routes/usersRoutes';
|
||||
import { AxiosRequestHeaders } from 'axios';
|
||||
import LocalStorage from '../../LocalStorage';
|
||||
|
||||
let token: string;
|
||||
let header: AxiosRequestHeaders;
|
||||
|
||||
function updateHeader() {
|
||||
token = LocalStorage.getToken();
|
||||
|
||||
header = {
|
||||
"Accept": 'application/json',
|
||||
"Content-Type": 'application/json',
|
||||
"Authorization": 'Bearer ' + token
|
||||
}
|
||||
}
|
||||
|
||||
export interface CadastroResponse {
|
||||
message?: string;
|
||||
|
||||
token?: {
|
||||
token: string;
|
||||
};
|
||||
|
||||
error?: string;
|
||||
}
|
||||
|
||||
export interface CadastroRequest {
|
||||
name: string;
|
||||
lastname: string;
|
||||
email: string;
|
||||
birth_date: string;
|
||||
password: string;
|
||||
}
|
||||
|
||||
export interface UpdateUserRequest {
|
||||
name: string;
|
||||
email: string;
|
||||
bio: string;
|
||||
}
|
||||
|
||||
// export async function get(cpf) {
|
||||
// updateHeader();
|
||||
|
||||
// const response = await instance.get(userRoutes.get.url + `/${cpf}`, { headers: header });
|
||||
// return response.data;
|
||||
// }
|
||||
|
||||
export async function create(CadastroRequest: any) {
|
||||
updateHeader();
|
||||
|
||||
const response = await instance.post(userRoutes.create.url, CadastroRequest);
|
||||
return response.data;
|
||||
}
|
||||
|
||||
export async function getById(userId: string) {
|
||||
updateHeader();
|
||||
|
||||
const response = await instance.get(userRoutes.get.url + `/${userId}`, { headers: header });
|
||||
return response.data;
|
||||
}
|
||||
|
||||
export async function update(userData: UpdateUserRequest) {
|
||||
updateHeader();
|
||||
|
||||
const response = await instance.patch(userRoutes.update.url, userData, { headers: header });
|
||||
return response.data;
|
||||
}
|
||||
Reference in New Issue
Block a user