-
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
[No QA] Allow editing fields of Request #20206
Conversation
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.
UI changes are looking good. I left a few small comments.
Additionally, I'm seeing a weird behavior with the date picker.
- Tap the year selector
- Notice that the background is animated (this is issue Some initial fixes and code style updates #1)
- Select a year
- Notice that the year doesn't change when you go back to the full date picker
date.mov
Hmm that bug sucks haha. Ok I think it's probably something to do with the routing because the DOB picker works fine. |
Ah yep the "year picker" page is defined in the settings stack here: App/src/libs/Navigation/linkingConfig.js Lines 219 to 221 in 38ba7c8
I think maybe we can just remove it from that stack and have it be pushed as it's own navigator. Maybe not the best solution, but the first one that comes to mind. |
Hmm ok am actually pretty confused about how this works now and need to look into it some more. The code here implies we would need to check the route for each new usage of the date picker 😞 App/src/pages/YearPickerPage.js Lines 66 to 77 in 38ba7c8
I, for some reason, expected that something called |
@luacmartins The good news is that I fixed that bug... The bad news is that I'm not feeling too great about the Maybe I'm missing some obvious alternative that you will spot. The code looks a little wacky to me. Like the currency selector it's also using routes to pass parameters. And the routes are hardcoded to the component. I attempted to start some conversation about the way we are passing around parameters in routes here earlier this week: https://expensify.slack.com/archives/C01GTK53T8Q/p1686161800267329, but it didn't get much engagement. |
I agree that the component feels very brittle. Let's keep the discussion in that thread though |
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.
Code LGTM, but we have conflicts
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.
Testing locally, I can open each caret, and the correct changes are logged. But should the admin account be able to change the amount/description as well?
@grgia yes, admins can edit transactions too! |
@marcaaron can you resolve conflicts. @0xmiroslav would appreciate your review on this one. |
Fixed. There are 3 internal engineers tagged on this issue. If @grgia is already testing maybe we can take @0xmiroslav off the review (they haven't chimed in yet and this PR has been open for a week). |
Are we planning on merging this with the console logs? |
It's unusual and not our best practice - but I would advise we merge it as is (or after review comments). The flows are commented out until we are ready to use them and we will remove that The lack of reviews here is affecting my ability to GSD. So, I would prefer not to wait for the date picker refactor to happen (if that's the current blocker or cause for delay here). |
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's a crash when accessing the description page
Ok I think the crash should be fixed now. The hacky code to fix the cursor position threw me off my game. |
Reviewer Checklist
Screenshots/VideosWebScreen.Recording.2023-06-20.at.5.31.13.PM.movMobile Web - ChromeMobile Web - SafariDesktopScreen.Recording.2023-06-20.at.5.26.49.PM.moviOSScreen.Recording.2023-06-20.at.5.29.28.PM.movAndroid |
mobile safari / mobile chrome are crashing for me (not on main) @marcaaron |
@grgia did you pull the branch before re-testing? I am testing on mWeb and don't see any crashes. |
65ae4e9
to
50f15c8
Compare
Quick update here. This PR is a lot simpler now. TL;DR I got some bad conflicts from this PR and the Originally, I set out to refactor that component and the description stuff so that things would be more DRY, but abandoned that for now as it will take too much time to improve and this PR continues to get confusing conflicts leading to delays in general. So what did this PR end up... doing??
The other pages will also need more thought to incorporate so I suggest we do a follow up for each one and then do a final PR to call the API. |
Updated |
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.
LGTM and tests well.
Cool. I am skipping testing on the rest of the platforms because we have been waiting a while and parts of the UI we are adding are not even accessible. We can test the flow again in the later stages of development. I am confident that these changes are fine. |
✋ 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/marcaaron in version: 1.3.31-0 🚀
|
🚀 Deployed to production by https://github.com/luacmartins in version: 1.3.31-3 🚀
|
🚀 Deployed to production by https://github.com/luacmartins in version: 1.3.31-3 🚀
|
Details
Fixed Issues
$ https://github.com/Expensify/Expensify/issues/270589
Tests
Offline tests
N/A or if there are any we will have to consider them when making the API changes. For now, this feature will not yet be accessible.
QA Steps
There is no QA because the code we are adding is not accessible yet.
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)myBool && <MyComponent />
.src/languages/*
files and using the translation methodWaiting for Copy
label for a copy review on the original GH to get the correct copy.STYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)/** comment above it */
this
properly so there are no scoping issues (i.e. foronClick={this.submit}
the methodthis.submit
should be bound tothis
in the constructor)this
are necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);
ifthis.submit
is never passed to a component event handler likeonClick
)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)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
Web
Mobile Web - Chrome
Mobile Web - Safari
Desktop
iOS
Android