import { Button, Card, IconButton, TableCell, TableFooter, TableHead, TableRow } from "@material-ui/core"; import DeleteIcon from "@material-ui/icons/Delete"; import CardTitle from "@saleor/components/CardTitle"; import ResponsiveTable from "@saleor/components/ResponsiveTable"; import Skeleton from "@saleor/components/Skeleton"; import { SortableTableBody, SortableTableRow } from "@saleor/components/SortableTable"; import TablePagination from "@saleor/components/TablePagination"; import { AttributeValueListFragment_edges_node } from "@saleor/fragments/types/AttributeValueListFragment"; import { makeStyles } from "@saleor/macaw-ui"; import { maybe, renderCollection, stopPropagation } from "@saleor/misc"; import { ListProps, ReorderAction } from "@saleor/types"; import React from "react"; import { FormattedMessage, useIntl } from "react-intl"; export interface AttributeValuesProps extends Pick> { disabled: boolean; values: AttributeValueListFragment_edges_node[]; onValueAdd: () => void; onValueDelete: (id: string) => void; onValueReorder: ReorderAction; onValueUpdate: (id: string) => void; } const useStyles = makeStyles( theme => ({ columnAdmin: { width: 300 }, columnDrag: { width: theme.spacing(6 + 1.5) }, columnStore: { width: "auto" }, dragIcon: { cursor: "grab" }, iconCell: { "&:last-child": { paddingRight: theme.spacing() }, width: 80 }, link: { cursor: "pointer" } }), { name: "AttributeValues" } ); const numberOfColumns = 4; const AttributeValues: React.FC = ({ disabled, onValueAdd, onValueDelete, onValueReorder, onValueUpdate, values, settings, onUpdateListSettings, pageInfo, onNextPage, onPreviousPage }) => { const classes = useStyles({}); const intl = useIntl(); return ( } /> {renderCollection( values, (value, valueIndex) => ( onValueUpdate(value.id) : undefined} key={maybe(() => value.id)} index={valueIndex || 0} > {maybe(() => value.slug) ? value.slug : } {maybe(() => value.name) ? value.name : } onValueDelete(value.id))} > ), () => ( ) )} ); }; AttributeValues.displayName = "AttributeValues"; export default AttributeValues;