@@ -7,16 +7,17 @@ import { PrimerExpiryDateInput } from './inputs/PrimerExpiryDateInput';
77import { PrimerCVVInput } from './inputs/PrimerCVVInput' ;
88import { PrimerCardholderNameInput } from './inputs/PrimerCardholderNameInput' ;
99import { PrimerAcceptedCardNetworks } from './PrimerAcceptedCardNetworks' ;
10+ import { usePrimerCardForm } from './hooks/usePrimerCardForm' ;
1011import type { PrimerTextInputRef } from './types/CardInputTypes' ;
1112import type { PrimerCardFormProps } from './types/PrimerCardFormTypes' ;
1213
1314export function PrimerCardForm ( {
14- cardForm,
1515 onSubmit,
1616 autoFocus = false ,
1717 style,
1818 testID = 'primer-card-form' ,
1919} : PrimerCardFormProps ) {
20+ const cardForm = usePrimerCardForm ( ) ;
2021 const tokens = usePrimerTheme ( ) ;
2122 const styles = useMemo ( ( ) => createStyles ( tokens ) , [ tokens ] ) ;
2223
@@ -40,7 +41,6 @@ export function PrimerCardForm({
4041 < PrimerAcceptedCardNetworks testID = { `${ testID } -accepted-networks` } />
4142 < PrimerCardNumberInput
4243 ref = { cardRef }
43- cardForm = { cardForm }
4444 editable = { ! disabled }
4545 returnKeyType = "next"
4646 onSubmitEditing = { ( ) => expiryRef . current ?. focus ( ) }
@@ -51,7 +51,6 @@ export function PrimerCardForm({
5151 < View style = { styles . halfField } >
5252 < PrimerExpiryDateInput
5353 ref = { expiryRef }
54- cardForm = { cardForm }
5554 editable = { ! disabled }
5655 returnKeyType = "next"
5756 onSubmitEditing = { ( ) => cvvRef . current ?. focus ( ) }
@@ -61,7 +60,6 @@ export function PrimerCardForm({
6160 < View style = { styles . halfField } >
6261 < PrimerCVVInput
6362 ref = { cvvRef }
64- cardForm = { cardForm }
6563 editable = { ! disabled }
6664 returnKeyType = { cardForm . isCardholderNameVisible ? 'next' : 'done' }
6765 onSubmitEditing = { cardForm . isCardholderNameVisible ? ( ) => nameRef . current ?. focus ( ) : onSubmit }
@@ -74,7 +72,6 @@ export function PrimerCardForm({
7472 { cardForm . isCardholderNameVisible && (
7573 < PrimerCardholderNameInput
7674 ref = { nameRef }
77- cardForm = { cardForm }
7875 editable = { ! disabled }
7976 returnKeyType = "done"
8077 onSubmitEditing = { onSubmit }
0 commit comments