@wordpress/core-commands 0.19.2 → 0.20.1

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 CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 0.20.0 (2024-02-09)
6
+
5
7
  ## 0.19.0 (2024-01-24)
6
8
 
7
9
  ## 0.18.0 (2024-01-10)
@@ -15,8 +15,7 @@ function useCommands() {
15
15
  (0, _adminNavigationCommands.useAdminNavigationCommands)();
16
16
  (0, _siteEditorNavigationCommands.useSiteEditorNavigationCommands)();
17
17
  }
18
- const privateApis = {};
19
- exports.privateApis = privateApis;
18
+ const privateApis = exports.privateApis = {};
20
19
  (0, _lockUnlock.lock)(privateApis, {
21
20
  useCommands
22
21
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_adminNavigationCommands","require","_siteEditorNavigationCommands","_lockUnlock","useCommands","useAdminNavigationCommands","useSiteEditorNavigationCommands","privateApis","exports","lock"],"sources":["@wordpress/core-commands/src/private-apis.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport { useAdminNavigationCommands } from './admin-navigation-commands';\nimport { useSiteEditorNavigationCommands } from './site-editor-navigation-commands';\nimport { lock } from './lock-unlock';\n\nfunction useCommands() {\n\tuseAdminNavigationCommands();\n\tuseSiteEditorNavigationCommands();\n}\n\nexport const privateApis = {};\nlock( privateApis, {\n\tuseCommands,\n} );\n"],"mappings":";;;;;;AAGA,IAAAA,wBAAA,GAAAC,OAAA;AACA,IAAAC,6BAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AALA;AACA;AACA;;AAKA,SAASG,WAAWA,CAAA,EAAG;EACtB,IAAAC,mDAA0B,EAAC,CAAC;EAC5B,IAAAC,6DAA+B,EAAC,CAAC;AAClC;AAEO,MAAMC,WAAW,GAAG,CAAC,CAAC;AAACC,OAAA,CAAAD,WAAA,GAAAA,WAAA;AAC9B,IAAAE,gBAAI,EAAEF,WAAW,EAAE;EAClBH;AACD,CAAE,CAAC"}
1
+ {"version":3,"names":["_adminNavigationCommands","require","_siteEditorNavigationCommands","_lockUnlock","useCommands","useAdminNavigationCommands","useSiteEditorNavigationCommands","privateApis","exports","lock"],"sources":["@wordpress/core-commands/src/private-apis.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport { useAdminNavigationCommands } from './admin-navigation-commands';\nimport { useSiteEditorNavigationCommands } from './site-editor-navigation-commands';\nimport { lock } from './lock-unlock';\n\nfunction useCommands() {\n\tuseAdminNavigationCommands();\n\tuseSiteEditorNavigationCommands();\n}\n\nexport const privateApis = {};\nlock( privateApis, {\n\tuseCommands,\n} );\n"],"mappings":";;;;;;AAGA,IAAAA,wBAAA,GAAAC,OAAA;AACA,IAAAC,6BAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AALA;AACA;AACA;;AAKA,SAASG,WAAWA,CAAA,EAAG;EACtB,IAAAC,mDAA0B,EAAC,CAAC;EAC5B,IAAAC,6DAA+B,EAAC,CAAC;AAClC;AAEO,MAAMC,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,CAAC,CAAC;AAC7B,IAAAE,gBAAI,EAAEF,WAAW,EAAE;EAClBH;AACD,CAAE,CAAC"}
@@ -12,6 +12,7 @@ var _coreData = require("@wordpress/core-data");
12
12
  var _icons = require("@wordpress/icons");
13
13
  var _router = require("@wordpress/router");
14
14
  var _url = require("@wordpress/url");
15
+ var _compose = require("@wordpress/compose");
15
16
  var _hooks = require("./hooks");
16
17
  var _lockUnlock = require("./lock-unlock");
17
18
  var _orderEntityRecordsBySearch = require("./utils/order-entity-records-by-search");
@@ -33,29 +34,41 @@ const icons = {
33
34
  wp_template: _icons.layout,
34
35
  wp_template_part: _icons.symbolFilled
35
36
  };
37
+ function useDebouncedValue(value) {
38
+ const [debouncedValue, setDebouncedValue] = (0, _element.useState)('');
39
+ const debounced = (0, _compose.useDebounce)(setDebouncedValue, 250);
40
+ (0, _element.useEffect)(() => {
41
+ debounced(value);
42
+ return () => debounced.cancel();
43
+ }, [debounced, value]);
44
+ return debouncedValue;
45
+ }
36
46
  const getNavigationCommandLoaderPerPostType = postType => function useNavigationCommandLoader({
37
47
  search
38
48
  }) {
39
49
  const history = useHistory();
40
50
  const isBlockBasedTheme = (0, _hooks.useIsBlockBasedTheme)();
51
+ const delayedSearch = useDebouncedValue(search);
41
52
  const {
42
53
  records,
43
54
  isLoading
44
55
  } = (0, _data.useSelect)(select => {
45
- const {
46
- getEntityRecords
47
- } = select(_coreData.store);
56
+ if (!delayedSearch) {
57
+ return {
58
+ isLoading: false
59
+ };
60
+ }
48
61
  const query = {
49
- search: !!search ? search : undefined,
62
+ search: delayedSearch,
50
63
  per_page: 10,
51
- orderby: search ? 'relevance' : 'date',
64
+ orderby: 'relevance',
52
65
  status: ['publish', 'future', 'draft', 'pending', 'private']
53
66
  };
54
67
  return {
55
- records: getEntityRecords('postType', postType, query),
68
+ records: select(_coreData.store).getEntityRecords('postType', postType, query),
56
69
  isLoading: !select(_coreData.store).hasFinishedResolution('getEntityRecords', ['postType', postType, query])
57
70
  };
58
- }, [search]);
71
+ }, [delayedSearch]);
59
72
  const commands = (0, _element.useMemo)(() => {
60
73
  return (records !== null && records !== void 0 ? records : []).map(record => {
61
74
  const command = {
@@ -1 +1 @@
1
- {"version":3,"names":["_commands","require","_i18n","_element","_data","_coreData","_icons","_router","_url","_hooks","_lockUnlock","_orderEntityRecordsBySearch","useHistory","useLocation","unlock","routerPrivateApis","icons","post","page","wp_template","layout","wp_template_part","symbolFilled","getNavigationCommandLoaderPerPostType","postType","useNavigationCommandLoader","search","history","isBlockBasedTheme","useIsBlockBasedTheme","records","isLoading","useSelect","select","getEntityRecords","coreStore","query","undefined","per_page","orderby","status","hasFinishedResolution","commands","useMemo","map","record","command","name","id","searchLabel","title","rendered","label","__","icon","callback","close","args","action","targetUrl","addQueryArgs","document","location","isSiteEditor","getPath","window","href","includes","extraArgs","canvas","getQueryArg","postId","push","getNavigationCommandLoaderPerTemplate","templateType","isPatternsPage","params","path","didAccessPatternsPage","orderedRecords","orderEntityRecordsBySearch","slice","usePageNavigationCommandLoader","usePostNavigationCommandLoader","useTemplateNavigationCommandLoader","useTemplatePartNavigationCommandLoader","useSiteEditorBasicNavigationCommands","isTemplatesAccessible","useIsTemplatesAccessible","result","navigation","styles","useSiteEditorNavigationCommands","useCommandLoader","hook","context"],"sources":["@wordpress/core-commands/src/site-editor-navigation-commands.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCommandLoader } from '@wordpress/commands';\nimport { __ } from '@wordpress/i18n';\nimport { useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tpost,\n\tpage,\n\tlayout,\n\tsymbolFilled,\n\tstyles,\n\tnavigation,\n} from '@wordpress/icons';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { getQueryArg, addQueryArgs, getPath } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { useIsTemplatesAccessible, useIsBlockBasedTheme } from './hooks';\nimport { unlock } from './lock-unlock';\nimport { orderEntityRecordsBySearch } from './utils/order-entity-records-by-search';\n\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\n\nconst icons = {\n\tpost,\n\tpage,\n\twp_template: layout,\n\twp_template_part: symbolFilled,\n};\n\nconst getNavigationCommandLoaderPerPostType = ( postType ) =>\n\tfunction useNavigationCommandLoader( { search } ) {\n\t\tconst history = useHistory();\n\t\tconst isBlockBasedTheme = useIsBlockBasedTheme();\n\t\tconst { records, isLoading } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\t\tconst query = {\n\t\t\t\t\tsearch: !! search ? search : undefined,\n\t\t\t\t\tper_page: 10,\n\t\t\t\t\torderby: search ? 'relevance' : 'date',\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: getEntityRecords( 'postType', postType, query ),\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[ search ]\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? 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};\n\n\t\t\t\tif (\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 = getPath( window.location.href )?.includes(\n\t\t\t\t\t'site-editor.php'\n\t\t\t\t);\n\t\t\t\tconst extraArgs = isSiteEditor\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tcanvas: getQueryArg(\n\t\t\t\t\t\t\t\twindow.location.href,\n\t\t\t\t\t\t\t\t'canvas'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t }\n\t\t\t\t\t: {};\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\tconst args = {\n\t\t\t\t\t\t\tpostType,\n\t\t\t\t\t\t\tpostId: record.id,\n\t\t\t\t\t\t\t...extraArgs,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tconst targetUrl = addQueryArgs(\n\t\t\t\t\t\t\t'site-editor.php',\n\t\t\t\t\t\t\targs\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.push( args );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = targetUrl;\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}, [ 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 location = useLocation();\n\n\t\tconst isPatternsPage =\n\t\t\tlocation?.params?.path === '/patterns' ||\n\t\t\tlocation?.params?.postType === 'wp_block';\n\t\tconst didAccessPatternsPage =\n\t\t\t!! location?.params?.didAccessPatternsPage;\n\n\t\tconst isBlockBasedTheme = useIsBlockBasedTheme();\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! isBlockBasedTheme &&\n\t\t\t\t! templateType === 'wp_template_part'\n\t\t\t) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\treturn orderedRecords.map( ( record ) => {\n\t\t\t\tconst isSiteEditor = getPath( window.location.href )?.includes(\n\t\t\t\t\t'site-editor.php'\n\t\t\t\t);\n\t\t\t\tconst extraArgs = isSiteEditor\n\t\t\t\t\t? { canvas: getQueryArg( window.location.href, 'canvas' ) }\n\t\t\t\t\t: {};\n\n\t\t\t\treturn {\n\t\t\t\t\tname: templateType + '-' + 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? record.title?.rendered\n\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\ticon: icons[ templateType ],\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tconst args = {\n\t\t\t\t\t\t\tpostType: templateType,\n\t\t\t\t\t\t\tpostId: record.id,\n\t\t\t\t\t\t\tdidAccessPatternsPage:\n\t\t\t\t\t\t\t\t! isBlockBasedTheme &&\n\t\t\t\t\t\t\t\t( isPatternsPage || didAccessPatternsPage )\n\t\t\t\t\t\t\t\t\t? 1\n\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t...extraArgs,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tconst targetUrl = addQueryArgs(\n\t\t\t\t\t\t\t'site-editor.php',\n\t\t\t\t\t\t\targs\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.push( args );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = targetUrl;\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}, [ isBlockBasedTheme, orderedRecords, history ] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading,\n\t\t};\n\t};\n\nconst usePageNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerPostType( 'page' );\nconst usePostNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerPostType( 'post' );\nconst useTemplateNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerTemplate( 'wp_template' );\nconst useTemplatePartNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerTemplate( 'wp_template_part' );\n\nfunction useSiteEditorBasicNavigationCommands() {\n\tconst history = useHistory();\n\tconst isSiteEditor = getPath( window.location.href )?.includes(\n\t\t'site-editor.php'\n\t);\n\tconst isTemplatesAccessible = useIsTemplatesAccessible();\n\tconst isBlockBasedTheme = useIsBlockBasedTheme();\n\tconst commands = useMemo( () => {\n\t\tconst result = [];\n\n\t\tif ( ! isTemplatesAccessible || ! isBlockBasedTheme ) {\n\t\t\treturn result;\n\t\t}\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-navigation',\n\t\t\tlabel: __( 'Navigation' ),\n\t\t\ticon: navigation,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/navigation',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-styles',\n\t\t\tlabel: __( 'Styles' ),\n\t\t\ticon: styles,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/wp_global_styles',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-pages',\n\t\t\tlabel: __( 'Pages' ),\n\t\t\ticon: page,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/page',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-templates',\n\t\t\tlabel: __( 'Templates' ),\n\t\t\ticon: layout,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/wp_template',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\treturn result;\n\t}, [ history, isSiteEditor, isTemplatesAccessible, isBlockBasedTheme ] );\n\n\treturn {\n\t\tcommands,\n\t\tisLoading: false,\n\t};\n}\n\nexport function useSiteEditorNavigationCommands() {\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-pages',\n\t\thook: usePageNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-posts',\n\t\thook: usePostNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-templates',\n\t\thook: useTemplateNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-template-parts',\n\t\thook: useTemplatePartNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/basic-navigation',\n\t\thook: useSiteEditorBasicNavigationCommands,\n\t\tcontext: 'site-editor',\n\t} );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_commands","require","_i18n","_element","_data","_coreData","_icons","_router","_url","_compose","_hooks","_lockUnlock","_orderEntityRecordsBySearch","useHistory","useLocation","unlock","routerPrivateApis","icons","post","page","wp_template","layout","wp_template_part","symbolFilled","useDebouncedValue","value","debouncedValue","setDebouncedValue","useState","debounced","useDebounce","useEffect","cancel","getNavigationCommandLoaderPerPostType","postType","useNavigationCommandLoader","search","history","isBlockBasedTheme","useIsBlockBasedTheme","delayedSearch","records","isLoading","useSelect","select","query","per_page","orderby","status","coreStore","getEntityRecords","hasFinishedResolution","commands","useMemo","map","record","command","name","id","searchLabel","title","rendered","label","__","icon","callback","close","args","action","targetUrl","addQueryArgs","document","location","isSiteEditor","getPath","window","href","includes","extraArgs","canvas","getQueryArg","postId","push","getNavigationCommandLoaderPerTemplate","templateType","isPatternsPage","params","path","didAccessPatternsPage","orderedRecords","orderEntityRecordsBySearch","slice","undefined","usePageNavigationCommandLoader","usePostNavigationCommandLoader","useTemplateNavigationCommandLoader","useTemplatePartNavigationCommandLoader","useSiteEditorBasicNavigationCommands","isTemplatesAccessible","useIsTemplatesAccessible","result","navigation","styles","useSiteEditorNavigationCommands","useCommandLoader","hook","context"],"sources":["@wordpress/core-commands/src/site-editor-navigation-commands.js"],"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\tsymbolFilled,\n\tstyles,\n\tnavigation,\n} from '@wordpress/icons';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { getQueryArg, addQueryArgs, getPath } from '@wordpress/url';\nimport { useDebounce } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { useIsTemplatesAccessible, useIsBlockBasedTheme } from './hooks';\nimport { unlock } from './lock-unlock';\nimport { orderEntityRecordsBySearch } from './utils/order-entity-records-by-search';\n\nconst { useHistory, useLocation } = 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\nconst getNavigationCommandLoaderPerPostType = ( postType ) =>\n\tfunction useNavigationCommandLoader( { search } ) {\n\t\tconst history = useHistory();\n\t\tconst isBlockBasedTheme = useIsBlockBasedTheme();\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? 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};\n\n\t\t\t\tif (\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 = getPath( window.location.href )?.includes(\n\t\t\t\t\t'site-editor.php'\n\t\t\t\t);\n\t\t\t\tconst extraArgs = isSiteEditor\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tcanvas: getQueryArg(\n\t\t\t\t\t\t\t\twindow.location.href,\n\t\t\t\t\t\t\t\t'canvas'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t }\n\t\t\t\t\t: {};\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\tconst args = {\n\t\t\t\t\t\t\tpostType,\n\t\t\t\t\t\t\tpostId: record.id,\n\t\t\t\t\t\t\t...extraArgs,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tconst targetUrl = addQueryArgs(\n\t\t\t\t\t\t\t'site-editor.php',\n\t\t\t\t\t\t\targs\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.push( args );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = targetUrl;\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}, [ 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 location = useLocation();\n\n\t\tconst isPatternsPage =\n\t\t\tlocation?.params?.path === '/patterns' ||\n\t\t\tlocation?.params?.postType === 'wp_block';\n\t\tconst didAccessPatternsPage =\n\t\t\t!! location?.params?.didAccessPatternsPage;\n\n\t\tconst isBlockBasedTheme = useIsBlockBasedTheme();\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! isBlockBasedTheme &&\n\t\t\t\t! templateType === 'wp_template_part'\n\t\t\t) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\treturn orderedRecords.map( ( record ) => {\n\t\t\t\tconst isSiteEditor = getPath( window.location.href )?.includes(\n\t\t\t\t\t'site-editor.php'\n\t\t\t\t);\n\t\t\t\tconst extraArgs = isSiteEditor\n\t\t\t\t\t? { canvas: getQueryArg( window.location.href, 'canvas' ) }\n\t\t\t\t\t: {};\n\n\t\t\t\treturn {\n\t\t\t\t\tname: templateType + '-' + 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? record.title?.rendered\n\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\ticon: icons[ templateType ],\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tconst args = {\n\t\t\t\t\t\t\tpostType: templateType,\n\t\t\t\t\t\t\tpostId: record.id,\n\t\t\t\t\t\t\tdidAccessPatternsPage:\n\t\t\t\t\t\t\t\t! isBlockBasedTheme &&\n\t\t\t\t\t\t\t\t( isPatternsPage || didAccessPatternsPage )\n\t\t\t\t\t\t\t\t\t? 1\n\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t...extraArgs,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tconst targetUrl = addQueryArgs(\n\t\t\t\t\t\t\t'site-editor.php',\n\t\t\t\t\t\t\targs\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.push( args );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = targetUrl;\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}, [ isBlockBasedTheme, orderedRecords, history ] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading,\n\t\t};\n\t};\n\nconst usePageNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerPostType( 'page' );\nconst usePostNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerPostType( 'post' );\nconst useTemplateNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerTemplate( 'wp_template' );\nconst useTemplatePartNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerTemplate( 'wp_template_part' );\n\nfunction useSiteEditorBasicNavigationCommands() {\n\tconst history = useHistory();\n\tconst isSiteEditor = getPath( window.location.href )?.includes(\n\t\t'site-editor.php'\n\t);\n\tconst isTemplatesAccessible = useIsTemplatesAccessible();\n\tconst isBlockBasedTheme = useIsBlockBasedTheme();\n\tconst commands = useMemo( () => {\n\t\tconst result = [];\n\n\t\tif ( ! isTemplatesAccessible || ! isBlockBasedTheme ) {\n\t\t\treturn result;\n\t\t}\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-navigation',\n\t\t\tlabel: __( 'Navigation' ),\n\t\t\ticon: navigation,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/navigation',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-styles',\n\t\t\tlabel: __( 'Styles' ),\n\t\t\ticon: styles,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/wp_global_styles',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-pages',\n\t\t\tlabel: __( 'Pages' ),\n\t\t\ticon: page,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/page',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-templates',\n\t\t\tlabel: __( 'Templates' ),\n\t\t\ticon: layout,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/wp_template',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\treturn result;\n\t}, [ history, isSiteEditor, isTemplatesAccessible, isBlockBasedTheme ] );\n\n\treturn {\n\t\tcommands,\n\t\tisLoading: false,\n\t};\n}\n\nexport function useSiteEditorNavigationCommands() {\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-pages',\n\t\thook: usePageNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-posts',\n\t\thook: usePostNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-templates',\n\t\thook: useTemplateNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-template-parts',\n\t\thook: useTemplatePartNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/basic-navigation',\n\t\thook: useSiteEditorBasicNavigationCommands,\n\t\tcontext: 'site-editor',\n\t} );\n}\n"],"mappings":"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"}
@@ -3,12 +3,13 @@
3
3
  */
4
4
  import { useCommandLoader } from '@wordpress/commands';
5
5
  import { __ } from '@wordpress/i18n';
6
- import { useMemo } from '@wordpress/element';
6
+ import { useMemo, useEffect, useState } from '@wordpress/element';
7
7
  import { useSelect } from '@wordpress/data';
8
8
  import { store as coreStore } from '@wordpress/core-data';
9
9
  import { post, page, layout, symbolFilled, styles, navigation } from '@wordpress/icons';
10
10
  import { privateApis as routerPrivateApis } from '@wordpress/router';
11
11
  import { getQueryArg, addQueryArgs, getPath } from '@wordpress/url';
12
+ import { useDebounce } from '@wordpress/compose';
12
13
 
13
14
  /**
14
15
  * Internal dependencies
@@ -26,29 +27,41 @@ const icons = {
26
27
  wp_template: layout,
27
28
  wp_template_part: symbolFilled
28
29
  };
30
+ function useDebouncedValue(value) {
31
+ const [debouncedValue, setDebouncedValue] = useState('');
32
+ const debounced = useDebounce(setDebouncedValue, 250);
33
+ useEffect(() => {
34
+ debounced(value);
35
+ return () => debounced.cancel();
36
+ }, [debounced, value]);
37
+ return debouncedValue;
38
+ }
29
39
  const getNavigationCommandLoaderPerPostType = postType => function useNavigationCommandLoader({
30
40
  search
31
41
  }) {
32
42
  const history = useHistory();
33
43
  const isBlockBasedTheme = useIsBlockBasedTheme();
44
+ const delayedSearch = useDebouncedValue(search);
34
45
  const {
35
46
  records,
36
47
  isLoading
37
48
  } = useSelect(select => {
38
- const {
39
- getEntityRecords
40
- } = select(coreStore);
49
+ if (!delayedSearch) {
50
+ return {
51
+ isLoading: false
52
+ };
53
+ }
41
54
  const query = {
42
- search: !!search ? search : undefined,
55
+ search: delayedSearch,
43
56
  per_page: 10,
44
- orderby: search ? 'relevance' : 'date',
57
+ orderby: 'relevance',
45
58
  status: ['publish', 'future', 'draft', 'pending', 'private']
46
59
  };
47
60
  return {
48
- records: getEntityRecords('postType', postType, query),
61
+ records: select(coreStore).getEntityRecords('postType', postType, query),
49
62
  isLoading: !select(coreStore).hasFinishedResolution('getEntityRecords', ['postType', postType, query])
50
63
  };
51
- }, [search]);
64
+ }, [delayedSearch]);
52
65
  const commands = useMemo(() => {
53
66
  return (records !== null && records !== void 0 ? records : []).map(record => {
54
67
  const command = {
@@ -1 +1 @@
1
- {"version":3,"names":["useCommandLoader","__","useMemo","useSelect","store","coreStore","post","page","layout","symbolFilled","styles","navigation","privateApis","routerPrivateApis","getQueryArg","addQueryArgs","getPath","useIsTemplatesAccessible","useIsBlockBasedTheme","unlock","orderEntityRecordsBySearch","useHistory","useLocation","icons","wp_template","wp_template_part","getNavigationCommandLoaderPerPostType","postType","useNavigationCommandLoader","search","history","isBlockBasedTheme","records","isLoading","select","getEntityRecords","query","undefined","per_page","orderby","status","hasFinishedResolution","commands","map","record","command","name","id","searchLabel","title","rendered","label","icon","callback","close","args","action","targetUrl","document","location","isSiteEditor","window","href","includes","extraArgs","canvas","postId","push","getNavigationCommandLoaderPerTemplate","templateType","isPatternsPage","params","path","didAccessPatternsPage","orderedRecords","slice","usePageNavigationCommandLoader","usePostNavigationCommandLoader","useTemplateNavigationCommandLoader","useTemplatePartNavigationCommandLoader","useSiteEditorBasicNavigationCommands","isTemplatesAccessible","result","useSiteEditorNavigationCommands","hook","context"],"sources":["@wordpress/core-commands/src/site-editor-navigation-commands.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCommandLoader } from '@wordpress/commands';\nimport { __ } from '@wordpress/i18n';\nimport { useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tpost,\n\tpage,\n\tlayout,\n\tsymbolFilled,\n\tstyles,\n\tnavigation,\n} from '@wordpress/icons';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { getQueryArg, addQueryArgs, getPath } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { useIsTemplatesAccessible, useIsBlockBasedTheme } from './hooks';\nimport { unlock } from './lock-unlock';\nimport { orderEntityRecordsBySearch } from './utils/order-entity-records-by-search';\n\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\n\nconst icons = {\n\tpost,\n\tpage,\n\twp_template: layout,\n\twp_template_part: symbolFilled,\n};\n\nconst getNavigationCommandLoaderPerPostType = ( postType ) =>\n\tfunction useNavigationCommandLoader( { search } ) {\n\t\tconst history = useHistory();\n\t\tconst isBlockBasedTheme = useIsBlockBasedTheme();\n\t\tconst { records, isLoading } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\t\tconst query = {\n\t\t\t\t\tsearch: !! search ? search : undefined,\n\t\t\t\t\tper_page: 10,\n\t\t\t\t\torderby: search ? 'relevance' : 'date',\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: getEntityRecords( 'postType', postType, query ),\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[ search ]\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? 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};\n\n\t\t\t\tif (\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 = getPath( window.location.href )?.includes(\n\t\t\t\t\t'site-editor.php'\n\t\t\t\t);\n\t\t\t\tconst extraArgs = isSiteEditor\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tcanvas: getQueryArg(\n\t\t\t\t\t\t\t\twindow.location.href,\n\t\t\t\t\t\t\t\t'canvas'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t }\n\t\t\t\t\t: {};\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\tconst args = {\n\t\t\t\t\t\t\tpostType,\n\t\t\t\t\t\t\tpostId: record.id,\n\t\t\t\t\t\t\t...extraArgs,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tconst targetUrl = addQueryArgs(\n\t\t\t\t\t\t\t'site-editor.php',\n\t\t\t\t\t\t\targs\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.push( args );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = targetUrl;\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}, [ 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 location = useLocation();\n\n\t\tconst isPatternsPage =\n\t\t\tlocation?.params?.path === '/patterns' ||\n\t\t\tlocation?.params?.postType === 'wp_block';\n\t\tconst didAccessPatternsPage =\n\t\t\t!! location?.params?.didAccessPatternsPage;\n\n\t\tconst isBlockBasedTheme = useIsBlockBasedTheme();\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! isBlockBasedTheme &&\n\t\t\t\t! templateType === 'wp_template_part'\n\t\t\t) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\treturn orderedRecords.map( ( record ) => {\n\t\t\t\tconst isSiteEditor = getPath( window.location.href )?.includes(\n\t\t\t\t\t'site-editor.php'\n\t\t\t\t);\n\t\t\t\tconst extraArgs = isSiteEditor\n\t\t\t\t\t? { canvas: getQueryArg( window.location.href, 'canvas' ) }\n\t\t\t\t\t: {};\n\n\t\t\t\treturn {\n\t\t\t\t\tname: templateType + '-' + 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? record.title?.rendered\n\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\ticon: icons[ templateType ],\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tconst args = {\n\t\t\t\t\t\t\tpostType: templateType,\n\t\t\t\t\t\t\tpostId: record.id,\n\t\t\t\t\t\t\tdidAccessPatternsPage:\n\t\t\t\t\t\t\t\t! isBlockBasedTheme &&\n\t\t\t\t\t\t\t\t( isPatternsPage || didAccessPatternsPage )\n\t\t\t\t\t\t\t\t\t? 1\n\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t...extraArgs,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tconst targetUrl = addQueryArgs(\n\t\t\t\t\t\t\t'site-editor.php',\n\t\t\t\t\t\t\targs\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.push( args );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = targetUrl;\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}, [ isBlockBasedTheme, orderedRecords, history ] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading,\n\t\t};\n\t};\n\nconst usePageNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerPostType( 'page' );\nconst usePostNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerPostType( 'post' );\nconst useTemplateNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerTemplate( 'wp_template' );\nconst useTemplatePartNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerTemplate( 'wp_template_part' );\n\nfunction useSiteEditorBasicNavigationCommands() {\n\tconst history = useHistory();\n\tconst isSiteEditor = getPath( window.location.href )?.includes(\n\t\t'site-editor.php'\n\t);\n\tconst isTemplatesAccessible = useIsTemplatesAccessible();\n\tconst isBlockBasedTheme = useIsBlockBasedTheme();\n\tconst commands = useMemo( () => {\n\t\tconst result = [];\n\n\t\tif ( ! isTemplatesAccessible || ! isBlockBasedTheme ) {\n\t\t\treturn result;\n\t\t}\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-navigation',\n\t\t\tlabel: __( 'Navigation' ),\n\t\t\ticon: navigation,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/navigation',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-styles',\n\t\t\tlabel: __( 'Styles' ),\n\t\t\ticon: styles,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/wp_global_styles',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-pages',\n\t\t\tlabel: __( 'Pages' ),\n\t\t\ticon: page,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/page',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-templates',\n\t\t\tlabel: __( 'Templates' ),\n\t\t\ticon: layout,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/wp_template',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\treturn result;\n\t}, [ history, isSiteEditor, isTemplatesAccessible, isBlockBasedTheme ] );\n\n\treturn {\n\t\tcommands,\n\t\tisLoading: false,\n\t};\n}\n\nexport function useSiteEditorNavigationCommands() {\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-pages',\n\t\thook: usePageNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-posts',\n\t\thook: usePostNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-templates',\n\t\thook: useTemplateNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-template-parts',\n\t\thook: useTemplatePartNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/basic-navigation',\n\t\thook: useSiteEditorBasicNavigationCommands,\n\t\tcontext: 'site-editor',\n\t} );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,gBAAgB,QAAQ,qBAAqB;AACtD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SACCC,IAAI,EACJC,IAAI,EACJC,MAAM,EACNC,YAAY,EACZC,MAAM,EACNC,UAAU,QACJ,kBAAkB;AACzB,SAASC,WAAW,IAAIC,iBAAiB,QAAQ,mBAAmB;AACpE,SAASC,WAAW,EAAEC,YAAY,EAAEC,OAAO,QAAQ,gBAAgB;;AAEnE;AACA;AACA;AACA,SAASC,wBAAwB,EAAEC,oBAAoB,QAAQ,SAAS;AACxE,SAASC,MAAM,QAAQ,eAAe;AACtC,SAASC,0BAA0B,QAAQ,wCAAwC;AAEnF,MAAM;EAAEC,UAAU;EAAEC;AAAY,CAAC,GAAGH,MAAM,CAAEN,iBAAkB,CAAC;AAE/D,MAAMU,KAAK,GAAG;EACbjB,IAAI;EACJC,IAAI;EACJiB,WAAW,EAAEhB,MAAM;EACnBiB,gBAAgB,EAAEhB;AACnB,CAAC;AAED,MAAMiB,qCAAqC,GAAKC,QAAQ,IACvD,SAASC,0BAA0BA,CAAE;EAAEC;AAAO,CAAC,EAAG;EACjD,MAAMC,OAAO,GAAGT,UAAU,CAAC,CAAC;EAC5B,MAAMU,iBAAiB,GAAGb,oBAAoB,CAAC,CAAC;EAChD,MAAM;IAAEc,OAAO;IAAEC;EAAU,CAAC,GAAG9B,SAAS,CACrC+B,MAAM,IAAM;IACb,MAAM;MAAEC;IAAiB,CAAC,GAAGD,MAAM,CAAE7B,SAAU,CAAC;IAChD,MAAM+B,KAAK,GAAG;MACbP,MAAM,EAAE,CAAC,CAAEA,MAAM,GAAGA,MAAM,GAAGQ,SAAS;MACtCC,QAAQ,EAAE,EAAE;MACZC,OAAO,EAAEV,MAAM,GAAG,WAAW,GAAG,MAAM;MACtCW,MAAM,EAAE,CACP,SAAS,EACT,QAAQ,EACR,OAAO,EACP,SAAS,EACT,SAAS;IAEX,CAAC;IACD,OAAO;MACNR,OAAO,EAAEG,gBAAgB,CAAE,UAAU,EAAER,QAAQ,EAAES,KAAM,CAAC;MACxDH,SAAS,EAAE,CAAEC,MAAM,CAAE7B,SAAU,CAAC,CAACoC,qBAAqB,CACrD,kBAAkB,EAClB,CAAE,UAAU,EAAEd,QAAQ,EAAES,KAAK,CAC9B;IACD,CAAC;EACF,CAAC,EACD,CAAEP,MAAM,CACT,CAAC;EAED,MAAMa,QAAQ,GAAGxC,OAAO,CAAE,MAAM;IAC/B,OAAO,CAAE8B,OAAO,aAAPA,OAAO,cAAPA,OAAO,GAAI,EAAE,EAAGW,GAAG,CAAIC,MAAM,IAAM;MAC3C,MAAMC,OAAO,GAAG;QACfC,IAAI,EAAEnB,QAAQ,GAAG,GAAG,GAAGiB,MAAM,CAACG,EAAE;QAChCC,WAAW,EAAEJ,MAAM,CAACK,KAAK,EAAEC,QAAQ,GAAG,GAAG,GAAGN,MAAM,CAACG,EAAE;QACrDI,KAAK,EAAEP,MAAM,CAACK,KAAK,EAAEC,QAAQ,GAC1BN,MAAM,CAACK,KAAK,EAAEC,QAAQ,GACtBjD,EAAE,CAAE,YAAa,CAAC;QACrBmD,IAAI,EAAE7B,KAAK,CAAEI,QAAQ;MACtB,CAAC;MAED,IACCA,QAAQ,KAAK,MAAM,IACjBA,QAAQ,KAAK,MAAM,IAAI,CAAEI,iBAAmB,EAC7C;QACD,OAAO;UACN,GAAGc,OAAO;UACVQ,QAAQ,EAAEA,CAAE;YAAEC;UAAM,CAAC,KAAM;YAC1B,MAAMC,IAAI,GAAG;cACZjD,IAAI,EAAEsC,MAAM,CAACG,EAAE;cACfS,MAAM,EAAE;YACT,CAAC;YACD,MAAMC,SAAS,GAAG1C,YAAY,CAAE,UAAU,EAAEwC,IAAK,CAAC;YAClDG,QAAQ,CAACC,QAAQ,GAAGF,SAAS;YAC7BH,KAAK,CAAC,CAAC;UACR;QACD,CAAC;MACF;MAEA,MAAMM,YAAY,GAAG5C,OAAO,CAAE6C,MAAM,CAACF,QAAQ,CAACG,IAAK,CAAC,EAAEC,QAAQ,CAC7D,iBACD,CAAC;MACD,MAAMC,SAAS,GAAGJ,YAAY,GAC3B;QACAK,MAAM,EAAEnD,WAAW,CAClB+C,MAAM,CAACF,QAAQ,CAACG,IAAI,EACpB,QACD;MACA,CAAC,GACD,CAAC,CAAC;MAEL,OAAO;QACN,GAAGjB,OAAO;QACVQ,QAAQ,EAAEA,CAAE;UAAEC;QAAM,CAAC,KAAM;UAC1B,MAAMC,IAAI,GAAG;YACZ5B,QAAQ;YACRuC,MAAM,EAAEtB,MAAM,CAACG,EAAE;YACjB,GAAGiB;UACJ,CAAC;UACD,MAAMP,SAAS,GAAG1C,YAAY,CAC7B,iBAAiB,EACjBwC,IACD,CAAC;UACD,IAAKK,YAAY,EAAG;YACnB9B,OAAO,CAACqC,IAAI,CAAEZ,IAAK,CAAC;UACrB,CAAC,MAAM;YACNG,QAAQ,CAACC,QAAQ,GAAGF,SAAS;UAC9B;UACAH,KAAK,CAAC,CAAC;QACR;MACD,CAAC;IACF,CAAE,CAAC;EACJ,CAAC,EAAE,CAAEtB,OAAO,EAAED,iBAAiB,EAAED,OAAO,CAAG,CAAC;EAE5C,OAAO;IACNY,QAAQ;IACRT;EACD,CAAC;AACF,CAAC;AAEF,MAAMmC,qCAAqC,GAAKC,YAAY,IAC3D,SAASzC,0BAA0BA,CAAE;EAAEC;AAAO,CAAC,EAAG;EACjD,MAAMC,OAAO,GAAGT,UAAU,CAAC,CAAC;EAC5B,MAAMsC,QAAQ,GAAGrC,WAAW,CAAC,CAAC;EAE9B,MAAMgD,cAAc,GACnBX,QAAQ,EAAEY,MAAM,EAAEC,IAAI,KAAK,WAAW,IACtCb,QAAQ,EAAEY,MAAM,EAAE5C,QAAQ,KAAK,UAAU;EAC1C,MAAM8C,qBAAqB,GAC1B,CAAC,CAAEd,QAAQ,EAAEY,MAAM,EAAEE,qBAAqB;EAE3C,MAAM1C,iBAAiB,GAAGb,oBAAoB,CAAC,CAAC;EAChD,MAAM;IAAEc,OAAO;IAAEC;EAAU,CAAC,GAAG9B,SAAS,CAAI+B,MAAM,IAAM;IACvD,MAAM;MAAEC;IAAiB,CAAC,GAAGD,MAAM,CAAE7B,SAAU,CAAC;IAChD,MAAM+B,KAAK,GAAG;MAAEE,QAAQ,EAAE,CAAC;IAAE,CAAC;IAC9B,OAAO;MACNN,OAAO,EAAEG,gBAAgB,CAAE,UAAU,EAAEkC,YAAY,EAAEjC,KAAM,CAAC;MAC5DH,SAAS,EAAE,CAAEC,MAAM,CAAE7B,SAAU,CAAC,CAACoC,qBAAqB,CACrD,kBAAkB,EAClB,CAAE,UAAU,EAAE4B,YAAY,EAAEjC,KAAK,CAClC;IACD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;;EAEP;AACF;AACA;AACA;AACA;EACE,MAAMsC,cAAc,GAAGxE,OAAO,CAAE,MAAM;IACrC,OAAOkB,0BAA0B,CAAEY,OAAO,EAAEH,MAAO,CAAC,CAAC8C,KAAK,CAAE,CAAC,EAAE,EAAG,CAAC;EACpE,CAAC,EAAE,CAAE3C,OAAO,EAAEH,MAAM,CAAG,CAAC;EAExB,MAAMa,QAAQ,GAAGxC,OAAO,CAAE,MAAM;IAC/B,IACC,CAAE6B,iBAAiB,IACnB,CAAEsC,YAAY,KAAK,kBAAkB,EACpC;MACD,OAAO,EAAE;IACV;IACA,OAAOK,cAAc,CAAC/B,GAAG,CAAIC,MAAM,IAAM;MACxC,MAAMgB,YAAY,GAAG5C,OAAO,CAAE6C,MAAM,CAACF,QAAQ,CAACG,IAAK,CAAC,EAAEC,QAAQ,CAC7D,iBACD,CAAC;MACD,MAAMC,SAAS,GAAGJ,YAAY,GAC3B;QAAEK,MAAM,EAAEnD,WAAW,CAAE+C,MAAM,CAACF,QAAQ,CAACG,IAAI,EAAE,QAAS;MAAE,CAAC,GACzD,CAAC,CAAC;MAEL,OAAO;QACNhB,IAAI,EAAEuB,YAAY,GAAG,GAAG,GAAGzB,MAAM,CAACG,EAAE;QACpCC,WAAW,EAAEJ,MAAM,CAACK,KAAK,EAAEC,QAAQ,GAAG,GAAG,GAAGN,MAAM,CAACG,EAAE;QACrDI,KAAK,EAAEP,MAAM,CAACK,KAAK,EAAEC,QAAQ,GAC1BN,MAAM,CAACK,KAAK,EAAEC,QAAQ,GACtBjD,EAAE,CAAE,YAAa,CAAC;QACrBmD,IAAI,EAAE7B,KAAK,CAAE8C,YAAY,CAAE;QAC3BhB,QAAQ,EAAEA,CAAE;UAAEC;QAAM,CAAC,KAAM;UAC1B,MAAMC,IAAI,GAAG;YACZ5B,QAAQ,EAAE0C,YAAY;YACtBH,MAAM,EAAEtB,MAAM,CAACG,EAAE;YACjB0B,qBAAqB,EACpB,CAAE1C,iBAAiB,KACjBuC,cAAc,IAAIG,qBAAqB,CAAE,GACxC,CAAC,GACDpC,SAAS;YACb,GAAG2B;UACJ,CAAC;UACD,MAAMP,SAAS,GAAG1C,YAAY,CAC7B,iBAAiB,EACjBwC,IACD,CAAC;UACD,IAAKK,YAAY,EAAG;YACnB9B,OAAO,CAACqC,IAAI,CAAEZ,IAAK,CAAC;UACrB,CAAC,MAAM;YACNG,QAAQ,CAACC,QAAQ,GAAGF,SAAS;UAC9B;UACAH,KAAK,CAAC,CAAC;QACR;MACD,CAAC;IACF,CAAE,CAAC;EACJ,CAAC,EAAE,CAAEvB,iBAAiB,EAAE2C,cAAc,EAAE5C,OAAO,CAAG,CAAC;EAEnD,OAAO;IACNY,QAAQ;IACRT;EACD,CAAC;AACF,CAAC;AAEF,MAAM2C,8BAA8B,GACnClD,qCAAqC,CAAE,MAAO,CAAC;AAChD,MAAMmD,8BAA8B,GACnCnD,qCAAqC,CAAE,MAAO,CAAC;AAChD,MAAMoD,kCAAkC,GACvCV,qCAAqC,CAAE,aAAc,CAAC;AACvD,MAAMW,sCAAsC,GAC3CX,qCAAqC,CAAE,kBAAmB,CAAC;AAE5D,SAASY,oCAAoCA,CAAA,EAAG;EAC/C,MAAMlD,OAAO,GAAGT,UAAU,CAAC,CAAC;EAC5B,MAAMuC,YAAY,GAAG5C,OAAO,CAAE6C,MAAM,CAACF,QAAQ,CAACG,IAAK,CAAC,EAAEC,QAAQ,CAC7D,iBACD,CAAC;EACD,MAAMkB,qBAAqB,GAAGhE,wBAAwB,CAAC,CAAC;EACxD,MAAMc,iBAAiB,GAAGb,oBAAoB,CAAC,CAAC;EAChD,MAAMwB,QAAQ,GAAGxC,OAAO,CAAE,MAAM;IAC/B,MAAMgF,MAAM,GAAG,EAAE;IAEjB,IAAK,CAAED,qBAAqB,IAAI,CAAElD,iBAAiB,EAAG;MACrD,OAAOmD,MAAM;IACd;IAEAA,MAAM,CAACf,IAAI,CAAE;MACZrB,IAAI,EAAE,gCAAgC;MACtCK,KAAK,EAAElD,EAAE,CAAE,YAAa,CAAC;MACzBmD,IAAI,EAAEzC,UAAU;MAChB0C,QAAQ,EAAEA,CAAE;QAAEC;MAAM,CAAC,KAAM;QAC1B,MAAMC,IAAI,GAAG;UACZiB,IAAI,EAAE;QACP,CAAC;QACD,MAAMf,SAAS,GAAG1C,YAAY,CAAE,iBAAiB,EAAEwC,IAAK,CAAC;QACzD,IAAKK,YAAY,EAAG;UACnB9B,OAAO,CAACqC,IAAI,CAAEZ,IAAK,CAAC;QACrB,CAAC,MAAM;UACNG,QAAQ,CAACC,QAAQ,GAAGF,SAAS;QAC9B;QACAH,KAAK,CAAC,CAAC;MACR;IACD,CAAE,CAAC;IAEH4B,MAAM,CAACf,IAAI,CAAE;MACZrB,IAAI,EAAE,4BAA4B;MAClCK,KAAK,EAAElD,EAAE,CAAE,QAAS,CAAC;MACrBmD,IAAI,EAAE1C,MAAM;MACZ2C,QAAQ,EAAEA,CAAE;QAAEC;MAAM,CAAC,KAAM;QAC1B,MAAMC,IAAI,GAAG;UACZiB,IAAI,EAAE;QACP,CAAC;QACD,MAAMf,SAAS,GAAG1C,YAAY,CAAE,iBAAiB,EAAEwC,IAAK,CAAC;QACzD,IAAKK,YAAY,EAAG;UACnB9B,OAAO,CAACqC,IAAI,CAAEZ,IAAK,CAAC;QACrB,CAAC,MAAM;UACNG,QAAQ,CAACC,QAAQ,GAAGF,SAAS;QAC9B;QACAH,KAAK,CAAC,CAAC;MACR;IACD,CAAE,CAAC;IAEH4B,MAAM,CAACf,IAAI,CAAE;MACZrB,IAAI,EAAE,2BAA2B;MACjCK,KAAK,EAAElD,EAAE,CAAE,OAAQ,CAAC;MACpBmD,IAAI,EAAE7C,IAAI;MACV8C,QAAQ,EAAEA,CAAE;QAAEC;MAAM,CAAC,KAAM;QAC1B,MAAMC,IAAI,GAAG;UACZiB,IAAI,EAAE;QACP,CAAC;QACD,MAAMf,SAAS,GAAG1C,YAAY,CAAE,iBAAiB,EAAEwC,IAAK,CAAC;QACzD,IAAKK,YAAY,EAAG;UACnB9B,OAAO,CAACqC,IAAI,CAAEZ,IAAK,CAAC;QACrB,CAAC,MAAM;UACNG,QAAQ,CAACC,QAAQ,GAAGF,SAAS;QAC9B;QACAH,KAAK,CAAC,CAAC;MACR;IACD,CAAE,CAAC;IAEH4B,MAAM,CAACf,IAAI,CAAE;MACZrB,IAAI,EAAE,+BAA+B;MACrCK,KAAK,EAAElD,EAAE,CAAE,WAAY,CAAC;MACxBmD,IAAI,EAAE5C,MAAM;MACZ6C,QAAQ,EAAEA,CAAE;QAAEC;MAAM,CAAC,KAAM;QAC1B,MAAMC,IAAI,GAAG;UACZiB,IAAI,EAAE;QACP,CAAC;QACD,MAAMf,SAAS,GAAG1C,YAAY,CAAE,iBAAiB,EAAEwC,IAAK,CAAC;QACzD,IAAKK,YAAY,EAAG;UACnB9B,OAAO,CAACqC,IAAI,CAAEZ,IAAK,CAAC;QACrB,CAAC,MAAM;UACNG,QAAQ,CAACC,QAAQ,GAAGF,SAAS;QAC9B;QACAH,KAAK,CAAC,CAAC;MACR;IACD,CAAE,CAAC;IAEH,OAAO4B,MAAM;EACd,CAAC,EAAE,CAAEpD,OAAO,EAAE8B,YAAY,EAAEqB,qBAAqB,EAAElD,iBAAiB,CAAG,CAAC;EAExE,OAAO;IACNW,QAAQ;IACRT,SAAS,EAAE;EACZ,CAAC;AACF;AAEA,OAAO,SAASkD,+BAA+BA,CAAA,EAAG;EACjDnF,gBAAgB,CAAE;IACjB8C,IAAI,EAAE,+BAA+B;IACrCsC,IAAI,EAAER;EACP,CAAE,CAAC;EACH5E,gBAAgB,CAAE;IACjB8C,IAAI,EAAE,+BAA+B;IACrCsC,IAAI,EAAEP;EACP,CAAE,CAAC;EACH7E,gBAAgB,CAAE;IACjB8C,IAAI,EAAE,mCAAmC;IACzCsC,IAAI,EAAEN;EACP,CAAE,CAAC;EACH9E,gBAAgB,CAAE;IACjB8C,IAAI,EAAE,wCAAwC;IAC9CsC,IAAI,EAAEL;EACP,CAAE,CAAC;EACH/E,gBAAgB,CAAE;IACjB8C,IAAI,EAAE,iCAAiC;IACvCsC,IAAI,EAAEJ,oCAAoC;IAC1CK,OAAO,EAAE;EACV,CAAE,CAAC;AACJ"}
1
+ {"version":3,"names":["useCommandLoader","__","useMemo","useEffect","useState","useSelect","store","coreStore","post","page","layout","symbolFilled","styles","navigation","privateApis","routerPrivateApis","getQueryArg","addQueryArgs","getPath","useDebounce","useIsTemplatesAccessible","useIsBlockBasedTheme","unlock","orderEntityRecordsBySearch","useHistory","useLocation","icons","wp_template","wp_template_part","useDebouncedValue","value","debouncedValue","setDebouncedValue","debounced","cancel","getNavigationCommandLoaderPerPostType","postType","useNavigationCommandLoader","search","history","isBlockBasedTheme","delayedSearch","records","isLoading","select","query","per_page","orderby","status","getEntityRecords","hasFinishedResolution","commands","map","record","command","name","id","searchLabel","title","rendered","label","icon","callback","close","args","action","targetUrl","document","location","isSiteEditor","window","href","includes","extraArgs","canvas","postId","push","getNavigationCommandLoaderPerTemplate","templateType","isPatternsPage","params","path","didAccessPatternsPage","orderedRecords","slice","undefined","usePageNavigationCommandLoader","usePostNavigationCommandLoader","useTemplateNavigationCommandLoader","useTemplatePartNavigationCommandLoader","useSiteEditorBasicNavigationCommands","isTemplatesAccessible","result","useSiteEditorNavigationCommands","hook","context"],"sources":["@wordpress/core-commands/src/site-editor-navigation-commands.js"],"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\tsymbolFilled,\n\tstyles,\n\tnavigation,\n} from '@wordpress/icons';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { getQueryArg, addQueryArgs, getPath } from '@wordpress/url';\nimport { useDebounce } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { useIsTemplatesAccessible, useIsBlockBasedTheme } from './hooks';\nimport { unlock } from './lock-unlock';\nimport { orderEntityRecordsBySearch } from './utils/order-entity-records-by-search';\n\nconst { useHistory, useLocation } = 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\nconst getNavigationCommandLoaderPerPostType = ( postType ) =>\n\tfunction useNavigationCommandLoader( { search } ) {\n\t\tconst history = useHistory();\n\t\tconst isBlockBasedTheme = useIsBlockBasedTheme();\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? 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};\n\n\t\t\t\tif (\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 = getPath( window.location.href )?.includes(\n\t\t\t\t\t'site-editor.php'\n\t\t\t\t);\n\t\t\t\tconst extraArgs = isSiteEditor\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tcanvas: getQueryArg(\n\t\t\t\t\t\t\t\twindow.location.href,\n\t\t\t\t\t\t\t\t'canvas'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t }\n\t\t\t\t\t: {};\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\tconst args = {\n\t\t\t\t\t\t\tpostType,\n\t\t\t\t\t\t\tpostId: record.id,\n\t\t\t\t\t\t\t...extraArgs,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tconst targetUrl = addQueryArgs(\n\t\t\t\t\t\t\t'site-editor.php',\n\t\t\t\t\t\t\targs\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.push( args );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = targetUrl;\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}, [ 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 location = useLocation();\n\n\t\tconst isPatternsPage =\n\t\t\tlocation?.params?.path === '/patterns' ||\n\t\t\tlocation?.params?.postType === 'wp_block';\n\t\tconst didAccessPatternsPage =\n\t\t\t!! location?.params?.didAccessPatternsPage;\n\n\t\tconst isBlockBasedTheme = useIsBlockBasedTheme();\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! isBlockBasedTheme &&\n\t\t\t\t! templateType === 'wp_template_part'\n\t\t\t) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\treturn orderedRecords.map( ( record ) => {\n\t\t\t\tconst isSiteEditor = getPath( window.location.href )?.includes(\n\t\t\t\t\t'site-editor.php'\n\t\t\t\t);\n\t\t\t\tconst extraArgs = isSiteEditor\n\t\t\t\t\t? { canvas: getQueryArg( window.location.href, 'canvas' ) }\n\t\t\t\t\t: {};\n\n\t\t\t\treturn {\n\t\t\t\t\tname: templateType + '-' + 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? record.title?.rendered\n\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\ticon: icons[ templateType ],\n\t\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\t\tconst args = {\n\t\t\t\t\t\t\tpostType: templateType,\n\t\t\t\t\t\t\tpostId: record.id,\n\t\t\t\t\t\t\tdidAccessPatternsPage:\n\t\t\t\t\t\t\t\t! isBlockBasedTheme &&\n\t\t\t\t\t\t\t\t( isPatternsPage || didAccessPatternsPage )\n\t\t\t\t\t\t\t\t\t? 1\n\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t...extraArgs,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tconst targetUrl = addQueryArgs(\n\t\t\t\t\t\t\t'site-editor.php',\n\t\t\t\t\t\t\targs\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\t\t\thistory.push( args );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tdocument.location = targetUrl;\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}, [ isBlockBasedTheme, orderedRecords, history ] );\n\n\t\treturn {\n\t\t\tcommands,\n\t\t\tisLoading,\n\t\t};\n\t};\n\nconst usePageNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerPostType( 'page' );\nconst usePostNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerPostType( 'post' );\nconst useTemplateNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerTemplate( 'wp_template' );\nconst useTemplatePartNavigationCommandLoader =\n\tgetNavigationCommandLoaderPerTemplate( 'wp_template_part' );\n\nfunction useSiteEditorBasicNavigationCommands() {\n\tconst history = useHistory();\n\tconst isSiteEditor = getPath( window.location.href )?.includes(\n\t\t'site-editor.php'\n\t);\n\tconst isTemplatesAccessible = useIsTemplatesAccessible();\n\tconst isBlockBasedTheme = useIsBlockBasedTheme();\n\tconst commands = useMemo( () => {\n\t\tconst result = [];\n\n\t\tif ( ! isTemplatesAccessible || ! isBlockBasedTheme ) {\n\t\t\treturn result;\n\t\t}\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-navigation',\n\t\t\tlabel: __( 'Navigation' ),\n\t\t\ticon: navigation,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/navigation',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-styles',\n\t\t\tlabel: __( 'Styles' ),\n\t\t\ticon: styles,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/wp_global_styles',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-pages',\n\t\t\tlabel: __( 'Pages' ),\n\t\t\ticon: page,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/page',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\tresult.push( {\n\t\t\tname: 'core/edit-site/open-templates',\n\t\t\tlabel: __( 'Templates' ),\n\t\t\ticon: layout,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tconst args = {\n\t\t\t\t\tpath: '/wp_template',\n\t\t\t\t};\n\t\t\t\tconst targetUrl = addQueryArgs( 'site-editor.php', args );\n\t\t\t\tif ( isSiteEditor ) {\n\t\t\t\t\thistory.push( args );\n\t\t\t\t} else {\n\t\t\t\t\tdocument.location = targetUrl;\n\t\t\t\t}\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\n\t\treturn result;\n\t}, [ history, isSiteEditor, isTemplatesAccessible, isBlockBasedTheme ] );\n\n\treturn {\n\t\tcommands,\n\t\tisLoading: false,\n\t};\n}\n\nexport function useSiteEditorNavigationCommands() {\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-pages',\n\t\thook: usePageNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-posts',\n\t\thook: usePostNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-templates',\n\t\thook: useTemplateNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/navigate-template-parts',\n\t\thook: useTemplatePartNavigationCommandLoader,\n\t} );\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/basic-navigation',\n\t\thook: useSiteEditorBasicNavigationCommands,\n\t\tcontext: 'site-editor',\n\t} );\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/core-commands",
3
- "version": "0.19.2",
3
+ "version": "0.20.1",
4
4
  "description": "WordPress core reusable commands.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -27,16 +27,17 @@
27
27
  "sideEffects": false,
28
28
  "dependencies": {
29
29
  "@babel/runtime": "^7.16.0",
30
- "@wordpress/block-editor": "^12.18.2",
31
- "@wordpress/commands": "^0.21.0",
32
- "@wordpress/core-data": "^6.27.2",
33
- "@wordpress/data": "^9.20.0",
34
- "@wordpress/element": "^5.27.0",
35
- "@wordpress/i18n": "^4.50.0",
36
- "@wordpress/icons": "^9.41.0",
37
- "@wordpress/private-apis": "^0.32.0",
38
- "@wordpress/router": "^0.19.0",
39
- "@wordpress/url": "^3.51.0"
30
+ "@wordpress/block-editor": "^12.19.1",
31
+ "@wordpress/commands": "^0.22.1",
32
+ "@wordpress/compose": "^6.28.0",
33
+ "@wordpress/core-data": "^6.28.1",
34
+ "@wordpress/data": "^9.21.0",
35
+ "@wordpress/element": "^5.28.0",
36
+ "@wordpress/i18n": "^4.51.0",
37
+ "@wordpress/icons": "^9.42.0",
38
+ "@wordpress/private-apis": "^0.33.0",
39
+ "@wordpress/router": "^0.20.0",
40
+ "@wordpress/url": "^3.52.0"
40
41
  },
41
42
  "peerDependencies": {
42
43
  "react": "^18.0.0",
@@ -45,5 +46,5 @@
45
46
  "publishConfig": {
46
47
  "access": "public"
47
48
  },
48
- "gitHead": "fefb6f718fbfd5df9390f366d5733369f613084a"
49
+ "gitHead": "5902fc0f490528da6965dd4cf97f11192bcf5956"
49
50
  }
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { useCommandLoader } from '@wordpress/commands';
5
5
  import { __ } from '@wordpress/i18n';
6
- import { useMemo } from '@wordpress/element';
6
+ import { useMemo, useEffect, useState } from '@wordpress/element';
7
7
  import { useSelect } from '@wordpress/data';
8
8
  import { store as coreStore } from '@wordpress/core-data';
9
9
  import {
@@ -16,6 +16,7 @@ import {
16
16
  } from '@wordpress/icons';
17
17
  import { privateApis as routerPrivateApis } from '@wordpress/router';
18
18
  import { getQueryArg, addQueryArgs, getPath } from '@wordpress/url';
19
+ import { useDebounce } from '@wordpress/compose';
19
20
 
20
21
  /**
21
22
  * Internal dependencies
@@ -33,17 +34,35 @@ const icons = {
33
34
  wp_template_part: symbolFilled,
34
35
  };
35
36
 
37
+ function useDebouncedValue( value ) {
38
+ const [ debouncedValue, setDebouncedValue ] = useState( '' );
39
+ const debounced = useDebounce( setDebouncedValue, 250 );
40
+
41
+ useEffect( () => {
42
+ debounced( value );
43
+ return () => debounced.cancel();
44
+ }, [ debounced, value ] );
45
+
46
+ return debouncedValue;
47
+ }
48
+
36
49
  const getNavigationCommandLoaderPerPostType = ( postType ) =>
37
50
  function useNavigationCommandLoader( { search } ) {
38
51
  const history = useHistory();
39
52
  const isBlockBasedTheme = useIsBlockBasedTheme();
53
+ const delayedSearch = useDebouncedValue( search );
40
54
  const { records, isLoading } = useSelect(
41
55
  ( select ) => {
42
- const { getEntityRecords } = select( coreStore );
56
+ if ( ! delayedSearch ) {
57
+ return {
58
+ isLoading: false,
59
+ };
60
+ }
61
+
43
62
  const query = {
44
- search: !! search ? search : undefined,
63
+ search: delayedSearch,
45
64
  per_page: 10,
46
- orderby: search ? 'relevance' : 'date',
65
+ orderby: 'relevance',
47
66
  status: [
48
67
  'publish',
49
68
  'future',
@@ -53,14 +72,18 @@ const getNavigationCommandLoaderPerPostType = ( postType ) =>
53
72
  ],
54
73
  };
55
74
  return {
56
- records: getEntityRecords( 'postType', postType, query ),
75
+ records: select( coreStore ).getEntityRecords(
76
+ 'postType',
77
+ postType,
78
+ query
79
+ ),
57
80
  isLoading: ! select( coreStore ).hasFinishedResolution(
58
81
  'getEntityRecords',
59
82
  [ 'postType', postType, query ]
60
83
  ),
61
84
  };
62
85
  },
63
- [ search ]
86
+ [ delayedSearch ]
64
87
  );
65
88
 
66
89
  const commands = useMemo( () => {