-
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
fix: sort valid waypoints #26705
fix: sort valid waypoints #26705
Conversation
Blocked on screenshots because of this |
@allroundexperts @situchan could you resume the work on this please? |
Waiting for @allroundexperts to complete checklist |
Please also add error case in QA step |
Checklist complete! |
@hayata-suenaga @situchan I've also disabled the next button when the user is offline. This is because some errors are not available until we get a response from the |
Probably, another follow up polish item we can do is to disable the next button when the |
@hayata-suenaga please confirm if you also 👍 |
@allroundexperts on this are you following the offline pattern c, with the offline indicator beneath the disabled button? |
That already shows up! |
Cool, so if you can't submit the form because of an API call that's required then a disabled confirmation button with the offline indicator underneath it is correct in the realm of pattern C. @neil-marcellini @hayata-suenaga I am curious though, I thought it was designed to be able to do the entire distance request flow offline using pattern B. |
We cannot correctly calculate the distance request amount without API call. So, I'd say we need to use Pattern C for this. Let me quickly check with the Wave 5 team to confirm MemoWhat is being discussed: On the Distance Request page, whether to disable the "Continue" button when offline |
@allroundexperts let's disable the button for now when offline (your current code) |
@hayata-suenaga What about this? Shall we create a follow up ticket? |
I gonna create a follow up GH ticket for this. This is out of scope for this PR We eventually want to handle this case -> user create waypoints on the Distance Request page while offline -> Click "Continue" (your PR temporarily prevents the user doing this) -> While on the confirmation page, the device comes back online -> route is fetched -> turned out that waypoints are invalid -> display error message on the confirmation page soooo... if the user clicks the "Continue" button while the route is being loaded and that route turned out to be invalid, we might be able to handle that case on the confirmation page (when the above flow is supported) |
Yes. An error on the waypoint selection screen will disable the next button. |
could you kindly check what happens if there is an error on the confirmation screen? Can you still submit the request? |
Confirmation screen can only have an error once the API request from the backend fails as far as I know. I'll check what happens in this case. |
Screen.Recording.2023-09-06.at.2.14.17.AM.mov |
@situchan thank you! This is something we might want to cleanup but out of scope for this PR but I wanted to check the current behavior. Thank you so much! |
I am not sure what's happening but in android I cannot get error (invalid waypoint) at all and finally app crashes after confirm request. No issue on all other platforms. android.mov |
Is your server set as staging? |
I tested against both staging/production server |
@allroundexperts can you test android with 3 locations I chose? |
My internet is really bad rn. It is taking years to upload. I'll try in slack. |
Reviewer Checklist
Screenshots/VideosWebweb.movMobile Web - Chromemchrome.movMobile Web - Safarimsafari.movDesktopdesktop.moviOSios.movAndroidandroid.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.
@situchan so this issue is not present? |
Decided to hold this PR until the conference where we announce the feature is over 🙇 Good work by the way 🎉 |
The conference and promotion is over so I'm taking this off hold and I'll give it another review now. |
✋ 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/neil-marcellini in version: 1.3.68-0 🚀
|
🚀 Deployed to production by https://github.com/Julesssss in version: 1.3.68-17 🚀
|
Details
This PR adds sorting logic to the validate waypoint function.
Fixed Issues
$ #26583
PROPOSAL: #26583 (comment)
Tests
+
icon in the LHN.Case 1
Verify that the route is shown correctly.
Case 2
Verify that an error occurs and the next button is disabled.
Offline tests
N/A
QA Steps
+
icon in the LHN.Case 1
Verify that the route is shown correctly.
Case 2
Verify that an error occurs and the next button is disabled.
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)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
Screen.Recording.2023-09-05.at.2.22.36.PM.mov
Mobile Web - Chrome
Screen.Recording.2023-09-05.at.2.37.31.PM.mov
Mobile Web - Safari
Screen.Recording.2023-09-05.at.2.47.10.PM.mov
Desktop
Screen.Recording.2023-09-05.at.2.24.13.PM.mov
iOS
Screen.Recording.2023-09-05.at.2.42.37.PM.mov
Android
Screen.Recording.2023-09-05.at.2.41.45.PM.mov