"use client"; import { useCallback } from "react"; import { accountService } from "@/features/account/services/account.service"; import { addressFormSchema, addressFormToRequest, type AddressFormData } from "@customer-portal/domain"; import { useZodForm } from "@customer-portal/validation"; export function useAddressEdit(initial: AddressFormData) { const handleSave = useCallback(async (formData: AddressFormData) => { try { const requestData = addressFormToRequest(formData); await accountService.updateAddress(requestData); } catch (error) { throw error; // Let useZodForm handle the error state } }, []); return useZodForm({ schema: addressFormSchema, initialValues: initial, onSubmit: handleSave, }); }