primaryRoutes.js fetch() fix and refactoring

This commit is contained in:
LuckyLaszlo
2023-01-16 18:04:30 +01:00
parent 314fa10cff
commit dfd34c590b

View File

@@ -7,96 +7,41 @@ import { wrap } from 'svelte-spa-router/wrap'
import Game from '../pages/game/Game.svelte'; import Game from '../pages/game/Game.svelte';
import Ranking from '../pages/game/Ranking.svelte'; import Ranking from '../pages/game/Ranking.svelte';
import GameSpectator from '../pages/game/GameSpectator.svelte'; import GameSpectator from '../pages/game/GameSpectator.svelte';
import { fetchUser } from "../pieces/utils";
async function checkLogin(detail) {
const user = await fetchUser();
if (!user || !user.username) {
return false;
}
else {
return true;
}
}
export const primaryRoutes = { export const primaryRoutes = {
'/': SplashPage, '/': SplashPage,
'/2fa': TwoFactorAuthentication, '/2fa': TwoFactorAuthentication,
'/game': wrap({ '/game': wrap({
component: Game, component: Game,
conditions: [ conditions: [checkLogin]
async(detail) => { }),
const user = await fetch('http://' + process.env.WEBSITE_HOST + ":" + process.env.WEBSITE_PORT + '/api/v2/user') '/spectator': wrap({
.then((resp) => resp.json()) component: GameSpectator,
conditions: [checkLogin]
console.log('in /profile what is in user') }),
console.log(user) '/ranking': wrap({
component: Ranking,
if (user && user.username) conditions: [checkLogin]
return true; }),
else '/profile': wrap({
return false; component: ProfilePage,
} conditions: [checkLogin]
] }),
}), '/profile/*': wrap({
'/spectator': wrap({ component: ProfilePage,
component: GameSpectator, conditions: [checkLogin]
conditions: [ }),
async(detail) => { '/unauthorized-access': UnauthorizedAccessPage,
const user = await fetch('http://' + process.env.WEBSITE_HOST + ":" + process.env.WEBSITE_PORT + '/api/v2/user') '*': NotFound
.then((resp) => resp.json())
console.log('in /profile what is in user')
console.log(user)
if (user && user.username)
return true;
else
return false;
}
]
}),
'/ranking': wrap({
component: Ranking,
conditions: [
async(detail) => {
const user = await fetch('http://' + process.env.WEBSITE_HOST + ":" + process.env.WEBSITE_PORT + '/api/v2/user')
.then((resp) => resp.json())
console.log('in /profile what is in user')
console.log(user)
if (user && user.username)
return true;
else
return false;
}
]
}),
'/profile': wrap({
component: ProfilePage,
conditions: [
async(detail) => {
const user = await fetch('http://' + process.env.WEBSITE_HOST + ":" + process.env.WEBSITE_PORT + '/api/v2/user')
.then((resp) => resp.json())
console.log('in /profile what is in user')
console.log(user)
if (user && user.username)
return true;
else
return false;
}
]
}),
'/profile/*': wrap({
component: ProfilePage,
conditions: [
async(detail) => {
const user = await fetch('http://' + process.env.WEBSITE_HOST + ":" + process.env.WEBSITE_PORT + '/api/v2/user')
.then((resp) => resp.json())
console.log('in /profile/* what is in user')
console.log(user)
if (user && user.username)
return true;
else
return false;
}
]
}),
'/unauthorized-access': UnauthorizedAccessPage,
'*': NotFound
}; };