[DASHBOARDS] Allow dashboards to be restored (#17042)

This PR introduces a few changes:
- Add three actions: see deleted dashboards, destroy dashboard and
restore dashboard
- Remove the soft delete and restore on all the page layout entities
- Cascade the destruction of a dashboard to a page layout

Video QA:


https://github.com/user-attachments/assets/ab993b11-dd9c-4e88-880c-92691a521cc2
This commit is contained in:
Raphaël Bosi
2026-01-12 13:59:17 +01:00
committed by GitHub
parent 3ada8e5168
commit 655f1eef5f
60 changed files with 1178 additions and 2067 deletions
@@ -104,6 +104,9 @@ export const DASHBOARD_ACTIONS_CONFIG = inheritActionsFromDefaultConfig({
SingleRecordActionKeys.RESTORE,
MultipleRecordsActionKeys.DELETE,
MultipleRecordsActionKeys.DESTROY,
MultipleRecordsActionKeys.RESTORE,
NoSelectionRecordActionKeys.SEE_DELETED_RECORDS,
NoSelectionRecordActionKeys.HIDE_DELETED_RECORDS,
SingleRecordActionKeys.EXPORT_FROM_RECORD_SHOW,
SingleRecordActionKeys.NAVIGATE_TO_PREVIOUS_RECORD,
SingleRecordActionKeys.NAVIGATE_TO_NEXT_RECORD,
@@ -160,26 +163,38 @@ export const DASHBOARD_ACTIONS_CONFIG = inheritActionsFromDefaultConfig({
position: 14,
label: msg`Restore dashboard`,
},
[NoSelectionRecordActionKeys.GO_TO_WORKFLOWS]: {
[MultipleRecordsActionKeys.RESTORE]: {
position: 15,
label: msg`Restore dashboards`,
},
[NoSelectionRecordActionKeys.SEE_DELETED_RECORDS]: {
position: 22,
label: msg`See deleted dashboards`,
},
[NoSelectionRecordActionKeys.HIDE_DELETED_RECORDS]: {
position: 23,
label: msg`Hide deleted dashboards`,
},
[NoSelectionRecordActionKeys.GO_TO_WORKFLOWS]: {
position: 24,
},
[NoSelectionRecordActionKeys.GO_TO_PEOPLE]: {
position: 16,
position: 25,
},
[NoSelectionRecordActionKeys.GO_TO_COMPANIES]: {
position: 17,
position: 26,
},
[NoSelectionRecordActionKeys.GO_TO_OPPORTUNITIES]: {
position: 18,
position: 27,
},
[NoSelectionRecordActionKeys.GO_TO_SETTINGS]: {
position: 19,
position: 28,
},
[NoSelectionRecordActionKeys.GO_TO_TASKS]: {
position: 20,
position: 29,
},
[NoSelectionRecordActionKeys.GO_TO_NOTES]: {
position: 21,
position: 30,
},
},
});