All files / src/utils/address index.ts

0% Statements 0/0
0% Branches 0/0
0% Functions 0/0
0% Lines 0/0

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53                                                                                                         
/**
 * Address Utilities - Canonical Address Handling
 *
 * This module provides a unified way to handle address data across the application.
 *
 * @see src/validation/schemas/address.ts for the canonical Address type and schema
 *
 * Usage:
 * 1. Import normalizeAddress to convert any external data to canonical format
 * 2. Use Address type in your components/forms
 * 3. Use serializers when sending data to APIs
 *
 * @example
 * import { normalizeAddress, serializeAddressForAPI, Address } from '@utils/address';
 *
 * // Normalize API response
 * const address = normalizeAddress(apiData);
 *
 * // Use in form
 * const defaultValues = { address };
 *
 * // Serialize for API
 * const payload = { ...otherData, ...serializeAddressForAPI(formData.address) };
 */
 
// Re-export the canonical schema and type
export {
  AddressSchema,
  OptionalAddressSchema,
} from "@validation/schemas/address";
 
// Re-export normalizers
export {
  normalizeAddress,
  normalizeAddressField,
  hasAddressData,
  mergeAddressData,
} from "./normalize";
 
// Re-export serializers
export {
  serializeAddressForAPI,
  serializeAddressWithStreet,
  serializeBusinessAddressInfo,
  serializeAddressWithBothFields,
  serializeFlatAddress,
  formatAddressDisplay,
  type APIAddress,
  type StreetAddress,
  type BusinessAddressInfo,
  type DualFieldAddress,
} from "./serialize";