You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This document presents the findings from the evaluation of two popular ReactJS drag and drop libraries: react-dnd and react-beautiful-dnd. The aim was to assess their suitability for integrating a drag and drop feature into our Content Management System (CMS) page editor.
Open Issues/Pull Requests: 534 issues, 77 pull requests
Implementation: Component-based, enhancing ease of inclusion in pages.
Documentation: Excellent, with a wide range of examples.
Concerns:
No support for dragging a proxy element; requires dragging the actual content.
Does not work in React strict mode, necessitating its disablement.
Lack of clear method to drag a proxy element instead of the actual content. I still think is doable I just don't know how yet.
Advantages:
Auto-scroll feature.
More intuitive documentation and implementation.
Recommendation
After thorough testing and consideration, react-beautiful-dnd is recommended due to its component-based approach and superior documentation. However, it's important to note the limitation regarding React strict mode which might not be well receive for our customers.
Alternative Solutions
Given the multi-framework nature of our projects, integrating a React-specific library may not be the most efficient approach. Alternative solutions to consider:
Mini Map in Page Editor: A visual representation allowing for easier content management.
Window.postMessage System: Utilizes a communication system between the editor and different framework components (like Angular, Vue, etc.).
Web Component Drag and Drop Library: A framework-agnostic solution that might fulfill our diverse requirements.
Conclusion
Considering the project's timeframe and diverse framework requirements, the first alternative solution, implementing a Mini Map in the Page Editor, is chosen. This approach promises broader compatibility and easier integration across different frameworks in our ecosystem.
Parent Issue
#26644
Task
Find ReactJS drag and drop libraries:
Test the chosen libraries:
Test the drag and drop feature:
Check customization options:
a. See how flexible the libraries are in customizing the drag elements' look and behavior.
Proposed Objective
Core Features
Proposed Priority
Priority 3 - Average
Acceptance Criteria
A document explaining the results and next steps to solve the problem of moving contentlets from one place to another.
External Links... Slack Conversations, Support Tickets, Figma Designs, etc.
No response
Assumptions & Initiation Needs
No response
Quality Assurance Notes & Workarounds
No response
Sub-Tasks & Estimates
No response
The text was updated successfully, but these errors were encountered: