-
Notifications
You must be signed in to change notification settings - Fork 3.5k
use dnd-kit for DraggableList #59723
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
Conversation
|
|
|
|
|
@hoangzinh 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] |
What is that link @davidgelhar? I can't access it |
|
@davidgelhar should we also remove react-beautiful-dnd in this PR? |
I can't access it either. I didn't add it myself but I think is related to the messages about doing an ad-hoc build of Hybrid App because of library changes |
Seems like a good idea. I will update the PR |
From audit logs, it seems added by yourself. |
|
@hoangzinh I have removed that link- it was not valid anyway |
|
Thank you @davidgelhar. Ping me again when the PR is ready for next review |
|
@hoangzinh pushed an update to PR removing react-beautiful-dnd; please review |
|
Thank you @davidgelhar. I will review the PR today |
|
@davidgelhar can you update the testing steps please #59723 (comment)? |
The verification checkboxes have been moved into the "QA Steps" section - is that what you were suggesting? |
Ah nope @davidgelhar , it should be
|
Co-authored-by: Vinh Hoang <hoangzinhvn@gmail.com>
Co-authored-by: Vinh Hoang <hoangzinhvn@gmail.com>
Co-authored-by: Vinh Hoang <hoangzinhvn@gmail.com>
|
I got this alert when access create expense page it seems we can set it App/src/pages/iou/request/step/IOURequestStepDistance.tsx Lines 203 to 205 in fd4b9ad
|
hoangzinh
left a comment
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
dangrous
left a comment
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.
Awesome! Code's a lot cleaner now, too.
|
✋ 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/dangrous in version: 9.1.32-0 🚀
|
|
@davidgelhar This PR is failing because of issue #60733 Bug6810950_1745436012623.ScreenRecording_04-24-2025_03-16-23_1.mp4 |
|
I have been able to reproduce the issue #60733 reported in QA: on iOS dragging the points often does not work at all (intermittent but frequent failure). Evidently the solution of using a At this point, I think it might be best to revert to the previous behavior for iOS only (restore index.ios.tsx) |
|
I agree, then we can find a better solution for IOS later. What do you think @dangrous? |
|
hm yeah I think that makes sense, we can revert for iOS and figure out an update for that as a follow up. |
|
@dangrous what's the best way to do that? New pull request? |
|
Yeah, to fix the deploy blocker first. |
|
@hoangzinh @dangrous created #60850 to revert the change for iOS |
|
requesting a retest of this, now that revert is on staging |
|
This is as expected now not fixing the original issue on iOS but seems to be good on other platforms, so can move forward as QA'd |
|
🚀 Deployed to production by https://github.com/thienlnam in version: 9.1.32-8 🚀
|



Explanation of Change
This change uses a new library (
dnd-kit) to implement the DraggableList component. (The previous library is being deprecated, and lacks an option to contstrain how elements can be dragged).With
dnd-kit, therestrictToVerticalAxisandrestrictToParentElementmodifiers are used to ensure that elements can be dragged vertically only, and cannot be dragged outside the boundaries of the list of waypoint addresses.Request to add a new library was approved here: #59231
Fixed Issues
$ #57312
PROPOSAL: #57312 (comment)
Tests
Offline tests
QA Steps
Same as tests
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)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
Android: Native
drag.android.native.mp4
Android: mWeb Chrome
drag.android.mweb.mp4
iOS: Native
drag.ios.native.mp4
iOS: mWeb Safari
drag.ios.mweb.mp4
MacOS: Chrome / Safari
drag.safari.mp4
MacOS: Desktop
drag.desktop.mp4