Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | import { useEffect, useState } from 'react' import { getAllGames, getAvailableGames, ensureAllGamesRegistered, } from '@/lib/arcade/game-registry' import type { GameDefinition } from '@/lib/arcade/game-sdk/types' /** * Returns all registered games, including lazy-loaded heavy games. * Triggers a re-render once lazy games finish registering. */ export function useAllGames(): GameDefinition<any, any, any>[] { const [, setReady] = useState(false) useEffect(() => { ensureAllGamesRegistered().then(() => setReady(true)) }, []) return getAllGames() } /** * Returns all available (available: true) games, including lazy-loaded ones. * Triggers a re-render once lazy games finish registering. */ export function useAvailableGames(): GameDefinition<any, any, any>[] { const [, setReady] = useState(false) useEffect(() => { ensureAllGamesRegistered().then(() => setReady(true)) }, []) return getAvailableGames() } |