feature(database-connection): Fix routing and refactor style sheets
This commit is contained in:
@@ -1,22 +1,22 @@
|
||||
import RequestError from "../models/RequestError";
|
||||
import UserStatsResponse from "../models/UserStatsResponse";
|
||||
|
||||
import {useEffect, useState} from "react";
|
||||
|
||||
export default class UserStatsService {
|
||||
|
||||
private apiURL = 'https://api.tsotr.humenius.me/stats'
|
||||
private static apiURL = 'https://api.tsotr.humenius.me/stats'
|
||||
|
||||
private requestInit: RequestInit = {
|
||||
private static requestInit: RequestInit = {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
};
|
||||
|
||||
async getStats(seasonId: string): Promise<UserStatsResponse> {
|
||||
public static async getStats(seasonId: string): Promise<UserStatsResponse> {
|
||||
return fetch(this.apiURL, this.requestInit)
|
||||
.then(res => UserStatsService.checkResponse(res))
|
||||
.then(data => data.json());
|
||||
.then(res => UserStatsService.checkResponse(res))
|
||||
.then(data => data.json());
|
||||
}
|
||||
|
||||
private static checkResponse(response: any): any {
|
||||
@@ -29,3 +29,69 @@ export default class UserStatsService {
|
||||
return response;
|
||||
}
|
||||
}
|
||||
|
||||
// const checkResponse = <T extends Response>(response: T): T => {
|
||||
// if (!response.ok) {
|
||||
// console.log(response);
|
||||
// let error = new RequestError(response.statusText);
|
||||
// error.response = response;
|
||||
// throw error;
|
||||
// }
|
||||
// return response;
|
||||
// }
|
||||
//
|
||||
// const useApiService = <T>(url: string, method: string = 'GET'): { response: T | null; error: RequestError | null } => {
|
||||
// const baseUrl = "https://api.tsotr.humenius.me"
|
||||
// const [response, setResponse] = useState<T | null>(null)
|
||||
// const [error, setError] = useState<RequestError | null>(null)
|
||||
// const requestInit = {
|
||||
// method: method,
|
||||
// headers: {
|
||||
// 'Content-Type': 'application/json'
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// useEffect(() => {
|
||||
// const fetchData = async (): Promise<void> => {
|
||||
// const result = await fetch(`${baseUrl}${url}`, requestInit)
|
||||
// .then(res => checkResponse(res))
|
||||
// .then(data => data.json())
|
||||
// .catch(err => setError(err))
|
||||
// setResponse(result)
|
||||
// }
|
||||
//
|
||||
// fetchData()
|
||||
// }, [url])
|
||||
//
|
||||
// return { response, error }
|
||||
// }
|
||||
//
|
||||
// // const seasonStatsQuery = (seasonId: number): { response: UserStatsResponse | null; error: RequestError | null } => {
|
||||
// // const baseUrl = "https://api.tsotr.humenius.me/stats/season/"
|
||||
// // const [response, setResponse] = useState<UserStatsResponse | null>(null)
|
||||
// // const [error, setError] = useState<RequestError | null>(null)
|
||||
// // const requestInit = {
|
||||
// // method: 'GET',
|
||||
// // headers: {
|
||||
// // 'Content-Type': 'application/json'
|
||||
// // }
|
||||
// // }
|
||||
// //
|
||||
// // useEffect(() => {
|
||||
// // const fetchData = async (): Promise<void> => {
|
||||
// // const result = await fetch(baseUrl, requestInit)
|
||||
// // .then(res => checkResponse(res))
|
||||
// // .then(data => data.json())
|
||||
// // .catch(err => setError(err))
|
||||
// // setResponse(result)
|
||||
// // }
|
||||
// //
|
||||
// // fetchData()
|
||||
// // }, [seasonId])
|
||||
// //
|
||||
// // return { response, error }
|
||||
// // }
|
||||
//
|
||||
// const currentSeasonStatsQuery = useApiService<UserStatsResponse>('/stats')
|
||||
//
|
||||
// export default useApiService;
|
||||
Reference in New Issue
Block a user