"use client"; import { useState } from "react"; // Icons const TruckIcon = ({ className }: { className?: string }) => ( ); const ShieldIcon = ({ className }: { className?: string }) => ( ); const CheckIcon = ({ className }: { className?: string }) => ( ); const AlertIcon = ({ className }: { className?: string }) => ( ); const EyeIcon = ({ className }: { className?: string }) => ( ); const EyeOffIcon = ({ className }: { className?: string }) => ( ); export default function AdvancedShipping({ brandId }: { brandId: string }) { const [carrier, setCarrier] = useState("fedex"); const [accountNumber, setAccountNumber] = useState(""); const [apiKey, setApiKey] = useState(""); const [showApiKey, setShowApiKey] = useState(false); const [saving, setSaving] = useState(false); const [testResult, setTestResult] = useState<{ ok: boolean; message: string } | null>(null); async function handleTest() { setTestResult(null); if (!accountNumber.trim()) { setTestResult({ ok: false, message: "Account number is required" }); return; } await new Promise(r => setTimeout(r, 1000)); setTestResult({ ok: true, message: `${carrier.toUpperCase()} connection successful` }); } async function handleSave() { setSaving(true); await new Promise(r => setTimeout(r, 500)); setSaving(false); setTestResult({ ok: true, message: "Shipping settings saved" }); } return (
Configure shipping provider credentials
{option.label}
{option.desc}