fix: store style & library game page

This commit is contained in:
DecDuck
2025-01-28 16:39:13 +11:00
parent ecd26a42a8
commit 7c1dec9401
2 changed files with 16 additions and 14 deletions

View File

@ -79,19 +79,19 @@ import {
import { type Game, type GameVersion, type Collection } from "@prisma/client"; import { type Game, type GameVersion, type Collection } from "@prisma/client";
const route = useRoute(); const route = useRoute();
const headers = useRequestHeaders(["cookie"]);
const { data: gamesData } = await useFetch<
(Game & { versions: GameVersion[] })[]
>("/api/v1/store/recent", { headers });
const collections = await useCollections(); const collections = await useCollections();
const game = collections.value const library = await useLibrary();
const game = [...collections.value, library.value]
.map((e) => e.entries.map((e) => e.game)) .map((e) => e.entries.map((e) => e.game))
.flat() .flat()
.find((e) => e.id == route.params.id); .find((e) => e.id == route.params.id);
if (game === undefined) if (game === undefined)
throw createError({ statusCode: 404, statusMessage: "Game not found" }); throw createError({
statusCode: 404,
statusMessage: JSON.stringify(collections.value),
});
</script> </script>
<style scoped> <style scoped>

View File

@ -30,10 +30,11 @@
> >
{{ game.mName }} {{ game.mName }}
</h2> </h2>
<p class="mt-3 text-lg text-zinc-300 line-clamp-2"> <p class="mt-3 text-lg text-zinc-300 line-clamp-2 max-w-xl">
{{ game.mShortDescription }} {{ game.mShortDescription }}
</p> </p>
<div class="mt-8 grid grid-cols-1 lg:grid-cols-2 gap-4"> <div>
<div class="mt-8 grid grid-cols-1 lg:grid-cols-2 gap-4 w-fit mx-auto">
<NuxtLink <NuxtLink
:href="`/store/${game.id}`" :href="`/store/${game.id}`"
class="block w-full rounded-md border border-transparent bg-white px-8 py-3 text-base font-medium text-gray-900 hover:bg-gray-100 sm:w-auto" class="block w-full rounded-md border border-transparent bg-white px-8 py-3 text-base font-medium text-gray-900 hover:bg-gray-100 sm:w-auto"
@ -44,6 +45,7 @@
</div> </div>
</div> </div>
</div> </div>
</div>
</VueSlide> </VueSlide>
<template #addons> <template #addons>