import { useQueryClient } from '@tanstack/react-query' import { ArrowRight, Loader2 } from 'lucide-react' import Link from 'next/link' import { useParams } from 'common' import ClientLibrary from 'components/interfaces/Home/ClientLibrary' import ExampleProject from 'components/interfaces/Home/ExampleProject' import { CLIENT_LIBRARIES, EXAMPLE_PROJECTS } from 'components/interfaces/Home/Home.constants' import { DisplayApiSettings, DisplayConfigSettings } from 'components/ui/ProjectSettings' import { invalidateProjectDetailsQuery } from 'data/projects/project-detail-query' import { useProjectStatusQuery } from 'data/projects/project-status-query' import { invalidateProjectsQuery } from 'data/projects/projects-query' import { useSelectedProject } from 'hooks/misc/useSelectedProject' import { PROJECT_STATUS } from 'lib/constants' import { Badge, Button } from 'ui' const BuildingState = () => { const { ref } = useParams() const project = useSelectedProject() const queryClient = useQueryClient() useProjectStatusQuery( { projectRef: ref }, { enabled: project?.status !== PROJECT_STATUS.ACTIVE_HEALTHY, refetchInterval: (res) => { return res?.status === PROJECT_STATUS.ACTIVE_HEALTHY ? false : 4000 }, onSuccess: async (res) => { if (res.status === PROJECT_STATUS.ACTIVE_HEALTHY) { if (ref) invalidateProjectDetailsQuery(queryClient, ref) invalidateProjectsQuery(queryClient) } }, } ) if (project === undefined) return null return (
{' '} We are provisioning your database and API endpoints
This may take a few minutes
If your dashboard hasn't connected within 2 minutes, you can open a support ticket.
> } />