saleor-dashboard/src/storybook/stories/orders/OrderDetailsPage.tsx

160 lines
3.8 KiB
TypeScript
Raw Normal View History

import placeholderImage from "@assets/images/placeholder60x60.png";
2019-06-19 14:40:52 +00:00
import { Omit } from "@material-ui/core";
import { adminUserPermissions } from "@saleor/fixtures";
2019-06-19 14:40:52 +00:00
import { storiesOf } from "@storybook/react";
2019-08-09 10:26:22 +00:00
import React from "react";
2019-06-19 14:40:52 +00:00
import OrderDetailsPage, {
2020-06-23 13:52:43 +00:00
OrderDetailsPageProps,
2019-06-19 14:40:52 +00:00
} from "../../../orders/components/OrderDetailsPage";
import { countries, order as orderFixture } from "../../../orders/fixtures";
import {
FulfillmentStatus,
OrderStatus,
2020-06-23 13:52:43 +00:00
PaymentChargeStatusEnum,
2019-06-19 14:40:52 +00:00
} from "../../../types/globalTypes";
import Decorator from "../../Decorator";
const order = orderFixture(placeholderImage);
const props: Omit<OrderDetailsPageProps, "classes"> = {
countries,
onBack: () => undefined,
onBillingAddressEdit: undefined,
2020-06-22 16:34:59 +00:00
onClickInvoice: () => undefined,
2019-06-19 14:40:52 +00:00
onFulfillmentCancel: () => undefined,
onFulfillmentTrackingNumberUpdate: () => undefined,
2020-06-30 12:38:04 +00:00
onInvoiceClick: () => undefined,
2020-06-23 13:52:43 +00:00
onInvoiceGenerate: () => undefined,
onInvoiceSend: () => undefined,
2019-06-19 14:40:52 +00:00
onNoteAdd: undefined,
onOrderCancel: undefined,
onOrderFulfill: undefined,
onPaymentCapture: undefined,
onPaymentPaid: undefined,
onPaymentRefund: undefined,
onPaymentVoid: undefined,
onProductClick: undefined,
onProfileView: () => undefined,
onShippingAddressEdit: undefined,
2019-10-25 13:31:27 +00:00
order,
2020-06-23 13:52:43 +00:00
userPermissions: adminUserPermissions,
2019-06-19 14:40:52 +00:00
};
storiesOf("Views / Orders / Order details", module)
.addDecorator(Decorator)
.add("default", () => <OrderDetailsPage {...props} />)
.add("loading", () => <OrderDetailsPage {...props} order={undefined} />)
.add("pending payment", () => (
<OrderDetailsPage
{...props}
order={{
...props.order,
2020-06-23 13:52:43 +00:00
paymentStatus: PaymentChargeStatusEnum.NOT_CHARGED,
2019-06-19 14:40:52 +00:00
}}
/>
))
.add("payment error", () => (
<OrderDetailsPage
{...props}
order={{
...props.order,
2020-06-23 13:52:43 +00:00
paymentStatus: PaymentChargeStatusEnum.NOT_CHARGED,
2019-06-19 14:40:52 +00:00
}}
/>
))
.add("payment confirmed", () => (
<OrderDetailsPage
{...props}
order={{
...props.order,
2020-06-23 13:52:43 +00:00
paymentStatus: PaymentChargeStatusEnum.FULLY_CHARGED,
2019-06-19 14:40:52 +00:00
}}
/>
))
.add("no payment", () => (
<OrderDetailsPage
{...props}
order={{
...props.order,
2020-06-23 13:52:43 +00:00
paymentStatus: null,
2019-06-19 14:40:52 +00:00
}}
/>
))
.add("refunded payment", () => (
<OrderDetailsPage
{...props}
order={{
...props.order,
2020-06-23 13:52:43 +00:00
paymentStatus: PaymentChargeStatusEnum.FULLY_REFUNDED,
2019-06-19 14:40:52 +00:00
}}
/>
))
.add("rejected payment", () => (
<OrderDetailsPage
{...props}
order={{
...props.order,
2020-06-23 13:52:43 +00:00
paymentStatus: PaymentChargeStatusEnum.NOT_CHARGED,
2019-06-19 14:40:52 +00:00
}}
/>
))
.add("cancelled", () => (
<OrderDetailsPage
{...props}
order={{
...props.order,
2020-06-23 13:52:43 +00:00
fulfillments: props.order.fulfillments.map((fulfillment) => ({
2019-06-19 14:40:52 +00:00
...fulfillment,
2020-06-23 13:52:43 +00:00
status: FulfillmentStatus.CANCELED,
2019-06-19 14:40:52 +00:00
})),
2020-06-23 13:52:43 +00:00
status: OrderStatus.CANCELED,
2019-06-19 14:40:52 +00:00
}}
/>
))
.add("fulfilled", () => (
<OrderDetailsPage
{...props}
order={{
...props.order,
2020-06-23 13:52:43 +00:00
status: OrderStatus.FULFILLED,
2019-06-19 14:40:52 +00:00
}}
/>
))
.add("partially fulfilled", () => (
<OrderDetailsPage
{...props}
order={{
...props.order,
2020-06-23 13:52:43 +00:00
status: OrderStatus.PARTIALLY_FULFILLED,
2019-06-19 14:40:52 +00:00
}}
/>
))
.add("unfulfilled", () => (
<OrderDetailsPage
{...props}
order={{
...props.order,
2020-06-23 13:52:43 +00:00
status: OrderStatus.UNFULFILLED,
2019-06-19 14:40:52 +00:00
}}
/>
))
.add("no shipping address", () => (
<OrderDetailsPage
{...props}
order={{
...props.order,
2020-06-23 13:52:43 +00:00
shippingAddress: null,
2019-06-19 14:40:52 +00:00
}}
/>
))
.add("no customer note", () => (
<OrderDetailsPage
{...props}
order={{
...props.order,
2020-06-23 13:52:43 +00:00
customerNote: "",
2019-06-19 14:40:52 +00:00
}}
/>
));