Add state and city

This commit is contained in:
hamid zarghami
2026-02-16 10:06:14 +03:30
parent 1913de57b3
commit 9dd49436e3
2 changed files with 26 additions and 2 deletions
@@ -9,6 +9,8 @@ interface AddressFormProps {
addressDetails: string;
phone: string;
postalCode: string;
city: string;
province: string;
isDefault: boolean;
};
selectedAddress: NominatimReverseGeocodingResponse | null;
@@ -50,6 +52,24 @@ export const AddressForm = ({
onChange={(e) => onFormDataChange({ addressDetails: e.target.value })}
inputClassName='text-xs!'
/>
<InputField
htmlFor={'province'}
labelText={'استان'}
placeholder={selectedAddress?.address?.state || selectedAddress?.address?.province || 'مثال: تهران'}
className='bg-inherit mt-8'
value={formData.province || selectedAddress?.address?.state || selectedAddress?.address?.province || ''}
onChange={(e) => onFormDataChange({ province: e.target.value })}
inputClassName='text-xs!'
/>
<InputField
htmlFor={'city'}
labelText={'شهر'}
placeholder={selectedAddress?.address?.city || selectedAddress?.address?.district || 'مثال: تهران'}
className='bg-inherit mt-8'
value={formData.city || selectedAddress?.address?.city || selectedAddress?.address?.district || ''}
onChange={(e) => onFormDataChange({ city: e.target.value })}
inputClassName='text-xs!'
/>
<InputField
htmlFor={'phone'}
labelText={'شماره تلفن'}
@@ -31,6 +31,8 @@ export const useAddressForm = ({
addressDetails: '',
phone: initialPhone,
postalCode: '',
city: '',
province: '',
isDefault: false,
});
@@ -39,6 +41,8 @@ export const useAddressForm = ({
setFormData({
title: addressData.title || '',
addressDetails: addressData.address || '',
city: addressData.city || '',
province: addressData.province || '',
phone: addressData.phone || initialPhone,
postalCode: addressData.postalCode || '',
isDefault: addressData.isDefault || false,
@@ -76,8 +80,8 @@ export const useAddressForm = ({
const baseAddressData = {
title: formData.title,
address: formData.addressDetails,
city: selectedAddress.address.city || selectedAddress.address.district || '',
province: selectedAddress.address.province || selectedAddress.address.state || '',
city: formData.city || selectedAddress.address.city || selectedAddress.address.district || '',
province: formData.province || selectedAddress.address.province || selectedAddress.address.state || '',
postalCode: formData.postalCode || selectedAddress.address.postcode || '',
latitude: selectedPosition[0],
longitude: selectedPosition[1],