import { Form } from '@components/common/form/Form.js'; import { InputField } from '@components/common/form/InputField.js'; import { SelectField } from '@components/common/form/SelectField.js'; import { useAlertContext } from '@components/common/modal/Alert.js'; import RenderIfTrue from '@components/common/RenderIfTrue.js'; import { Button } from '@components/common/ui/Button.js'; import React from 'react'; import { toast } from 'react-toastify'; interface ShipButtonProps { order: { noShippingRequired: boolean; shipment?: { trackingNumber?: string; carrier?: string; }; createShipmentApi: string; shipmentStatus: { code: string; }; }; carriers: { label: string; value: string; }[]; } export default function ShipButton({ order: { noShippingRequired, shipment, createShipmentApi, shipmentStatus }, carriers }: ShipButtonProps) { const { openAlert, closeAlert, dispatchAlert } = useAlertContext(); if (noShippingRequired) { return ( ); } if (shipment) { return null; } else { return ( ); } } export const layout = { areaId: 'order_actions', sortOrder: 10 }; export const query = ` query Query { order(uuid: getContextValue("orderId")) { noShippingRequired shipment { shipmentId carrier trackingNumber updateShipmentApi } shipmentStatus { code } createShipmentApi }, carriers { label: name value: code } } `;