@@ -17,8 +17,7 @@ import {
17
17
import fakeRestDataProvider from 'ra-data-fakerest' ;
18
18
import polyglotI18nProvider from 'ra-i18n-polyglot' ;
19
19
import englishMessages from 'ra-language-english' ;
20
- import { ThemeProvider , Stack } from '@mui/material' ;
21
- import { createTheme } from '@mui/material/styles' ;
20
+ import { Stack } from '@mui/material' ;
22
21
23
22
import { TextField } from '../field' ;
24
23
import { ReferenceField } from './ReferenceField' ;
@@ -27,6 +26,12 @@ import { ReferenceInput } from '../input/ReferenceInput';
27
26
import { SimpleShowLayout } from '../detail/SimpleShowLayout' ;
28
27
import { Datagrid } from '../list/datagrid/Datagrid' ;
29
28
import { AdminUI , AdminContext } from '../' ;
29
+ import {
30
+ defaultDarkTheme ,
31
+ defaultLightTheme ,
32
+ ThemeProvider ,
33
+ ThemesContext ,
34
+ } from '../theme' ;
30
35
import { List } from '../list' ;
31
36
import { EditGuesser , ShowGuesser } from '../detail' ;
32
37
import { QueryClient } from '@tanstack/react-query' ;
@@ -72,19 +77,30 @@ const Wrapper = ({
72
77
dataProvider = defaultDataProvider ,
73
78
record = defaultRecord ,
74
79
resourceDefinitions = defaultResourceDefinitions ,
80
+ defaultTheme = 'light' ,
75
81
} : any ) => (
76
82
< TestMemoryRouter initialEntries = { [ '/books/1/show' ] } >
77
- < CoreAdminContext dataProvider = { dataProvider } >
78
- < ResourceDefinitionContextProvider
79
- definitions = { resourceDefinitions }
80
- >
81
- < ResourceContextProvider value = "books" >
82
- < RecordContextProvider value = { record } >
83
- { children }
84
- </ RecordContextProvider >
85
- </ ResourceContextProvider >
86
- </ ResourceDefinitionContextProvider >
87
- </ CoreAdminContext >
83
+ < ThemesContext . Provider
84
+ value = { {
85
+ lightTheme : defaultLightTheme ,
86
+ darkTheme : defaultDarkTheme ,
87
+ defaultTheme : defaultTheme as 'dark' | 'light' ,
88
+ } }
89
+ >
90
+ < ThemeProvider >
91
+ < CoreAdminContext dataProvider = { dataProvider } >
92
+ < ResourceDefinitionContextProvider
93
+ definitions = { resourceDefinitions }
94
+ >
95
+ < ResourceContextProvider value = "books" >
96
+ < RecordContextProvider value = { record } >
97
+ { children }
98
+ </ RecordContextProvider >
99
+ </ ResourceContextProvider >
100
+ </ ResourceDefinitionContextProvider >
101
+ </ CoreAdminContext >
102
+ </ ThemeProvider >
103
+ </ ThemesContext . Provider >
88
104
</ TestMemoryRouter >
89
105
) ;
90
106
@@ -361,21 +377,19 @@ export const InShowLayout = () => (
361
377
) ;
362
378
363
379
const ListWrapper = ( { children } ) => (
364
- < ThemeProvider theme = { createTheme ( ) } >
365
- < Wrapper >
366
- < ListContextProvider
367
- value = {
368
- {
369
- total : 1 ,
370
- data : [ { id : 1 , title : 'War and Peace' , detail_id : 1 } ] ,
371
- sort : { field : 'title' , order : 'ASC' } ,
372
- } as any
373
- }
374
- >
375
- { children }
376
- </ ListContextProvider >
377
- </ Wrapper >
378
- </ ThemeProvider >
380
+ < Wrapper >
381
+ < ListContextProvider
382
+ value = {
383
+ {
384
+ total : 1 ,
385
+ data : [ { id : 1 , title : 'War and Peace' , detail_id : 1 } ] ,
386
+ sort : { field : 'title' , order : 'ASC' } ,
387
+ } as any
388
+ }
389
+ >
390
+ { children }
391
+ </ ListContextProvider >
392
+ </ Wrapper >
379
393
) ;
380
394
381
395
export const InDatagrid = ( ) => (
0 commit comments