diff --git a/biome.json b/biome.json index 8c472ef33c..605f5efa14 100644 --- a/biome.json +++ b/biome.json @@ -14,7 +14,8 @@ "!rivetkit-openapi/openapi.json", "!scripts", "!website", - "!site" + "!site", + "!frontend/**/*.gen.*" ], "ignoreUnknown": true }, diff --git a/frontend/src/app/dialogs/connect-quick-vercel-frame.tsx b/frontend/src/app/dialogs/connect-quick-vercel-frame.tsx index 4acd3a570f..2e24a0212e 100644 --- a/frontend/src/app/dialogs/connect-quick-vercel-frame.tsx +++ b/frontend/src/app/dialogs/connect-quick-vercel-frame.tsx @@ -1,3 +1,4 @@ +/** biome-ignore-all lint/correctness/useHookAtTopLevel: */ import { faVercel, Icon } from "@rivet-gg/icons"; import { useMutation, @@ -7,6 +8,7 @@ import { } from "@tanstack/react-query"; import confetti from "canvas-confetti"; import { useMemo } from "react"; +import { match } from "ts-pattern"; import * as ConnectVercelForm from "@/app/forms/connect-quick-vercel-form"; import { Accordion, @@ -17,14 +19,22 @@ import { ExternalLinkCard, Frame, } from "@/components"; -import { type Region, useEngineCompatDataProvider } from "@/components/actors"; +import { + type Region, + useCloudDataProvider, + useCloudNamespaceDataProvider, + useEngineCompatDataProvider, +} from "@/components/actors"; import { queryClient } from "@/queries/global"; import { StepperForm } from "../forms/stepper-form"; import { EnvVariablesStep, useSelectedDatacenter, } from "./connect-railway-frame"; -import { VERCEL_SERVERLESS_MAX_DURATION } from "./connect-vercel-frame"; +import { + usePublishableToken, + VERCEL_SERVERLESS_MAX_DURATION, +} from "./connect-vercel-frame"; const { stepper } = ConnectVercelForm; @@ -141,9 +151,7 @@ function FormStepper({ const useVercelTemplateLink = () => { const dataProvider = useEngineCompatDataProvider(); - const { data: token } = useQuery( - dataProvider.engineAdminTokenQueryOptions(), - ); + const token = usePublishableToken(); const endpoint = useSelectedDatacenter(); return useMemo(() => { diff --git a/frontend/src/app/dialogs/connect-railway-frame.tsx b/frontend/src/app/dialogs/connect-railway-frame.tsx index 99766ddb42..6b6581cfa0 100644 --- a/frontend/src/app/dialogs/connect-railway-frame.tsx +++ b/frontend/src/app/dialogs/connect-railway-frame.tsx @@ -20,7 +20,6 @@ import { DiscreteInput, Frame, Label, - Skeleton, } from "@/components"; import { useEngineCompatDataProvider } from "@/components/actors"; import { defineStepper } from "@/components/ui/stepper"; @@ -28,6 +27,7 @@ import { engineEnv } from "@/lib/env"; import { queryClient } from "@/queries/global"; import { useRailwayTemplateLink } from "@/utils/use-railway-template-link"; import { StepperForm } from "../forms/stepper-form"; +import { usePublishableToken } from "./connect-vercel-frame"; const stepper = defineStepper( { @@ -272,9 +272,7 @@ function RivetRunnerEnv() { } function RivetTokenEnv() { - const { data, isLoading } = useQuery( - useEngineCompatDataProvider().engineAdminTokenQueryOptions(), - ); + const token = usePublishableToken(); return ( <> - {isLoading ? ( - - ) : ( - - )} + ); } diff --git a/frontend/src/app/dialogs/connect-vercel-frame.tsx b/frontend/src/app/dialogs/connect-vercel-frame.tsx index e351a42785..1b3e661c0a 100644 --- a/frontend/src/app/dialogs/connect-vercel-frame.tsx +++ b/frontend/src/app/dialogs/connect-vercel-frame.tsx @@ -1,7 +1,9 @@ +/** biome-ignore-all lint/correctness/useHookAtTopLevel: guarded by build constant */ import { faVercel, Icon } from "@rivet-gg/icons"; import { useMutation, usePrefetchInfiniteQuery, + useQuery, useSuspenseInfiniteQuery, useSuspenseQuery, } from "@tanstack/react-query"; @@ -28,17 +30,15 @@ import { } from "@/components/actors"; import { cloudEnv } from "@/lib/env"; import { queryClient } from "@/queries/global"; -import { type JoinStepSchemas, StepperForm } from "../forms/stepper-form"; +import { StepperForm } from "../forms/stepper-form"; const { stepper } = ConnectVercelForm; -type FormValues = z.infer>; - export const VERCEL_SERVERLESS_MAX_DURATION = 300; interface CreateProjectFrameContentProps extends DialogContentProps {} -function usePublishableToken() { +export function usePublishableToken() { return match(__APP_TYPE__) .with("cloud", () => { return useSuspenseQuery(