38 lines
917 B
TypeScript
38 lines
917 B
TypeScript
import type {AddAddressForm} from '@/types'
|
|
|
|
type AddressValidationResult =
|
|
| { valid: true }
|
|
| { valid: false; message: string }
|
|
|
|
export function validateAddressFormSubmission(addressForm: AddAddressForm): AddressValidationResult {
|
|
if (!addressForm.name.trim()) {
|
|
return {
|
|
valid: false,
|
|
message: 'Please enter the receiver name.',
|
|
}
|
|
}
|
|
|
|
if (!addressForm.phone.trim()) {
|
|
return {
|
|
valid: false,
|
|
message: 'Please enter a reachable mobile number.',
|
|
}
|
|
}
|
|
|
|
if (addressForm.region.length !== 3) {
|
|
return {
|
|
valid: false,
|
|
message: 'Please select province, city and district.',
|
|
}
|
|
}
|
|
|
|
if (!addressForm.detailedAddress.trim()) {
|
|
return {
|
|
valid: false,
|
|
message: 'Please enter the detailed address.',
|
|
}
|
|
}
|
|
|
|
return {valid: true}
|
|
}
|