@wordpress/core-commands 1.44.0 → 1.45.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/site-editor-navigation-commands.cjs +10 -5
- package/build/site-editor-navigation-commands.cjs.map +2 -2
- package/build-module/site-editor-navigation-commands.mjs +10 -5
- package/build-module/site-editor-navigation-commands.mjs.map +2 -2
- package/package.json +15 -15
- package/src/site-editor-navigation-commands.js +9 -5
package/CHANGELOG.md
CHANGED
|
@@ -388,16 +388,21 @@ var getSiteEditorBasicNavigationCommands = () => function useSiteEditorBasicNavi
|
|
|
388
388
|
var getGlobalStylesOpenCssCommands = () => function useGlobalStylesOpenCssCommands() {
|
|
389
389
|
const history = useHistory();
|
|
390
390
|
const isSiteEditor = isInSiteEditor();
|
|
391
|
-
const { canEditCSS } = (0, import_data.useSelect)((select) => {
|
|
392
|
-
const {
|
|
391
|
+
const { canEditCSS, isBlockBasedTheme } = (0, import_data.useSelect)((select) => {
|
|
392
|
+
const {
|
|
393
|
+
getEntityRecord,
|
|
394
|
+
__experimentalGetCurrentGlobalStylesId,
|
|
395
|
+
getCurrentTheme
|
|
396
|
+
} = select(import_core_data.store);
|
|
393
397
|
const globalStylesId = __experimentalGetCurrentGlobalStylesId();
|
|
394
398
|
const globalStyles = globalStylesId ? getEntityRecord("root", "globalStyles", globalStylesId) : void 0;
|
|
395
399
|
return {
|
|
396
|
-
canEditCSS: !!globalStyles?._links?.["wp:action-edit-css"]
|
|
400
|
+
canEditCSS: !!globalStyles?._links?.["wp:action-edit-css"],
|
|
401
|
+
isBlockBasedTheme: getCurrentTheme()?.is_block_theme
|
|
397
402
|
};
|
|
398
403
|
}, []);
|
|
399
404
|
const commands = (0, import_element.useMemo)(() => {
|
|
400
|
-
if (!canEditCSS) {
|
|
405
|
+
if (!canEditCSS || !isBlockBasedTheme) {
|
|
401
406
|
return [];
|
|
402
407
|
}
|
|
403
408
|
return [
|
|
@@ -422,7 +427,7 @@ var getGlobalStylesOpenCssCommands = () => function useGlobalStylesOpenCssComman
|
|
|
422
427
|
}
|
|
423
428
|
}
|
|
424
429
|
];
|
|
425
|
-
}, [history, canEditCSS, isSiteEditor]);
|
|
430
|
+
}, [history, canEditCSS, isSiteEditor, isBlockBasedTheme]);
|
|
426
431
|
return {
|
|
427
432
|
isLoading: false,
|
|
428
433
|
commands
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/site-editor-navigation-commands.js"],
|
|
4
|
-
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useCommandLoader } from '@wordpress/commands';\nimport { __ } from '@wordpress/i18n';\nimport { useMemo, useEffect, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tpost,\n\tpage,\n\tlayout,\n\tsymbol,\n\tsymbolFilled,\n\tstyles,\n\tnavigation,\n\tbrush,\n} from '@wordpress/icons';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { addQueryArgs, getPath } from '@wordpress/url';\nimport { useDebounce } from '@wordpress/compose';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from './lock-unlock';\nimport { orderEntityRecordsBySearch } from './utils/order-entity-records-by-search';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nconst icons = {\n\tpost,\n\tpage,\n\twp_template: layout,\n\twp_template_part: symbolFilled,\n};\n\nfunction useDebouncedValue( value ) {\n\tconst [ debouncedValue, setDebouncedValue ] = useState( '' );\n\tconst debounced = useDebounce( setDebouncedValue, 250 );\n\n\tuseEffect( () => {\n\t\tdebounced( value );\n\t\treturn () => debounced.cancel();\n\t}, [ debounced, value ] );\n\n\treturn debouncedValue;\n}\n\n// Route mapping for experimental site editor\nconst ROUTE_MAPPING = {\n\t'/template': '/templates',\n\t'/pattern': '/patterns',\n};\n\n// Helper to determine the site editor page URL\nfunction getSiteEditorPage() {\n\treturn window.__experimentalExtensibleSiteEditor\n\t\t? 'admin.php?page=site-editor-v2'\n\t\t: 'site-editor.php';\n}\n\n// Helper to map routes for experimental site editor\nfunction mapRoute( path ) {\n\tif ( ! window.__experimentalExtensibleSiteEditor ) {\n\t\treturn path;\n\t}\n\n\t// Check if path needs mapping\n\tfor ( const [ oldPath, newPath ] of Object.entries( ROUTE_MAPPING ) ) {\n\t\tif ( path === oldPath || path.startsWith( oldPath + '?' ) ) {\n\t\t\t// Handle template parts special case\n\t\t\tif ( path.includes( 'postType=wp_template_part' ) ) {\n\t\t\t\treturn '/template-parts';\n\t\t\t}\n\t\t\t// Replace the base path\n\t\t\treturn path.replace( oldPath, newPath );\n\t\t}\n\t}\n\n\treturn path;\n}\n\n// Helper to check if currently in site editor\nfunction isInSiteEditor() {\n\tconst path = getPath( window.location.href );\n\treturn (\n\t\tpath?.includes( 'site-editor.php' ) ||\n\t\tpath?.includes( 'page=site-editor-v2' )\n\t);\n}\n\nconst getNavigationCommandLoaderPerPostType = ( postType ) =>\n\tfunction useNavigationCommandLoader( { search } ) {\n\t\tconst history = useHistory();\n\t\tconst { isBlockBasedTheme, canCreateTemplate } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\treturn {\n\t\t\t\t\tisBlockBasedTheme:\n\t\t\t\t\t\tselect( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t\t\t\tcanCreateTemplate: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: 'wp_template',\n\t\t\t\t\t} ),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[]\n\t\t);\n\t\tconst delayedSearch = useDebouncedValue( search );\n\t\tconst { records, isLoading } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tif ( ! delayedSearch ) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tisLoading: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tconst query = {\n\t\t\t\t\tsearch: delayedSearch,\n\t\t\t\t\tper_page: 10,\n\t\t\t\t\torderby: 'relevance',\n\t\t\t\t\tstatus: [\n\t\t\t\t\t\t'publish',\n\t\t\t\t\t\t'future',\n\t\t\t\t\t\t'draft',\n\t\t\t\t\t\t'pending',\n\t\t\t\t\t\t'private',\n\t\t\t\t\t],\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\trecords: select( coreStore ).getEntityRecords(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tpostType,\n\t\t\t\t\t\tquery\n\t\t\t\t\t),\n\t\t\t\t\tisLoading: ! select( coreStore ).hasFinishedResolution(\n\t\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\t\t[ 'postType', postType, query ]\n\t\t\t\t\t),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ delayedSearch ]\n\t\t);\n\n\t\tconst commands = useMemo( () => {\n\t\t\treturn ( records ?? [] ).map( ( record ) => {\n\t\t\t\tconst command = {\n\t\t\t\t\tname: postType + '-' + record.id,\n\t\t\t\t\tsearchLabel: record.title?.rendered + ' ' + record.id,\n\t\t\t\t\tlabel: record.title?.rendered\n\t\t\t\t\t\t? decodeEntities( record.title?.rendered )\n\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\ticon: icons[ postType ],\n\t\t\t\t\tcategory: 'edit',\n\t\t\t\t};\n\n\t\t\t\tif (\n\t\t\t\t\t! canCreateTemplate ||\n\t\t\t\t\tpostType === 'post' ||\n\t\t\t\t\t( postType === 'page' && ! isBlockBasedTheme )\n\t\t\t\t) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...command,\n\t\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\t\tconst args = {\n\t\t\t\t\t\t\t\tpost: record.id,\n\t\t\t\t\t\t\t\taction: 'edit',\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tconst targetUrl = addQueryArgs( 'post.php', args );\n\t\t\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tconst isSiteEditor = isInSiteEditor();\n\n\t\t\t\treturn {\n\t\t\t\t\t...command,\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t\t`/${ postType }/${ record.id }?canvas=edit`\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: `/${ postType }/${ record.id }`,\n\t\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t} );\n\t\t}, [ canCreateTemplate, records, isBlockBasedTheme, history ] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading,\n\t\t};\n\t};\n\nconst getNavigationCommandLoaderPerTemplate = ( templateType ) =>\n\tfunction useNavigationCommandLoader( { search } ) {\n\t\tconst history = useHistory();\n\t\tconst { isBlockBasedTheme, canCreateTemplate } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\treturn {\n\t\t\t\t\tisBlockBasedTheme:\n\t\t\t\t\t\tselect( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t\t\t\tcanCreateTemplate: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: templateType,\n\t\t\t\t\t} ),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[]\n\t\t);\n\t\tconst { records, isLoading } = useSelect( ( select ) => {\n\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\tconst query = { per_page: -1 };\n\t\t\treturn {\n\t\t\t\trecords: getEntityRecords( 'postType', templateType, query ),\n\t\t\t\tisLoading: ! select( coreStore ).hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\t[ 'postType', templateType, query ]\n\t\t\t\t),\n\t\t\t};\n\t\t}, [] );\n\n\t\t/*\n\t\t * wp_template and wp_template_part endpoints do not support per_page or orderby parameters.\n\t\t * We need to sort the results based on the search query to avoid removing relevant\n\t\t * records below using .slice().\n\t\t */\n\t\tconst orderedRecords = useMemo( () => {\n\t\t\treturn orderEntityRecordsBySearch( records, search ).slice( 0, 10 );\n\t\t}, [ records, search ] );\n\n\t\tconst commands = useMemo( () => {\n\t\t\tif (\n\t\t\t\t! canCreateTemplate ||\n\t\t\t\t( ! isBlockBasedTheme && ! templateType === 'wp_template_part' )\n\t\t\t) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tconst isSiteEditor = getPath( window.location.href )?.includes(\n\t\t\t\t'site-editor.php'\n\t\t\t);\n\t\t\tconst result = [];\n\t\t\tresult.push(\n\t\t\t\t...orderedRecords.map( ( record ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tname: templateType + '-' + record.id,\n\t\t\t\t\t\tsearchLabel: record.title?.rendered + ' ' + record.id,\n\t\t\t\t\t\tlabel: record.title?.rendered\n\t\t\t\t\t\t\t? record.title?.rendered\n\t\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\t\ticon: icons[ templateType ],\n\t\t\t\t\t\tcategory: 'edit',\n\t\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t\t\t`/${ templateType }/${ record.id }?canvas=edit`\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tp: `/${ templateType }/${ record.id }`,\n\t\t\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t} )\n\t\t\t);\n\n\t\t\tif (\n\t\t\t\torderedRecords?.length > 0 &&\n\t\t\t\ttemplateType === 'wp_template_part'\n\t\t\t) {\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-template-parts',\n\t\t\t\t\tlabel: __( 'Go to: Template parts' ),\n\t\t\t\t\ticon: symbolFilled,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t\tmapRoute(\n\t\t\t\t\t\t\t\t\t'/pattern?postType=wp_template_part&categoryId=all-parts'\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: mapRoute( '/pattern' ),\n\t\t\t\t\t\t\t\t\tpostType: 'wp_template_part',\n\t\t\t\t\t\t\t\t\tcategoryId: 'all-parts',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn result;\n\t\t}, [ canCreateTemplate, isBlockBasedTheme, orderedRecords, history ] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading,\n\t\t};\n\t};\n\nconst getSiteEditorBasicNavigationCommands = () =>\n\tfunction useSiteEditorBasicNavigationCommands() {\n\t\tconst history = useHistory();\n\t\tconst isSiteEditor = isInSiteEditor();\n\t\tconst { isBlockBasedTheme, canCreateTemplate, canCreatePatterns } =\n\t\t\tuseSelect( ( select ) => {\n\t\t\t\treturn {\n\t\t\t\t\tisBlockBasedTheme:\n\t\t\t\t\t\tselect( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t\t\t\tcanCreateTemplate: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: 'wp_template',\n\t\t\t\t\t} ),\n\t\t\t\t\tcanCreatePatterns: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: 'wp_block',\n\t\t\t\t\t} ),\n\t\t\t\t};\n\t\t\t}, [] );\n\t\tconst commands = useMemo( () => {\n\t\t\tconst result = [];\n\n\t\t\tif ( canCreateTemplate && isBlockBasedTheme ) {\n\t\t\t\t// Go to Styles command\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-styles',\n\t\t\t\t\tlabel: __( 'Go to: Styles' ),\n\t\t\t\t\ticon: styles,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( '/styles' );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: '/styles',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-navigation',\n\t\t\t\t\tlabel: __( 'Go to: Navigation' ),\n\t\t\t\t\ticon: navigation,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( '/navigation' );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: '/navigation',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-templates',\n\t\t\t\t\tlabel: __( 'Go to: Templates' ),\n\t\t\t\t\ticon: layout,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( mapRoute( '/template' ) );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: mapRoute( '/template' ),\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( canCreatePatterns ) {\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-patterns',\n\t\t\t\t\tlabel: __( 'Go to: Patterns' ),\n\t\t\t\t\ticon: symbol,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( canCreateTemplate ) {\n\t\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\t\thistory.navigate( mapRoute( '/pattern' ) );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tp: mapRoute( '/pattern' ),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// If a user cannot access the site editor.\n\t\t\t\t\t\t\tdocument.location.href =\n\t\t\t\t\t\t\t\t'edit.php?post_type=wp_block';\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}, [\n\t\t\thistory,\n\t\t\tisSiteEditor,\n\t\t\tcanCreateTemplate,\n\t\t\tcanCreatePatterns,\n\t\t\tisBlockBasedTheme,\n\t\t] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading: false,\n\t\t};\n\t};\n\nconst getGlobalStylesOpenCssCommands = () =>\n\tfunction useGlobalStylesOpenCssCommands() {\n\t\tconst history = useHistory();\n\t\tconst isSiteEditor = isInSiteEditor();\n\t\tconst { canEditCSS } = useSelect( ( select ) => {\n\t\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\t\tselect( coreStore );\n\n\t\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\t\tconst globalStyles = globalStylesId\n\t\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t\t: undefined;\n\n\t\t\treturn {\n\t\t\t\tcanEditCSS: !! globalStyles?._links?.[ 'wp:action-edit-css' ],\n\t\t\t};\n\t\t}, [] );\n\n\t\tconst commands = useMemo( () => {\n\t\t\tif ( ! canEditCSS ) {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tname: 'core/open-styles-css',\n\t\t\t\t\tlabel: __( 'Open custom CSS' ),\n\t\t\t\t\ticon: brush,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tclose();\n\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( '/styles?section=/css' );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: '/styles',\n\t\t\t\t\t\t\t\t\tsection: '/css',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t];\n\t\t}, [ history, canEditCSS, isSiteEditor ] );\n\n\t\treturn {\n\t\t\tisLoading: false,\n\t\t\tcommands,\n\t\t};\n\t};\n\nexport function useSiteEditorNavigationCommands( isNetworkAdmin ) {\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-pages',\n\t\thook: getNavigationCommandLoaderPerPostType( 'page' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-posts',\n\t\thook: getNavigationCommandLoaderPerPostType( 'post' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-templates',\n\t\thook: getNavigationCommandLoaderPerTemplate( 'wp_template' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-template-parts',\n\t\thook: getNavigationCommandLoaderPerTemplate( 'wp_template_part' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/basic-navigation',\n\t\thook: getSiteEditorBasicNavigationCommands(),\n\t\tcontext: 'site-editor',\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/global-styles-css',\n\t\thook: getGlobalStylesOpenCssCommands(),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n}\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useCommandLoader } from '@wordpress/commands';\nimport { __ } from '@wordpress/i18n';\nimport { useMemo, useEffect, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tpost,\n\tpage,\n\tlayout,\n\tsymbol,\n\tsymbolFilled,\n\tstyles,\n\tnavigation,\n\tbrush,\n} from '@wordpress/icons';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { addQueryArgs, getPath } from '@wordpress/url';\nimport { useDebounce } from '@wordpress/compose';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from './lock-unlock';\nimport { orderEntityRecordsBySearch } from './utils/order-entity-records-by-search';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nconst icons = {\n\tpost,\n\tpage,\n\twp_template: layout,\n\twp_template_part: symbolFilled,\n};\n\nfunction useDebouncedValue( value ) {\n\tconst [ debouncedValue, setDebouncedValue ] = useState( '' );\n\tconst debounced = useDebounce( setDebouncedValue, 250 );\n\n\tuseEffect( () => {\n\t\tdebounced( value );\n\t\treturn () => debounced.cancel();\n\t}, [ debounced, value ] );\n\n\treturn debouncedValue;\n}\n\n// Route mapping for experimental site editor\nconst ROUTE_MAPPING = {\n\t'/template': '/templates',\n\t'/pattern': '/patterns',\n};\n\n// Helper to determine the site editor page URL\nfunction getSiteEditorPage() {\n\treturn window.__experimentalExtensibleSiteEditor\n\t\t? 'admin.php?page=site-editor-v2'\n\t\t: 'site-editor.php';\n}\n\n// Helper to map routes for experimental site editor\nfunction mapRoute( path ) {\n\tif ( ! window.__experimentalExtensibleSiteEditor ) {\n\t\treturn path;\n\t}\n\n\t// Check if path needs mapping\n\tfor ( const [ oldPath, newPath ] of Object.entries( ROUTE_MAPPING ) ) {\n\t\tif ( path === oldPath || path.startsWith( oldPath + '?' ) ) {\n\t\t\t// Handle template parts special case\n\t\t\tif ( path.includes( 'postType=wp_template_part' ) ) {\n\t\t\t\treturn '/template-parts';\n\t\t\t}\n\t\t\t// Replace the base path\n\t\t\treturn path.replace( oldPath, newPath );\n\t\t}\n\t}\n\n\treturn path;\n}\n\n// Helper to check if currently in site editor\nfunction isInSiteEditor() {\n\tconst path = getPath( window.location.href );\n\treturn (\n\t\tpath?.includes( 'site-editor.php' ) ||\n\t\tpath?.includes( 'page=site-editor-v2' )\n\t);\n}\n\nconst getNavigationCommandLoaderPerPostType = ( postType ) =>\n\tfunction useNavigationCommandLoader( { search } ) {\n\t\tconst history = useHistory();\n\t\tconst { isBlockBasedTheme, canCreateTemplate } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\treturn {\n\t\t\t\t\tisBlockBasedTheme:\n\t\t\t\t\t\tselect( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t\t\t\tcanCreateTemplate: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: 'wp_template',\n\t\t\t\t\t} ),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[]\n\t\t);\n\t\tconst delayedSearch = useDebouncedValue( search );\n\t\tconst { records, isLoading } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tif ( ! delayedSearch ) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tisLoading: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tconst query = {\n\t\t\t\t\tsearch: delayedSearch,\n\t\t\t\t\tper_page: 10,\n\t\t\t\t\torderby: 'relevance',\n\t\t\t\t\tstatus: [\n\t\t\t\t\t\t'publish',\n\t\t\t\t\t\t'future',\n\t\t\t\t\t\t'draft',\n\t\t\t\t\t\t'pending',\n\t\t\t\t\t\t'private',\n\t\t\t\t\t],\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\trecords: select( coreStore ).getEntityRecords(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tpostType,\n\t\t\t\t\t\tquery\n\t\t\t\t\t),\n\t\t\t\t\tisLoading: ! select( coreStore ).hasFinishedResolution(\n\t\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\t\t[ 'postType', postType, query ]\n\t\t\t\t\t),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ delayedSearch ]\n\t\t);\n\n\t\tconst commands = useMemo( () => {\n\t\t\treturn ( records ?? [] ).map( ( record ) => {\n\t\t\t\tconst command = {\n\t\t\t\t\tname: postType + '-' + record.id,\n\t\t\t\t\tsearchLabel: record.title?.rendered + ' ' + record.id,\n\t\t\t\t\tlabel: record.title?.rendered\n\t\t\t\t\t\t? decodeEntities( record.title?.rendered )\n\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\ticon: icons[ postType ],\n\t\t\t\t\tcategory: 'edit',\n\t\t\t\t};\n\n\t\t\t\tif (\n\t\t\t\t\t! canCreateTemplate ||\n\t\t\t\t\tpostType === 'post' ||\n\t\t\t\t\t( postType === 'page' && ! isBlockBasedTheme )\n\t\t\t\t) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...command,\n\t\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\t\tconst args = {\n\t\t\t\t\t\t\t\tpost: record.id,\n\t\t\t\t\t\t\t\taction: 'edit',\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tconst targetUrl = addQueryArgs( 'post.php', args );\n\t\t\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tconst isSiteEditor = isInSiteEditor();\n\n\t\t\t\treturn {\n\t\t\t\t\t...command,\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t\t`/${ postType }/${ record.id }?canvas=edit`\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: `/${ postType }/${ record.id }`,\n\t\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t} );\n\t\t}, [ canCreateTemplate, records, isBlockBasedTheme, history ] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading,\n\t\t};\n\t};\n\nconst getNavigationCommandLoaderPerTemplate = ( templateType ) =>\n\tfunction useNavigationCommandLoader( { search } ) {\n\t\tconst history = useHistory();\n\t\tconst { isBlockBasedTheme, canCreateTemplate } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\treturn {\n\t\t\t\t\tisBlockBasedTheme:\n\t\t\t\t\t\tselect( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t\t\t\tcanCreateTemplate: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: templateType,\n\t\t\t\t\t} ),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[]\n\t\t);\n\t\tconst { records, isLoading } = useSelect( ( select ) => {\n\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\tconst query = { per_page: -1 };\n\t\t\treturn {\n\t\t\t\trecords: getEntityRecords( 'postType', templateType, query ),\n\t\t\t\tisLoading: ! select( coreStore ).hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\t[ 'postType', templateType, query ]\n\t\t\t\t),\n\t\t\t};\n\t\t}, [] );\n\n\t\t/*\n\t\t * wp_template and wp_template_part endpoints do not support per_page or orderby parameters.\n\t\t * We need to sort the results based on the search query to avoid removing relevant\n\t\t * records below using .slice().\n\t\t */\n\t\tconst orderedRecords = useMemo( () => {\n\t\t\treturn orderEntityRecordsBySearch( records, search ).slice( 0, 10 );\n\t\t}, [ records, search ] );\n\n\t\tconst commands = useMemo( () => {\n\t\t\tif (\n\t\t\t\t! canCreateTemplate ||\n\t\t\t\t( ! isBlockBasedTheme && ! templateType === 'wp_template_part' )\n\t\t\t) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tconst isSiteEditor = getPath( window.location.href )?.includes(\n\t\t\t\t'site-editor.php'\n\t\t\t);\n\t\t\tconst result = [];\n\t\t\tresult.push(\n\t\t\t\t...orderedRecords.map( ( record ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tname: templateType + '-' + record.id,\n\t\t\t\t\t\tsearchLabel: record.title?.rendered + ' ' + record.id,\n\t\t\t\t\t\tlabel: record.title?.rendered\n\t\t\t\t\t\t\t? record.title?.rendered\n\t\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\t\ticon: icons[ templateType ],\n\t\t\t\t\t\tcategory: 'edit',\n\t\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t\t\t`/${ templateType }/${ record.id }?canvas=edit`\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tp: `/${ templateType }/${ record.id }`,\n\t\t\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t} )\n\t\t\t);\n\n\t\t\tif (\n\t\t\t\torderedRecords?.length > 0 &&\n\t\t\t\ttemplateType === 'wp_template_part'\n\t\t\t) {\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-template-parts',\n\t\t\t\t\tlabel: __( 'Go to: Template parts' ),\n\t\t\t\t\ticon: symbolFilled,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t\tmapRoute(\n\t\t\t\t\t\t\t\t\t'/pattern?postType=wp_template_part&categoryId=all-parts'\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: mapRoute( '/pattern' ),\n\t\t\t\t\t\t\t\t\tpostType: 'wp_template_part',\n\t\t\t\t\t\t\t\t\tcategoryId: 'all-parts',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn result;\n\t\t}, [ canCreateTemplate, isBlockBasedTheme, orderedRecords, history ] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading,\n\t\t};\n\t};\n\nconst getSiteEditorBasicNavigationCommands = () =>\n\tfunction useSiteEditorBasicNavigationCommands() {\n\t\tconst history = useHistory();\n\t\tconst isSiteEditor = isInSiteEditor();\n\t\tconst { isBlockBasedTheme, canCreateTemplate, canCreatePatterns } =\n\t\t\tuseSelect( ( select ) => {\n\t\t\t\treturn {\n\t\t\t\t\tisBlockBasedTheme:\n\t\t\t\t\t\tselect( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t\t\t\tcanCreateTemplate: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: 'wp_template',\n\t\t\t\t\t} ),\n\t\t\t\t\tcanCreatePatterns: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: 'wp_block',\n\t\t\t\t\t} ),\n\t\t\t\t};\n\t\t\t}, [] );\n\t\tconst commands = useMemo( () => {\n\t\t\tconst result = [];\n\n\t\t\tif ( canCreateTemplate && isBlockBasedTheme ) {\n\t\t\t\t// Go to Styles command\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-styles',\n\t\t\t\t\tlabel: __( 'Go to: Styles' ),\n\t\t\t\t\ticon: styles,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( '/styles' );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: '/styles',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-navigation',\n\t\t\t\t\tlabel: __( 'Go to: Navigation' ),\n\t\t\t\t\ticon: navigation,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( '/navigation' );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: '/navigation',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-templates',\n\t\t\t\t\tlabel: __( 'Go to: Templates' ),\n\t\t\t\t\ticon: layout,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( mapRoute( '/template' ) );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: mapRoute( '/template' ),\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( canCreatePatterns ) {\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-patterns',\n\t\t\t\t\tlabel: __( 'Go to: Patterns' ),\n\t\t\t\t\ticon: symbol,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( canCreateTemplate ) {\n\t\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\t\thistory.navigate( mapRoute( '/pattern' ) );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tp: mapRoute( '/pattern' ),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// If a user cannot access the site editor.\n\t\t\t\t\t\t\tdocument.location.href =\n\t\t\t\t\t\t\t\t'edit.php?post_type=wp_block';\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}, [\n\t\t\thistory,\n\t\t\tisSiteEditor,\n\t\t\tcanCreateTemplate,\n\t\t\tcanCreatePatterns,\n\t\t\tisBlockBasedTheme,\n\t\t] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading: false,\n\t\t};\n\t};\n\nconst getGlobalStylesOpenCssCommands = () =>\n\tfunction useGlobalStylesOpenCssCommands() {\n\t\tconst history = useHistory();\n\t\tconst isSiteEditor = isInSiteEditor();\n\t\tconst { canEditCSS, isBlockBasedTheme } = useSelect( ( select ) => {\n\t\t\tconst {\n\t\t\t\tgetEntityRecord,\n\t\t\t\t__experimentalGetCurrentGlobalStylesId,\n\t\t\t\tgetCurrentTheme,\n\t\t\t} = select( coreStore );\n\n\t\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\t\tconst globalStyles = globalStylesId\n\t\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t\t: undefined;\n\n\t\t\treturn {\n\t\t\t\tcanEditCSS: !! globalStyles?._links?.[ 'wp:action-edit-css' ],\n\t\t\t\tisBlockBasedTheme: getCurrentTheme()?.is_block_theme,\n\t\t\t};\n\t\t}, [] );\n\n\t\tconst commands = useMemo( () => {\n\t\t\tif ( ! canEditCSS || ! isBlockBasedTheme ) {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tname: 'core/open-styles-css',\n\t\t\t\t\tlabel: __( 'Open custom CSS' ),\n\t\t\t\t\ticon: brush,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tclose();\n\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( '/styles?section=/css' );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: '/styles',\n\t\t\t\t\t\t\t\t\tsection: '/css',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t];\n\t\t}, [ history, canEditCSS, isSiteEditor, isBlockBasedTheme ] );\n\n\t\treturn {\n\t\t\tisLoading: false,\n\t\t\tcommands,\n\t\t};\n\t};\n\nexport function useSiteEditorNavigationCommands( isNetworkAdmin ) {\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-pages',\n\t\thook: getNavigationCommandLoaderPerPostType( 'page' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-posts',\n\t\thook: getNavigationCommandLoaderPerPostType( 'post' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-templates',\n\t\thook: getNavigationCommandLoaderPerTemplate( 'wp_template' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-template-parts',\n\t\thook: getNavigationCommandLoaderPerTemplate( 'wp_template_part' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/basic-navigation',\n\t\thook: getSiteEditorBasicNavigationCommands(),\n\t\tcontext: 'site-editor',\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/global-styles-css',\n\t\thook: getGlobalStylesOpenCssCommands(),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["routerPrivateApis", "coreStore"]
|
|
7
7
|
}
|
|
@@ -374,16 +374,21 @@ var getSiteEditorBasicNavigationCommands = () => function useSiteEditorBasicNavi
|
|
|
374
374
|
var getGlobalStylesOpenCssCommands = () => function useGlobalStylesOpenCssCommands() {
|
|
375
375
|
const history = useHistory();
|
|
376
376
|
const isSiteEditor = isInSiteEditor();
|
|
377
|
-
const { canEditCSS } = useSelect((select) => {
|
|
378
|
-
const {
|
|
377
|
+
const { canEditCSS, isBlockBasedTheme } = useSelect((select) => {
|
|
378
|
+
const {
|
|
379
|
+
getEntityRecord,
|
|
380
|
+
__experimentalGetCurrentGlobalStylesId,
|
|
381
|
+
getCurrentTheme
|
|
382
|
+
} = select(coreStore);
|
|
379
383
|
const globalStylesId = __experimentalGetCurrentGlobalStylesId();
|
|
380
384
|
const globalStyles = globalStylesId ? getEntityRecord("root", "globalStyles", globalStylesId) : void 0;
|
|
381
385
|
return {
|
|
382
|
-
canEditCSS: !!globalStyles?._links?.["wp:action-edit-css"]
|
|
386
|
+
canEditCSS: !!globalStyles?._links?.["wp:action-edit-css"],
|
|
387
|
+
isBlockBasedTheme: getCurrentTheme()?.is_block_theme
|
|
383
388
|
};
|
|
384
389
|
}, []);
|
|
385
390
|
const commands = useMemo(() => {
|
|
386
|
-
if (!canEditCSS) {
|
|
391
|
+
if (!canEditCSS || !isBlockBasedTheme) {
|
|
387
392
|
return [];
|
|
388
393
|
}
|
|
389
394
|
return [
|
|
@@ -408,7 +413,7 @@ var getGlobalStylesOpenCssCommands = () => function useGlobalStylesOpenCssComman
|
|
|
408
413
|
}
|
|
409
414
|
}
|
|
410
415
|
];
|
|
411
|
-
}, [history, canEditCSS, isSiteEditor]);
|
|
416
|
+
}, [history, canEditCSS, isSiteEditor, isBlockBasedTheme]);
|
|
412
417
|
return {
|
|
413
418
|
isLoading: false,
|
|
414
419
|
commands
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/site-editor-navigation-commands.js"],
|
|
4
|
-
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useCommandLoader } from '@wordpress/commands';\nimport { __ } from '@wordpress/i18n';\nimport { useMemo, useEffect, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tpost,\n\tpage,\n\tlayout,\n\tsymbol,\n\tsymbolFilled,\n\tstyles,\n\tnavigation,\n\tbrush,\n} from '@wordpress/icons';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { addQueryArgs, getPath } from '@wordpress/url';\nimport { useDebounce } from '@wordpress/compose';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from './lock-unlock';\nimport { orderEntityRecordsBySearch } from './utils/order-entity-records-by-search';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nconst icons = {\n\tpost,\n\tpage,\n\twp_template: layout,\n\twp_template_part: symbolFilled,\n};\n\nfunction useDebouncedValue( value ) {\n\tconst [ debouncedValue, setDebouncedValue ] = useState( '' );\n\tconst debounced = useDebounce( setDebouncedValue, 250 );\n\n\tuseEffect( () => {\n\t\tdebounced( value );\n\t\treturn () => debounced.cancel();\n\t}, [ debounced, value ] );\n\n\treturn debouncedValue;\n}\n\n// Route mapping for experimental site editor\nconst ROUTE_MAPPING = {\n\t'/template': '/templates',\n\t'/pattern': '/patterns',\n};\n\n// Helper to determine the site editor page URL\nfunction getSiteEditorPage() {\n\treturn window.__experimentalExtensibleSiteEditor\n\t\t? 'admin.php?page=site-editor-v2'\n\t\t: 'site-editor.php';\n}\n\n// Helper to map routes for experimental site editor\nfunction mapRoute( path ) {\n\tif ( ! window.__experimentalExtensibleSiteEditor ) {\n\t\treturn path;\n\t}\n\n\t// Check if path needs mapping\n\tfor ( const [ oldPath, newPath ] of Object.entries( ROUTE_MAPPING ) ) {\n\t\tif ( path === oldPath || path.startsWith( oldPath + '?' ) ) {\n\t\t\t// Handle template parts special case\n\t\t\tif ( path.includes( 'postType=wp_template_part' ) ) {\n\t\t\t\treturn '/template-parts';\n\t\t\t}\n\t\t\t// Replace the base path\n\t\t\treturn path.replace( oldPath, newPath );\n\t\t}\n\t}\n\n\treturn path;\n}\n\n// Helper to check if currently in site editor\nfunction isInSiteEditor() {\n\tconst path = getPath( window.location.href );\n\treturn (\n\t\tpath?.includes( 'site-editor.php' ) ||\n\t\tpath?.includes( 'page=site-editor-v2' )\n\t);\n}\n\nconst getNavigationCommandLoaderPerPostType = ( postType ) =>\n\tfunction useNavigationCommandLoader( { search } ) {\n\t\tconst history = useHistory();\n\t\tconst { isBlockBasedTheme, canCreateTemplate } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\treturn {\n\t\t\t\t\tisBlockBasedTheme:\n\t\t\t\t\t\tselect( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t\t\t\tcanCreateTemplate: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: 'wp_template',\n\t\t\t\t\t} ),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[]\n\t\t);\n\t\tconst delayedSearch = useDebouncedValue( search );\n\t\tconst { records, isLoading } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tif ( ! delayedSearch ) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tisLoading: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tconst query = {\n\t\t\t\t\tsearch: delayedSearch,\n\t\t\t\t\tper_page: 10,\n\t\t\t\t\torderby: 'relevance',\n\t\t\t\t\tstatus: [\n\t\t\t\t\t\t'publish',\n\t\t\t\t\t\t'future',\n\t\t\t\t\t\t'draft',\n\t\t\t\t\t\t'pending',\n\t\t\t\t\t\t'private',\n\t\t\t\t\t],\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\trecords: select( coreStore ).getEntityRecords(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tpostType,\n\t\t\t\t\t\tquery\n\t\t\t\t\t),\n\t\t\t\t\tisLoading: ! select( coreStore ).hasFinishedResolution(\n\t\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\t\t[ 'postType', postType, query ]\n\t\t\t\t\t),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ delayedSearch ]\n\t\t);\n\n\t\tconst commands = useMemo( () => {\n\t\t\treturn ( records ?? [] ).map( ( record ) => {\n\t\t\t\tconst command = {\n\t\t\t\t\tname: postType + '-' + record.id,\n\t\t\t\t\tsearchLabel: record.title?.rendered + ' ' + record.id,\n\t\t\t\t\tlabel: record.title?.rendered\n\t\t\t\t\t\t? decodeEntities( record.title?.rendered )\n\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\ticon: icons[ postType ],\n\t\t\t\t\tcategory: 'edit',\n\t\t\t\t};\n\n\t\t\t\tif (\n\t\t\t\t\t! canCreateTemplate ||\n\t\t\t\t\tpostType === 'post' ||\n\t\t\t\t\t( postType === 'page' && ! isBlockBasedTheme )\n\t\t\t\t) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...command,\n\t\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\t\tconst args = {\n\t\t\t\t\t\t\t\tpost: record.id,\n\t\t\t\t\t\t\t\taction: 'edit',\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tconst targetUrl = addQueryArgs( 'post.php', args );\n\t\t\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tconst isSiteEditor = isInSiteEditor();\n\n\t\t\t\treturn {\n\t\t\t\t\t...command,\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t\t`/${ postType }/${ record.id }?canvas=edit`\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: `/${ postType }/${ record.id }`,\n\t\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t} );\n\t\t}, [ canCreateTemplate, records, isBlockBasedTheme, history ] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading,\n\t\t};\n\t};\n\nconst getNavigationCommandLoaderPerTemplate = ( templateType ) =>\n\tfunction useNavigationCommandLoader( { search } ) {\n\t\tconst history = useHistory();\n\t\tconst { isBlockBasedTheme, canCreateTemplate } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\treturn {\n\t\t\t\t\tisBlockBasedTheme:\n\t\t\t\t\t\tselect( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t\t\t\tcanCreateTemplate: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: templateType,\n\t\t\t\t\t} ),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[]\n\t\t);\n\t\tconst { records, isLoading } = useSelect( ( select ) => {\n\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\tconst query = { per_page: -1 };\n\t\t\treturn {\n\t\t\t\trecords: getEntityRecords( 'postType', templateType, query ),\n\t\t\t\tisLoading: ! select( coreStore ).hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\t[ 'postType', templateType, query ]\n\t\t\t\t),\n\t\t\t};\n\t\t}, [] );\n\n\t\t/*\n\t\t * wp_template and wp_template_part endpoints do not support per_page or orderby parameters.\n\t\t * We need to sort the results based on the search query to avoid removing relevant\n\t\t * records below using .slice().\n\t\t */\n\t\tconst orderedRecords = useMemo( () => {\n\t\t\treturn orderEntityRecordsBySearch( records, search ).slice( 0, 10 );\n\t\t}, [ records, search ] );\n\n\t\tconst commands = useMemo( () => {\n\t\t\tif (\n\t\t\t\t! canCreateTemplate ||\n\t\t\t\t( ! isBlockBasedTheme && ! templateType === 'wp_template_part' )\n\t\t\t) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tconst isSiteEditor = getPath( window.location.href )?.includes(\n\t\t\t\t'site-editor.php'\n\t\t\t);\n\t\t\tconst result = [];\n\t\t\tresult.push(\n\t\t\t\t...orderedRecords.map( ( record ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tname: templateType + '-' + record.id,\n\t\t\t\t\t\tsearchLabel: record.title?.rendered + ' ' + record.id,\n\t\t\t\t\t\tlabel: record.title?.rendered\n\t\t\t\t\t\t\t? record.title?.rendered\n\t\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\t\ticon: icons[ templateType ],\n\t\t\t\t\t\tcategory: 'edit',\n\t\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t\t\t`/${ templateType }/${ record.id }?canvas=edit`\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tp: `/${ templateType }/${ record.id }`,\n\t\t\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t} )\n\t\t\t);\n\n\t\t\tif (\n\t\t\t\torderedRecords?.length > 0 &&\n\t\t\t\ttemplateType === 'wp_template_part'\n\t\t\t) {\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-template-parts',\n\t\t\t\t\tlabel: __( 'Go to: Template parts' ),\n\t\t\t\t\ticon: symbolFilled,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t\tmapRoute(\n\t\t\t\t\t\t\t\t\t'/pattern?postType=wp_template_part&categoryId=all-parts'\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: mapRoute( '/pattern' ),\n\t\t\t\t\t\t\t\t\tpostType: 'wp_template_part',\n\t\t\t\t\t\t\t\t\tcategoryId: 'all-parts',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn result;\n\t\t}, [ canCreateTemplate, isBlockBasedTheme, orderedRecords, history ] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading,\n\t\t};\n\t};\n\nconst getSiteEditorBasicNavigationCommands = () =>\n\tfunction useSiteEditorBasicNavigationCommands() {\n\t\tconst history = useHistory();\n\t\tconst isSiteEditor = isInSiteEditor();\n\t\tconst { isBlockBasedTheme, canCreateTemplate, canCreatePatterns } =\n\t\t\tuseSelect( ( select ) => {\n\t\t\t\treturn {\n\t\t\t\t\tisBlockBasedTheme:\n\t\t\t\t\t\tselect( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t\t\t\tcanCreateTemplate: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: 'wp_template',\n\t\t\t\t\t} ),\n\t\t\t\t\tcanCreatePatterns: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: 'wp_block',\n\t\t\t\t\t} ),\n\t\t\t\t};\n\t\t\t}, [] );\n\t\tconst commands = useMemo( () => {\n\t\t\tconst result = [];\n\n\t\t\tif ( canCreateTemplate && isBlockBasedTheme ) {\n\t\t\t\t// Go to Styles command\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-styles',\n\t\t\t\t\tlabel: __( 'Go to: Styles' ),\n\t\t\t\t\ticon: styles,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( '/styles' );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: '/styles',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-navigation',\n\t\t\t\t\tlabel: __( 'Go to: Navigation' ),\n\t\t\t\t\ticon: navigation,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( '/navigation' );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: '/navigation',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-templates',\n\t\t\t\t\tlabel: __( 'Go to: Templates' ),\n\t\t\t\t\ticon: layout,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( mapRoute( '/template' ) );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: mapRoute( '/template' ),\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( canCreatePatterns ) {\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-patterns',\n\t\t\t\t\tlabel: __( 'Go to: Patterns' ),\n\t\t\t\t\ticon: symbol,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( canCreateTemplate ) {\n\t\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\t\thistory.navigate( mapRoute( '/pattern' ) );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tp: mapRoute( '/pattern' ),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// If a user cannot access the site editor.\n\t\t\t\t\t\t\tdocument.location.href =\n\t\t\t\t\t\t\t\t'edit.php?post_type=wp_block';\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}, [\n\t\t\thistory,\n\t\t\tisSiteEditor,\n\t\t\tcanCreateTemplate,\n\t\t\tcanCreatePatterns,\n\t\t\tisBlockBasedTheme,\n\t\t] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading: false,\n\t\t};\n\t};\n\nconst getGlobalStylesOpenCssCommands = () =>\n\tfunction useGlobalStylesOpenCssCommands() {\n\t\tconst history = useHistory();\n\t\tconst isSiteEditor = isInSiteEditor();\n\t\tconst { canEditCSS } = useSelect( ( select ) => {\n\t\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\t\tselect( coreStore );\n\n\t\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\t\tconst globalStyles = globalStylesId\n\t\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t\t: undefined;\n\n\t\t\treturn {\n\t\t\t\tcanEditCSS: !! globalStyles?._links?.[ 'wp:action-edit-css' ],\n\t\t\t};\n\t\t}, [] );\n\n\t\tconst commands = useMemo( () => {\n\t\t\tif ( ! canEditCSS ) {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tname: 'core/open-styles-css',\n\t\t\t\t\tlabel: __( 'Open custom CSS' ),\n\t\t\t\t\ticon: brush,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tclose();\n\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( '/styles?section=/css' );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: '/styles',\n\t\t\t\t\t\t\t\t\tsection: '/css',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t];\n\t\t}, [ history, canEditCSS, isSiteEditor ] );\n\n\t\treturn {\n\t\t\tisLoading: false,\n\t\t\tcommands,\n\t\t};\n\t};\n\nexport function useSiteEditorNavigationCommands( isNetworkAdmin ) {\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-pages',\n\t\thook: getNavigationCommandLoaderPerPostType( 'page' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-posts',\n\t\thook: getNavigationCommandLoaderPerPostType( 'post' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-templates',\n\t\thook: getNavigationCommandLoaderPerTemplate( 'wp_template' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-template-parts',\n\t\thook: getNavigationCommandLoaderPerTemplate( 'wp_template_part' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/basic-navigation',\n\t\thook: getSiteEditorBasicNavigationCommands(),\n\t\tcontext: 'site-editor',\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/global-styles-css',\n\t\thook: getGlobalStylesOpenCssCommands(),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n}\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useCommandLoader } from '@wordpress/commands';\nimport { __ } from '@wordpress/i18n';\nimport { useMemo, useEffect, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tpost,\n\tpage,\n\tlayout,\n\tsymbol,\n\tsymbolFilled,\n\tstyles,\n\tnavigation,\n\tbrush,\n} from '@wordpress/icons';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { addQueryArgs, getPath } from '@wordpress/url';\nimport { useDebounce } from '@wordpress/compose';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from './lock-unlock';\nimport { orderEntityRecordsBySearch } from './utils/order-entity-records-by-search';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nconst icons = {\n\tpost,\n\tpage,\n\twp_template: layout,\n\twp_template_part: symbolFilled,\n};\n\nfunction useDebouncedValue( value ) {\n\tconst [ debouncedValue, setDebouncedValue ] = useState( '' );\n\tconst debounced = useDebounce( setDebouncedValue, 250 );\n\n\tuseEffect( () => {\n\t\tdebounced( value );\n\t\treturn () => debounced.cancel();\n\t}, [ debounced, value ] );\n\n\treturn debouncedValue;\n}\n\n// Route mapping for experimental site editor\nconst ROUTE_MAPPING = {\n\t'/template': '/templates',\n\t'/pattern': '/patterns',\n};\n\n// Helper to determine the site editor page URL\nfunction getSiteEditorPage() {\n\treturn window.__experimentalExtensibleSiteEditor\n\t\t? 'admin.php?page=site-editor-v2'\n\t\t: 'site-editor.php';\n}\n\n// Helper to map routes for experimental site editor\nfunction mapRoute( path ) {\n\tif ( ! window.__experimentalExtensibleSiteEditor ) {\n\t\treturn path;\n\t}\n\n\t// Check if path needs mapping\n\tfor ( const [ oldPath, newPath ] of Object.entries( ROUTE_MAPPING ) ) {\n\t\tif ( path === oldPath || path.startsWith( oldPath + '?' ) ) {\n\t\t\t// Handle template parts special case\n\t\t\tif ( path.includes( 'postType=wp_template_part' ) ) {\n\t\t\t\treturn '/template-parts';\n\t\t\t}\n\t\t\t// Replace the base path\n\t\t\treturn path.replace( oldPath, newPath );\n\t\t}\n\t}\n\n\treturn path;\n}\n\n// Helper to check if currently in site editor\nfunction isInSiteEditor() {\n\tconst path = getPath( window.location.href );\n\treturn (\n\t\tpath?.includes( 'site-editor.php' ) ||\n\t\tpath?.includes( 'page=site-editor-v2' )\n\t);\n}\n\nconst getNavigationCommandLoaderPerPostType = ( postType ) =>\n\tfunction useNavigationCommandLoader( { search } ) {\n\t\tconst history = useHistory();\n\t\tconst { isBlockBasedTheme, canCreateTemplate } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\treturn {\n\t\t\t\t\tisBlockBasedTheme:\n\t\t\t\t\t\tselect( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t\t\t\tcanCreateTemplate: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: 'wp_template',\n\t\t\t\t\t} ),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[]\n\t\t);\n\t\tconst delayedSearch = useDebouncedValue( search );\n\t\tconst { records, isLoading } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tif ( ! delayedSearch ) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tisLoading: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tconst query = {\n\t\t\t\t\tsearch: delayedSearch,\n\t\t\t\t\tper_page: 10,\n\t\t\t\t\torderby: 'relevance',\n\t\t\t\t\tstatus: [\n\t\t\t\t\t\t'publish',\n\t\t\t\t\t\t'future',\n\t\t\t\t\t\t'draft',\n\t\t\t\t\t\t'pending',\n\t\t\t\t\t\t'private',\n\t\t\t\t\t],\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\trecords: select( coreStore ).getEntityRecords(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tpostType,\n\t\t\t\t\t\tquery\n\t\t\t\t\t),\n\t\t\t\t\tisLoading: ! select( coreStore ).hasFinishedResolution(\n\t\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\t\t[ 'postType', postType, query ]\n\t\t\t\t\t),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ delayedSearch ]\n\t\t);\n\n\t\tconst commands = useMemo( () => {\n\t\t\treturn ( records ?? [] ).map( ( record ) => {\n\t\t\t\tconst command = {\n\t\t\t\t\tname: postType + '-' + record.id,\n\t\t\t\t\tsearchLabel: record.title?.rendered + ' ' + record.id,\n\t\t\t\t\tlabel: record.title?.rendered\n\t\t\t\t\t\t? decodeEntities( record.title?.rendered )\n\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\ticon: icons[ postType ],\n\t\t\t\t\tcategory: 'edit',\n\t\t\t\t};\n\n\t\t\t\tif (\n\t\t\t\t\t! canCreateTemplate ||\n\t\t\t\t\tpostType === 'post' ||\n\t\t\t\t\t( postType === 'page' && ! isBlockBasedTheme )\n\t\t\t\t) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...command,\n\t\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\t\tconst args = {\n\t\t\t\t\t\t\t\tpost: record.id,\n\t\t\t\t\t\t\t\taction: 'edit',\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tconst targetUrl = addQueryArgs( 'post.php', args );\n\t\t\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tconst isSiteEditor = isInSiteEditor();\n\n\t\t\t\treturn {\n\t\t\t\t\t...command,\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t\t`/${ postType }/${ record.id }?canvas=edit`\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: `/${ postType }/${ record.id }`,\n\t\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t} );\n\t\t}, [ canCreateTemplate, records, isBlockBasedTheme, history ] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading,\n\t\t};\n\t};\n\nconst getNavigationCommandLoaderPerTemplate = ( templateType ) =>\n\tfunction useNavigationCommandLoader( { search } ) {\n\t\tconst history = useHistory();\n\t\tconst { isBlockBasedTheme, canCreateTemplate } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\treturn {\n\t\t\t\t\tisBlockBasedTheme:\n\t\t\t\t\t\tselect( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t\t\t\tcanCreateTemplate: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: templateType,\n\t\t\t\t\t} ),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[]\n\t\t);\n\t\tconst { records, isLoading } = useSelect( ( select ) => {\n\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\tconst query = { per_page: -1 };\n\t\t\treturn {\n\t\t\t\trecords: getEntityRecords( 'postType', templateType, query ),\n\t\t\t\tisLoading: ! select( coreStore ).hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\t[ 'postType', templateType, query ]\n\t\t\t\t),\n\t\t\t};\n\t\t}, [] );\n\n\t\t/*\n\t\t * wp_template and wp_template_part endpoints do not support per_page or orderby parameters.\n\t\t * We need to sort the results based on the search query to avoid removing relevant\n\t\t * records below using .slice().\n\t\t */\n\t\tconst orderedRecords = useMemo( () => {\n\t\t\treturn orderEntityRecordsBySearch( records, search ).slice( 0, 10 );\n\t\t}, [ records, search ] );\n\n\t\tconst commands = useMemo( () => {\n\t\t\tif (\n\t\t\t\t! canCreateTemplate ||\n\t\t\t\t( ! isBlockBasedTheme && ! templateType === 'wp_template_part' )\n\t\t\t) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tconst isSiteEditor = getPath( window.location.href )?.includes(\n\t\t\t\t'site-editor.php'\n\t\t\t);\n\t\t\tconst result = [];\n\t\t\tresult.push(\n\t\t\t\t...orderedRecords.map( ( record ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tname: templateType + '-' + record.id,\n\t\t\t\t\t\tsearchLabel: record.title?.rendered + ' ' + record.id,\n\t\t\t\t\t\tlabel: record.title?.rendered\n\t\t\t\t\t\t\t? record.title?.rendered\n\t\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\t\ticon: icons[ templateType ],\n\t\t\t\t\t\tcategory: 'edit',\n\t\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t\t\t`/${ templateType }/${ record.id }?canvas=edit`\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tp: `/${ templateType }/${ record.id }`,\n\t\t\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t} )\n\t\t\t);\n\n\t\t\tif (\n\t\t\t\torderedRecords?.length > 0 &&\n\t\t\t\ttemplateType === 'wp_template_part'\n\t\t\t) {\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-template-parts',\n\t\t\t\t\tlabel: __( 'Go to: Template parts' ),\n\t\t\t\t\ticon: symbolFilled,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t\tmapRoute(\n\t\t\t\t\t\t\t\t\t'/pattern?postType=wp_template_part&categoryId=all-parts'\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: mapRoute( '/pattern' ),\n\t\t\t\t\t\t\t\t\tpostType: 'wp_template_part',\n\t\t\t\t\t\t\t\t\tcategoryId: 'all-parts',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn result;\n\t\t}, [ canCreateTemplate, isBlockBasedTheme, orderedRecords, history ] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading,\n\t\t};\n\t};\n\nconst getSiteEditorBasicNavigationCommands = () =>\n\tfunction useSiteEditorBasicNavigationCommands() {\n\t\tconst history = useHistory();\n\t\tconst isSiteEditor = isInSiteEditor();\n\t\tconst { isBlockBasedTheme, canCreateTemplate, canCreatePatterns } =\n\t\t\tuseSelect( ( select ) => {\n\t\t\t\treturn {\n\t\t\t\t\tisBlockBasedTheme:\n\t\t\t\t\t\tselect( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t\t\t\tcanCreateTemplate: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: 'wp_template',\n\t\t\t\t\t} ),\n\t\t\t\t\tcanCreatePatterns: select( coreStore ).canUser( 'create', {\n\t\t\t\t\t\tkind: 'postType',\n\t\t\t\t\t\tname: 'wp_block',\n\t\t\t\t\t} ),\n\t\t\t\t};\n\t\t\t}, [] );\n\t\tconst commands = useMemo( () => {\n\t\t\tconst result = [];\n\n\t\t\tif ( canCreateTemplate && isBlockBasedTheme ) {\n\t\t\t\t// Go to Styles command\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-styles',\n\t\t\t\t\tlabel: __( 'Go to: Styles' ),\n\t\t\t\t\ticon: styles,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( '/styles' );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: '/styles',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-navigation',\n\t\t\t\t\tlabel: __( 'Go to: Navigation' ),\n\t\t\t\t\ticon: navigation,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( '/navigation' );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: '/navigation',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-templates',\n\t\t\t\t\tlabel: __( 'Go to: Templates' ),\n\t\t\t\t\ticon: layout,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( mapRoute( '/template' ) );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: mapRoute( '/template' ),\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclose();\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( canCreatePatterns ) {\n\t\t\t\tresult.push( {\n\t\t\t\t\tname: 'core/edit-site/open-patterns',\n\t\t\t\t\tlabel: __( 'Go to: Patterns' ),\n\t\t\t\t\ticon: symbol,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tif ( canCreateTemplate ) {\n\t\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\t\thistory.navigate( mapRoute( '/pattern' ) );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tp: mapRoute( '/pattern' ),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// If a user cannot access the site editor.\n\t\t\t\t\t\t\tdocument.location.href =\n\t\t\t\t\t\t\t\t'edit.php?post_type=wp_block';\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}, [\n\t\t\thistory,\n\t\t\tisSiteEditor,\n\t\t\tcanCreateTemplate,\n\t\t\tcanCreatePatterns,\n\t\t\tisBlockBasedTheme,\n\t\t] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading: false,\n\t\t};\n\t};\n\nconst getGlobalStylesOpenCssCommands = () =>\n\tfunction useGlobalStylesOpenCssCommands() {\n\t\tconst history = useHistory();\n\t\tconst isSiteEditor = isInSiteEditor();\n\t\tconst { canEditCSS, isBlockBasedTheme } = useSelect( ( select ) => {\n\t\t\tconst {\n\t\t\t\tgetEntityRecord,\n\t\t\t\t__experimentalGetCurrentGlobalStylesId,\n\t\t\t\tgetCurrentTheme,\n\t\t\t} = select( coreStore );\n\n\t\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\t\tconst globalStyles = globalStylesId\n\t\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t\t: undefined;\n\n\t\t\treturn {\n\t\t\t\tcanEditCSS: !! globalStyles?._links?.[ 'wp:action-edit-css' ],\n\t\t\t\tisBlockBasedTheme: getCurrentTheme()?.is_block_theme,\n\t\t\t};\n\t\t}, [] );\n\n\t\tconst commands = useMemo( () => {\n\t\t\tif ( ! canEditCSS || ! isBlockBasedTheme ) {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tname: 'core/open-styles-css',\n\t\t\t\t\tlabel: __( 'Open custom CSS' ),\n\t\t\t\t\ticon: brush,\n\t\t\t\t\tcategory: 'view',\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tclose();\n\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.navigate( '/styles?section=/css' );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = addQueryArgs(\n\t\t\t\t\t\t\t\tgetSiteEditorPage(),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tp: '/styles',\n\t\t\t\t\t\t\t\t\tsection: '/css',\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t];\n\t\t}, [ history, canEditCSS, isSiteEditor, isBlockBasedTheme ] );\n\n\t\treturn {\n\t\t\tisLoading: false,\n\t\t\tcommands,\n\t\t};\n\t};\n\nexport function useSiteEditorNavigationCommands( isNetworkAdmin ) {\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-pages',\n\t\thook: getNavigationCommandLoaderPerPostType( 'page' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-posts',\n\t\thook: getNavigationCommandLoaderPerPostType( 'post' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-templates',\n\t\thook: getNavigationCommandLoaderPerTemplate( 'wp_template' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-template-parts',\n\t\thook: getNavigationCommandLoaderPerTemplate( 'wp_template_part' ),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/basic-navigation',\n\t\thook: getSiteEditorBasicNavigationCommands(),\n\t\tcontext: 'site-editor',\n\t\tdisabled: isNetworkAdmin,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/global-styles-css',\n\t\thook: getGlobalStylesOpenCssCommands(),\n\t\tdisabled: isNetworkAdmin,\n\t} );\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/core-commands",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.45.0",
|
|
4
4
|
"description": "WordPress core reusable commands.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -42,19 +42,19 @@
|
|
|
42
42
|
"wpScript": true,
|
|
43
43
|
"sideEffects": false,
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@wordpress/block-editor": "^15.
|
|
46
|
-
"@wordpress/commands": "^1.
|
|
47
|
-
"@wordpress/compose": "^7.
|
|
48
|
-
"@wordpress/core-data": "^7.
|
|
49
|
-
"@wordpress/data": "^10.
|
|
50
|
-
"@wordpress/element": "^6.
|
|
51
|
-
"@wordpress/html-entities": "^4.
|
|
52
|
-
"@wordpress/i18n": "^6.
|
|
53
|
-
"@wordpress/icons": "^
|
|
54
|
-
"@wordpress/notices": "^5.
|
|
55
|
-
"@wordpress/private-apis": "^1.
|
|
56
|
-
"@wordpress/router": "^1.
|
|
57
|
-
"@wordpress/url": "^4.
|
|
45
|
+
"@wordpress/block-editor": "^15.18.0",
|
|
46
|
+
"@wordpress/commands": "^1.45.0",
|
|
47
|
+
"@wordpress/compose": "^7.45.0",
|
|
48
|
+
"@wordpress/core-data": "^7.45.0",
|
|
49
|
+
"@wordpress/data": "^10.45.0",
|
|
50
|
+
"@wordpress/element": "^6.45.0",
|
|
51
|
+
"@wordpress/html-entities": "^4.45.0",
|
|
52
|
+
"@wordpress/i18n": "^6.18.0",
|
|
53
|
+
"@wordpress/icons": "^13.0.0",
|
|
54
|
+
"@wordpress/notices": "^5.45.0",
|
|
55
|
+
"@wordpress/private-apis": "^1.45.0",
|
|
56
|
+
"@wordpress/router": "^1.45.0",
|
|
57
|
+
"@wordpress/url": "^4.45.0"
|
|
58
58
|
},
|
|
59
59
|
"peerDependencies": {
|
|
60
60
|
"react": "^18.0.0",
|
|
@@ -63,5 +63,5 @@
|
|
|
63
63
|
"publishConfig": {
|
|
64
64
|
"access": "public"
|
|
65
65
|
},
|
|
66
|
-
"gitHead": "
|
|
66
|
+
"gitHead": "8c229eaed0e88c9827e2da3d73a78f9ddd77714b"
|
|
67
67
|
}
|
|
@@ -453,9 +453,12 @@ const getGlobalStylesOpenCssCommands = () =>
|
|
|
453
453
|
function useGlobalStylesOpenCssCommands() {
|
|
454
454
|
const history = useHistory();
|
|
455
455
|
const isSiteEditor = isInSiteEditor();
|
|
456
|
-
const { canEditCSS } = useSelect( ( select ) => {
|
|
457
|
-
const {
|
|
458
|
-
|
|
456
|
+
const { canEditCSS, isBlockBasedTheme } = useSelect( ( select ) => {
|
|
457
|
+
const {
|
|
458
|
+
getEntityRecord,
|
|
459
|
+
__experimentalGetCurrentGlobalStylesId,
|
|
460
|
+
getCurrentTheme,
|
|
461
|
+
} = select( coreStore );
|
|
459
462
|
|
|
460
463
|
const globalStylesId = __experimentalGetCurrentGlobalStylesId();
|
|
461
464
|
const globalStyles = globalStylesId
|
|
@@ -464,11 +467,12 @@ const getGlobalStylesOpenCssCommands = () =>
|
|
|
464
467
|
|
|
465
468
|
return {
|
|
466
469
|
canEditCSS: !! globalStyles?._links?.[ 'wp:action-edit-css' ],
|
|
470
|
+
isBlockBasedTheme: getCurrentTheme()?.is_block_theme,
|
|
467
471
|
};
|
|
468
472
|
}, [] );
|
|
469
473
|
|
|
470
474
|
const commands = useMemo( () => {
|
|
471
|
-
if ( ! canEditCSS ) {
|
|
475
|
+
if ( ! canEditCSS || ! isBlockBasedTheme ) {
|
|
472
476
|
return [];
|
|
473
477
|
}
|
|
474
478
|
|
|
@@ -495,7 +499,7 @@ const getGlobalStylesOpenCssCommands = () =>
|
|
|
495
499
|
},
|
|
496
500
|
},
|
|
497
501
|
];
|
|
498
|
-
}, [ history, canEditCSS, isSiteEditor ] );
|
|
502
|
+
}, [ history, canEditCSS, isSiteEditor, isBlockBasedTheme ] );
|
|
499
503
|
|
|
500
504
|
return {
|
|
501
505
|
isLoading: false,
|