diff --git a/packages/react-admin/src/Admin.ts b/packages/react-admin/src/Admin.ts deleted file mode 100644 index ae5bf7b6b2b..00000000000 --- a/packages/react-admin/src/Admin.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { CoreAdmin } from 'ra-core'; -import { - Layout as DefaultLayout, - Loading, - Login, - Logout, - NotFound, -} from 'ra-ui-materialui'; - -import defaultI18nProvider from './defaultI18nProvider'; - -const Admin = CoreAdmin; - -Admin.defaultProps = { - i18nProvider: defaultI18nProvider, - layout: DefaultLayout, - catchAll: NotFound, - loading: Loading, - loginPage: Login, - logoutButton: Logout, -}; - -export default Admin; diff --git a/packages/react-admin/src/Admin.tsx b/packages/react-admin/src/Admin.tsx new file mode 100644 index 00000000000..763398f3189 --- /dev/null +++ b/packages/react-admin/src/Admin.tsx @@ -0,0 +1,38 @@ +import React, { FunctionComponent } from 'react'; +import { CoreAdmin } from 'ra-core'; +import { + Layout as DefaultLayout, + Loading, + Login, + Logout, + NotFound, +} from 'ra-ui-materialui'; + +import defaultI18nProvider from './defaultI18nProvider'; +import { AdminProps } from 'ra-core/esm/CoreAdmin'; + +const Admin: FunctionComponent = ({ + locale, + i18nProvider, + ...props +}) => { + const finalI18nProvider = i18nProvider || defaultI18nProvider(locale); + + return ( + + ); +}; + +Admin.defaultProps = { + appLayout: DefaultLayout, + catchAll: NotFound, + loading: Loading, + loginPage: Login, + logoutButton: Logout, +}; + +export default Admin;