Reduce complexity in ProfileContainer, AccountCheckoutContainer, and JapanAddressForm by extracting reusable hooks, components, and utilities. ProfileContainer (705 → 132 lines): - Extract useProfileDataLoading hook for consolidated data loading - Extract useVerificationFileUpload hook for file upload state - Create VerificationCard component for verification UI - Create ProfileLoadingSkeleton for loading state - Update PersonalInfoCard with phone field and additional fields - Update AddressCard to use Button component AccountCheckoutContainer (382 → 303 lines): - Extract useCheckoutEligibility hook for eligibility state - Extract useCheckoutFormState and useCanSubmit hooks - Extract useCheckoutToast hook for toast timing - Create checkout-navigation utilities - Create CheckoutErrorFallback component JapanAddressForm (727 → 437 lines): - Extract AnimatedSection, ProgressIndicator, BilingualValue components - Extract useAddressCompletion hook for completion state - Extract useJapanAddressForm hook for form state/handlers - Create japan-address.constants and street-address.validation utilities
11 lines
404 B
TypeScript
11 lines
404 B
TypeScript
export { ZipCodeInput, type ZipCodeInputProps } from "./ZipCodeInput";
|
|
export {
|
|
JapanAddressForm,
|
|
type JapanAddressFormProps,
|
|
type JapanAddressFormData,
|
|
} from "./JapanAddressForm";
|
|
export { AddressStepJapan } from "./AddressStepJapan";
|
|
export { AnimatedSection } from "./AnimatedSection";
|
|
export { ProgressIndicator } from "./ProgressIndicator";
|
|
export { BilingualValue } from "./BilingualValue";
|