"use client";

import { MeProvider, UserGroupsProvider } from "@/components/me-context";
import { client } from "@/lib/api-client";
import type { User, UserGroup } from "@/lib/api/labs";
import { QueryClientProvider } from "@tanstack/react-query";
import type { ReactNode } from "react";

export default function Providers({
  children,
  me,
  userGroups,
}: {
  children: ReactNode;
  me: User | null;
  userGroups: UserGroup[];
}) {
  return (
    <QueryClientProvider client={client}>
      <MeProvider user={me}>
        <UserGroupsProvider userGroups={userGroups}>
          {children}
        </UserGroupsProvider>
      </MeProvider>
    </QueryClientProvider>
  );
}
