-
Notifications
You must be signed in to change notification settings - Fork 2.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature/20459 sub steps refactor #51231
Feature/20459 sub steps refactor #51231
Conversation
I think so. Also, I don't think I've touched this behaviour while working on refactor. |
Right, that was a bug - fixed now. Thanks |
Cool. Can you merge main? I'll verify in few miunutes |
done |
For some reason I can't seem to text on simulator :/, recording screenshots for all platforms will take more time than I expected |
Reviewer Checklist
Screenshots/VideosAndroid: NativeScreen.Recording.2024-10-29.at.09.50.29.movAndroid: mWeb ChromeScreen.Recording.2024-10-29.at.09.25.39.moviOS: NativeScreen.Recording.2024-10-28.at.17.48.54.moviOS: mWeb SafariScreen.Recording.2024-10-28.at.17.50.37.movMacOS: Chrome / SafariScreen.Recording.2024-10-28.at.10.46.16.movScreen.Recording.2024-10-28.at.09.48.32.movScreen.Recording.2024-10-28.at.13.56.19.movMacOS: DesktopScreen.Recording.2024-10-28.at.14.15.04.mov |
@burczu Sorry, I forgot the physical back button press on Android. Do you think we also need to handle it? Please take a look at the video below, if we press Back button, the screen will be existed instead of navigating to previous step. Screen.Recording.2024-10-29.at.11.09.52.mov |
Hmm... I think this ineed might be a bug, but I don't think it is related to this refactor - I did not touch this kind logic here. |
I see. Then I think we're good to go here 👍 |
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
🚀 Deployed to staging by https://github.com/madmax330 in version: 9.0.55-1 🚀
|
Performance Comparison Report 📊Significant Changes To Duration
Show details
Meaningless Changes To DurationShow entries
Show details
|
@Expensify/mobile-deployers 📣 Please look into this performance regression as it's a deploy blocker. |
🚀 Deployed to production by https://github.com/Beamanator in version: 9.0.55-10 🚀
|
Details
In this PR I've refactored some parts of the code related to sub-steps forms that we recently use more extensively in the App. These improvements was discussed with @koko57 and @MrMuzyk - it will be useful in the Global Reimbursement project where we create more sub-steps forms. The PR introduces few re-usable common form components like
FullNameStep
,DateOfBirthStep
,AddressStep
orSingleFieldStep
(that can be used for e.g. phone numbers or social security numbers) ones and uses them wherever applicable. It also makes the InteractiveStepWrapper component more re-usable.Fixed Issues
$ #50893
PROPOSAL: n/a
Tests
Enable payments:
Reimbursement account - personal info:
Reimbursement account - beneficial owner info:
Missing personal info for issuing the card:
Offline tests
Same as above
QA Steps
Same as above
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)myBool && <MyComponent />
.src/languages/*
files and using the translation methodSTYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)Design
label and/or tagged@Expensify/design
so the design team can review the changes.ScrollView
component to make it scrollable when more elements are added to the page.main
branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTest
steps.Screenshots/Videos
Android: Native
Enable payments:
Screen.Recording.2024-10-24.at.09.02.09.mov
Reimbursement account - personal info:
Screen.Recording.2024-10-24.at.09.10.28.mov
Reimbursement account - beneficial owner info:
Screen.Recording.2024-10-24.at.09.13.44.mov
Missing personal info for issuing the card:
Screen.Recording.2024-10-24.at.09.18.03.mov
Android: mWeb Chrome
Enable payments:
Screen.Recording.2024-10-24.at.10.32.27.mov
Reimbursement account - personal info:
Screen.Recording.2024-10-24.at.10.40.06.mov
Reimbursement account - beneficial owner info:
Screen.Recording.2024-10-24.at.10.43.18.mov
Missing personal info for issuing the card:
Screen.Recording.2024-10-24.at.10.36.08.mov
iOS: Native
Enable payments:
Screen.Recording.2024-10-24.at.08.27.37.mov
Reimbursement account - personal info:
Screen.Recording.2024-10-24.at.08.31.24.mov
Reimbursement account - beneficial owner info:
Screen.Recording.2024-10-24.at.08.36.38.mov
Missing personal info for issuing the card:
Screen.Recording.2024-10-24.at.08.45.54.mov
iOS: mWeb Safari
Enable payments:
Screen.Recording.2024-10-24.at.09.41.31.mov
Reimbursement account - personal info:
Screen.Recording.2024-10-24.at.10.15.04.mov
Reimbursement account - beneficial owner info:
Screen.Recording.2024-10-24.at.10.24.29.mov
Missing personal info for issuing the card:
Screen.Recording.2024-10-24.at.09.50.48.mov
MacOS: Chrome / Safari
Enable payments:
Screen.Recording.2024-10-23.at.09.31.28.mov
Reimbursement account - personal info:
Screen.Recording.2024-10-24.at.07.27.46.mov
Reimbursement account - beneficial owner info:
Screen.Recording.2024-10-24.at.07.45.42.mov
Missing personal info for issuing the card:
Screen.Recording.2024-10-24.at.07.51.18.mov
MacOS: Desktop
Enable payments:
Screen.Recording.2024-10-24.at.08.03.18.mov
Reimbursement account - personal info:
Screen.Recording.2024-10-24.at.08.06.26.mov
Reimbursement account - beneficial owner info:
Screen.Recording.2024-10-24.at.08.09.56.mov
Missing personal info for issuing the card:
Screen.Recording.2024-10-24.at.08.13.40.mov