saleor-dashboard/src/attributes/components/AttributeListPage/AttributeListPage.tsx

43 lines
1.3 KiB
TypeScript
Raw Normal View History

2019-08-09 10:17:04 +00:00
import Button from "@material-ui/core/Button";
import Card from "@material-ui/core/Card";
import AddIcon from "@material-ui/icons/Add";
import React from "react";
import { FormattedMessage, useIntl } from "react-intl";
2019-08-09 10:17:04 +00:00
import { sectionNames } from "@saleor/intl";
2019-08-09 10:17:04 +00:00
import Container from "../../../components/Container";
import PageHeader from "../../../components/PageHeader";
import { ListActions, PageListProps } from "../../../types";
import { AttributeList_attributes_edges_node } from "../../types/AttributeList";
import AttributeList from "../AttributeList/AttributeList";
export interface AttributeListPageProps extends PageListProps, ListActions {
attributes: AttributeList_attributes_edges_node[];
}
const AttributeListPage: React.FC<AttributeListPageProps> = ({
onAdd,
...listProps
}) => {
const intl = useIntl();
return (
<Container>
2019-08-22 16:19:16 +00:00
<PageHeader title={intl.formatMessage(sectionNames.attributes)}>
<Button onClick={onAdd} color="primary" variant="contained">
<FormattedMessage
2019-08-16 13:55:04 +00:00
defaultMessage="Add attribute"
description="button"
/>
<AddIcon />
</Button>
</PageHeader>
<Card>
<AttributeList {...listProps} />
</Card>
</Container>
);
};
2019-08-09 10:17:04 +00:00
AttributeListPage.displayName = "AttributeListPage";
export default AttributeListPage;