-
Couldn't load subscription status.
- Fork 2.8k
Document/Media Recycle Bin: Add missing root workspace views (#20494) #20569
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
Document/Media Recycle Bin: Add missing root workspace views (#20494) #20569
Conversation
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.
Pull Request Overview
Adds missing workspace views to display root items in the Document and Media Recycle Bins, using table-based collection views and dedicated collection repositories. It also refactors root entity constants and wiring into separate root modules.
- Introduces table collection views for recycle bin tree item children (documents and media)
- Adds root workspaces and collection workspace views for both recycle bins
- Refactors constants and manifest wiring to include new root modules and tree-item-children collections
Reviewed Changes
Copilot reviewed 45 out of 45 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/tree-item-children/manifests.ts | Registers tree-item-children collection manifests for media recycle bin. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/tree-item-children/constants.ts | Re-exports collection constants for media tree-item-children. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/tree-item-children/collection/views/trashed-media-name-table-column.element.ts | Adds table column element for trashed media name with link to edit. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/tree-item-children/collection/views/media-recycle-bin-tree-item-table-collection-view.element.ts | Implements table collection view for media recycle bin tree item children. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/tree-item-children/collection/views/manifests.ts | Registers media recycle bin tree item table collection view. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/tree-item-children/collection/types.ts | Adds filter model for media tree-item-children collections. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/tree-item-children/collection/repository/media-recycle-bin-tree-item-children-collection.repository.ts | Adds repository to fetch media recycle bin children/root items for collection view. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/tree-item-children/collection/repository/manifests.ts | Registers media tree-item-children collection repository. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/tree-item-children/collection/repository/index.ts | Re-exports repository constants (media). |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/tree-item-children/collection/repository/constants.ts | Defines repository alias for media tree-item-children collection. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/tree-item-children/collection/manifests.ts | Registers media tree-item-children collection with repository/view manifests. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/tree-item-children/collection/index.ts | Barrel exports for media tree-item-children collection. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/tree-item-children/collection/constants.ts | Defines collection alias for media tree-item-children and re-exports repo constants. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/manifests.ts | Updates media tree manifests to import root entity from new module and include tree-item-children manifests; removes inline root workspace. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/tree/constants.ts | Re-exports tree-item-children constants for media. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/root/workspace/manifests.ts | Adds media recycle bin root workspace and collection workspace view. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/root/workspace/constants.ts | Adds alias constant for media recycle bin root workspace. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/root/manifests.ts | Aggregates media root workspace manifests. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/root/entity.ts | Introduces media recycle bin root entity type. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/root/constants.ts | Re-exports media root entity and workspace constants. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/manifests.ts | Wires media root manifests into main media recycle bin manifests. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/entity-action/manifests.ts | Updates imports to use new root entity constants and repo alias location. |
| src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/constants.ts | Re-exports root constants and removes inline root entity type. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/tree-item-children/manifests.ts | Registers tree-item-children collection manifests for documents. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/tree-item-children/constants.ts | Re-exports collection constants for documents tree-item-children. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/tree-item-children/collection/views/trashed-document-name-table-column.element.ts | Adds table column element for trashed document name using resolver and edit link. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/tree-item-children/collection/views/manifests.ts | Registers document recycle bin tree item table collection view. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/tree-item-children/collection/views/document-recycle-bin-tree-item-table-collection-view.element.ts | Implements table collection view for document recycle bin tree item children. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/tree-item-children/collection/types.ts | Adds filter model for document tree-item-children collections. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/tree-item-children/collection/repository/manifests.ts | Registers document tree-item-children collection repository. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/tree-item-children/collection/repository/index.ts | Re-exports repository constants (documents). |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/tree-item-children/collection/repository/document-recycle-bin-tree-item-children-collection.repository.ts | Adds repository to fetch document recycle bin children/root items for collection view. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/tree-item-children/collection/repository/constants.ts | Defines repository alias for document tree-item-children collection. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/tree-item-children/collection/manifests.ts | Registers document tree-item-children collection with repository/view manifests. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/tree-item-children/collection/index.ts | Barrel exports for document tree-item-children collection. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/tree-item-children/collection/constants.ts | Defines collection alias for document tree-item-children and re-exports repo constants. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/manifests.ts | Updates document tree manifests to include tree-item-children and remove inline root workspace. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/tree/constants.ts | Re-exports tree-item-children constants for documents. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/root/workspace/manifests.ts | Adds document recycle bin root workspace and collection workspace view. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/root/workspace/constants.ts | Adds alias constant for document recycle bin root workspace. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/root/manifests.ts | Aggregates document root workspace manifests. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/root/entity.ts | Introduces document recycle bin root entity type. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/root/constants.ts | Re-exports document root entity and workspace constants. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/manifests.ts | Wires document root manifests into main document recycle bin manifests. |
| src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/constants.ts | Re-exports root constants and removes inline root entity type. |
...ycle-bin/tree/tree-item-children/collection/views/trashed-media-name-table-column.element.ts
Show resolved
Hide resolved
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.
Both recycle bin roots now display a collection as expected, and entity actions on each are functioning correctly. Code looks good to me too. Approving, but will just raise a question about the spacing above the collection.
I assume it's leaving space for the various buttons and filters that usually sit above collections, but given there aren't any here it looks a little odd to my eyes (at least if you don't have other collection views in mind). Up to you though - if you think it's better as is to align with other collection views that's fine too.
|
It's a known bug with the extra space. We need to figure out how to determine if the slot is empty so we can remove it. It's the same problem for all collections, but we don't have many without any buttons in that area. |
|
@madsrasmussen does it make sense to have search field in collection here? (often content editors trash a lot of content/media, but never cleanup) 😅 |
|
@bjarnef Yeah, I think it will make perfect sense. I don't remember if the Management API supports searching in the Recycle Bin, though. In general, we would like to add local searches to all workspace views that list items. |
Fixes: #20494
This PR adds the missing workspace views to display the root items in the Recycle Bins. Both Recycle Bins currently implement a Table Collection View. We can further improve this with cards later, especially for the Media Recycle Bin.
Document:

Media:
