'use client' import React from 'react'; import { AppProvider } from '@toolpad/core/AppProvider'; import { SignInPage, type AuthProvider, type AuthResponse, } from '@toolpad/core/SignInPage'; import { createTheme } from '@mui/material/styles'; import { useTheme } from 'next-themes'; import { getDesignTokens, inputsCustomizations } from './customTheme'; import type { PaletteMode } from "@mui/material"; const providers = [ { id: 'github', name: 'GitHub' }, { id: 'google', name: 'Google' }, { id: 'credentials', name: 'Email and Password' }, ]; const signIn: (provider: AuthProvider) => void | Promise = async ( provider, ) => { return new Promise((resolve) => { setTimeout(() => { console.log(`Sign in with ${provider.id}`); resolve({ error: 'This is a mock error message.' }); }, 500); }); }; export default function ThemeSignInPage() { const { resolvedTheme } = useTheme(); const brandingDesignTokens = getDesignTokens(resolvedTheme as PaletteMode); // preview-start const THEME = createTheme({ ...brandingDesignTokens, palette: { ...brandingDesignTokens.palette, mode: resolvedTheme as PaletteMode, }, components: { ...inputsCustomizations, }, }); // preview-end return ( // preview-start .MuiStack-root': { marginTop: '2rem', rowGap: '0.5rem', }, }} /> // preview-end ); }