Skip to content

Commit bdc59ed

Browse files
committed
Fix TranslatableFields and Inputs look and feel
1 parent 5fca1f7 commit bdc59ed

7 files changed

+76
-35
lines changed

packages/ra-ui-materialui/src/field/TranslatableFields.tsx

+3-4
Original file line numberDiff line numberDiff line change
@@ -116,10 +116,9 @@ const useStyles = makeStyles(
116116
theme => ({
117117
root: {
118118
flexGrow: 1,
119-
backgroundColor: theme.palette.background.default,
119+
marginTop: theme.spacing(1),
120+
marginBottom: theme.spacing(0.5),
120121
},
121122
}),
122-
{
123-
name: 'RaTranslatableFields',
124-
}
123+
{ name: 'RaTranslatableFields' }
125124
);

packages/ra-ui-materialui/src/field/TranslatableFieldsTabContent.tsx

+7-5
Original file line numberDiff line numberDiff line change
@@ -91,11 +91,13 @@ const useStyles = makeStyles(
9191
theme => ({
9292
root: {
9393
flexGrow: 1,
94-
padding: theme.spacing(1),
95-
backgroundColor: theme.palette.background.default,
94+
padding: theme.spacing(2),
95+
borderRadius: 0,
96+
borderBottomLeftRadius: theme.shape.borderRadius,
97+
borderBottomRightRadius: theme.shape.borderRadius,
98+
border: `1px solid ${theme.palette.divider}`,
99+
borderTop: 0,
96100
},
97101
}),
98-
{
99-
name: 'RaTranslatableFieldsTabContent',
100-
}
102+
{ name: 'RaTranslatableFieldsTabContent' }
101103
);

packages/ra-ui-materialui/src/field/TranslatableFieldsTabs.tsx

+27-6
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import * as React from 'react';
22
import { ReactElement } from 'react';
33
import AppBar from '@material-ui/core/AppBar';
4+
import { makeStyles } from '@material-ui/core/styles';
45
import Tabs, { TabsProps } from '@material-ui/core/Tabs';
56
import { useTranslatableContext } from 'ra-core';
67
import { TranslatableFieldsTab } from './TranslatableFieldsTab';
@@ -10,19 +11,26 @@ import { AppBarProps } from '../layout';
1011
* Default locale selector for the TranslatableFields component. Generates a tab for each specified locale.
1112
* @see TranslatableFields
1213
*/
13-
export const TranslatableFieldsTabs = ({
14-
groupKey,
15-
TabsProps: tabsProps,
16-
}: TranslatableFieldsTabsProps & AppBarProps): ReactElement => {
14+
export const TranslatableFieldsTabs = (
15+
props: TranslatableFieldsTabsProps & AppBarProps
16+
): ReactElement => {
17+
const { groupKey, TabsProps: tabsProps } = props;
1718
const { locales, selectLocale, selectedLocale } = useTranslatableContext();
19+
const classes = useStyles(props);
1820

1921
const handleChange = (event, newLocale): void => {
2022
selectLocale(newLocale);
2123
};
2224

2325
return (
24-
<AppBar position="static">
25-
<Tabs value={selectedLocale} onChange={handleChange} {...tabsProps}>
26+
<AppBar color="default" position="static" className={classes.root}>
27+
<Tabs
28+
value={selectedLocale}
29+
onChange={handleChange}
30+
indicatorColor="primary"
31+
textColor="primary"
32+
{...tabsProps}
33+
>
2634
{locales.map(locale => (
2735
<TranslatableFieldsTab
2836
key={locale}
@@ -40,3 +48,16 @@ export interface TranslatableFieldsTabsProps {
4048
TabsProps?: TabsProps;
4149
groupKey?: string;
4250
}
51+
52+
const useStyles = makeStyles(
53+
theme => ({
54+
root: {
55+
boxShadow: 'none',
56+
borderRadius: 0,
57+
borderTopLeftRadius: theme.shape.borderRadius,
58+
borderTopRightRadius: theme.shape.borderRadius,
59+
border: `1px solid ${theme.palette.divider}`,
60+
},
61+
}),
62+
{ name: 'RaTranslatableFieldsTabs' }
63+
);

packages/ra-ui-materialui/src/input/TranslatableInputs.tsx

+3-4
Original file line numberDiff line numberDiff line change
@@ -101,10 +101,9 @@ const useStyles = makeStyles(
101101
theme => ({
102102
root: {
103103
flexGrow: 1,
104-
backgroundColor: theme.palette.background.default,
104+
marginTop: theme.spacing(1),
105+
marginBottom: theme.spacing(0.5),
105106
},
106107
}),
107-
{
108-
name: 'RaTranslatableInputs',
109-
}
108+
{ name: 'RaTranslatableInputs' }
110109
);

packages/ra-ui-materialui/src/input/TranslatableInputsTab.tsx

+1-3
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,7 @@ const useStyles = makeStyles(
3333
theme => ({
3434
error: { color: theme.palette.error.main },
3535
}),
36-
{
37-
name: 'RaTranslatableInputsTab',
38-
}
36+
{ name: 'RaTranslatableInputsTab' }
3937
);
4038

4139
interface TranslatableInputsTabProps {

packages/ra-ui-materialui/src/input/TranslatableInputsTabContent.tsx

+7-5
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,13 @@ const useStyles = makeStyles(
5656
theme => ({
5757
root: {
5858
flexGrow: 1,
59-
padding: theme.spacing(1),
60-
backgroundColor: theme.palette.background.default,
59+
padding: theme.spacing(2),
60+
borderRadius: 0,
61+
borderBottomLeftRadius: theme.shape.borderRadius,
62+
borderBottomRightRadius: theme.shape.borderRadius,
63+
border: `1px solid ${theme.palette.divider}`,
64+
borderTop: 0,
6165
},
6266
}),
63-
{
64-
name: 'RaTranslatableInputsTabContent',
65-
}
67+
{ name: 'RaTranslatableInputsTabContent' }
6668
);

packages/ra-ui-materialui/src/input/TranslatableInputsTabs.tsx

+28-8
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import * as React from 'react';
22
import { ReactElement } from 'react';
3-
import AppBar from '@material-ui/core/AppBar';
4-
import Tabs, { TabsProps } from '@material-ui/core/Tabs';
3+
import { AppBar, Tabs, TabsProps } from '@material-ui/core';
4+
import { makeStyles } from '@material-ui/core/styles';
55
import { useTranslatableContext } from 'ra-core';
66
import { TranslatableInputsTab } from './TranslatableInputsTab';
77
import { AppBarProps } from '../layout';
@@ -10,19 +10,26 @@ import { AppBarProps } from '../layout';
1010
* Default locale selector for the TranslatableInputs component. Generates a tab for each specified locale.
1111
* @see TranslatableInputs
1212
*/
13-
export const TranslatableInputsTabs = ({
14-
groupKey,
15-
TabsProps: tabsProps,
16-
}: TranslatableInputsTabsProps & AppBarProps): ReactElement => {
13+
export const TranslatableInputsTabs = (
14+
props: TranslatableInputsTabsProps & AppBarProps
15+
): ReactElement => {
16+
const { groupKey, TabsProps: tabsProps } = props;
1717
const { locales, selectLocale, selectedLocale } = useTranslatableContext();
18+
const classes = useStyles(props);
1819

1920
const handleChange = (event, newLocale): void => {
2021
selectLocale(newLocale);
2122
};
2223

2324
return (
24-
<AppBar position="static">
25-
<Tabs value={selectedLocale} onChange={handleChange} {...tabsProps}>
25+
<AppBar color="default" position="static" className={classes.root}>
26+
<Tabs
27+
value={selectedLocale}
28+
onChange={handleChange}
29+
indicatorColor="primary"
30+
textColor="primary"
31+
{...tabsProps}
32+
>
2633
{locales.map(locale => (
2734
<TranslatableInputsTab
2835
key={locale}
@@ -40,3 +47,16 @@ export interface TranslatableInputsTabsProps {
4047
groupKey?: string;
4148
TabsProps?: TabsProps;
4249
}
50+
51+
const useStyles = makeStyles(
52+
theme => ({
53+
root: {
54+
boxShadow: 'none',
55+
borderRadius: 0,
56+
borderTopLeftRadius: theme.shape.borderRadius,
57+
borderTopRightRadius: theme.shape.borderRadius,
58+
border: `1px solid ${theme.palette.divider}`,
59+
},
60+
}),
61+
{ name: 'RaTranslatableInputsTabs' }
62+
);

0 commit comments

Comments
 (0)