import React, { useEffect } from "react"; import { useGetOrders, useSetOrder } from "../api"; const sampleOrder = { items: [ { productName: "B1-14MR", price: 129.99 }, { productName: "W2C", price: 29.99 }, { productName: "PSU-24VDC", price: 19.99 } ], totalAmount: 1779.97, orderDate: "2021-11-22", email: "pocketooth@gmail.com", orderByFirstName: "John", orderByLastName: "Huang", }; // constructs paypal order details into correct shape for db const invoiceShape = (order) => { // let addressInfo = order.purchase_units[0].shipping.address; // let address = `${addressInfo.address_line_1} ${addressInfo.admin_area_2}, ${addressInfo.admin_area_1} ${addressInfo.postal_code}`; return { items: order.purchase_units.map((item) => { return { productName: item.description, price: +item.amount.value }; }), totalAmount: order.purchase_units.reduce((a,b) => { return a + +b.amount.value; }, 0), orderDate: order.create_time, // email: order.payer.email_address, orderByFirstName: order.payer.name.given_name, orderByLastName: order.payer.name.surname, // address: address } } const Orders = ({ orderID, setOrderID, invoice }) => { const orders = useGetOrders(orderID); const [results, setOrder] = useSetOrder(); useEffect(() => { if (results.data) { let orderID = results.data.setOrderInfo.split(':').pop(); setOrderID(orderID); console.log("results:", orderID) } }, [results, setOrderID]); //didUpdate useEffect(() => { if (invoice) { console.log("Invoice: ", invoiceShape(invoice)); setOrder(invoiceShape(invoice)); } }, [invoice]); //missing dep warning const onClick = (event) => { setOrder(sampleOrder); console.log("sample order button clicked"); }; let getItems = (order) => { return ( <> {order.items?.map((item, index) => { return (
  • {item.productName} - ${item.price}
  • ); })} ); }; let MyOrders = () => { if (orders) { return ( {orders.map((order) => { return ( ); })}
    ID items Amount
    {order.orderID} {getItems(order)} ${order.totalAmount}
    ); } else { return ( <>

    Loading...

    ); } }; return (

    Fetch order list from https://api.oemautomation.com:3001{" "}

    ); }; export default Orders;