"use client"; import { GameCard } from "@/components/gameCard"; import { HomeLoggedInHeader } from "@/components/loggedInHeader"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { getOmniRecommendationsHome, OmniRecommendation, } from "@/lib/omniRecommendation"; import { getCookie } from "@/lib/roblox"; import { loadThumbnails, ThumbnailRequest } from "@/lib/thumbnailLoader"; import { useEffect, useState } from "react"; export default function Home() { const [rec, setRec] = useState(null); const SORTS_ALLOWED_IDS = [100000003, 100000001]; useEffect(() => { (async () => { const r = await getOmniRecommendationsHome(); console.log("[ROBLOX]", "got omni recommendation from api", r); let th: ThumbnailRequest[] = []; r.sorts.filter(a=>SORTS_ALLOWED_IDS.includes(a.topicId)).forEach(b=>{ (b.recommendationList || []).forEach(c=>{ th.push({ type: "GameThumbnail", targetId: r.contentMetadata.Game[c.contentId.toString()].rootPlaceId, format: "webp", size: "384x216" }) }) }); setRec(r); loadThumbnails(th).catch(a=>console.error(a)) })(); }, []); if (!rec) { return (
Loading...
); } return (
{"roblox in nextjs"}
{"require(\"@/lib/roblox\").getCookie().length = "}{getCookie().length}{";"}
{rec.sorts .filter((a) => SORTS_ALLOWED_IDS.includes(a.topicId)) .map((sort, idx) => (

{sort.topic}

{(sort.recommendationList || []).map( (recommendation, idxb) => { const game = rec.contentMetadata.Game[ recommendation.contentId.toString() ]; return ; } )}
))}
); }