diff --git a/packages/core/content-releases/admin/src/pages/ReleaseDetailsPage.tsx b/packages/core/content-releases/admin/src/pages/ReleaseDetailsPage.tsx
index ea156cf6aa6..ea1b77c0776 100644
--- a/packages/core/content-releases/admin/src/pages/ReleaseDetailsPage.tsx
+++ b/packages/core/content-releases/admin/src/pages/ReleaseDetailsPage.tsx
@@ -285,6 +285,7 @@ export const ReleaseDetailsLayout = ({
variant="default"
onClick={handlePublishRelease}
loading={isPublishing}
+ disabled={release.actions.meta.count === 0}
>
{formatMessage({
id: 'content-releases.header.actions.publish',
@@ -302,8 +303,6 @@ export const ReleaseDetailsLayout = ({
);
};
-const Bold = (children: React.ReactNode) => {children};
-
/* -------------------------------------------------------------------------------------------------
* ReleaseDetailsBody
* -----------------------------------------------------------------------------------------------*/
@@ -460,7 +459,12 @@ const ReleaseDetailsBody = () => {
defaultMessage:
'This entry was {isPublish, select, true {published} other {unpublished}}.',
},
- { isPublish: type === 'publish', b: Bold }
+ {
+ isPublish: type === 'publish',
+ b: (children: React.ReactNode) => (
+ {children}
+ ),
+ }
)}
) : (
diff --git a/packages/core/content-releases/admin/src/pages/tests/ReleaseDetailsPage.test.tsx b/packages/core/content-releases/admin/src/pages/tests/ReleaseDetailsPage.test.tsx
index a2dbe6f6b5a..73f0050b1bf 100644
--- a/packages/core/content-releases/admin/src/pages/tests/ReleaseDetailsPage.test.tsx
+++ b/packages/core/content-releases/admin/src/pages/tests/ReleaseDetailsPage.test.tsx
@@ -43,8 +43,9 @@ describe('Releases details page', () => {
const refreshButton = screen.getByRole('button', { name: 'Refresh' });
expect(refreshButton).toBeInTheDocument();
- const releaseButton = screen.getByRole('button', { name: 'Release' });
- expect(releaseButton).toBeInTheDocument();
+ const publishButton = screen.getByRole('button', { name: 'Publish' });
+ expect(publishButton).toBeInTheDocument();
+ expect(publishButton).toBeDisabled();
const noContent = screen.getByText(/This release is empty./i);
expect(noContent).toBeInTheDocument();
@@ -140,6 +141,7 @@ describe('Releases details page', () => {
expect(publishButton).not.toBeInTheDocument();
expect(screen.queryByRole('radio', { name: 'publish' })).not.toBeInTheDocument();
- expect(screen.getByText('This entry was published.')).toBeInTheDocument();
+ const container = screen.getByText(/This entry was/);
+ expect(container.querySelector('span')).toHaveTextContent('published');
});
});