"use client";

import { useState } from "react";
import { useRouter } from "next/navigation";
import { usePopCompanyPath } from "@/hooks/usePopCompanyPath";
import { SalesOutbound } from "../../_components/outbound/SalesOutbound";
import { useCartSync } from "../../_components/common/useCartSync";

export default function SalesOutboundPage() {
  const router = useRouter();
  const companyPath = usePopCompanyPath();
  const cart = useCartSync("outbound");
  const [saving, setSaving] = useState(false);

  const handleCartClick = async () => {
    if (cart.isDirty) {
      setSaving(true);
      const ok = await cart.saveToDb();
      setSaving(false);
      if (!ok) return;
    }
    router.push(`${companyPath("/pop/outbound/cart")}?backUrl=${companyPath("/pop/outbound/sales")}`);
  };

  return (
    <SalesOutbound
      cart={cart}
      onCartClick={handleCartClick}
      saving={saving}
      outboundType="판매출고"
      sourceTable="shipment_instruction_detail"
    />
  );
}
