import Footer from '@/components/footer/FooterAdmin'; import Navbar from '@/components/navbar/NavbarAdmin'; import { routes } from '@/components/routes'; import Sidebar from '@/components/sidebar/Sidebar'; import { Database } from '@/types_db'; import { getActiveRoute } from '@/utils/navigation'; import { Box, useDisclosure } from '@chakra-ui/react'; import { User } from '@supabase/supabase-js'; import { usePathname } from 'next/navigation'; import { PlanContext, OpenContext, ProductsContext, SubscriptionContext, UserContext, UserDetailsContext, ApiKeyContext } from '@/contexts/layout'; import React from 'react'; type Subscription = Database['public']['Tables']['subscriptions']['Row']; type Product = Database['public']['Tables']['products']['Row']; type Price = Database['public']['Tables']['prices']['Row']; interface ProductWithPrices extends Product { prices: Price[]; } interface PriceWithProduct extends Price { products: Product | null; } interface SubscriptionWithProduct extends Subscription { prices: PriceWithProduct | null; } interface Props { children: React.ReactNode; title: string; description: string; user: User | null | undefined; products: ProductWithPrices[]; subscription: SubscriptionWithProduct | null; userDetails: { [x: string]: any } | null; } const DashboardLayout: React.FC = (props: Props) => { const pathname = usePathname(); const [open, setOpen] = React.useState(false); const [plan, setPlan] = React.useState({ product: 'prod_QfhYC6AAtI5IKW', price: 'price_1PoM9GDWNoHJSR0zmwpicH8y' }); const [apiKey, setApiKey] = React.useState('default'); const { isOpen, onOpen, onClose } = useDisclosure(); return ( {props.children}