Commit 988e924efca for woocommerce

commit 988e924efcada1233c28d86436c685b7ba2a6c23
Author: Luigi Teschio <gigitux@gmail.com>
Date:   Fri May 29 11:25:29 2026 +0200

    Remove product pre-publish modal feature flag (#65383)

diff --git a/packages/js/product-editor/changelog/remove-product-pre-publish-modal-flag b/packages/js/product-editor/changelog/remove-product-pre-publish-modal-flag
new file mode 100644
index 00000000000..7ca7b50eac6
--- /dev/null
+++ b/packages/js/product-editor/changelog/remove-product-pre-publish-modal-flag
@@ -0,0 +1,4 @@
+Significance: patch
+Type: tweak
+
+Remove the disabled product pre-publish modal feature flag.
diff --git a/packages/js/product-editor/src/components/header/header.tsx b/packages/js/product-editor/src/components/header/header.tsx
index fb830088b5a..a64cbf0c677 100644
--- a/packages/js/product-editor/src/components/header/header.tsx
+++ b/packages/js/product-editor/src/components/header/header.tsx
@@ -33,7 +33,6 @@ import { SaveDraftButton } from './save-draft-button';
 import { LoadingState } from './loading-state';
 import { Tabs } from '../tabs';
 import { HEADER_PINNED_ITEMS_SCOPE, TRACKS_SOURCE } from '../../constants';
-import { useShowPrepublishChecks } from '../../hooks/use-show-prepublish-checks';
 import { HeaderProps, Image } from './types';

 const PublishButton = lazy( () =>
@@ -77,8 +76,6 @@ export function Header( {
 	const catalogVisibility = product?.catalog_visibility;
 	const productStatus = product?.status;

-	const { showPrepublishChecks } = useShowPrepublishChecks();
-
 	const sidebarWidth = useAdminSidebarWidth();

 	useEffect( () => {
@@ -254,7 +251,6 @@ export function Header( {
 					<Suspense fallback={ null }>
 						<PublishButton
 							productType={ productType }
-							isPrePublishPanelVisible={ showPrepublishChecks }
 							isMenuButton
 							visibleTab={ selectedTab }
 						/>
diff --git a/packages/js/product-editor/src/components/header/publish-button/publish-button.tsx b/packages/js/product-editor/src/components/header/publish-button/publish-button.tsx
index 3f1b4c996b1..2d018cf197d 100644
--- a/packages/js/product-editor/src/components/header/publish-button/publish-button.tsx
+++ b/packages/js/product-editor/src/components/header/publish-button/publish-button.tsx
@@ -1,23 +1,19 @@
 /**
  * External dependencies
  */
-import type { MouseEvent } from 'react';
 import { Button } from '@wordpress/components';
 import { useEntityProp } from '@wordpress/core-data';
 import { useDispatch } from '@wordpress/data';
 import { createElement } from '@wordpress/element';
 import { type Product } from '@woocommerce/data';
 import { getNewPath, navigateTo } from '@woocommerce/navigation';
-import { recordEvent } from '@woocommerce/tracks';

 /**
  * Internal dependencies
  */
-import { wooProductEditorUiStore } from '../../../store/product-editor-ui';
 import { useErrorHandler } from '../../../hooks/use-error-handler';
 import { recordProductEvent } from '../../../utils/record-product-event';
 import { useFeedbackBar } from '../../../hooks/use-feedback-bar';
-import { TRACKS_SOURCE } from '../../../constants';
 import { usePublish } from '../hooks/use-publish';
 import { PublishButtonMenu } from './publish-button-menu';
 import { showSuccessNotice } from './utils';
@@ -26,16 +22,14 @@ import type { PublishButtonProps } from './types';
 export function PublishButton( {
 	productType = 'product',
 	isMenuButton,
-	isPrePublishPanelVisible = true,
 	visibleTab = 'general',
 	...props
 }: PublishButtonProps ) {
 	const { createErrorNotice } = useDispatch( 'core/notices' );
 	const { maybeShowFeedbackBar } = useFeedbackBar();
-	const { openPrepublishPanel } = useDispatch( wooProductEditorUiStore );
 	const { getProductErrorMessageAndProps } = useErrorHandler();

-	const [ editedStatus, , prevStatus ] = useEntityProp< Product[ 'status' ] >(
+	const [ , , prevStatus ] = useEntityProp< Product[ 'status' ] >(
 		'postType',
 		productType,
 		'status'
@@ -82,39 +76,6 @@ export function PublishButton( {
 			);
 		}

-		if (
-			editedStatus !== 'publish' &&
-			editedStatus !== 'future' &&
-			window.wcAdminFeatures[ 'product-pre-publish-modal' ] &&
-			isPrePublishPanelVisible
-		) {
-			function handlePrePublishButtonClick(
-				event: MouseEvent< HTMLButtonElement >
-			) {
-				if ( publishButtonProps[ 'aria-disabled' ] ) {
-					event.preventDefault();
-					return;
-				}
-
-				recordEvent( 'product_prepublish_panel', {
-					source: TRACKS_SOURCE,
-					action: 'view',
-				} );
-				openPrepublishPanel();
-			}
-
-			return (
-				<PublishButtonMenu
-					{ ...publishButtonProps }
-					postType={ productType }
-					controls={ undefined }
-					onClick={ handlePrePublishButtonClick }
-					renderMenu={ renderPublishButtonMenu }
-					visibleTab={ visibleTab }
-				/>
-			);
-		}
-
 		return (
 			<PublishButtonMenu
 				{ ...publishButtonProps }
diff --git a/packages/js/product-editor/src/components/header/publish-button/types.ts b/packages/js/product-editor/src/components/header/publish-button/types.ts
index 946b52672a0..51114046714 100644
--- a/packages/js/product-editor/src/components/header/publish-button/types.ts
+++ b/packages/js/product-editor/src/components/header/publish-button/types.ts
@@ -1,7 +1,6 @@
 export type PublishButtonProps = {
 	productType?: string;
 	isMenuButton?: boolean;
-	isPrePublishPanelVisible?: boolean;
 	visibleTab?: string | null;
 	disabled?: boolean;
 	onClick?: ( event: React.MouseEvent< HTMLElement > ) => void;
diff --git a/plugins/woocommerce/changelog/remove-product-pre-publish-modal-flag b/plugins/woocommerce/changelog/remove-product-pre-publish-modal-flag
new file mode 100644
index 00000000000..7ca7b50eac6
--- /dev/null
+++ b/plugins/woocommerce/changelog/remove-product-pre-publish-modal-flag
@@ -0,0 +1,4 @@
+Significance: patch
+Type: tweak
+
+Remove the disabled product pre-publish modal feature flag.
diff --git a/plugins/woocommerce/client/admin/client/typings/global.d.ts b/plugins/woocommerce/client/admin/client/typings/global.d.ts
index 6baeb64f929..0a9f2fedfb4 100644
--- a/plugins/woocommerce/client/admin/client/typings/global.d.ts
+++ b/plugins/woocommerce/client/admin/client/typings/global.d.ts
@@ -65,7 +65,6 @@ declare global {
 			'payment-gateway-suggestions': boolean;
 			'pattern-toolkit-full-composability': boolean;
 			printful: boolean;
-			'product-pre-publish-modal': boolean;
 			'product-custom-fields': boolean;
 			'remote-inbox-notifications': boolean;
 			'remote-free-extensions': boolean;
diff --git a/plugins/woocommerce/client/admin/config/core.json b/plugins/woocommerce/client/admin/config/core.json
index 395517b6dc5..68b50ea30c4 100644
--- a/plugins/woocommerce/client/admin/config/core.json
+++ b/plugins/woocommerce/client/admin/config/core.json
@@ -24,7 +24,6 @@
 		"onboarding": true,
 		"onboarding-tasks": true,
 		"pattern-toolkit-full-composability": true,
-		"product-pre-publish-modal": false,
 		"product-custom-fields": true,
 		"products-catalog-api": false,
 		"remote-inbox-notifications": true,
diff --git a/plugins/woocommerce/client/admin/config/development.json b/plugins/woocommerce/client/admin/config/development.json
index 7f42945fc4b..9c96e1670a0 100644
--- a/plugins/woocommerce/client/admin/config/development.json
+++ b/plugins/woocommerce/client/admin/config/development.json
@@ -25,7 +25,6 @@
 		"onboarding-tasks": true,
 		"pattern-toolkit-full-composability": true,
 		"payment-gateway-suggestions": true,
-		"product-pre-publish-modal": false,
 		"product-custom-fields": true,
 		"products-catalog-api": true,
 		"printful": true,