diff --git a/components/ops/Map/AddBusinessDialog.tsx b/components/ops/Map/AddBusinessDialog.tsx index 26c0241..94968b0 100644 --- a/components/ops/Map/AddBusinessDialog.tsx +++ b/components/ops/Map/AddBusinessDialog.tsx @@ -74,6 +74,7 @@ export default function AddBusinessDialog({ const [submitting, setSubmitting] = useState(false); const [error, setError] = useState(null); const [address, setAddress] = useState(null); + const [addressInput, setAddressInput] = useState(""); const [addressLoading, setAddressLoading] = useState(false); const [sectorOptions, setSectorOptions] = useState>([]); @@ -82,6 +83,7 @@ export default function AddBusinessDialog({ setForm(emptyForm(lastSector)); setError(null); setAddress(null); + setAddressInput(""); }, [open, lastSector]); useEffect(() => { @@ -94,8 +96,14 @@ export default function AddBusinessDialog({ setAddressLoading(true); setAddress(null); reverseGeocode(coords.lat, coords.lng, controller.signal) - .then((resolved) => setAddress(resolved)) - .catch(() => setAddress(null)) + .then((resolved) => { + setAddress(resolved); + setAddressInput(resolved ?? ""); + }) + .catch(() => { + setAddress(null); + setAddressInput(""); + }) .finally(() => setAddressLoading(false)); return () => controller.abort(); }, [open, coords]); @@ -137,6 +145,7 @@ export default function AddBusinessDialog({ setForm(emptyForm(lastSector)); setError(null); setAddress(null); + setAddressInput(""); onClose(); } @@ -171,7 +180,7 @@ export default function AddBusinessDialog({ zone_id: form.zone_id || null, lat: coords.lat, lng: coords.lng, - address: address ?? null, + address: addressInput.trim() || null, est_monthly_volume: volume, notes: form.notes.trim() || null, }, @@ -238,24 +247,26 @@ export default function AddBusinessDialog({ Tap the map first to place a pin.

) : ( -
-

- Location -

-

- {locationDisplay} +

+ setAddressInput(e.target.value)} + placeholder={locationDisplay} + /> +
{addressLoading ? (
)}