Skip to content

Commit d88fe50

Browse files
Fix draft saving mechanism
1 parent dbd5145 commit d88fe50

File tree

5 files changed

+16
-6
lines changed

5 files changed

+16
-6
lines changed

src/pages/settings/Wallet/InternationalDepositAccount/substeps/AccountHolderInformation.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ function AccountHolderInformation({isEditing, onNext, formValues, fieldsMap}: Cu
5050
const handleSubmit = useInternationalBankAccountFormSubmit({
5151
fieldIds: Object.keys(fieldsMap[CONST.CORPAY_FIELDS.STEPS_NAME.ACCOUNT_HOLDER_INFORMATION]),
5252
onNext,
53-
shouldSaveDraft: true,
53+
shouldSaveDraft: isEditing,
5454
});
5555

5656
const validate = useCallback(
@@ -107,6 +107,7 @@ function AccountHolderInformation({isEditing, onNext, formValues, fieldsMap}: Cu
107107
items={getItems(field)}
108108
disabled={field.id === ACCOUNT_HOLDER_COUNTRY}
109109
interactive={field.id === ACCOUNT_HOLDER_COUNTRY ? false : undefined}
110+
shouldSaveDraft={!isEditing}
110111
renamedInputKeys={{
111112
street: isEmptyObject(fieldsMap[CONST.CORPAY_FIELDS.STEPS_NAME.ACCOUNT_HOLDER_INFORMATION]?.accountHolderAddress1) ? '' : 'accountHolderAddress1',
112113
street2: isEmptyObject(fieldsMap[CONST.CORPAY_FIELDS.STEPS_NAME.ACCOUNT_HOLDER_INFORMATION]?.accountHolderAddress2) ? '' : 'accountHolderAddress2',

src/pages/settings/Wallet/InternationalDepositAccount/substeps/AccountType.tsx

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,15 @@ function AccountType({isEditing, onNext, formValues, fieldsMap}: CustomSubStepPr
3131
onNext();
3232
}, [currentAccountType, fieldData.isRequired, formValues, isEditing, onNext]);
3333

34-
const onSelectionChange = useCallback((country: Option) => {
35-
setCurrentAccountType(country.value);
36-
}, []);
34+
const onSelectionChange = useCallback(
35+
(country: Option) => {
36+
if (!isEditing) {
37+
FormActions.setDraftValues(ONYXKEYS.FORMS.INTERNATIONAL_BANK_ACCOUNT_FORM, {[CONST.CORPAY_FIELDS.ACCOUNT_TYPE_KEY]: currentAccountType});
38+
}
39+
setCurrentAccountType(country.value);
40+
},
41+
[currentAccountType, isEditing],
42+
);
3743

3844
const options = useMemo(
3945
() =>

src/pages/settings/Wallet/InternationalDepositAccount/substeps/BankAccountDetails.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ function BankAccountDetails({isEditing, onNext, resetScreenIndex, formValues, fi
2828
const handleSubmit = useInternationalBankAccountFormSubmit({
2929
fieldIds: Object.keys(fieldsMap[CONST.CORPAY_FIELDS.STEPS_NAME.BANK_ACCOUNT_DETAILS] ?? {}),
3030
onNext,
31-
shouldSaveDraft: true,
31+
shouldSaveDraft: isEditing,
3232
});
3333

3434
const onCurrencySelected = useCallback(
@@ -86,6 +86,7 @@ function BankAccountDetails({isEditing, onNext, resetScreenIndex, formValues, fi
8686
defaultValue={formValues[field.id]}
8787
label={field.label + (field.isRequired ? '' : ` (${translate('common.optional')})`)}
8888
items={(field.valueSet ?? []).map(({id, text}) => ({value: id, label: text}))}
89+
shouldSaveDraft={!isEditing}
8990
/>
9091
</View>
9192
))}

src/pages/settings/Wallet/InternationalDepositAccount/substeps/BankInformation.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ function BankInformation({isEditing, onNext, formValues, fieldsMap}: CustomSubSt
4444
const handleSubmit = useInternationalBankAccountFormSubmit({
4545
fieldIds: Object.keys(fieldsMap[CONST.CORPAY_FIELDS.STEPS_NAME.BANK_INFORMATION]),
4646
onNext,
47-
shouldSaveDraft: true,
47+
shouldSaveDraft: isEditing,
4848
});
4949

5050
const validate = useCallback(
@@ -95,6 +95,7 @@ function BankInformation({isEditing, onNext, formValues, fieldsMap}: CustomSubSt
9595
defaultValue={formValues[field.id]}
9696
label={field.label + (field.isRequired ? '' : ` (${translate('common.optional')})`)}
9797
items={getItems(field)}
98+
shouldSaveDraft={!isEditing}
9899
renamedInputKeys={{
99100
street: isEmptyObject(fieldsMap[CONST.CORPAY_FIELDS.STEPS_NAME.BANK_INFORMATION]?.bankAddressLine1) ? '' : 'bankAddressLine1',
100101
street2: isEmptyObject(fieldsMap[CONST.CORPAY_FIELDS.STEPS_NAME.BANK_INFORMATION]?.bankAddressLine2) ? '' : 'bankAddressLine2',

src/pages/settings/Wallet/InternationalDepositAccount/substeps/Confirmation.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,7 @@ function Confirmation({onNext, onMove, formValues, fieldsMap}: CustomSubStepProp
171171
inputID="acceptTerms"
172172
LabelComponent={TermsAndConditionsLabel}
173173
style={[styles.mt3]}
174+
shouldSaveDraft
174175
/>
175176
<FormHelpMessage
176177
style={[styles.mt3, styles.mbn1]}

0 commit comments

Comments
 (0)