"use client"

import { useLayoutEffect } from "react"
import { useQueryClient } from "@tanstack/react-query"
import { useDemoDriveStore } from "@/lib/demo/demo-drive-store"
import { useSessionGuardStore } from "@/lib/auth/session-guard-store"

export const DEMO_DRIVE_QUERY_ROOT = ["demo", "drive"] as const

/** Reset local demo drive state and clear isolated query cache. */
export function DemoDriveBootstrap() {
  const queryClient = useQueryClient()

  useLayoutEffect(() => {
    useSessionGuardStore.getState().clear()
    useDemoDriveStore.getState().reset()
    queryClient.removeQueries({ queryKey: DEMO_DRIVE_QUERY_ROOT })
  }, [queryClient])

  return null
}
