From 69fc27ab6b00aec4b5fc7585304aa24702dbc6c8 Mon Sep 17 00:00:00 2001 From: Daniel Lautzenheiser Date: Fri, 26 Apr 2024 11:15:28 -0400 Subject: [PATCH] fix: discard on mobile (#1107) --- .../components/entry-editor/EditorToolbar.css | 5 ++++ .../components/entry-editor/EditorToolbar.tsx | 29 ++++++++++++++++--- 2 files changed, 30 insertions(+), 4 deletions(-) diff --git a/packages/core/src/components/entry-editor/EditorToolbar.css b/packages/core/src/components/entry-editor/EditorToolbar.css index b01dfdc0d..9a59a75a8 100644 --- a/packages/core/src/components/entry-editor/EditorToolbar.css +++ b/packages/core/src/components/entry-editor/EditorToolbar.css @@ -22,6 +22,11 @@ lg:!hidden; } +.CMS_EditorToolbar_discard-button { + @apply flex + lg:!hidden; +} + .CMS_EditorToolbar_delete-button { @apply flex lg:!hidden; diff --git a/packages/core/src/components/entry-editor/EditorToolbar.tsx b/packages/core/src/components/entry-editor/EditorToolbar.tsx index 93c429b83..296de4b8c 100644 --- a/packages/core/src/components/entry-editor/EditorToolbar.tsx +++ b/packages/core/src/components/entry-editor/EditorToolbar.tsx @@ -29,8 +29,8 @@ import MenuGroup from '../common/menu/MenuGroup'; import MenuItemButton from '../common/menu/MenuItemButton'; import EditorWorkflowToolbarButtons from './EditorWorkflowToolbarButtons'; -import type { WorkflowStatus } from '@staticcms/core/constants/publishModes'; import type { CollectionWithDefaults, EditorPersistOptions } from '@staticcms/core'; +import type { WorkflowStatus } from '@staticcms/core/constants/publishModes'; import type { FC, MouseEventHandler } from 'react'; import './EditorToolbar.css'; @@ -41,6 +41,7 @@ export const classes = generateClassNames('EditorToolbar', [ 'more-menu-button', 'more-menu-label-icon', 'preview-toggle', + 'discard-button', 'delete-button', 'publish-button', 'publish-button-icon', @@ -419,14 +420,34 @@ const EditorToolbar: FC = ({ disabled={disabled} /> ) : null} - {canDelete ? ( + {hasChanged ? ( + + ) : canDelete && + (!useOpenAuthoring || hasUnpublishedChanges) && + (!useWorkflow || workflowDeleteLabel) ? (