-
Notifications
You must be signed in to change notification settings - Fork 3k
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
feat: subscription size action #43122
feat: subscription size action #43122
Conversation
@ahmedGaber93 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] |
Reviewer Checklist
Screenshots/VideosAndroid: NativeN/A Android: mWeb ChromeScreen.Recording.2024-06-05.at.7.31.56.PM.moviOS: NativeN/A iOS: mWeb SafariScreen.Recording.2024-06-05.at.7.29.34.PM.movMacOS: Chrome / SafariScreen.Recording.2024-06-05.at.7.21.39.PM.movMacOS: DesktopScreen.Recording.2024-06-05.at.7.25.48.PM.mov |
@allroundexperts assigned you! |
@trjExpensify Is this change for web only? On Android, I'm getting the following: Screen.Recording.2024-06-05.at.7.44.57.PM.mov |
Yeah, due to the Google and Apple overlords we can't let you manage your subscription size on native iOS or Android. 🙄 Meaning, the subscription size page to set a subscription size is not accessible. |
style={styles.mt5} | ||
/> | ||
) : ( | ||
// This section is only shown when the subscription is annual |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This section is visible even if the subscription type is not annual:
Screen.Recording.2024-06-05.at.7.50.19.PM.mov
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, I guess it does not show up if the set subscription is not annual.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Condition was checking it against data coming straight from the API. Because change is only happening on FE now (API call will be implemented in the next phase) it was not working as expected. I've updated the condition to check it against the selectedOption that we store inside state of the component. It should work as expected now.
On this though. If you have a subscription size set, it should be read-only and visible on native. Not sure where @MrMuzyk is at with that one, but here for illustration: |
I think my subscription size is set to 0. That is why its not showing, I think. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes are looking good. One small comment. Also, I'm assuming that this is design approved?
This PR hasn't had anyone from design on it. @Expensify/design someone want to take a quick looksie? 👀 |
Good catch on all of those Danny! For the radio buttons, don't those already exist as a component and they work already across light and dark modes? I hope we aren't rewriting them! |
I've assumed its a mistake and did set it to
Fixed them, we had one unnecessary style added to them. Should look fine now |
Can we get some updated screenshots/videos to review? Thanks! |
isChecked={isSelected} | ||
selectCircleStyles={styles.sectionSelectCircle} | ||
/> | ||
<SelectCircle isChecked={isSelected} /> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wasn't aware that it's too dark now. I've reverted it to default state that should work for both platforms. Changing it again so its fine on both themes
@shawnborton I've updated PR description with a few videos. I didn't include native as this button to change subscription size is not visible on these platforms |
Ok, I think I understand... But I think there's a difference between In my mind, |
I think a user will think this way as well, personally. Especially as you can't opt-in for a subscription size of |
🧪🧪 Use the links below to test this adhoc build on Android, iOS, Desktop, and Web. Happy testing! 🧪🧪 |
I agree that there is a difference between unset value and 0. At the moment it was set to 0. I can change it to an empty string so it is displayed different. Does it look better? default.value.mov |
…scription-size-action
I think that looks better to me! @shawnborton @dannymcclain? |
IIRC it's possible that the existing value is |
That looks better to me too. The user can open the RHP and decide they don't want to mess with anything and just close it without issue. I think it's good now. I am ignoring Flo's comment about unset being the same as being set to 0 😂. I think for this purpose, because a user cannot set the value to 0, we can treat it as unset (like what's shown in the updated video) if no specific value from the user has been given. |
Looking fine to me: Screen.Recording.2024-06-07.at.9.02.58.PM.movScreen.Recording.2024-06-07.at.9.04.15.PM.mov |
@dannymcclain can confirm though from design perspective. |
Hmm @allroundexperts in your videos, given that a subscription size exists once you open the RHP, I would think the push row would show the subscription size no? |
I think that's not the case. As far as I've understood, those are draft values of the form. Draft values don't show up in the push row. |
These are draft values being displayed there.
Changing it |
@amyevans Can you review this so we can merge it? |
…scription-size-action
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good! I'm going to remove the QA steps though since this isn't a fully functional feature at this point
✋ 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.82-0 🚀
|
🚀 Deployed to production by https://github.com/mountiny in version: 1.4.82-4 🚀
|
Details
Added navigation action when pressing
subscription size
buttonFixed Issues
$ #38625
PROPOSAL:
Tests
Offline tests
QA Steps
No QA
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
n/a
Android: mWeb Chrome
subscription-updated-android.mp4
iOS: Native
n/a
iOS: mWeb Safari
subscription-updated-ios.mp4
MacOS: Chrome / Safari
subscription-updated.mp4
subscription-updated-light.mp4
MacOS: Desktop
n/a