feat: Subscription size backend integration#43484
Conversation
…scription-size-backend-integration
…p into feat/subscription-size-backend-integration
…p into feat/subscription-size-backend-integration
…scription-size-backend-integration
|
@alitoshmatov Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
|
Reviewing this now. @MrMuzyk can you resolve the conflicts? |
|
Overall looks great, just one question on the optimistic error handling. |
|
@MrMuzyk I can see a couple small issues:
web-subscription-size-change-1.movweb-subscription-size-change-2.movweb-subscription-size-change-3.mov |
|
Also can you correct the typo:
Integrated Subscription Size parts with backend. Data now comes from API and proper API calls are performed when executed |
…scription-size-backend-integration
|
Rebased and fixed conflicts, added error clear on success and fixed the typo.
change-to-1.mp4
offline-mode.mp4 |
…scription-size-backend-integration
|
|
There is one issue that became visible after merging with main but is unrelated to my changes. When navigating between the screens content shifts - Im trying to find a cause but the fix might come in next PR Screen.Recording.2024-06-13.at.14.00.17.mov |
|
Found the cause - had to exclude subscription ROOT screen from FocusTrap. Everything should behave correctly now |
mananjadhav
left a comment
There was a problem hiding this comment.
Overall the code changes look fine to me. I'll get started on the checklist and testing.
|
Also let's add a FE validation to only allow integers? Although API doesn't accept decimals (2.05, etc.) but FE allows it. Screen.Recording.2024-06-13.at.9.32.00.PM.mov |
Reviewer Checklist
Screenshots/VideosAndroid: Nativeandroid-subscription-size-change.movAndroid: mWeb Chromemweb-chrome-subscription-size-change.moviOS: Nativeios-subscription-size-change.moviOS: mWeb Safarimweb-safari-subscription-size-change.movMacOS: Chrome / Safariweb-subscription-size-change_rJfsrAd4.mp4MacOS: Desktopdesktop-subscription-size-change.mov |
|
Just final edge cases. @amyevans Can you review in parallel? |
Hmm let's get @dannymcclain's input on this one |
|
Well I think the suggestion was to totally remove the second screen and move all this text to be an inline error. But that makes sense that we'd treat it differently than a true "error" and leave it as currently implemented 👍 @MrMuzyk can you add the period to the end of the sentence please? |
amyevans
left a comment
There was a problem hiding this comment.
A few things to address from my perspective as well. Thanks!
src/pages/settings/Subscription/SubscriptionSize/substeps/Confirmation.tsx
Outdated
Show resolved
Hide resolved
amyevans
left a comment
There was a problem hiding this comment.
Looks like @mananjadhav's feedback was addressed and he already completed the checklist, and I'm 👍 on the code and testing, so I think we're all set to merge 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/amyevans in version: 1.4.84-0 🚀
|
|
🚀 Deployed to production by https://github.com/AndrewGable in version: 1.4.84-3 🚀
|









Details
Integrated Subscription Size parts with backend. Data now comes from API and proper API calls are performed when executed
Fixed Issues
$ #38631
Tests
To access this newly created component, paste the following link into the browser
https://dev.new.expensify.com:8082/settings/subscription
or add this effect to InitialSettingsPage.tsx
Offline tests
QA Steps
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)myBool && <MyComponent />.src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
sub-size-ba-integration.mp4