import * as React from 'react'; import { QueryClientProvider, QueryClient } from '@tanstack/react-query'; import { useGetIdentity } from './useGetIdentity'; import { AuthContext } from './AuthContext'; export default { title: 'ra-core/auth/useGetIdentity', }; const authProvider = { login: () => Promise.resolve(), logout: () => Promise.resolve(), checkAuth: () => Promise.resolve(), checkError: () => Promise.resolve(), getPermissions: () => Promise.resolve(), getIdentity: () => Promise.resolve({ id: 1, fullName: 'John Doe' }), }; const Identity = () => { const { identity, error, isPending } = useGetIdentity(); return isPending ? ( <>Loading ) : error ? ( <>Error ) : ( <>{identity.fullName} ); }; export const Basic = () => ( ); export const ErrorCase = () => ( Promise.reject(new Error('Error')), }} > ); export const ResetIdentity = () => { let fullName = 'John Doe'; const IdentityForm = () => { const { isPending, error, identity, refetch } = useGetIdentity(); const [newIdentity, setNewIdentity] = React.useState(''); if (isPending) return <>Loading; if (error) return <>Error; const handleChange = event => { setNewIdentity(event.target.value); }; const handleSubmit = e => { e.preventDefault(); if (!newIdentity) return; fullName = newIdentity; refetch(); }; return (
); }; return ( Promise.resolve({ id: 1, fullName }), }} > ); };