
* Use generated hooks in apps * Remove unused files * Use proper types in apps * Use generated hooks in attributes * Use generated hooks in auth module * Use generated hooks in categories * Use generated hooks in channels * Use generated types in collections * Remove legacy types from background tasks * Use generated hooks in customers * Use generated hooks in discounts * Use generated hook in file upload * Use generated types in gift cards * Use generated types in home * Use generated hooks in navigation * Use generated hooks in orders * Use generated hooks in pages * Use generated hooks in page types * Use generated hooks in permission groups * Use generated hooks in plugins * Use generated hooks in products * Use fragment to mark product variants * Improve code a bit * Use generated hooks in page types * Use generated types in searches * Use generated hooks in shipping * Use generated hooks in site settings * Use generated hooks in staff members * Use generated hooks in taxes * Place all gql generated files in one directory * Use generated hooks in translations * Use global types from new generated module * Use generated hooks in warehouses * Use generated hooks in webhooks * Use generated fragment types * Unclutter types * Remove hoc components * Split hooks and types * Fetch introspection file * Delete obsolete schema file * Fix rebase artifacts * Fix autoreplace * Fix auth provider tests * Fix urls * Remove leftover types * Fix rebase artifacts
163 lines
3.7 KiB
TypeScript
163 lines
3.7 KiB
TypeScript
import placeholderImage from "@assets/images/placeholder60x60.png";
|
|
import {
|
|
FulfillmentStatus,
|
|
OrderStatus,
|
|
PaymentChargeStatusEnum
|
|
} from "@saleor/graphql";
|
|
import { storiesOf } from "@storybook/react";
|
|
import React from "react";
|
|
|
|
import OrderDetailsPage, {
|
|
OrderDetailsPageProps
|
|
} from "../../../orders/components/OrderDetailsPage";
|
|
import {
|
|
order as orderFixture,
|
|
shop as shopFixture
|
|
} from "../../../orders/fixtures";
|
|
import Decorator from "../../Decorator";
|
|
|
|
const order = orderFixture(placeholderImage);
|
|
|
|
const props: Omit<OrderDetailsPageProps, "classes"> = {
|
|
disabled: false,
|
|
onBack: () => undefined,
|
|
onBillingAddressEdit: undefined,
|
|
onFulfillmentApprove: () => undefined,
|
|
onFulfillmentCancel: () => undefined,
|
|
onFulfillmentTrackingNumberUpdate: () => undefined,
|
|
onInvoiceClick: () => undefined,
|
|
onInvoiceGenerate: () => undefined,
|
|
onInvoiceSend: () => undefined,
|
|
onNoteAdd: undefined,
|
|
onOrderCancel: undefined,
|
|
onOrderFulfill: undefined,
|
|
onOrderReturn: () => undefined,
|
|
onPaymentCapture: undefined,
|
|
onPaymentPaid: undefined,
|
|
onPaymentRefund: undefined,
|
|
onPaymentVoid: undefined,
|
|
onProductClick: undefined,
|
|
onProfileView: () => undefined,
|
|
onShippingAddressEdit: undefined,
|
|
onSubmit: () => undefined,
|
|
order,
|
|
shop: shopFixture,
|
|
saveButtonBarState: "default"
|
|
};
|
|
|
|
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,
|
|
paymentStatus: PaymentChargeStatusEnum.NOT_CHARGED
|
|
}}
|
|
/>
|
|
))
|
|
.add("payment error", () => (
|
|
<OrderDetailsPage
|
|
{...props}
|
|
order={{
|
|
...props.order,
|
|
paymentStatus: PaymentChargeStatusEnum.NOT_CHARGED
|
|
}}
|
|
/>
|
|
))
|
|
.add("payment confirmed", () => (
|
|
<OrderDetailsPage
|
|
{...props}
|
|
order={{
|
|
...props.order,
|
|
paymentStatus: PaymentChargeStatusEnum.FULLY_CHARGED
|
|
}}
|
|
/>
|
|
))
|
|
.add("no payment", () => (
|
|
<OrderDetailsPage
|
|
{...props}
|
|
order={{
|
|
...props.order,
|
|
paymentStatus: null
|
|
}}
|
|
/>
|
|
))
|
|
.add("refunded payment", () => (
|
|
<OrderDetailsPage
|
|
{...props}
|
|
order={{
|
|
...props.order,
|
|
paymentStatus: PaymentChargeStatusEnum.FULLY_REFUNDED
|
|
}}
|
|
/>
|
|
))
|
|
.add("rejected payment", () => (
|
|
<OrderDetailsPage
|
|
{...props}
|
|
order={{
|
|
...props.order,
|
|
paymentStatus: PaymentChargeStatusEnum.NOT_CHARGED
|
|
}}
|
|
/>
|
|
))
|
|
.add("cancelled", () => (
|
|
<OrderDetailsPage
|
|
{...props}
|
|
order={{
|
|
...props.order,
|
|
fulfillments: props.order.fulfillments.map(fulfillment => ({
|
|
...fulfillment,
|
|
status: FulfillmentStatus.CANCELED
|
|
})),
|
|
status: OrderStatus.CANCELED
|
|
}}
|
|
/>
|
|
))
|
|
.add("fulfilled", () => (
|
|
<OrderDetailsPage
|
|
{...props}
|
|
order={{
|
|
...props.order,
|
|
status: OrderStatus.FULFILLED
|
|
}}
|
|
/>
|
|
))
|
|
.add("partially fulfilled", () => (
|
|
<OrderDetailsPage
|
|
{...props}
|
|
order={{
|
|
...props.order,
|
|
status: OrderStatus.PARTIALLY_FULFILLED
|
|
}}
|
|
/>
|
|
))
|
|
.add("unfulfilled", () => (
|
|
<OrderDetailsPage
|
|
{...props}
|
|
order={{
|
|
...props.order,
|
|
status: OrderStatus.UNFULFILLED
|
|
}}
|
|
/>
|
|
))
|
|
.add("no shipping address", () => (
|
|
<OrderDetailsPage
|
|
{...props}
|
|
order={{
|
|
...props.order,
|
|
shippingAddress: null
|
|
}}
|
|
/>
|
|
))
|
|
.add("no customer note", () => (
|
|
<OrderDetailsPage
|
|
{...props}
|
|
order={{
|
|
...props.order,
|
|
customerNote: ""
|
|
}}
|
|
/>
|
|
));
|