Skip to content

Commit

Permalink
[Dashboard] Remove modal for inter app from dashboard (elastic#198619)
Browse files Browse the repository at this point in the history
## Summary

Closes elastic#184257
This PR removes the modal warning users that unsaved changes would be
lost when navigating away from dashboard to other apps within Kibana.
The modal is not necessary since unsaved changes are saved in session
storage. The benefit is that this removes the unnecessary click for
users.


This does not impact the modal for switching to view mode from edit mode
with unsaved changes as shown below.



https://github.com/user-attachments/assets/c5bdb0ec-b040-40b0-a511-fd16ad084b90


### Checklist

 - [x] Update tests
  • Loading branch information
rshen91 authored and mgadewoll committed Nov 7, 2024
1 parent 157e492 commit c822bcf
Show file tree
Hide file tree
Showing 6 changed files with 1 addition and 39 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -78,21 +78,6 @@ export const unsavedChangesBadgeStrings = {
}),
};

export const leaveConfirmStrings = {
getLeaveTitle: () =>
i18n.translate('dashboard.appLeaveConfirmModal.unsavedChangesTitle', {
defaultMessage: 'Unsaved changes',
}),
getLeaveSubtitle: () =>
i18n.translate('dashboard.appLeaveConfirmModal.unsavedChangesSubtitle', {
defaultMessage: 'Leave Dashboard with unsaved work?',
}),
getLeaveCancelButtonText: () =>
i18n.translate('dashboard.appLeaveConfirmModal.cancelButtonLabel', {
defaultMessage: 'Cancel',
}),
};

export const getCreateVisualizationButtonTitle = () =>
i18n.translate('dashboard.solutionToolbar.addPanelButtonLabel', {
defaultMessage: 'Create visualization',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@ import {
dashboardManagedBadge,
getDashboardBreadcrumb,
getDashboardTitle,
leaveConfirmStrings,
unsavedChangesBadgeStrings,
} from '../dashboard_app/_dashboard_app_strings';
import { useDashboardMountContext } from '../dashboard_app/hooks/dashboard_mount_context';
Expand All @@ -48,7 +47,6 @@ import { getDashboardRecentlyAccessedService } from '../services/dashboard_recen
import {
coreServices,
dataService,
embeddableService,
navigationService,
serverlessService,
} from '../services/kibana_services';
Expand Down Expand Up @@ -195,16 +193,6 @@ export function InternalDashboardTopNav({
*/
useEffect(() => {
onAppLeave((actions) => {
if (
viewMode === 'edit' &&
hasUnsavedChanges &&
!embeddableService.getStateTransfer().isTransferInProgress
) {
return actions.confirm(
leaveConfirmStrings.getLeaveSubtitle(),
leaveConfirmStrings.getLeaveTitle()
);
}
return actions.default();
});
return () => {
Expand Down
4 changes: 1 addition & 3 deletions test/functional/apps/dashboard/group1/edit_visualizations.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
import expect from '@kbn/expect';

export default function ({ getService, getPageObjects }) {
const { dashboard, header, visualize, common, visEditor } = getPageObjects([
const { dashboard, header, visualize, visEditor } = getPageObjects([
'dashboard',
'header',
'visualize',
Expand Down Expand Up @@ -114,7 +114,6 @@ export default function ({ getService, getPageObjects }) {

await header.waitUntilLoadingHasFinished();
await appsMenu.clickLink('Visualize Library');
await common.clickConfirmOnModal();
expect(await testSubjects.exists('visualizationLandingPage')).to.be(true);
});

Expand All @@ -132,7 +131,6 @@ export default function ({ getService, getPageObjects }) {

await header.waitUntilLoadingHasFinished();
await appsMenu.clickLink('Visualize Library');
await common.clickConfirmOnModal();
expect(await testSubjects.exists('visualizationLandingPage')).to.be(true);
});

Expand Down
3 changes: 0 additions & 3 deletions x-pack/plugins/translations/translations/fr-FR.json
Original file line number Diff line number Diff line change
Expand Up @@ -1209,9 +1209,6 @@
"dashboard.actions.toggleExpandPanelMenuItem.notExpandedDisplayName": "Maximiser",
"dashboard.addPanel.newEmbeddableAddedSuccessMessageTitle": "{savedObjectName} a été ajouté.",
"dashboard.addPanel.newEmbeddableWithNoTitleAddedSuccessMessageTitle": "Un panneau a été ajouté",
"dashboard.appLeaveConfirmModal.cancelButtonLabel": "Annuler",
"dashboard.appLeaveConfirmModal.unsavedChangesSubtitle": "Quitter Dashboard sans enregistrer ?",
"dashboard.appLeaveConfirmModal.unsavedChangesTitle": "Modifications non enregistrées",
"dashboard.badge.readOnly.text": "Lecture seule",
"dashboard.badge.readOnly.tooltip": "Impossible d'enregistrer les tableaux de bord",
"dashboard.createConfirmModal.cancelButtonLabel": "Annuler",
Expand Down
3 changes: 0 additions & 3 deletions x-pack/plugins/translations/translations/ja-JP.json
Original file line number Diff line number Diff line change
Expand Up @@ -1209,9 +1209,6 @@
"dashboard.actions.toggleExpandPanelMenuItem.notExpandedDisplayName": "最大化",
"dashboard.addPanel.newEmbeddableAddedSuccessMessageTitle": "{savedObjectName} が追加されました",
"dashboard.addPanel.newEmbeddableWithNoTitleAddedSuccessMessageTitle": "パネルが追加されました",
"dashboard.appLeaveConfirmModal.cancelButtonLabel": "キャンセル",
"dashboard.appLeaveConfirmModal.unsavedChangesSubtitle": "作業を保存せずにダッシュボードから移動しますか?",
"dashboard.appLeaveConfirmModal.unsavedChangesTitle": "保存されていない変更",
"dashboard.badge.readOnly.text": "読み取り専用",
"dashboard.badge.readOnly.tooltip": "ダッシュボードを保存できません",
"dashboard.createConfirmModal.cancelButtonLabel": "キャンセル",
Expand Down
3 changes: 0 additions & 3 deletions x-pack/plugins/translations/translations/zh-CN.json
Original file line number Diff line number Diff line change
Expand Up @@ -1209,9 +1209,6 @@
"dashboard.actions.toggleExpandPanelMenuItem.notExpandedDisplayName": "最大化",
"dashboard.addPanel.newEmbeddableAddedSuccessMessageTitle": "{savedObjectName} 已添加",
"dashboard.addPanel.newEmbeddableWithNoTitleAddedSuccessMessageTitle": "已添加一个面板",
"dashboard.appLeaveConfirmModal.cancelButtonLabel": "取消",
"dashboard.appLeaveConfirmModal.unsavedChangesSubtitle": "离开有未保存工作的仪表板?",
"dashboard.appLeaveConfirmModal.unsavedChangesTitle": "未保存的更改",
"dashboard.badge.readOnly.text": "只读",
"dashboard.badge.readOnly.tooltip": "无法保存仪表板",
"dashboard.createConfirmModal.cancelButtonLabel": "取消",
Expand Down

0 comments on commit c822bcf

Please sign in to comment.