@wordpress/edit-site 5.21.0 → 5.21.1-next.f8d8eceb.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.
Files changed (107) hide show
  1. package/build/components/actions/index.js +121 -0
  2. package/build/components/actions/index.js.map +1 -0
  3. package/build/components/block-editor/use-site-editor-settings.js +12 -4
  4. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  5. package/build/components/dataviews/context.js +15 -0
  6. package/build/components/dataviews/context.js.map +1 -0
  7. package/build/components/dataviews/dataviews.js +10 -2
  8. package/build/components/dataviews/dataviews.js.map +1 -1
  9. package/build/components/dataviews/filters.js +30 -17
  10. package/build/components/dataviews/filters.js.map +1 -1
  11. package/build/components/dataviews/in-filter.js +5 -7
  12. package/build/components/dataviews/in-filter.js.map +1 -1
  13. package/build/components/dataviews/item-actions.js +62 -0
  14. package/build/components/dataviews/item-actions.js.map +1 -0
  15. package/build/components/dataviews/pagination.js +31 -50
  16. package/build/components/dataviews/pagination.js.map +1 -1
  17. package/build/components/dataviews/{text-filter.js → search.js} +10 -10
  18. package/build/components/dataviews/search.js.map +1 -0
  19. package/build/components/dataviews/view-grid.js +3 -3
  20. package/build/components/dataviews/view-grid.js.map +1 -1
  21. package/build/components/dataviews/view-list.js +2 -2
  22. package/build/components/dataviews/view-list.js.map +1 -1
  23. package/build/components/global-styles/font-library-modal/font-collection.js +1 -1
  24. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  25. package/build/components/global-styles/screen-block.js +1 -8
  26. package/build/components/global-styles/screen-block.js.map +1 -1
  27. package/build/components/page-pages/default-views.js +60 -0
  28. package/build/components/page-pages/default-views.js.map +1 -0
  29. package/build/components/page-pages/index.js +73 -52
  30. package/build/components/page-pages/index.js.map +1 -1
  31. package/build/components/sidebar/index.js +3 -1
  32. package/build/components/sidebar/index.js.map +1 -1
  33. package/build/components/sidebar-dataviews/index.js +72 -0
  34. package/build/components/sidebar-dataviews/index.js.map +1 -0
  35. package/build/hooks/commands/use-edit-mode-commands.js +3 -2
  36. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  37. package/build-module/components/actions/index.js +108 -0
  38. package/build-module/components/actions/index.js.map +1 -0
  39. package/build-module/components/block-editor/use-site-editor-settings.js +12 -4
  40. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  41. package/build-module/components/dataviews/context.js +7 -0
  42. package/build-module/components/dataviews/context.js.map +1 -0
  43. package/build-module/components/dataviews/dataviews.js +10 -2
  44. package/build-module/components/dataviews/dataviews.js.map +1 -1
  45. package/build-module/components/dataviews/filters.js +30 -17
  46. package/build-module/components/dataviews/filters.js.map +1 -1
  47. package/build-module/components/dataviews/in-filter.js +5 -7
  48. package/build-module/components/dataviews/in-filter.js.map +1 -1
  49. package/build-module/components/dataviews/item-actions.js +55 -0
  50. package/build-module/components/dataviews/item-actions.js.map +1 -0
  51. package/build-module/components/dataviews/pagination.js +32 -51
  52. package/build-module/components/dataviews/pagination.js.map +1 -1
  53. package/build-module/components/dataviews/{text-filter.js → search.js} +9 -9
  54. package/build-module/components/dataviews/search.js.map +1 -0
  55. package/build-module/components/dataviews/view-grid.js +3 -3
  56. package/build-module/components/dataviews/view-grid.js.map +1 -1
  57. package/build-module/components/dataviews/view-list.js +2 -2
  58. package/build-module/components/dataviews/view-list.js.map +1 -1
  59. package/build-module/components/global-styles/font-library-modal/font-collection.js +1 -1
  60. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  61. package/build-module/components/global-styles/screen-block.js +1 -8
  62. package/build-module/components/global-styles/screen-block.js.map +1 -1
  63. package/build-module/components/page-pages/default-views.js +53 -0
  64. package/build-module/components/page-pages/default-views.js.map +1 -0
  65. package/build-module/components/page-pages/index.js +71 -52
  66. package/build-module/components/page-pages/index.js.map +1 -1
  67. package/build-module/components/sidebar/index.js +3 -1
  68. package/build-module/components/sidebar/index.js.map +1 -1
  69. package/build-module/components/sidebar-dataviews/index.js +64 -0
  70. package/build-module/components/sidebar-dataviews/index.js.map +1 -0
  71. package/build-module/hooks/commands/use-edit-mode-commands.js +4 -3
  72. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  73. package/build-style/style-rtl.css +9 -5
  74. package/build-style/style.css +9 -5
  75. package/package.json +40 -40
  76. package/src/components/actions/index.js +123 -0
  77. package/src/components/block-editor/use-site-editor-settings.js +21 -13
  78. package/src/components/dataviews/README.md +134 -47
  79. package/src/components/dataviews/context.js +7 -0
  80. package/src/components/dataviews/dataviews.js +11 -1
  81. package/src/components/dataviews/filters.js +35 -17
  82. package/src/components/dataviews/in-filter.js +5 -7
  83. package/src/components/dataviews/item-actions.js +69 -0
  84. package/src/components/dataviews/pagination.js +53 -74
  85. package/src/components/dataviews/{text-filter.js → search.js} +7 -7
  86. package/src/components/dataviews/style.scss +10 -5
  87. package/src/components/dataviews/view-grid.js +7 -2
  88. package/src/components/dataviews/view-list.js +2 -2
  89. package/src/components/global-styles/font-library-modal/font-collection.js +1 -1
  90. package/src/components/global-styles/screen-block.js +1 -7
  91. package/src/components/page-pages/default-views.js +58 -0
  92. package/src/components/page-pages/index.js +85 -60
  93. package/src/components/sidebar/index.js +2 -0
  94. package/src/components/sidebar-dataviews/index.js +65 -0
  95. package/src/hooks/commands/use-edit-mode-commands.js +3 -1
  96. package/build/components/actions/trash-post.js +0 -48
  97. package/build/components/actions/trash-post.js.map +0 -1
  98. package/build/components/dataviews/field-actions.js +0 -30
  99. package/build/components/dataviews/field-actions.js.map +0 -1
  100. package/build/components/dataviews/text-filter.js.map +0 -1
  101. package/build-module/components/actions/trash-post.js +0 -41
  102. package/build-module/components/actions/trash-post.js.map +0 -1
  103. package/build-module/components/dataviews/field-actions.js +0 -22
  104. package/build-module/components/dataviews/field-actions.js.map +0 -1
  105. package/build-module/components/dataviews/text-filter.js.map +0 -1
  106. package/src/components/actions/trash-post.js +0 -55
  107. package/src/components/dataviews/field-actions.js +0 -28
@@ -369,7 +369,7 @@ function usePatternCommands() {
369
369
  commands.push({
370
370
  name: 'core/rename-pattern',
371
371
  label: (0, _i18n.__)('Rename pattern'),
372
- icon: _icons.symbol,
372
+ icon: _icons.edit,
373
373
  callback: ({
374
374
  close
375
375
  }) => {
@@ -411,7 +411,8 @@ function useEditModeCommands() {
411
411
  });
412
412
  (0, _commands.useCommandLoader)({
413
413
  name: 'core/edit-site/patterns',
414
- hook: usePatternCommands
414
+ hook: usePatternCommands,
415
+ context: 'site-editor-edit'
415
416
  });
416
417
  (0, _commands.useCommandLoader)({
417
418
  name: 'core/edit-site/edit-ui',
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_i18n","_icons","_commands","_htmlEntities","_router","_preferences","_interface","_notices","_store","_useEditedEntityRecord","_interopRequireDefault","_isTemplateRemovable","_isTemplateRevertable","_keyboardShortcutHelpModal","_preferencesModal","_patternModal","_lockUnlock","_constants","useHistory","unlock","routerPrivateApis","usePageContentFocusCommands","record","template","useEditedEntityRecord","isPage","canvasMode","hasPageContentFocus","useSelect","select","editSiteStore","getCanvasMode","setHasPageContentFocus","useDispatch","isLoading","commands","push","name","label","sprintf","decodeEntities","title","icon","layout","callback","close","__","page","useEditorModeCommands","switchEditorMode","editorMode","getEditorMode","code","useManipulateDocumentCommands","isLoaded","removeTemplate","revertTemplate","history","isTemplateRevertable","type","TEMPLATE_POST_TYPE","isRTL","rotateRight","rotateLeft","isTemplateRemovable","path","trash","useEditUICommands","openGeneralSidebar","closeGeneralSidebar","toggleDistractionFree","setIsListViewOpened","activeSidebar","showBlockBreadcrumbs","isListViewOpen","isDistractionFree","isListViewOpened","interfaceStore","getActiveComplementaryArea","preferencesStore","get","openModal","toggle","createInfoNotice","noticesStore","drawerLeft","drawerRight","blockDefault","PREFERENCES_MODAL_NAME","keyboard","KEYBOARD_SHORTCUT_HELP_MODAL_NAME","id","listView","usePatternCommands","pattern","symbol","PATTERN_MODALS","rename","duplicate","useEditModeCommands","useCommandLoader","hook","context"],"sources":["@wordpress/edit-site/src/hooks/commands/use-edit-mode-commands.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, sprintf, isRTL } from '@wordpress/i18n';\nimport {\n\ttrash,\n\trotateLeft,\n\trotateRight,\n\tlayout,\n\tpage,\n\tdrawerLeft,\n\tdrawerRight,\n\tblockDefault,\n\tcode,\n\tkeyboard,\n\tlistView,\n\tsymbol,\n} from '@wordpress/icons';\nimport { useCommandLoader } from '@wordpress/commands';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport useEditedEntityRecord from '../../components/use-edited-entity-record';\nimport isTemplateRemovable from '../../utils/is-template-removable';\nimport isTemplateRevertable from '../../utils/is-template-revertable';\nimport { KEYBOARD_SHORTCUT_HELP_MODAL_NAME } from '../../components/keyboard-shortcut-help-modal';\nimport { PREFERENCES_MODAL_NAME } from '../../components/preferences-modal';\nimport { PATTERN_MODALS } from '../../components/pattern-modal';\nimport { unlock } from '../../lock-unlock';\nimport { TEMPLATE_POST_TYPE } from '../../utils/constants';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nfunction usePageContentFocusCommands() {\n\tconst { record: template } = useEditedEntityRecord();\n\tconst { isPage, canvasMode, hasPageContentFocus } = useSelect(\n\t\t( select ) => ( {\n\t\t\tisPage: select( editSiteStore ).isPage(),\n\t\t\tcanvasMode: unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t\thasPageContentFocus: select( editSiteStore ).hasPageContentFocus(),\n\t\t} ),\n\t\t[]\n\t);\n\tconst { setHasPageContentFocus } = useDispatch( editSiteStore );\n\n\tif ( ! isPage || canvasMode !== 'edit' ) {\n\t\treturn { isLoading: false, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( hasPageContentFocus ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/switch-to-template-focus',\n\t\t\t/* translators: %1$s: template title */\n\t\t\tlabel: sprintf(\n\t\t\t\t'Edit template: %s',\n\t\t\t\tdecodeEntities( template.title )\n\t\t\t),\n\t\t\ticon: layout,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tsetHasPageContentFocus( false );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t} else {\n\t\tcommands.push( {\n\t\t\tname: 'core/switch-to-page-focus',\n\t\t\tlabel: __( 'Back to page' ),\n\t\t\ticon: page,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tsetHasPageContentFocus( true );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn { isLoading: false, commands };\n}\n\nfunction useEditorModeCommands() {\n\tconst { switchEditorMode } = useDispatch( editSiteStore );\n\tconst { canvasMode, editorMode } = useSelect(\n\t\t( select ) => ( {\n\t\t\tcanvasMode: unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t\teditorMode: select( editSiteStore ).getEditorMode(),\n\t\t} ),\n\t\t[]\n\t);\n\n\tif ( canvasMode !== 'edit' || editorMode !== 'text' ) {\n\t\treturn { isLoading: false, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( editorMode === 'text' ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/exit-code-editor',\n\t\t\tlabel: __( 'Exit code editor' ),\n\t\t\ticon: code,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tswitchEditorMode( 'visual' );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn { isLoading: false, commands };\n}\n\nfunction useManipulateDocumentCommands() {\n\tconst { isLoaded, record: template } = useEditedEntityRecord();\n\tconst { removeTemplate, revertTemplate } = useDispatch( editSiteStore );\n\tconst history = useHistory();\n\tconst hasPageContentFocus = useSelect(\n\t\t( select ) => select( editSiteStore ).hasPageContentFocus(),\n\t\t[]\n\t);\n\n\tif ( ! isLoaded ) {\n\t\treturn { isLoading: true, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( isTemplateRevertable( template ) && ! hasPageContentFocus ) {\n\t\tconst label =\n\t\t\ttemplate.type === TEMPLATE_POST_TYPE\n\t\t\t\t? /* translators: %1$s: template title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Reset template: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t )\n\t\t\t\t: /* translators: %1$s: template part title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Reset template part: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t );\n\t\tcommands.push( {\n\t\t\tname: 'core/reset-template',\n\t\t\tlabel,\n\t\t\ticon: isRTL() ? rotateRight : rotateLeft,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\trevertTemplate( template );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\tif ( isTemplateRemovable( template ) && ! hasPageContentFocus ) {\n\t\tconst label =\n\t\t\ttemplate.type === TEMPLATE_POST_TYPE\n\t\t\t\t? /* translators: %1$s: template title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Delete template: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t )\n\t\t\t\t: /* translators: %1$s: template part title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Delete template part: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t );\n\t\tconst path =\n\t\t\ttemplate.type === TEMPLATE_POST_TYPE\n\t\t\t\t? '/wp_template'\n\t\t\t\t: '/wp_template_part/all';\n\t\tcommands.push( {\n\t\t\tname: 'core/remove-template',\n\t\t\tlabel,\n\t\t\ticon: trash,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tremoveTemplate( template );\n\t\t\t\t// Navigate to the template list\n\t\t\t\thistory.push( {\n\t\t\t\t\tpath,\n\t\t\t\t} );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn {\n\t\tisLoading: ! isLoaded,\n\t\tcommands,\n\t};\n}\n\nfunction useEditUICommands() {\n\tconst {\n\t\topenGeneralSidebar,\n\t\tcloseGeneralSidebar,\n\t\ttoggleDistractionFree,\n\t\tsetIsListViewOpened,\n\t\tswitchEditorMode,\n\t} = useDispatch( editSiteStore );\n\tconst {\n\t\tcanvasMode,\n\t\teditorMode,\n\t\tactiveSidebar,\n\t\tshowBlockBreadcrumbs,\n\t\tisListViewOpen,\n\t\tisDistractionFree,\n\t} = useSelect( ( select ) => {\n\t\tconst { isListViewOpened, getEditorMode } = select( editSiteStore );\n\t\treturn {\n\t\t\tcanvasMode: unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t\teditorMode: getEditorMode(),\n\t\t\tactiveSidebar: select( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\teditSiteStore.name\n\t\t\t),\n\t\t\tshowBlockBreadcrumbs: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tisDistractionFree: select( preferencesStore ).get(\n\t\t\t\teditSiteStore.name,\n\t\t\t\t'distractionFree'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst { openModal } = useDispatch( interfaceStore );\n\tconst { toggle } = useDispatch( preferencesStore );\n\tconst { createInfoNotice } = useDispatch( noticesStore );\n\n\tif ( canvasMode !== 'edit' ) {\n\t\treturn { isLoading: false, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tcommands.push( {\n\t\tname: 'core/open-settings-sidebar',\n\t\tlabel: __( 'Toggle settings sidebar' ),\n\t\ticon: isRTL() ? drawerLeft : drawerRight,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\tif ( activeSidebar === 'edit-site/template' ) {\n\t\t\t\tcloseGeneralSidebar();\n\t\t\t} else {\n\t\t\t\topenGeneralSidebar( 'edit-site/template' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/open-block-inspector',\n\t\tlabel: __( 'Toggle block inspector' ),\n\t\ticon: blockDefault,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\tif ( activeSidebar === 'edit-site/block-inspector' ) {\n\t\t\t\tcloseGeneralSidebar();\n\t\t\t} else {\n\t\t\t\topenGeneralSidebar( 'edit-site/block-inspector' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-spotlight-mode',\n\t\tlabel: __( 'Toggle spotlight mode' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-site', 'focusMode' );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-distraction-free',\n\t\tlabel: __( 'Toggle distraction free' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggleDistractionFree();\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-top-toolbar',\n\t\tlabel: __( 'Toggle top toolbar' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-site', 'fixedToolbar' );\n\t\t\tif ( isDistractionFree ) {\n\t\t\t\ttoggleDistractionFree();\n\t\t\t}\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tif ( editorMode === 'visual' ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/toggle-code-editor',\n\t\t\tlabel: __( 'Open code editor' ),\n\t\t\ticon: code,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tswitchEditorMode( 'text' );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\tcommands.push( {\n\t\tname: 'core/open-preferences',\n\t\tlabel: __( 'Editor preferences' ),\n\t\tcallback: () => {\n\t\t\topenModal( PREFERENCES_MODAL_NAME );\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/open-shortcut-help',\n\t\tlabel: __( 'Keyboard shortcuts' ),\n\t\ticon: keyboard,\n\t\tcallback: () => {\n\t\t\topenModal( KEYBOARD_SHORTCUT_HELP_MODAL_NAME );\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-breadcrumbs',\n\t\tlabel: showBlockBreadcrumbs\n\t\t\t? __( 'Hide block breadcrumbs' )\n\t\t\t: __( 'Show block breadcrumbs' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-site', 'showBlockBreadcrumbs' );\n\t\t\tclose();\n\t\t\tcreateInfoNotice(\n\t\t\t\tshowBlockBreadcrumbs\n\t\t\t\t\t? __( 'Breadcrumbs hidden.' )\n\t\t\t\t\t: __( 'Breadcrumbs visible.' ),\n\t\t\t\t{\n\t\t\t\t\tid: 'core/edit-site/toggle-breadcrumbs/notice',\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-list-view',\n\t\tlabel: __( 'Toggle list view' ),\n\t\ticon: listView,\n\t\tcallback: ( { close } ) => {\n\t\t\tsetIsListViewOpened( ! isListViewOpen );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nfunction usePatternCommands() {\n\tconst { isLoaded, record: pattern } = useEditedEntityRecord();\n\tconst { openModal } = useDispatch( interfaceStore );\n\n\tif ( ! isLoaded ) {\n\t\treturn { isLoading: true, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( pattern?.type === 'wp_block' ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/rename-pattern',\n\t\t\tlabel: __( 'Rename pattern' ),\n\t\t\ticon: symbol,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\topenModal( PATTERN_MODALS.rename );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t\tcommands.push( {\n\t\t\tname: 'core/duplicate-pattern',\n\t\t\tlabel: __( 'Duplicate pattern' ),\n\t\t\ticon: symbol,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\topenModal( PATTERN_MODALS.duplicate );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn { isLoading: false, commands };\n}\n\nexport function useEditModeCommands() {\n\tuseCommandLoader( {\n\t\tname: 'core/exit-code-editor',\n\t\thook: useEditorModeCommands,\n\t\tcontext: 'site-editor-edit',\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/page-content-focus',\n\t\thook: usePageContentFocusCommands,\n\t\tcontext: 'site-editor-edit',\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/manipulate-document',\n\t\thook: useManipulateDocumentCommands,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/patterns',\n\t\thook: usePatternCommands,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/edit-ui',\n\t\thook: useEditUICommands,\n\t} );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_data","require","_i18n","_icons","_commands","_htmlEntities","_router","_preferences","_interface","_notices","_store","_useEditedEntityRecord","_interopRequireDefault","_isTemplateRemovable","_isTemplateRevertable","_keyboardShortcutHelpModal","_preferencesModal","_patternModal","_lockUnlock","_constants","useHistory","unlock","routerPrivateApis","usePageContentFocusCommands","record","template","useEditedEntityRecord","isPage","canvasMode","hasPageContentFocus","useSelect","select","editSiteStore","getCanvasMode","setHasPageContentFocus","useDispatch","isLoading","commands","push","name","label","sprintf","decodeEntities","title","icon","layout","callback","close","__","page","useEditorModeCommands","switchEditorMode","editorMode","getEditorMode","code","useManipulateDocumentCommands","isLoaded","removeTemplate","revertTemplate","history","isTemplateRevertable","type","TEMPLATE_POST_TYPE","isRTL","rotateRight","rotateLeft","isTemplateRemovable","path","trash","useEditUICommands","openGeneralSidebar","closeGeneralSidebar","toggleDistractionFree","setIsListViewOpened","activeSidebar","showBlockBreadcrumbs","isListViewOpen","isDistractionFree","isListViewOpened","interfaceStore","getActiveComplementaryArea","preferencesStore","get","openModal","toggle","createInfoNotice","noticesStore","drawerLeft","drawerRight","blockDefault","PREFERENCES_MODAL_NAME","keyboard","KEYBOARD_SHORTCUT_HELP_MODAL_NAME","id","listView","usePatternCommands","pattern","edit","PATTERN_MODALS","rename","symbol","duplicate","useEditModeCommands","useCommandLoader","hook","context"],"sources":["@wordpress/edit-site/src/hooks/commands/use-edit-mode-commands.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, sprintf, isRTL } from '@wordpress/i18n';\nimport {\n\tedit,\n\ttrash,\n\trotateLeft,\n\trotateRight,\n\tlayout,\n\tpage,\n\tdrawerLeft,\n\tdrawerRight,\n\tblockDefault,\n\tcode,\n\tkeyboard,\n\tlistView,\n\tsymbol,\n} from '@wordpress/icons';\nimport { useCommandLoader } from '@wordpress/commands';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport useEditedEntityRecord from '../../components/use-edited-entity-record';\nimport isTemplateRemovable from '../../utils/is-template-removable';\nimport isTemplateRevertable from '../../utils/is-template-revertable';\nimport { KEYBOARD_SHORTCUT_HELP_MODAL_NAME } from '../../components/keyboard-shortcut-help-modal';\nimport { PREFERENCES_MODAL_NAME } from '../../components/preferences-modal';\nimport { PATTERN_MODALS } from '../../components/pattern-modal';\nimport { unlock } from '../../lock-unlock';\nimport { TEMPLATE_POST_TYPE } from '../../utils/constants';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nfunction usePageContentFocusCommands() {\n\tconst { record: template } = useEditedEntityRecord();\n\tconst { isPage, canvasMode, hasPageContentFocus } = useSelect(\n\t\t( select ) => ( {\n\t\t\tisPage: select( editSiteStore ).isPage(),\n\t\t\tcanvasMode: unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t\thasPageContentFocus: select( editSiteStore ).hasPageContentFocus(),\n\t\t} ),\n\t\t[]\n\t);\n\tconst { setHasPageContentFocus } = useDispatch( editSiteStore );\n\n\tif ( ! isPage || canvasMode !== 'edit' ) {\n\t\treturn { isLoading: false, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( hasPageContentFocus ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/switch-to-template-focus',\n\t\t\t/* translators: %1$s: template title */\n\t\t\tlabel: sprintf(\n\t\t\t\t'Edit template: %s',\n\t\t\t\tdecodeEntities( template.title )\n\t\t\t),\n\t\t\ticon: layout,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tsetHasPageContentFocus( false );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t} else {\n\t\tcommands.push( {\n\t\t\tname: 'core/switch-to-page-focus',\n\t\t\tlabel: __( 'Back to page' ),\n\t\t\ticon: page,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tsetHasPageContentFocus( true );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn { isLoading: false, commands };\n}\n\nfunction useEditorModeCommands() {\n\tconst { switchEditorMode } = useDispatch( editSiteStore );\n\tconst { canvasMode, editorMode } = useSelect(\n\t\t( select ) => ( {\n\t\t\tcanvasMode: unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t\teditorMode: select( editSiteStore ).getEditorMode(),\n\t\t} ),\n\t\t[]\n\t);\n\n\tif ( canvasMode !== 'edit' || editorMode !== 'text' ) {\n\t\treturn { isLoading: false, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( editorMode === 'text' ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/exit-code-editor',\n\t\t\tlabel: __( 'Exit code editor' ),\n\t\t\ticon: code,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tswitchEditorMode( 'visual' );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn { isLoading: false, commands };\n}\n\nfunction useManipulateDocumentCommands() {\n\tconst { isLoaded, record: template } = useEditedEntityRecord();\n\tconst { removeTemplate, revertTemplate } = useDispatch( editSiteStore );\n\tconst history = useHistory();\n\tconst hasPageContentFocus = useSelect(\n\t\t( select ) => select( editSiteStore ).hasPageContentFocus(),\n\t\t[]\n\t);\n\n\tif ( ! isLoaded ) {\n\t\treturn { isLoading: true, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( isTemplateRevertable( template ) && ! hasPageContentFocus ) {\n\t\tconst label =\n\t\t\ttemplate.type === TEMPLATE_POST_TYPE\n\t\t\t\t? /* translators: %1$s: template title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Reset template: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t )\n\t\t\t\t: /* translators: %1$s: template part title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Reset template part: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t );\n\t\tcommands.push( {\n\t\t\tname: 'core/reset-template',\n\t\t\tlabel,\n\t\t\ticon: isRTL() ? rotateRight : rotateLeft,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\trevertTemplate( template );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\tif ( isTemplateRemovable( template ) && ! hasPageContentFocus ) {\n\t\tconst label =\n\t\t\ttemplate.type === TEMPLATE_POST_TYPE\n\t\t\t\t? /* translators: %1$s: template title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Delete template: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t )\n\t\t\t\t: /* translators: %1$s: template part title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Delete template part: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t );\n\t\tconst path =\n\t\t\ttemplate.type === TEMPLATE_POST_TYPE\n\t\t\t\t? '/wp_template'\n\t\t\t\t: '/wp_template_part/all';\n\t\tcommands.push( {\n\t\t\tname: 'core/remove-template',\n\t\t\tlabel,\n\t\t\ticon: trash,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tremoveTemplate( template );\n\t\t\t\t// Navigate to the template list\n\t\t\t\thistory.push( {\n\t\t\t\t\tpath,\n\t\t\t\t} );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn {\n\t\tisLoading: ! isLoaded,\n\t\tcommands,\n\t};\n}\n\nfunction useEditUICommands() {\n\tconst {\n\t\topenGeneralSidebar,\n\t\tcloseGeneralSidebar,\n\t\ttoggleDistractionFree,\n\t\tsetIsListViewOpened,\n\t\tswitchEditorMode,\n\t} = useDispatch( editSiteStore );\n\tconst {\n\t\tcanvasMode,\n\t\teditorMode,\n\t\tactiveSidebar,\n\t\tshowBlockBreadcrumbs,\n\t\tisListViewOpen,\n\t\tisDistractionFree,\n\t} = useSelect( ( select ) => {\n\t\tconst { isListViewOpened, getEditorMode } = select( editSiteStore );\n\t\treturn {\n\t\t\tcanvasMode: unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t\teditorMode: getEditorMode(),\n\t\t\tactiveSidebar: select( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\teditSiteStore.name\n\t\t\t),\n\t\t\tshowBlockBreadcrumbs: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tisDistractionFree: select( preferencesStore ).get(\n\t\t\t\teditSiteStore.name,\n\t\t\t\t'distractionFree'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst { openModal } = useDispatch( interfaceStore );\n\tconst { toggle } = useDispatch( preferencesStore );\n\tconst { createInfoNotice } = useDispatch( noticesStore );\n\n\tif ( canvasMode !== 'edit' ) {\n\t\treturn { isLoading: false, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tcommands.push( {\n\t\tname: 'core/open-settings-sidebar',\n\t\tlabel: __( 'Toggle settings sidebar' ),\n\t\ticon: isRTL() ? drawerLeft : drawerRight,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\tif ( activeSidebar === 'edit-site/template' ) {\n\t\t\t\tcloseGeneralSidebar();\n\t\t\t} else {\n\t\t\t\topenGeneralSidebar( 'edit-site/template' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/open-block-inspector',\n\t\tlabel: __( 'Toggle block inspector' ),\n\t\ticon: blockDefault,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\tif ( activeSidebar === 'edit-site/block-inspector' ) {\n\t\t\t\tcloseGeneralSidebar();\n\t\t\t} else {\n\t\t\t\topenGeneralSidebar( 'edit-site/block-inspector' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-spotlight-mode',\n\t\tlabel: __( 'Toggle spotlight mode' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-site', 'focusMode' );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-distraction-free',\n\t\tlabel: __( 'Toggle distraction free' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggleDistractionFree();\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-top-toolbar',\n\t\tlabel: __( 'Toggle top toolbar' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-site', 'fixedToolbar' );\n\t\t\tif ( isDistractionFree ) {\n\t\t\t\ttoggleDistractionFree();\n\t\t\t}\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tif ( editorMode === 'visual' ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/toggle-code-editor',\n\t\t\tlabel: __( 'Open code editor' ),\n\t\t\ticon: code,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tswitchEditorMode( 'text' );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\tcommands.push( {\n\t\tname: 'core/open-preferences',\n\t\tlabel: __( 'Editor preferences' ),\n\t\tcallback: () => {\n\t\t\topenModal( PREFERENCES_MODAL_NAME );\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/open-shortcut-help',\n\t\tlabel: __( 'Keyboard shortcuts' ),\n\t\ticon: keyboard,\n\t\tcallback: () => {\n\t\t\topenModal( KEYBOARD_SHORTCUT_HELP_MODAL_NAME );\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-breadcrumbs',\n\t\tlabel: showBlockBreadcrumbs\n\t\t\t? __( 'Hide block breadcrumbs' )\n\t\t\t: __( 'Show block breadcrumbs' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-site', 'showBlockBreadcrumbs' );\n\t\t\tclose();\n\t\t\tcreateInfoNotice(\n\t\t\t\tshowBlockBreadcrumbs\n\t\t\t\t\t? __( 'Breadcrumbs hidden.' )\n\t\t\t\t\t: __( 'Breadcrumbs visible.' ),\n\t\t\t\t{\n\t\t\t\t\tid: 'core/edit-site/toggle-breadcrumbs/notice',\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-list-view',\n\t\tlabel: __( 'Toggle list view' ),\n\t\ticon: listView,\n\t\tcallback: ( { close } ) => {\n\t\t\tsetIsListViewOpened( ! isListViewOpen );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nfunction usePatternCommands() {\n\tconst { isLoaded, record: pattern } = useEditedEntityRecord();\n\tconst { openModal } = useDispatch( interfaceStore );\n\n\tif ( ! isLoaded ) {\n\t\treturn { isLoading: true, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( pattern?.type === 'wp_block' ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/rename-pattern',\n\t\t\tlabel: __( 'Rename pattern' ),\n\t\t\ticon: edit,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\topenModal( PATTERN_MODALS.rename );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t\tcommands.push( {\n\t\t\tname: 'core/duplicate-pattern',\n\t\t\tlabel: __( 'Duplicate pattern' ),\n\t\t\ticon: symbol,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\topenModal( PATTERN_MODALS.duplicate );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn { isLoading: false, commands };\n}\n\nexport function useEditModeCommands() {\n\tuseCommandLoader( {\n\t\tname: 'core/exit-code-editor',\n\t\thook: useEditorModeCommands,\n\t\tcontext: 'site-editor-edit',\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/page-content-focus',\n\t\thook: usePageContentFocusCommands,\n\t\tcontext: 'site-editor-edit',\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/manipulate-document',\n\t\thook: useManipulateDocumentCommands,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/patterns',\n\t\thook: usePatternCommands,\n\t\tcontext: 'site-editor-edit',\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/edit-ui',\n\t\thook: useEditUICommands,\n\t} );\n}\n"],"mappings":"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"}
@@ -0,0 +1,108 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { external, trash } from '@wordpress/icons';
5
+ import { addQueryArgs } from '@wordpress/url';
6
+ import { useDispatch } from '@wordpress/data';
7
+ import { decodeEntities } from '@wordpress/html-entities';
8
+ import { store as coreStore } from '@wordpress/core-data';
9
+ import { __, sprintf } from '@wordpress/i18n';
10
+ import { store as noticesStore } from '@wordpress/notices';
11
+ import { useMemo } from '@wordpress/element';
12
+ import { privateApis as routerPrivateApis } from '@wordpress/router';
13
+ /**
14
+ * Internal dependencies
15
+ */
16
+ import { unlock } from '../../lock-unlock';
17
+ const {
18
+ useHistory
19
+ } = unlock(routerPrivateApis);
20
+ export function useTrashPostAction() {
21
+ const {
22
+ createSuccessNotice,
23
+ createErrorNotice
24
+ } = useDispatch(noticesStore);
25
+ const {
26
+ deleteEntityRecord
27
+ } = useDispatch(coreStore);
28
+ return useMemo(() => ({
29
+ id: 'move-to-trash',
30
+ label: __('Move to Trash'),
31
+ isPrimary: true,
32
+ icon: trash,
33
+ isEligible({
34
+ status
35
+ }) {
36
+ return status !== 'trash';
37
+ },
38
+ async perform(post) {
39
+ try {
40
+ await deleteEntityRecord('postType', post.type, post.id, {}, {
41
+ throwOnError: true
42
+ });
43
+ createSuccessNotice(sprintf( /* translators: The page's title. */
44
+ __('"%s" moved to the Trash.'), decodeEntities(post.title.rendered)), {
45
+ type: 'snackbar',
46
+ id: 'edit-site-page-trashed'
47
+ });
48
+ } catch (error) {
49
+ const errorMessage = error.message && error.code !== 'unknown_error' ? error.message : __('An error occurred while moving the page to the trash.');
50
+ createErrorNotice(errorMessage, {
51
+ type: 'snackbar'
52
+ });
53
+ }
54
+ }
55
+ }), [createSuccessNotice, createErrorNotice, deleteEntityRecord]);
56
+ }
57
+ export const viewPostAction = {
58
+ id: 'view-post',
59
+ label: __('View'),
60
+ isPrimary: true,
61
+ icon: external,
62
+ isEligible(post) {
63
+ return post.status !== 'trash';
64
+ },
65
+ perform(post) {
66
+ document.location.href = post.link;
67
+ }
68
+ };
69
+ export function useEditPostAction() {
70
+ const history = useHistory();
71
+ return useMemo(() => ({
72
+ id: 'edit-post',
73
+ label: __('Edit'),
74
+ isEligible({
75
+ status
76
+ }) {
77
+ return status !== 'trash';
78
+ },
79
+ perform(post) {
80
+ history.push({
81
+ postId: post.id,
82
+ postType: post.type,
83
+ canvas: 'edit'
84
+ });
85
+ }
86
+ }), [history]);
87
+ }
88
+ export const postRevisionsAction = {
89
+ id: 'view-post-revisions',
90
+ label: __('View revisions'),
91
+ isPrimary: false,
92
+ isEligible: post => {
93
+ var _post$_links$predeces, _post$_links$version;
94
+ if (post.status === 'trash') {
95
+ return false;
96
+ }
97
+ const lastRevisionId = (_post$_links$predeces = post?._links?.['predecessor-version']?.[0]?.id) !== null && _post$_links$predeces !== void 0 ? _post$_links$predeces : null;
98
+ const revisionsCount = (_post$_links$version = post?._links?.['version-history']?.[0]?.count) !== null && _post$_links$version !== void 0 ? _post$_links$version : 0;
99
+ return lastRevisionId && revisionsCount > 1;
100
+ },
101
+ perform(post) {
102
+ const href = addQueryArgs('revision.php', {
103
+ revision: post?._links?.['predecessor-version']?.[0]?.id
104
+ });
105
+ document.location.href = href;
106
+ }
107
+ };
108
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["external","trash","addQueryArgs","useDispatch","decodeEntities","store","coreStore","__","sprintf","noticesStore","useMemo","privateApis","routerPrivateApis","unlock","useHistory","useTrashPostAction","createSuccessNotice","createErrorNotice","deleteEntityRecord","id","label","isPrimary","icon","isEligible","status","perform","post","type","throwOnError","title","rendered","error","errorMessage","message","code","viewPostAction","document","location","href","link","useEditPostAction","history","push","postId","postType","canvas","postRevisionsAction","_post$_links$predeces","_post$_links$version","lastRevisionId","_links","revisionsCount","count","revision"],"sources":["@wordpress/edit-site/src/components/actions/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { external, trash } from '@wordpress/icons';\nimport { addQueryArgs } from '@wordpress/url';\nimport { useDispatch } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useMemo } from '@wordpress/element';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nexport function useTrashPostAction() {\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { deleteEntityRecord } = useDispatch( coreStore );\n\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tid: 'move-to-trash',\n\t\t\tlabel: __( 'Move to Trash' ),\n\t\t\tisPrimary: true,\n\t\t\ticon: trash,\n\t\t\tisEligible( { status } ) {\n\t\t\t\treturn status !== 'trash';\n\t\t\t},\n\t\t\tasync perform( post ) {\n\t\t\t\ttry {\n\t\t\t\t\tawait deleteEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tpost.type,\n\t\t\t\t\t\tpost.id,\n\t\t\t\t\t\t{},\n\t\t\t\t\t\t{ throwOnError: true }\n\t\t\t\t\t);\n\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t/* translators: The page's title. */\n\t\t\t\t\t\t\t__( '\"%s\" moved to the Trash.' ),\n\t\t\t\t\t\t\tdecodeEntities( post.title.rendered )\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\tid: 'edit-site-page-trashed',\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t} catch ( error ) {\n\t\t\t\t\tconst errorMessage =\n\t\t\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t'An error occurred while moving the page to the trash.'\n\t\t\t\t\t\t\t );\n\n\t\t\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t\t\t}\n\t\t\t},\n\t\t} ),\n\t\t[ createSuccessNotice, createErrorNotice, deleteEntityRecord ]\n\t);\n}\n\nexport const viewPostAction = {\n\tid: 'view-post',\n\tlabel: __( 'View' ),\n\tisPrimary: true,\n\ticon: external,\n\tisEligible( post ) {\n\t\treturn post.status !== 'trash';\n\t},\n\tperform( post ) {\n\t\tdocument.location.href = post.link;\n\t},\n};\n\nexport function useEditPostAction() {\n\tconst history = useHistory();\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tid: 'edit-post',\n\t\t\tlabel: __( 'Edit' ),\n\t\t\tisEligible( { status } ) {\n\t\t\t\treturn status !== 'trash';\n\t\t\t},\n\t\t\tperform( post ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\tpostId: post.id,\n\t\t\t\t\tpostType: post.type,\n\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t} );\n\t\t\t},\n\t\t} ),\n\t\t[ history ]\n\t);\n}\nexport const postRevisionsAction = {\n\tid: 'view-post-revisions',\n\tlabel: __( 'View revisions' ),\n\tisPrimary: false,\n\tisEligible: ( post ) => {\n\t\tif ( post.status === 'trash' ) {\n\t\t\treturn false;\n\t\t}\n\t\tconst lastRevisionId =\n\t\t\tpost?._links?.[ 'predecessor-version' ]?.[ 0 ]?.id ?? null;\n\t\tconst revisionsCount =\n\t\t\tpost?._links?.[ 'version-history' ]?.[ 0 ]?.count ?? 0;\n\t\treturn lastRevisionId && revisionsCount > 1;\n\t},\n\tperform( post ) {\n\t\tconst href = addQueryArgs( 'revision.php', {\n\t\t\trevision: post?._links?.[ 'predecessor-version' ]?.[ 0 ]?.id,\n\t\t} );\n\t\tdocument.location.href = href;\n\t},\n};\n"],"mappings":"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"}
@@ -84,8 +84,13 @@ export default function useSiteEditorSettings() {
84
84
  const {
85
85
  storedSettings,
86
86
  canvasMode,
87
- templateType
87
+ templateType,
88
+ siteSettings
88
89
  } = useSelect(select => {
90
+ const {
91
+ canUser,
92
+ getEntityRecord
93
+ } = select(coreStore);
89
94
  const {
90
95
  getSettings,
91
96
  getCanvasMode,
@@ -94,7 +99,8 @@ export default function useSiteEditorSettings() {
94
99
  return {
95
100
  storedSettings: getSettings(setIsInserterOpened),
96
101
  canvasMode: getCanvasMode(),
97
- templateType: getEditedPostType()
102
+ templateType: getEditedPostType(),
103
+ siteSettings: canUser('read', 'settings') ? getEntityRecord('root', 'site') : undefined
98
104
  };
99
105
  }, [setIsInserterOpened]);
100
106
  const settingsBlockPatterns = (_storedSettings$__exp = storedSettings.__experimentalAdditionalBlockPatterns) !== null && _storedSettings$__exp !== void 0 ? _storedSettings$__exp :
@@ -150,8 +156,10 @@ export default function useSiteEditorSettings() {
150
156
  __experimentalUserPatternCategories: userPatternCategories,
151
157
  focusMode: canvasMode === 'view' && focusMode ? false : focusMode,
152
158
  __experimentalArchiveTitleTypeLabel: archiveLabels.archiveTypeLabel,
153
- __experimentalArchiveTitleNameLabel: archiveLabels.archiveNameLabel
159
+ __experimentalArchiveTitleNameLabel: archiveLabels.archiveNameLabel,
160
+ pageOnFront: siteSettings?.page_on_front,
161
+ pageForPosts: siteSettings?.page_for_posts
154
162
  };
155
- }, [storedSettings, blockPatterns, blockPatternCategories, userPatternCategories, canvasMode, archiveLabels.archiveTypeLabel, archiveLabels.archiveNameLabel]);
163
+ }, [storedSettings, blockPatterns, blockPatternCategories, userPatternCategories, canvasMode, archiveLabels.archiveTypeLabel, archiveLabels.archiveNameLabel, siteSettings?.page_on_front, siteSettings?.page_for_posts]);
156
164
  }
157
165
  //# sourceMappingURL=use-site-editor-settings.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useDispatch","useSelect","useMemo","store","coreStore","editSiteStore","unlock","inserterMediaCategories","useArchiveLabel","templateSlug","taxonomyMatches","match","taxonomy","term","isAuthor","authorSlug","authorMatches","select","getEntityRecords","getTaxonomy","getAuthors","archiveTypeLabel","archiveNameLabel","labels","singular_name","records","slug","per_page","name","authorRecords","useSiteEditorSettings","_storedSettings$__exp","_storedSettings$__exp2","setIsInserterOpened","storedSettings","canvasMode","templateType","getSettings","getCanvasMode","getEditedPostType","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","restBlockPatterns","restBlockPatternCategories","userPatternCategories","getEditedPostId","getEditedEntityRecord","getUserPatternCategories","usedPostType","usedPostId","_record","getBlockPatterns","getBlockPatternCategories","archiveLabels","blockPatterns","filter","x","index","arr","findIndex","y","postTypes","Array","isArray","includes","blockPatternCategories","focusMode","restStoredSettings","__experimentalUserPatternCategories","__experimentalArchiveTitleTypeLabel","__experimentalArchiveTitleNameLabel"],"sources":["@wordpress/edit-site/src/components/block-editor/use-site-editor-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport inserterMediaCategories from './inserter-media-categories';\n\nfunction useArchiveLabel( templateSlug ) {\n\tconst taxonomyMatches = templateSlug?.match(\n\t\t/^(category|tag|taxonomy-([^-]+))$|^(((category|tag)|taxonomy-([^-]+))-(.+))$/\n\t);\n\tlet taxonomy;\n\tlet term;\n\tlet isAuthor = false;\n\tlet authorSlug;\n\tif ( taxonomyMatches ) {\n\t\t// If is for a all taxonomies of a type\n\t\tif ( taxonomyMatches[ 1 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 2 ]\n\t\t\t\t? taxonomyMatches[ 2 ]\n\t\t\t\t: taxonomyMatches[ 1 ];\n\t\t}\n\t\t// If is for a all taxonomies of a type\n\t\telse if ( taxonomyMatches[ 3 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 6 ]\n\t\t\t\t? taxonomyMatches[ 6 ]\n\t\t\t\t: taxonomyMatches[ 4 ];\n\t\t\tterm = taxonomyMatches[ 7 ];\n\t\t}\n\t\ttaxonomy = taxonomy === 'tag' ? 'post_tag' : taxonomy;\n\n\t\t//getTaxonomy( 'category' );\n\t\t//wp.data.select('core').getEntityRecords( 'taxonomy', 'category', {slug: 'newcat'} );\n\t} else {\n\t\tconst authorMatches = templateSlug?.match( /^(author)$|^author-(.+)$/ );\n\t\tif ( authorMatches ) {\n\t\t\tisAuthor = true;\n\t\t\tif ( authorMatches[ 2 ] ) {\n\t\t\t\tauthorSlug = authorMatches[ 2 ];\n\t\t\t}\n\t\t}\n\t}\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomy, getAuthors } =\n\t\t\t\tselect( coreStore );\n\t\t\tlet archiveTypeLabel;\n\t\t\tlet archiveNameLabel;\n\t\t\tif ( taxonomy ) {\n\t\t\t\tarchiveTypeLabel =\n\t\t\t\t\tgetTaxonomy( taxonomy )?.labels?.singular_name;\n\t\t\t}\n\t\t\tif ( term ) {\n\t\t\t\tconst records = getEntityRecords( 'taxonomy', taxonomy, {\n\t\t\t\t\tslug: term,\n\t\t\t\t\tper_page: 1,\n\t\t\t\t} );\n\t\t\t\tif ( records && records[ 0 ] ) {\n\t\t\t\t\tarchiveNameLabel = records[ 0 ].name;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( isAuthor ) {\n\t\t\t\tarchiveTypeLabel = 'Author';\n\t\t\t\tif ( authorSlug ) {\n\t\t\t\t\tconst authorRecords = getAuthors( { slug: authorSlug } );\n\t\t\t\t\tif ( authorRecords && authorRecords[ 0 ] ) {\n\t\t\t\t\t\tarchiveNameLabel = authorRecords[ 0 ].name;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tarchiveTypeLabel,\n\t\t\t\tarchiveNameLabel,\n\t\t\t};\n\t\t},\n\t\t[ authorSlug, isAuthor, taxonomy, term ]\n\t);\n}\n\nexport default function useSiteEditorSettings() {\n\tconst { setIsInserterOpened } = useDispatch( editSiteStore );\n\tconst { storedSettings, canvasMode, templateType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSettings, getCanvasMode, getEditedPostType } = unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tstoredSettings: getSettings( setIsInserterOpened ),\n\t\t\t\tcanvasMode: getCanvasMode(),\n\t\t\t\ttemplateType: getEditedPostType(),\n\t\t\t};\n\t\t},\n\t\t[ setIsInserterOpened ]\n\t);\n\n\tconst settingsBlockPatterns =\n\t\tstoredSettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tstoredSettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst {\n\t\trestBlockPatterns,\n\t\trestBlockPatternCategories,\n\t\ttemplateSlug,\n\t\tuserPatternCategories,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getEditedPostId } = select( editSiteStore );\n\t\tconst { getEditedEntityRecord, getUserPatternCategories } =\n\t\t\tselect( coreStore );\n\t\tconst usedPostType = getEditedPostType();\n\t\tconst usedPostId = getEditedPostId();\n\t\tconst _record = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\tusedPostType,\n\t\t\tusedPostId\n\t\t);\n\t\treturn {\n\t\t\trestBlockPatterns: select( coreStore ).getBlockPatterns(),\n\t\t\trestBlockPatternCategories:\n\t\t\t\tselect( coreStore ).getBlockPatternCategories(),\n\t\t\ttemplateSlug: _record.slug,\n\t\t\tuserPatternCategories: getUserPatternCategories(),\n\t\t};\n\t}, [] );\n\tconst archiveLabels = useArchiveLabel( templateSlug );\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatterns || [] ),\n\t\t\t\t...( restBlockPatterns || [] ),\n\t\t\t]\n\t\t\t\t.filter(\n\t\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t\t)\n\t\t\t\t.filter( ( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( templateType ) )\n\t\t\t\t\t);\n\t\t\t\t} ),\n\t\t[ settingsBlockPatterns, restBlockPatterns, templateType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\treturn useMemo( () => {\n\t\tconst {\n\t\t\t__experimentalAdditionalBlockPatterns,\n\t\t\t__experimentalAdditionalBlockPatternCategories,\n\t\t\tfocusMode,\n\t\t\t...restStoredSettings\n\t\t} = storedSettings;\n\n\t\treturn {\n\t\t\t...restStoredSettings,\n\t\t\tinserterMediaCategories,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t\t__experimentalUserPatternCategories: userPatternCategories,\n\t\t\tfocusMode: canvasMode === 'view' && focusMode ? false : focusMode,\n\t\t\t__experimentalArchiveTitleTypeLabel: archiveLabels.archiveTypeLabel,\n\t\t\t__experimentalArchiveTitleNameLabel: archiveLabels.archiveNameLabel,\n\t\t};\n\t}, [\n\t\tstoredSettings,\n\t\tblockPatterns,\n\t\tblockPatternCategories,\n\t\tuserPatternCategories,\n\t\tcanvasMode,\n\t\tarchiveLabels.archiveTypeLabel,\n\t\tarchiveLabels.archiveNameLabel,\n\t] );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["useDispatch","useSelect","useMemo","store","coreStore","editSiteStore","unlock","inserterMediaCategories","useArchiveLabel","templateSlug","taxonomyMatches","match","taxonomy","term","isAuthor","authorSlug","authorMatches","select","getEntityRecords","getTaxonomy","getAuthors","archiveTypeLabel","archiveNameLabel","labels","singular_name","records","slug","per_page","name","authorRecords","useSiteEditorSettings","_storedSettings$__exp","_storedSettings$__exp2","setIsInserterOpened","storedSettings","canvasMode","templateType","siteSettings","canUser","getEntityRecord","getSettings","getCanvasMode","getEditedPostType","undefined","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","restBlockPatterns","restBlockPatternCategories","userPatternCategories","getEditedPostId","getEditedEntityRecord","getUserPatternCategories","usedPostType","usedPostId","_record","getBlockPatterns","getBlockPatternCategories","archiveLabels","blockPatterns","filter","x","index","arr","findIndex","y","postTypes","Array","isArray","includes","blockPatternCategories","focusMode","restStoredSettings","__experimentalUserPatternCategories","__experimentalArchiveTitleTypeLabel","__experimentalArchiveTitleNameLabel","pageOnFront","page_on_front","pageForPosts","page_for_posts"],"sources":["@wordpress/edit-site/src/components/block-editor/use-site-editor-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport inserterMediaCategories from './inserter-media-categories';\n\nfunction useArchiveLabel( templateSlug ) {\n\tconst taxonomyMatches = templateSlug?.match(\n\t\t/^(category|tag|taxonomy-([^-]+))$|^(((category|tag)|taxonomy-([^-]+))-(.+))$/\n\t);\n\tlet taxonomy;\n\tlet term;\n\tlet isAuthor = false;\n\tlet authorSlug;\n\tif ( taxonomyMatches ) {\n\t\t// If is for a all taxonomies of a type\n\t\tif ( taxonomyMatches[ 1 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 2 ]\n\t\t\t\t? taxonomyMatches[ 2 ]\n\t\t\t\t: taxonomyMatches[ 1 ];\n\t\t}\n\t\t// If is for a all taxonomies of a type\n\t\telse if ( taxonomyMatches[ 3 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 6 ]\n\t\t\t\t? taxonomyMatches[ 6 ]\n\t\t\t\t: taxonomyMatches[ 4 ];\n\t\t\tterm = taxonomyMatches[ 7 ];\n\t\t}\n\t\ttaxonomy = taxonomy === 'tag' ? 'post_tag' : taxonomy;\n\n\t\t//getTaxonomy( 'category' );\n\t\t//wp.data.select('core').getEntityRecords( 'taxonomy', 'category', {slug: 'newcat'} );\n\t} else {\n\t\tconst authorMatches = templateSlug?.match( /^(author)$|^author-(.+)$/ );\n\t\tif ( authorMatches ) {\n\t\t\tisAuthor = true;\n\t\t\tif ( authorMatches[ 2 ] ) {\n\t\t\t\tauthorSlug = authorMatches[ 2 ];\n\t\t\t}\n\t\t}\n\t}\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomy, getAuthors } =\n\t\t\t\tselect( coreStore );\n\t\t\tlet archiveTypeLabel;\n\t\t\tlet archiveNameLabel;\n\t\t\tif ( taxonomy ) {\n\t\t\t\tarchiveTypeLabel =\n\t\t\t\t\tgetTaxonomy( taxonomy )?.labels?.singular_name;\n\t\t\t}\n\t\t\tif ( term ) {\n\t\t\t\tconst records = getEntityRecords( 'taxonomy', taxonomy, {\n\t\t\t\t\tslug: term,\n\t\t\t\t\tper_page: 1,\n\t\t\t\t} );\n\t\t\t\tif ( records && records[ 0 ] ) {\n\t\t\t\t\tarchiveNameLabel = records[ 0 ].name;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( isAuthor ) {\n\t\t\t\tarchiveTypeLabel = 'Author';\n\t\t\t\tif ( authorSlug ) {\n\t\t\t\t\tconst authorRecords = getAuthors( { slug: authorSlug } );\n\t\t\t\t\tif ( authorRecords && authorRecords[ 0 ] ) {\n\t\t\t\t\t\tarchiveNameLabel = authorRecords[ 0 ].name;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tarchiveTypeLabel,\n\t\t\t\tarchiveNameLabel,\n\t\t\t};\n\t\t},\n\t\t[ authorSlug, isAuthor, taxonomy, term ]\n\t);\n}\n\nexport default function useSiteEditorSettings() {\n\tconst { setIsInserterOpened } = useDispatch( editSiteStore );\n\tconst { storedSettings, canvasMode, templateType, siteSettings } =\n\t\tuseSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst { canUser, getEntityRecord } = select( coreStore );\n\t\t\t\tconst { getSettings, getCanvasMode, getEditedPostType } =\n\t\t\t\t\tunlock( select( editSiteStore ) );\n\t\t\t\treturn {\n\t\t\t\t\tstoredSettings: getSettings( setIsInserterOpened ),\n\t\t\t\t\tcanvasMode: getCanvasMode(),\n\t\t\t\t\ttemplateType: getEditedPostType(),\n\t\t\t\t\tsiteSettings: canUser( 'read', 'settings' )\n\t\t\t\t\t\t? getEntityRecord( 'root', 'site' )\n\t\t\t\t\t\t: undefined,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ setIsInserterOpened ]\n\t\t);\n\n\tconst settingsBlockPatterns =\n\t\tstoredSettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tstoredSettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst {\n\t\trestBlockPatterns,\n\t\trestBlockPatternCategories,\n\t\ttemplateSlug,\n\t\tuserPatternCategories,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getEditedPostId } = select( editSiteStore );\n\t\tconst { getEditedEntityRecord, getUserPatternCategories } =\n\t\t\tselect( coreStore );\n\t\tconst usedPostType = getEditedPostType();\n\t\tconst usedPostId = getEditedPostId();\n\t\tconst _record = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\tusedPostType,\n\t\t\tusedPostId\n\t\t);\n\t\treturn {\n\t\t\trestBlockPatterns: select( coreStore ).getBlockPatterns(),\n\t\t\trestBlockPatternCategories:\n\t\t\t\tselect( coreStore ).getBlockPatternCategories(),\n\t\t\ttemplateSlug: _record.slug,\n\t\t\tuserPatternCategories: getUserPatternCategories(),\n\t\t};\n\t}, [] );\n\tconst archiveLabels = useArchiveLabel( templateSlug );\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatterns || [] ),\n\t\t\t\t...( restBlockPatterns || [] ),\n\t\t\t]\n\t\t\t\t.filter(\n\t\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t\t)\n\t\t\t\t.filter( ( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( templateType ) )\n\t\t\t\t\t);\n\t\t\t\t} ),\n\t\t[ settingsBlockPatterns, restBlockPatterns, templateType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\treturn useMemo( () => {\n\t\tconst {\n\t\t\t__experimentalAdditionalBlockPatterns,\n\t\t\t__experimentalAdditionalBlockPatternCategories,\n\t\t\tfocusMode,\n\t\t\t...restStoredSettings\n\t\t} = storedSettings;\n\n\t\treturn {\n\t\t\t...restStoredSettings,\n\t\t\tinserterMediaCategories,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t\t__experimentalUserPatternCategories: userPatternCategories,\n\t\t\tfocusMode: canvasMode === 'view' && focusMode ? false : focusMode,\n\t\t\t__experimentalArchiveTitleTypeLabel: archiveLabels.archiveTypeLabel,\n\t\t\t__experimentalArchiveTitleNameLabel: archiveLabels.archiveNameLabel,\n\t\t\tpageOnFront: siteSettings?.page_on_front,\n\t\t\tpageForPosts: siteSettings?.page_for_posts,\n\t\t};\n\t}, [\n\t\tstoredSettings,\n\t\tblockPatterns,\n\t\tblockPatternCategories,\n\t\tuserPatternCategories,\n\t\tcanvasMode,\n\t\tarchiveLabels.archiveTypeLabel,\n\t\tarchiveLabels.archiveNameLabel,\n\t\tsiteSettings?.page_on_front,\n\t\tsiteSettings?.page_for_posts,\n\t] );\n}\n"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { createContext } from '@wordpress/element';
5
+ const DataviewsContext = createContext({});
6
+ export default DataviewsContext;
7
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","DataviewsContext"],"sources":["@wordpress/edit-site/src/components/dataviews/context.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createContext } from '@wordpress/element';\n\nconst DataviewsContext = createContext( {} );\nexport default DataviewsContext;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,aAAa,QAAQ,oBAAoB;AAElD,MAAMC,gBAAgB,GAAGD,aAAa,CAAE,CAAC,CAAE,CAAC;AAC5C,eAAeC,gBAAgB"}
@@ -12,11 +12,14 @@ import ViewList from './view-list';
12
12
  import Pagination from './pagination';
13
13
  import ViewActions from './view-actions';
14
14
  import Filters from './filters';
15
+ import Search from './search';
15
16
  import { ViewGrid } from './view-grid';
16
17
  export default function DataViews({
17
18
  view,
18
19
  onChangeView,
19
20
  fields,
21
+ search = true,
22
+ searchLabel = undefined,
20
23
  actions,
21
24
  data,
22
25
  isLoading = false,
@@ -32,10 +35,15 @@ export default function DataViews({
32
35
  return createElement("div", {
33
36
  className: "dataviews-wrapper"
34
37
  }, createElement(VStack, {
35
- spacing: 4
38
+ spacing: 4,
39
+ justify: "flex-start"
36
40
  }, createElement(HStack, null, createElement(HStack, {
37
41
  justify: "start"
38
- }, createElement(Filters, {
42
+ }, search && createElement(Search, {
43
+ label: searchLabel,
44
+ view: view,
45
+ onChangeView: onChangeView
46
+ }), createElement(Filters, {
39
47
  fields: fields,
40
48
  view: view,
41
49
  onChangeView: onChangeView
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalVStack","VStack","__experimentalHStack","HStack","useMemo","ViewList","Pagination","ViewActions","Filters","ViewGrid","DataViews","view","onChangeView","fields","actions","data","isLoading","paginationInfo","ViewComponent","type","_fields","map","field","render","getValue","createElement","className","spacing","justify"],"sources":["@wordpress/edit-site/src/components/dataviews/dataviews.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ViewList from './view-list';\nimport Pagination from './pagination';\nimport ViewActions from './view-actions';\nimport Filters from './filters';\nimport { ViewGrid } from './view-grid';\n\nexport default function DataViews( {\n\tview,\n\tonChangeView,\n\tfields,\n\tactions,\n\tdata,\n\tisLoading = false,\n\tpaginationInfo,\n} ) {\n\tconst ViewComponent = view.type === 'list' ? ViewList : ViewGrid;\n\tconst _fields = useMemo( () => {\n\t\treturn fields.map( ( field ) => ( {\n\t\t\t...field,\n\t\t\trender: field.render || field.getValue,\n\t\t} ) );\n\t}, [ fields ] );\n\treturn (\n\t\t<div className=\"dataviews-wrapper\">\n\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t<HStack>\n\t\t\t\t\t<HStack justify=\"start\">\n\t\t\t\t\t\t<Filters\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t\t<HStack justify=\"end\">\n\t\t\t\t\t\t<ViewActions\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t</HStack>\n\t\t\t\t<ViewComponent\n\t\t\t\t\tfields={ _fields }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t<Pagination\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t/>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAC9B,SAASC,OAAO,QAAQ,oBAAoB;;AAE5C;AACA;AACA;AACA,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,UAAU,MAAM,cAAc;AACrC,OAAOC,WAAW,MAAM,gBAAgB;AACxC,OAAOC,OAAO,MAAM,WAAW;AAC/B,SAASC,QAAQ,QAAQ,aAAa;AAEtC,eAAe,SAASC,SAASA,CAAE;EAClCC,IAAI;EACJC,YAAY;EACZC,MAAM;EACNC,OAAO;EACPC,IAAI;EACJC,SAAS,GAAG,KAAK;EACjBC;AACD,CAAC,EAAG;EACH,MAAMC,aAAa,GAAGP,IAAI,CAACQ,IAAI,KAAK,MAAM,GAAGd,QAAQ,GAAGI,QAAQ;EAChE,MAAMW,OAAO,GAAGhB,OAAO,CAAE,MAAM;IAC9B,OAAOS,MAAM,CAACQ,GAAG,CAAIC,KAAK,KAAQ;MACjC,GAAGA,KAAK;MACRC,MAAM,EAAED,KAAK,CAACC,MAAM,IAAID,KAAK,CAACE;IAC/B,CAAC,CAAG,CAAC;EACN,CAAC,EAAE,CAAEX,MAAM,CAAG,CAAC;EACf,OACCY,aAAA;IAAKC,SAAS,EAAC;EAAmB,GACjCD,aAAA,CAACxB,MAAM;IAAC0B,OAAO,EAAG;EAAG,GACpBF,aAAA,CAACtB,MAAM,QACNsB,aAAA,CAACtB,MAAM;IAACyB,OAAO,EAAC;EAAO,GACtBH,aAAA,CAACjB,OAAO;IACPK,MAAM,EAAGA,MAAQ;IACjBF,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA;EAAc,CAC7B,CACM,CAAC,EACTa,aAAA,CAACtB,MAAM;IAACyB,OAAO,EAAC;EAAK,GACpBH,aAAA,CAAClB,WAAW;IACXM,MAAM,EAAGA,MAAQ;IACjBF,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA;EAAc,CAC7B,CACM,CACD,CAAC,EACTa,aAAA,CAACP,aAAa;IACbL,MAAM,EAAGO,OAAS;IAClBT,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA,YAAc;IAC7BK,cAAc,EAAGA,cAAgB;IACjCH,OAAO,EAAGA,OAAS;IACnBC,IAAI,EAAGA,IAAM;IACbC,SAAS,EAAGA;EAAW,CACvB,CAAC,EACFS,aAAA,CAACnB,UAAU;IACVK,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA,YAAc;IAC7BK,cAAc,EAAGA;EAAgB,CACjC,CACM,CACJ,CAAC;AAER"}
1
+ {"version":3,"names":["__experimentalVStack","VStack","__experimentalHStack","HStack","useMemo","ViewList","Pagination","ViewActions","Filters","Search","ViewGrid","DataViews","view","onChangeView","fields","search","searchLabel","undefined","actions","data","isLoading","paginationInfo","ViewComponent","type","_fields","map","field","render","getValue","createElement","className","spacing","justify","label"],"sources":["@wordpress/edit-site/src/components/dataviews/dataviews.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ViewList from './view-list';\nimport Pagination from './pagination';\nimport ViewActions from './view-actions';\nimport Filters from './filters';\nimport Search from './search';\nimport { ViewGrid } from './view-grid';\n\nexport default function DataViews( {\n\tview,\n\tonChangeView,\n\tfields,\n\tsearch = true,\n\tsearchLabel = undefined,\n\tactions,\n\tdata,\n\tisLoading = false,\n\tpaginationInfo,\n} ) {\n\tconst ViewComponent = view.type === 'list' ? ViewList : ViewGrid;\n\tconst _fields = useMemo( () => {\n\t\treturn fields.map( ( field ) => ( {\n\t\t\t...field,\n\t\t\trender: field.render || field.getValue,\n\t\t} ) );\n\t}, [ fields ] );\n\treturn (\n\t\t<div className=\"dataviews-wrapper\">\n\t\t\t<VStack spacing={ 4 } justify=\"flex-start\">\n\t\t\t\t<HStack>\n\t\t\t\t\t<HStack justify=\"start\">\n\t\t\t\t\t\t{ search && (\n\t\t\t\t\t\t\t<Search\n\t\t\t\t\t\t\t\tlabel={ searchLabel }\n\t\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<Filters\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t\t<HStack justify=\"end\">\n\t\t\t\t\t\t<ViewActions\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t</HStack>\n\t\t\t\t<ViewComponent\n\t\t\t\t\tfields={ _fields }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t<Pagination\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t/>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAC9B,SAASC,OAAO,QAAQ,oBAAoB;;AAE5C;AACA;AACA;AACA,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,UAAU,MAAM,cAAc;AACrC,OAAOC,WAAW,MAAM,gBAAgB;AACxC,OAAOC,OAAO,MAAM,WAAW;AAC/B,OAAOC,MAAM,MAAM,UAAU;AAC7B,SAASC,QAAQ,QAAQ,aAAa;AAEtC,eAAe,SAASC,SAASA,CAAE;EAClCC,IAAI;EACJC,YAAY;EACZC,MAAM;EACNC,MAAM,GAAG,IAAI;EACbC,WAAW,GAAGC,SAAS;EACvBC,OAAO;EACPC,IAAI;EACJC,SAAS,GAAG,KAAK;EACjBC;AACD,CAAC,EAAG;EACH,MAAMC,aAAa,GAAGV,IAAI,CAACW,IAAI,KAAK,MAAM,GAAGlB,QAAQ,GAAGK,QAAQ;EAChE,MAAMc,OAAO,GAAGpB,OAAO,CAAE,MAAM;IAC9B,OAAOU,MAAM,CAACW,GAAG,CAAIC,KAAK,KAAQ;MACjC,GAAGA,KAAK;MACRC,MAAM,EAAED,KAAK,CAACC,MAAM,IAAID,KAAK,CAACE;IAC/B,CAAC,CAAG,CAAC;EACN,CAAC,EAAE,CAAEd,MAAM,CAAG,CAAC;EACf,OACCe,aAAA;IAAKC,SAAS,EAAC;EAAmB,GACjCD,aAAA,CAAC5B,MAAM;IAAC8B,OAAO,EAAG,CAAG;IAACC,OAAO,EAAC;EAAY,GACzCH,aAAA,CAAC1B,MAAM,QACN0B,aAAA,CAAC1B,MAAM;IAAC6B,OAAO,EAAC;EAAO,GACpBjB,MAAM,IACPc,aAAA,CAACpB,MAAM;IACNwB,KAAK,EAAGjB,WAAa;IACrBJ,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA;EAAc,CAC7B,CACD,EACDgB,aAAA,CAACrB,OAAO;IACPM,MAAM,EAAGA,MAAQ;IACjBF,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA;EAAc,CAC7B,CACM,CAAC,EACTgB,aAAA,CAAC1B,MAAM;IAAC6B,OAAO,EAAC;EAAK,GACpBH,aAAA,CAACtB,WAAW;IACXO,MAAM,EAAGA,MAAQ;IACjBF,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA;EAAc,CAC7B,CACM,CACD,CAAC,EACTgB,aAAA,CAACP,aAAa;IACbR,MAAM,EAAGU,OAAS;IAClBZ,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA,YAAc;IAC7BQ,cAAc,EAAGA,cAAgB;IACjCH,OAAO,EAAGA,OAAS;IACnBC,IAAI,EAAGA,IAAM;IACbC,SAAS,EAAGA;EAAW,CACvB,CAAC,EACFS,aAAA,CAACvB,UAAU;IACVM,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA,YAAc;IAC7BQ,cAAc,EAAGA;EAAgB,CACjC,CACM,CACJ,CAAC;AAER"}
@@ -7,42 +7,55 @@ import { __ } from '@wordpress/i18n';
7
7
  /**
8
8
  * Internal dependencies
9
9
  */
10
- import TextFilter from './text-filter';
11
10
  import InFilter from './in-filter';
12
11
  export default function Filters({
13
12
  fields,
14
13
  view,
15
14
  onChangeView
16
15
  }) {
17
- const filters = {};
16
+ const filterIndex = {};
18
17
  fields.forEach(field => {
19
18
  if (!field.filters) {
20
19
  return;
21
20
  }
22
- field.filters.forEach(f => {
23
- filters[f.id] = {
24
- type: f.type
25
- };
21
+ field.filters.forEach(filter => {
22
+ let id = field.id;
23
+ if ('string' === typeof filter) {
24
+ filterIndex[id] = {
25
+ id,
26
+ name: field.header,
27
+ type: filter
28
+ };
29
+ }
30
+ if ('object' === typeof filter) {
31
+ id = filter.id || field.id;
32
+ filterIndex[id] = {
33
+ id,
34
+ name: filter.name || field.header,
35
+ type: filter.type
36
+ };
37
+ }
38
+ if ('enumeration' === filterIndex[id]?.type) {
39
+ const elements = [{
40
+ value: filter.resetValue || '',
41
+ label: filter.resetLabel || __('All')
42
+ }, ...(field.elements || [])];
43
+ filterIndex[id] = {
44
+ ...filterIndex[id],
45
+ elements
46
+ };
47
+ }
26
48
  });
27
49
  });
28
50
  return view.visibleFilters?.map(filterName => {
29
- const filter = filters[filterName];
51
+ const filter = filterIndex[filterName];
30
52
  if (!filter) {
31
53
  return null;
32
54
  }
33
- if (filter.type === 'search') {
34
- return createElement(TextFilter, {
35
- key: filterName,
36
- id: filterName,
37
- view: view,
38
- onChangeView: onChangeView
39
- });
40
- }
41
55
  if (filter.type === 'enumeration') {
42
56
  return createElement(InFilter, {
43
57
  key: filterName,
44
- id: filterName,
45
- fields: fields,
58
+ filter: filter,
46
59
  view: view,
47
60
  onChangeView: onChangeView
48
61
  });
@@ -1 +1 @@
1
- {"version":3,"names":["__","TextFilter","InFilter","Filters","fields","view","onChangeView","filters","forEach","field","f","id","type","visibleFilters","map","filterName","filter","createElement","key"],"sources":["@wordpress/edit-site/src/components/dataviews/filters.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport TextFilter from './text-filter';\nimport InFilter from './in-filter';\n\nexport default function Filters( { fields, view, onChangeView } ) {\n\tconst filters = {};\n\tfields.forEach( ( field ) => {\n\t\tif ( ! field.filters ) {\n\t\t\treturn;\n\t\t}\n\n\t\tfield.filters.forEach( ( f ) => {\n\t\t\tfilters[ f.id ] = { type: f.type };\n\t\t} );\n\t} );\n\n\treturn (\n\t\tview.visibleFilters?.map( ( filterName ) => {\n\t\t\tconst filter = filters[ filterName ];\n\n\t\t\tif ( ! filter ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tif ( filter.type === 'search' ) {\n\t\t\t\treturn (\n\t\t\t\t\t<TextFilter\n\t\t\t\t\t\tkey={ filterName }\n\t\t\t\t\t\tid={ filterName }\n\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t}\n\t\t\tif ( filter.type === 'enumeration' ) {\n\t\t\t\treturn (\n\t\t\t\t\t<InFilter\n\t\t\t\t\t\tkey={ filterName }\n\t\t\t\t\t\tid={ filterName }\n\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn null;\n\t\t} ) || __( 'No filters available' )\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,UAAU,MAAM,eAAe;AACtC,OAAOC,QAAQ,MAAM,aAAa;AAElC,eAAe,SAASC,OAAOA,CAAE;EAAEC,MAAM;EAAEC,IAAI;EAAEC;AAAa,CAAC,EAAG;EACjE,MAAMC,OAAO,GAAG,CAAC,CAAC;EAClBH,MAAM,CAACI,OAAO,CAAIC,KAAK,IAAM;IAC5B,IAAK,CAAEA,KAAK,CAACF,OAAO,EAAG;MACtB;IACD;IAEAE,KAAK,CAACF,OAAO,CAACC,OAAO,CAAIE,CAAC,IAAM;MAC/BH,OAAO,CAAEG,CAAC,CAACC,EAAE,CAAE,GAAG;QAAEC,IAAI,EAAEF,CAAC,CAACE;MAAK,CAAC;IACnC,CAAE,CAAC;EACJ,CAAE,CAAC;EAEH,OACCP,IAAI,CAACQ,cAAc,EAAEC,GAAG,CAAIC,UAAU,IAAM;IAC3C,MAAMC,MAAM,GAAGT,OAAO,CAAEQ,UAAU,CAAE;IAEpC,IAAK,CAAEC,MAAM,EAAG;MACf,OAAO,IAAI;IACZ;IAEA,IAAKA,MAAM,CAACJ,IAAI,KAAK,QAAQ,EAAG;MAC/B,OACCK,aAAA,CAAChB,UAAU;QACViB,GAAG,EAAGH,UAAY;QAClBJ,EAAE,EAAGI,UAAY;QACjBV,IAAI,EAAGA,IAAM;QACbC,YAAY,EAAGA;MAAc,CAC7B,CAAC;IAEJ;IACA,IAAKU,MAAM,CAACJ,IAAI,KAAK,aAAa,EAAG;MACpC,OACCK,aAAA,CAACf,QAAQ;QACRgB,GAAG,EAAGH,UAAY;QAClBJ,EAAE,EAAGI,UAAY;QACjBX,MAAM,EAAGA,MAAQ;QACjBC,IAAI,EAAGA,IAAM;QACbC,YAAY,EAAGA;MAAc,CAC7B,CAAC;IAEJ;IAEA,OAAO,IAAI;EACZ,CAAE,CAAC,IAAIN,EAAE,CAAE,sBAAuB,CAAC;AAErC"}
1
+ {"version":3,"names":["__","InFilter","Filters","fields","view","onChangeView","filterIndex","forEach","field","filters","filter","id","name","header","type","elements","value","resetValue","label","resetLabel","visibleFilters","map","filterName","createElement","key"],"sources":["@wordpress/edit-site/src/components/dataviews/filters.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport InFilter from './in-filter';\n\nexport default function Filters( { fields, view, onChangeView } ) {\n\tconst filterIndex = {};\n\tfields.forEach( ( field ) => {\n\t\tif ( ! field.filters ) {\n\t\t\treturn;\n\t\t}\n\n\t\tfield.filters.forEach( ( filter ) => {\n\t\t\tlet id = field.id;\n\t\t\tif ( 'string' === typeof filter ) {\n\t\t\t\tfilterIndex[ id ] = {\n\t\t\t\t\tid,\n\t\t\t\t\tname: field.header,\n\t\t\t\t\ttype: filter,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif ( 'object' === typeof filter ) {\n\t\t\t\tid = filter.id || field.id;\n\t\t\t\tfilterIndex[ id ] = {\n\t\t\t\t\tid,\n\t\t\t\t\tname: filter.name || field.header,\n\t\t\t\t\ttype: filter.type,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif ( 'enumeration' === filterIndex[ id ]?.type ) {\n\t\t\t\tconst elements = [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: filter.resetValue || '',\n\t\t\t\t\t\tlabel: filter.resetLabel || __( 'All' ),\n\t\t\t\t\t},\n\t\t\t\t\t...( field.elements || [] ),\n\t\t\t\t];\n\t\t\t\tfilterIndex[ id ] = {\n\t\t\t\t\t...filterIndex[ id ],\n\t\t\t\t\telements,\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\t} );\n\n\treturn (\n\t\tview.visibleFilters?.map( ( filterName ) => {\n\t\t\tconst filter = filterIndex[ filterName ];\n\n\t\t\tif ( ! filter ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tif ( filter.type === 'enumeration' ) {\n\t\t\t\treturn (\n\t\t\t\t\t<InFilter\n\t\t\t\t\t\tkey={ filterName }\n\t\t\t\t\t\tfilter={ filter }\n\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn null;\n\t\t} ) || __( 'No filters available' )\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,QAAQ,MAAM,aAAa;AAElC,eAAe,SAASC,OAAOA,CAAE;EAAEC,MAAM;EAAEC,IAAI;EAAEC;AAAa,CAAC,EAAG;EACjE,MAAMC,WAAW,GAAG,CAAC,CAAC;EACtBH,MAAM,CAACI,OAAO,CAAIC,KAAK,IAAM;IAC5B,IAAK,CAAEA,KAAK,CAACC,OAAO,EAAG;MACtB;IACD;IAEAD,KAAK,CAACC,OAAO,CAACF,OAAO,CAAIG,MAAM,IAAM;MACpC,IAAIC,EAAE,GAAGH,KAAK,CAACG,EAAE;MACjB,IAAK,QAAQ,KAAK,OAAOD,MAAM,EAAG;QACjCJ,WAAW,CAAEK,EAAE,CAAE,GAAG;UACnBA,EAAE;UACFC,IAAI,EAAEJ,KAAK,CAACK,MAAM;UAClBC,IAAI,EAAEJ;QACP,CAAC;MACF;MAEA,IAAK,QAAQ,KAAK,OAAOA,MAAM,EAAG;QACjCC,EAAE,GAAGD,MAAM,CAACC,EAAE,IAAIH,KAAK,CAACG,EAAE;QAC1BL,WAAW,CAAEK,EAAE,CAAE,GAAG;UACnBA,EAAE;UACFC,IAAI,EAAEF,MAAM,CAACE,IAAI,IAAIJ,KAAK,CAACK,MAAM;UACjCC,IAAI,EAAEJ,MAAM,CAACI;QACd,CAAC;MACF;MAEA,IAAK,aAAa,KAAKR,WAAW,CAAEK,EAAE,CAAE,EAAEG,IAAI,EAAG;QAChD,MAAMC,QAAQ,GAAG,CAChB;UACCC,KAAK,EAAEN,MAAM,CAACO,UAAU,IAAI,EAAE;UAC9BC,KAAK,EAAER,MAAM,CAACS,UAAU,IAAInB,EAAE,CAAE,KAAM;QACvC,CAAC,EACD,IAAKQ,KAAK,CAACO,QAAQ,IAAI,EAAE,CAAE,CAC3B;QACDT,WAAW,CAAEK,EAAE,CAAE,GAAG;UACnB,GAAGL,WAAW,CAAEK,EAAE,CAAE;UACpBI;QACD,CAAC;MACF;IACD,CAAE,CAAC;EACJ,CAAE,CAAC;EAEH,OACCX,IAAI,CAACgB,cAAc,EAAEC,GAAG,CAAIC,UAAU,IAAM;IAC3C,MAAMZ,MAAM,GAAGJ,WAAW,CAAEgB,UAAU,CAAE;IAExC,IAAK,CAAEZ,MAAM,EAAG;MACf,OAAO,IAAI;IACZ;IAEA,IAAKA,MAAM,CAACI,IAAI,KAAK,aAAa,EAAG;MACpC,OACCS,aAAA,CAACtB,QAAQ;QACRuB,GAAG,EAAGF,UAAY;QAClBZ,MAAM,EAAGA,MAAQ;QACjBN,IAAI,EAAGA,IAAM;QACbC,YAAY,EAAGA;MAAc,CAC7B,CAAC;IAEJ;IAEA,OAAO,IAAI;EACZ,CAAE,CAAC,IAAIL,EAAE,CAAE,sBAAuB,CAAC;AAErC"}
@@ -13,19 +13,17 @@ const {
13
13
  cleanEmptyObject
14
14
  } = unlock(blockEditorPrivateApis);
15
15
  export default (({
16
- id,
17
- fields,
16
+ filter,
18
17
  view,
19
18
  onChangeView
20
19
  }) => {
21
- const field = fields.find(f => f.id === id);
22
20
  return createElement(SelectControl, {
23
- value: view.filters[id],
21
+ value: view.filters[filter.id],
24
22
  prefix: createElement(InputControlPrefixWrapper, {
25
23
  as: "span",
26
24
  className: "dataviews__select-control-prefix"
27
- }, field.header + ':'),
28
- options: field?.elements || [],
25
+ }, filter.name + ':'),
26
+ options: filter.elements,
29
27
  onChange: value => {
30
28
  if (value === '') {
31
29
  value = undefined;
@@ -34,7 +32,7 @@ export default (({
34
32
  ...currentView,
35
33
  filters: cleanEmptyObject({
36
34
  ...currentView.filters,
37
- [id]: value
35
+ [filter.id]: value
38
36
  })
39
37
  }));
40
38
  }
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalInputControlPrefixWrapper","InputControlPrefixWrapper","SelectControl","privateApis","blockEditorPrivateApis","unlock","cleanEmptyObject","id","fields","view","onChangeView","field","find","f","createElement","value","filters","prefix","as","className","header","options","elements","onChange","undefined","currentView"],"sources":["@wordpress/edit-site/src/components/dataviews/in-filter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n\tSelectControl,\n} from '@wordpress/components';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { cleanEmptyObject } = unlock( blockEditorPrivateApis );\n\nexport default ( { id, fields, view, onChangeView } ) => {\n\tconst field = fields.find( ( f ) => f.id === id );\n\n\treturn (\n\t\t<SelectControl\n\t\t\tvalue={ view.filters[ id ] }\n\t\t\tprefix={\n\t\t\t\t<InputControlPrefixWrapper\n\t\t\t\t\tas=\"span\"\n\t\t\t\t\tclassName=\"dataviews__select-control-prefix\"\n\t\t\t\t>\n\t\t\t\t\t{ field.header + ':' }\n\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t}\n\t\t\toptions={ field?.elements || [] }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tif ( value === '' ) {\n\t\t\t\t\tvalue = undefined;\n\t\t\t\t}\n\n\t\t\t\tonChangeView( ( currentView ) => ( {\n\t\t\t\t\t...currentView,\n\t\t\t\t\tfilters: cleanEmptyObject( {\n\t\t\t\t\t\t...currentView.filters,\n\t\t\t\t\t\t[ id ]: value,\n\t\t\t\t\t} ),\n\t\t\t\t} ) );\n\t\t\t} }\n\t\t/>\n\t);\n};\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,uCAAuC,IAAIC,yBAAyB,EACpEC,aAAa,QACP,uBAAuB;AAC9B,SAASC,WAAW,IAAIC,sBAAsB,QAAQ,yBAAyB;;AAE/E;AACA;AACA;AACA,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,MAAM;EAAEC;AAAiB,CAAC,GAAGD,MAAM,CAAED,sBAAuB,CAAC;AAE7D,gBAAe,CAAE;EAAEG,EAAE;EAAEC,MAAM;EAAEC,IAAI;EAAEC;AAAa,CAAC,KAAM;EACxD,MAAMC,KAAK,GAAGH,MAAM,CAACI,IAAI,CAAIC,CAAC,IAAMA,CAAC,CAACN,EAAE,KAAKA,EAAG,CAAC;EAEjD,OACCO,aAAA,CAACZ,aAAa;IACba,KAAK,EAAGN,IAAI,CAACO,OAAO,CAAET,EAAE,CAAI;IAC5BU,MAAM,EACLH,aAAA,CAACb,yBAAyB;MACzBiB,EAAE,EAAC,MAAM;MACTC,SAAS,EAAC;IAAkC,GAE1CR,KAAK,CAACS,MAAM,GAAG,GACS,CAC3B;IACDC,OAAO,EAAGV,KAAK,EAAEW,QAAQ,IAAI,EAAI;IACjCC,QAAQ,EAAKR,KAAK,IAAM;MACvB,IAAKA,KAAK,KAAK,EAAE,EAAG;QACnBA,KAAK,GAAGS,SAAS;MAClB;MAEAd,YAAY,CAAIe,WAAW,KAAQ;QAClC,GAAGA,WAAW;QACdT,OAAO,EAAEV,gBAAgB,CAAE;UAC1B,GAAGmB,WAAW,CAACT,OAAO;UACtB,CAAET,EAAE,GAAIQ;QACT,CAAE;MACH,CAAC,CAAG,CAAC;IACN;EAAG,CACH,CAAC;AAEJ,CAAC"}
1
+ {"version":3,"names":["__experimentalInputControlPrefixWrapper","InputControlPrefixWrapper","SelectControl","privateApis","blockEditorPrivateApis","unlock","cleanEmptyObject","filter","view","onChangeView","createElement","value","filters","id","prefix","as","className","name","options","elements","onChange","undefined","currentView"],"sources":["@wordpress/edit-site/src/components/dataviews/in-filter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n\tSelectControl,\n} from '@wordpress/components';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { cleanEmptyObject } = unlock( blockEditorPrivateApis );\n\nexport default ( { filter, view, onChangeView } ) => {\n\treturn (\n\t\t<SelectControl\n\t\t\tvalue={ view.filters[ filter.id ] }\n\t\t\tprefix={\n\t\t\t\t<InputControlPrefixWrapper\n\t\t\t\t\tas=\"span\"\n\t\t\t\t\tclassName=\"dataviews__select-control-prefix\"\n\t\t\t\t>\n\t\t\t\t\t{ filter.name + ':' }\n\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t}\n\t\t\toptions={ filter.elements }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tif ( value === '' ) {\n\t\t\t\t\tvalue = undefined;\n\t\t\t\t}\n\n\t\t\t\tonChangeView( ( currentView ) => ( {\n\t\t\t\t\t...currentView,\n\t\t\t\t\tfilters: cleanEmptyObject( {\n\t\t\t\t\t\t...currentView.filters,\n\t\t\t\t\t\t[ filter.id ]: value,\n\t\t\t\t\t} ),\n\t\t\t\t} ) );\n\t\t\t} }\n\t\t/>\n\t);\n};\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,uCAAuC,IAAIC,yBAAyB,EACpEC,aAAa,QACP,uBAAuB;AAC9B,SAASC,WAAW,IAAIC,sBAAsB,QAAQ,yBAAyB;;AAE/E;AACA;AACA;AACA,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,MAAM;EAAEC;AAAiB,CAAC,GAAGD,MAAM,CAAED,sBAAuB,CAAC;AAE7D,gBAAe,CAAE;EAAEG,MAAM;EAAEC,IAAI;EAAEC;AAAa,CAAC,KAAM;EACpD,OACCC,aAAA,CAACR,aAAa;IACbS,KAAK,EAAGH,IAAI,CAACI,OAAO,CAAEL,MAAM,CAACM,EAAE,CAAI;IACnCC,MAAM,EACLJ,aAAA,CAACT,yBAAyB;MACzBc,EAAE,EAAC,MAAM;MACTC,SAAS,EAAC;IAAkC,GAE1CT,MAAM,CAACU,IAAI,GAAG,GACU,CAC3B;IACDC,OAAO,EAAGX,MAAM,CAACY,QAAU;IAC3BC,QAAQ,EAAKT,KAAK,IAAM;MACvB,IAAKA,KAAK,KAAK,EAAE,EAAG;QACnBA,KAAK,GAAGU,SAAS;MAClB;MAEAZ,YAAY,CAAIa,WAAW,KAAQ;QAClC,GAAGA,WAAW;QACdV,OAAO,EAAEN,gBAAgB,CAAE;UAC1B,GAAGgB,WAAW,CAACV,OAAO;UACtB,CAAEL,MAAM,CAACM,EAAE,GAAIF;QAChB,CAAE;MACH,CAAC,CAAG,CAAC;IACN;EAAG,CACH,CAAC;AAEJ,CAAC"}