39 lines
1 KiB
TypeScript
39 lines
1 KiB
TypeScript
import { callApi, HTTP } from "../tools";
|
|
import {
|
|
IFetchLoggedUserResponse,
|
|
IFetchUserRequest,
|
|
IFetchUserResponse,
|
|
IFetchUserSessionsRequest,
|
|
IFetchUserSessionsResponse,
|
|
IFetchUserCommunitiesRequest,
|
|
IFetchUserCommunitiesResponse,
|
|
} from "./types";
|
|
|
|
const fetchLoggedUserApi = async (): Promise<IFetchLoggedUserResponse> => {
|
|
return await callApi(HTTP.GET, `user/logged`);
|
|
};
|
|
|
|
const fetchUserApi = async (
|
|
request: IFetchUserRequest,
|
|
): Promise<IFetchUserResponse> => {
|
|
return await callApi(HTTP.GET, `user/${request.id}`);
|
|
};
|
|
|
|
const fetchUserSessionsApi = async (
|
|
request: IFetchUserSessionsRequest,
|
|
): Promise<IFetchUserSessionsResponse> => {
|
|
return await callApi(HTTP.GET, `user/${request.id}/sessions`);
|
|
};
|
|
|
|
const fetchUserCommunitiesApi = async (
|
|
request: IFetchUserCommunitiesRequest,
|
|
): Promise<IFetchUserCommunitiesResponse> => {
|
|
return await callApi(HTTP.GET, `user/${request.id}/communities`);
|
|
};
|
|
|
|
export {
|
|
fetchLoggedUserApi,
|
|
fetchUserApi,
|
|
fetchUserSessionsApi,
|
|
fetchUserCommunitiesApi,
|
|
};
|