diff --git a/packages/edit-site/src/components/editor/index.js b/packages/edit-site/src/components/editor/index.js
index cd6b7198752392..50fb05d8d841f8 100644
--- a/packages/edit-site/src/components/editor/index.js
+++ b/packages/edit-site/src/components/editor/index.js
@@ -30,7 +30,6 @@ import { store as editSiteStore } from '../../store';
import { GlobalStylesRenderer } from '../global-styles-renderer';
import CanvasLoader from '../canvas-loader';
import { unlock } from '../../lock-unlock';
-import TemplatePartConverter from '../template-part-converter';
import { useSpecificEditorSettings } from '../block-editor/use-site-editor-settings';
import PluginTemplateSettingPanel from '../plugin-template-setting-panel';
import GlobalStylesSidebar from '../global-styles-sidebar';
@@ -55,7 +54,6 @@ export default function EditSiteEditor( { isLoading } ) {
editedPostId,
contextPostType,
contextPostId,
- editorMode,
canvasMode,
isEditingPage,
supportsGlobalStyles,
@@ -72,7 +70,6 @@ export default function EditSiteEditor( { isLoading } ) {
} = unlock( select( editSiteStore ) );
const { get } = select( preferencesStore );
const { getCurrentTheme } = select( coreDataStore );
- const { getEditorMode } = select( editorStore );
const _context = getEditedPostContext();
// The currently selected entity to display.
@@ -82,7 +79,6 @@ export default function EditSiteEditor( { isLoading } ) {
editedPostId: getEditedPostId(),
contextPostType: _context?.postId ? _context.postType : undefined,
contextPostId: _context?.postId ? _context.postId : undefined,
- editorMode: getEditorMode(),
canvasMode: getCanvasMode(),
isEditingPage: isPage(),
supportsGlobalStyles: getCurrentTheme()?.is_block_theme,
@@ -99,9 +95,7 @@ export default function EditSiteEditor( { isLoading } ) {
const _isPreviewingTheme = isPreviewingTheme();
const hasDefaultEditorCanvasView = ! useHasEditorCanvasContainer();
const iframeProps = useEditorIframeProps();
- const isViewMode = canvasMode === 'view';
const isEditMode = canvasMode === 'edit';
- const showVisualEditor = isViewMode || editorMode === 'visual';
const postWithTemplate = !! contextPostId;
const loadingProgressId = useInstanceId(
CanvasLoader,
@@ -185,7 +179,6 @@ export default function EditSiteEditor( { isLoading } ) {
{ isEditMode && }
- { showVisualEditor && }
{ ! isReady ? : null }
{ isEditMode && }
{ isReady && (
diff --git a/packages/editor/src/components/provider/index.js b/packages/editor/src/components/provider/index.js
index 3e137c7b60ceeb..aaf25621d3324b 100644
--- a/packages/editor/src/components/provider/index.js
+++ b/packages/editor/src/components/provider/index.js
@@ -33,6 +33,7 @@ import StartTemplateOptions from '../start-template-options';
import EditorKeyboardShortcuts from '../global-keyboard-shortcuts';
import PatternRenameModal from '../pattern-rename-modal';
import PatternDuplicateModal from '../pattern-duplicate-modal';
+import TemplatePartMenuItems from '../template-part-menu-items';
const { ExperimentalBlockEditorProvider } = unlock( blockEditorPrivateApis );
const { PatternsMenuItems } = unlock( editPatternsPrivateApis );
@@ -299,6 +300,7 @@ export const ExperimentalEditorProvider = withRegistryProvider(
{ ! settings.__unstableIsPreviewMode && (
<>
+
{ mode === 'template-locked' && (
diff --git a/packages/edit-site/src/components/template-part-converter/convert-to-regular.js b/packages/editor/src/components/template-part-menu-items/convert-to-regular.js
similarity index 100%
rename from packages/edit-site/src/components/template-part-converter/convert-to-regular.js
rename to packages/editor/src/components/template-part-menu-items/convert-to-regular.js
diff --git a/packages/edit-site/src/components/template-part-converter/convert-to-template-part.js b/packages/editor/src/components/template-part-menu-items/convert-to-template-part.js
similarity index 82%
rename from packages/edit-site/src/components/template-part-converter/convert-to-template-part.js
rename to packages/editor/src/components/template-part-menu-items/convert-to-template-part.js
index 5dc68e07c85f3f..4ae15d1dd178c0 100644
--- a/packages/edit-site/src/components/template-part-converter/convert-to-template-part.js
+++ b/packages/editor/src/components/template-part-menu-items/convert-to-template-part.js
@@ -9,15 +9,11 @@ import { __ } from '@wordpress/i18n';
import { useState } from '@wordpress/element';
import { store as noticesStore } from '@wordpress/notices';
import { symbolFilled } from '@wordpress/icons';
-import { privateApis as editorPrivateApis } from '@wordpress/editor';
/**
* Internal dependencies
*/
-import { unlock } from '../../lock-unlock';
-import { store as editSiteStore } from '../../store';
-
-const { CreateTemplatePartModal } = unlock( editorPrivateApis );
+import CreateTemplatePartModal from '../create-template-part-modal';
export default function ConvertToTemplatePart( { clientIds, blocks } ) {
const [ isModalOpen, setIsModalOpen ] = useState( false );
@@ -25,10 +21,11 @@ export default function ConvertToTemplatePart( { clientIds, blocks } ) {
const { createSuccessNotice } = useDispatch( noticesStore );
const { canCreate } = useSelect( ( select ) => {
- const { supportsTemplatePartsMode } =
- select( editSiteStore ).getSettings();
return {
- canCreate: ! supportsTemplatePartsMode,
+ canCreate:
+ select( blockEditorStore ).canInsertBlockType(
+ 'core/template-part'
+ ),
};
}, [] );
diff --git a/packages/edit-site/src/components/template-part-converter/index.js b/packages/editor/src/components/template-part-menu-items/index.js
similarity index 96%
rename from packages/edit-site/src/components/template-part-converter/index.js
rename to packages/editor/src/components/template-part-menu-items/index.js
index de47eb6ae26f4d..0e126644d49938 100644
--- a/packages/edit-site/src/components/template-part-converter/index.js
+++ b/packages/editor/src/components/template-part-menu-items/index.js
@@ -13,7 +13,7 @@ import {
import ConvertToRegularBlocks from './convert-to-regular';
import ConvertToTemplatePart from './convert-to-template-part';
-export default function TemplatePartConverter() {
+export default function TemplatePartMenuItems() {
return (
{ ( { selectedClientIds, onClose } ) => (
diff --git a/packages/editor/src/components/template-part-menu-items/index.native.js b/packages/editor/src/components/template-part-menu-items/index.native.js
new file mode 100644
index 00000000000000..af843714462387
--- /dev/null
+++ b/packages/editor/src/components/template-part-menu-items/index.native.js
@@ -0,0 +1,3 @@
+export default function TemplatePartMenuItems() {
+ return null;
+}