angular / angular/components

feat(table): Support drag and drop of rows and columns in same table

Open
#22,287 5 comments 1 reaction 0 assignees View on GitHub
area: cdk/drag-drop feature needs investigation P3
Dominant language
TypeScript
Stars
25k
Forks
6.8k
Avg merge
1d 8h
Merged PRs (30d)
91

Description

#### Feature Description

Users should be able to drag and drop one or more rows and also drag and drop one or more columns.

Currently it appears that a table can either support drag and drop for rows, or drag and drop for columns, but not both.

If it's not possible to do this with Angular Material's table, is there some other component Angular developers should use?

Do developers need to write a new drag-and-drop?

Even just a blog entry on the topic from Google/Angular that provides some hints/direction would be super-helpful.

#### Use Case

It's a basic need in a spreadsheet, and Angular Material's table would make a great spreadsheet, except for this missing support.

I'm not the first to ask for this. See for example https://stackoverflow.com/questions/66665859/is-it-possible-to-move-rows-and-columns-in-the-same-angular-material-table and https://stackoverflow.com/questions/65000227/angular-material-table-with-rearrange-rows-and-columns-option.

Contributor guide

Open the contributing guide

Research direction

The issue names Angular Material's table and asks about combining row and column drag-and-drop, but it names no files or tests. Start by reviewing the table and drag-and-drop entry points, then determine whether both axes can work in one table. Done means a documented, tested approach or a clear limitation with a recommended alternative.

Written by the indexing model from the issue text.

Assessment

Tech stack
angular, typescript
Domain
frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.