chore: add support for react-intl, mui, apolloql
This commit is contained in:
14
packages/web/src/components/ApolloProvider/index.tsx
Normal file
14
packages/web/src/components/ApolloProvider/index.tsx
Normal file
@@ -0,0 +1,14 @@
|
||||
import { ApolloProvider as BaseApolloProvider } from '@apollo/client';
|
||||
import client from 'graphql/client';
|
||||
|
||||
type ApolloProviderProps = {
|
||||
children: React.ReactNode;
|
||||
};
|
||||
|
||||
const ApolloProvider = (props: ApolloProviderProps) => {
|
||||
return (
|
||||
<BaseApolloProvider client={client} {...props} />
|
||||
);
|
||||
};
|
||||
|
||||
export default ApolloProvider;
|
10
packages/web/src/components/App/index.tsx
Normal file
10
packages/web/src/components/App/index.tsx
Normal file
@@ -0,0 +1,10 @@
|
||||
import React from 'react';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
|
||||
function App() {
|
||||
return (
|
||||
<FormattedMessage id="welcomeText" />
|
||||
);
|
||||
}
|
||||
|
||||
export default App;
|
16
packages/web/src/components/IntlProvider/index.tsx
Normal file
16
packages/web/src/components/IntlProvider/index.tsx
Normal file
@@ -0,0 +1,16 @@
|
||||
import { IntlProvider as BaseIntlProvider } from 'react-intl';
|
||||
import englishMessages from 'locales/en.json';
|
||||
|
||||
type IntlProviderProps = {
|
||||
children: React.ReactNode;
|
||||
};
|
||||
|
||||
const IntlProvider = ({ children }: IntlProviderProps) => {
|
||||
return (
|
||||
<BaseIntlProvider locale={navigator.language} defaultLocale="en" messages={englishMessages}>
|
||||
{children}
|
||||
</BaseIntlProvider>
|
||||
);
|
||||
};
|
||||
|
||||
export default IntlProvider;
|
19
packages/web/src/components/ThemeProvider/index.tsx
Normal file
19
packages/web/src/components/ThemeProvider/index.tsx
Normal file
@@ -0,0 +1,19 @@
|
||||
import { ThemeProvider as BaseThemeProvider } from '@mui/material/styles';
|
||||
import CssBaseline from '@mui/material/CssBaseline';
|
||||
import theme from 'styles/theme';
|
||||
|
||||
type ThemeProviderProps = {
|
||||
children: React.ReactNode;
|
||||
};
|
||||
|
||||
const ThemeProvider = ({ children, ...props }: ThemeProviderProps) => {
|
||||
return (
|
||||
<BaseThemeProvider theme={theme} {...props}>
|
||||
<CssBaseline />
|
||||
|
||||
{children}
|
||||
</BaseThemeProvider>
|
||||
);
|
||||
};
|
||||
|
||||
export default ThemeProvider;
|
Reference in New Issue
Block a user