Skip to content

Implementation/dream 774 sortable lists docs - #25137

Draft
myabc wants to merge 3 commits into
devfrom
implementation/DREAM-774-sortable-lists-docs
Draft

Implementation/dream 774 sortable lists docs#25137
myabc wants to merge 3 commits into
devfrom
implementation/DREAM-774-sortable-lists-docs

Conversation

@myabc

@myabc myabc commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Ticket

What are you trying to accomplish?

Screenshots

What approach did you choose and why?

Merge checklist

  • Added/updated tests
  • Added/updated documentation in Lookbook (patterns, previews, etc)
  • Tested major browsers (Chrome, Firefox, Edge, ...)

Consumers of the sortable-lists controller suite had to reverse-engineer
its contract from the controllers. The new pattern page routes readers to
the declarative component API first and documents manual wiring for the
cases it does not reach.

https://community.openproject.org/wp/DREAM-774
The dragula-based controller is closed to new consumers, but nothing in
the source said so. The tag points readers at sortable-lists before they
copy a call site.
@myabc
myabc requested a lite review from Copilot September 4, 2026 13:37
@myabc myabc added documentation DO NOT MERGE javascript Pull requests that update Javascript code labels Sep 4, 2026
@myabc myabc added this to the 17.9.x milestone Sep 4, 2026
@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown

Deploying openproject with PullPreview

Field Value
Latest commit 2a9e562
Job deploy
Status ✅ Deploy successful
Preview URL https://pr-25137-dream-774-sorta-ip-167-233-212-193.my.opf.run:443

View logs

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The new Lookbook guide includes an ambiguous value key name (move_url_templates_value) that is inconsistent with the documented sortable_lists_* data-hash convention and can mislead consumers into wiring the controller incorrectly.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Adds a new Lookbook pattern guide for the sortable-lists Stimulus controller suite and documents migration away from the legacy dragula-based generic-drag-and-drop, while also marking the old controllers as deprecated in-code to discourage new usage.

Changes:

  • Added a comprehensive Lookbook pattern page describing sortable-lists wiring, request/response contract, accessibility move menus, and migration notes.
  • Marked GenericDragAndDropController as deprecated with guidance pointing readers to sortable-lists.
  • Marked existing surfaces inheriting from GenericDragAndDropController as deprecated to prompt future migration.
File summaries
File Description
lookbook/docs/patterns/40-drag-and-drop.md.erb New Lookbook documentation for sortable lists (manual wiring + migration guidance).
frontend/src/stimulus/controllers/dynamic/generic-drag-and-drop.controller.ts Adds @deprecated JSDoc to the legacy dragula-based controller.
frontend/src/stimulus/controllers/dynamic/meetings/drag-and-drop.controller.ts Marks meetings drag-and-drop surface as deprecated due to inheritance.
frontend/src/stimulus/controllers/dynamic/admin/type-form-configuration/drag-and-drop.controller.ts Marks type form configuration drag-and-drop surface as deprecated due to inheritance.
Review details
  • Files reviewed: 4/4 changed files
  • Comments generated: 1
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread lookbook/docs/patterns/40-drag-and-drop.md.erb Outdated
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

DO NOT MERGE documentation javascript Pull requests that update Javascript code pullpreview

Development

Successfully merging this pull request may close these issues.

2 participants