import { Button } from "@dashboard/components/Button"; import CardTitle from "@dashboard/components/CardTitle"; import { ChannelUsabilityDataQuery, OrderDetailsFragment, OrderErrorFragment, OrderLineInput, } from "@dashboard/graphql"; import { OrderDiscountContext, OrderDiscountContextConsumerProps, } from "@dashboard/products/components/OrderDiscountProviders/OrderDiscountProvider"; import { Card, CardContent } from "@material-ui/core"; import React from "react"; import { FormattedMessage, useIntl } from "react-intl"; import { maybe } from "../../../misc"; import OrderDraftDetailsProducts from "../OrderDraftDetailsProducts"; import OrderDraftDetailsSummary from "../OrderDraftDetailsSummary"; interface OrderDraftDetailsProps { order: OrderDetailsFragment; channelUsabilityData?: ChannelUsabilityDataQuery; errors: OrderErrorFragment[]; onOrderLineAdd: () => void; onOrderLineChange: (id: string, data: OrderLineInput) => void; onOrderLineRemove: (id: string) => void; onShippingMethodEdit: () => void; } const OrderDraftDetails: React.FC = ({ order, channelUsabilityData, errors, onOrderLineAdd, onOrderLineChange, onOrderLineRemove, onShippingMethodEdit, }) => { const intl = useIntl(); const isChannelActive = order?.channel.isActive; const areProductsInChannel = !!channelUsabilityData?.products.totalCount; return ( ) } /> {maybe(() => order.lines.length) !== 0 && ( {(orderDiscountProps: OrderDiscountContextConsumerProps) => ( )} )} ); }; OrderDraftDetails.displayName = "OrderDraftDetails"; export default OrderDraftDetails;