saleor-dashboard/src/components/RowNumberSelect/RowNumberSelect.tsx
Michał Droń d5c9a3dae8
Add trailing commas (#2062)
* Require trailing commas

* Add trailing commas

* Add trailing commas in testUtils dir

* Add trailing commas
2022-06-21 11:36:55 +02:00

73 lines
1.6 KiB
TypeScript

import { MenuItem, Select } from "@material-ui/core";
import { makeStyles } from "@saleor/macaw-ui";
import React from "react";
import { FormattedMessage } from "react-intl";
const useStyles = makeStyles(
theme => ({
label: {
fontSize: 14,
},
select: {
"& div": {
"&:focus": {
background: "none",
},
color: theme.palette.primary.main,
marginLeft: theme.spacing(1),
},
"& svg": {
color: theme.palette.primary.main,
},
"&:after, &:before, &:hover": {
border: "none !important",
},
},
}),
{
name: "RowNumberSelect",
},
);
interface RowNumberSelectProps {
choices: number[];
className?: string;
rowNumber: number;
onChange(value: number);
}
const RowNumberSelect: React.FC<RowNumberSelectProps> = ({
className,
choices,
rowNumber,
onChange,
}) => {
const classes = useStyles({});
return (
<div className={className}>
<span className={classes.label}>
<FormattedMessage id="fNFEkh" defaultMessage="No of Rows:" />
</span>
<Select
data-test-id="row-number-select"
className={classes.select}
value={rowNumber}
onChange={event => onChange(event.target.value as number)}
>
{choices.length > 0 &&
choices.map(choice => (
<MenuItem
value={choice}
key={choice}
data-test-id="row-number-option"
>
{choice}
</MenuItem>
))}
</Select>
</div>
);
};
export default RowNumberSelect;