@wordpress/edit-post 5.0.24 → 6.0.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 (117) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/LICENSE.md +1 -1
  3. package/README.md +10 -4
  4. package/build/components/block-manager/category.js +42 -47
  5. package/build/components/block-manager/category.js.map +1 -1
  6. package/build/components/block-manager/index.js +18 -1
  7. package/build/components/block-manager/index.js.map +1 -1
  8. package/build/components/header/index.native.js +4 -6
  9. package/build/components/header/index.native.js.map +1 -1
  10. package/build/components/header/plugin-more-menu-item/index.js +1 -1
  11. package/build/components/header/plugin-more-menu-item/index.js.map +1 -1
  12. package/build/components/layout/index.js +17 -2
  13. package/build/components/layout/index.js.map +1 -1
  14. package/build/components/layout/index.native.js +3 -3
  15. package/build/components/layout/index.native.js.map +1 -1
  16. package/build/components/preferences-modal/index.js +27 -9
  17. package/build/components/preferences-modal/index.js.map +1 -1
  18. package/build/components/secondary-sidebar/inserter-sidebar.js +13 -3
  19. package/build/components/secondary-sidebar/inserter-sidebar.js.map +1 -1
  20. package/build/components/secondary-sidebar/list-view-sidebar.js +7 -5
  21. package/build/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
  22. package/build/components/sidebar/post-author/index.js +3 -1
  23. package/build/components/sidebar/post-author/index.js.map +1 -1
  24. package/build/components/sidebar/template/actions.js +5 -2
  25. package/build/components/sidebar/template/actions.js.map +1 -1
  26. package/build/components/sidebar/template/index.js +25 -13
  27. package/build/components/sidebar/template/index.js.map +1 -1
  28. package/build/components/visual-editor/index.js +14 -6
  29. package/build/components/visual-editor/index.js.map +1 -1
  30. package/build/components/welcome-guide/template.js +1 -1
  31. package/build/components/welcome-guide/template.js.map +1 -1
  32. package/build/editor.js +6 -11
  33. package/build/editor.js.map +1 -1
  34. package/build/index.js +1 -1
  35. package/build/index.js.map +1 -1
  36. package/build/index.native.js +3 -9
  37. package/build/index.native.js.map +1 -1
  38. package/build/store/selectors.js +3 -1
  39. package/build/store/selectors.js.map +1 -1
  40. package/build-module/components/block-manager/category.js +44 -48
  41. package/build-module/components/block-manager/category.js.map +1 -1
  42. package/build-module/components/block-manager/index.js +17 -2
  43. package/build-module/components/block-manager/index.js.map +1 -1
  44. package/build-module/components/header/index.native.js +4 -4
  45. package/build-module/components/header/index.native.js.map +1 -1
  46. package/build-module/components/header/plugin-more-menu-item/index.js +1 -1
  47. package/build-module/components/header/plugin-more-menu-item/index.js.map +1 -1
  48. package/build-module/components/layout/index.js +18 -4
  49. package/build-module/components/layout/index.js.map +1 -1
  50. package/build-module/components/layout/index.native.js +4 -2
  51. package/build-module/components/layout/index.native.js.map +1 -1
  52. package/build-module/components/preferences-modal/index.js +27 -9
  53. package/build-module/components/preferences-modal/index.js.map +1 -1
  54. package/build-module/components/secondary-sidebar/inserter-sidebar.js +14 -4
  55. package/build-module/components/secondary-sidebar/inserter-sidebar.js.map +1 -1
  56. package/build-module/components/secondary-sidebar/list-view-sidebar.js +7 -5
  57. package/build-module/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
  58. package/build-module/components/sidebar/post-author/index.js +3 -1
  59. package/build-module/components/sidebar/post-author/index.js.map +1 -1
  60. package/build-module/components/sidebar/template/actions.js +5 -2
  61. package/build-module/components/sidebar/template/actions.js.map +1 -1
  62. package/build-module/components/sidebar/template/index.js +26 -14
  63. package/build-module/components/sidebar/template/index.js.map +1 -1
  64. package/build-module/components/visual-editor/index.js +15 -7
  65. package/build-module/components/visual-editor/index.js.map +1 -1
  66. package/build-module/components/welcome-guide/template.js +1 -1
  67. package/build-module/components/welcome-guide/template.js.map +1 -1
  68. package/build-module/editor.js +7 -10
  69. package/build-module/editor.js.map +1 -1
  70. package/build-module/index.js +1 -1
  71. package/build-module/index.js.map +1 -1
  72. package/build-module/index.native.js +2 -9
  73. package/build-module/index.native.js.map +1 -1
  74. package/build-module/store/selectors.js +3 -1
  75. package/build-module/store/selectors.js.map +1 -1
  76. package/build-style/style-rtl.css +25 -16
  77. package/build-style/style.css +25 -16
  78. package/package.json +26 -29
  79. package/src/components/block-manager/category.js +41 -48
  80. package/src/components/block-manager/index.js +18 -1
  81. package/src/components/header/index.native.js +10 -4
  82. package/src/components/header/plugin-more-menu-item/index.js +1 -1
  83. package/src/components/header/template-title/style.scss +1 -1
  84. package/src/components/keyboard-shortcut-help-modal/test/__snapshots__/index.js.snap +2 -2
  85. package/src/components/layout/index.js +18 -3
  86. package/src/components/layout/index.native.js +2 -5
  87. package/src/components/preferences-modal/index.js +23 -12
  88. package/src/components/preferences-modal/test/__snapshots__/index.js.snap +7 -13
  89. package/src/components/secondary-sidebar/inserter-sidebar.js +14 -3
  90. package/src/components/secondary-sidebar/list-view-sidebar.js +12 -5
  91. package/src/components/secondary-sidebar/style.scss +0 -4
  92. package/src/components/sidebar/plugin-post-publish-panel/test/__snapshots__/index.js.snap +1 -1
  93. package/src/components/sidebar/plugin-pre-publish-panel/test/__snapshots__/index.js.snap +1 -1
  94. package/src/components/sidebar/post-author/index.js +1 -1
  95. package/src/components/sidebar/template/actions.js +12 -7
  96. package/src/components/sidebar/template/index.js +56 -31
  97. package/src/components/sidebar/template/style.scss +8 -0
  98. package/src/components/visual-editor/index.js +16 -6
  99. package/src/components/visual-editor/style.scss +1 -0
  100. package/src/components/welcome-guide/style.scss +8 -1
  101. package/src/components/welcome-guide/template.js +1 -1
  102. package/src/editor.js +22 -26
  103. package/src/index.js +1 -1
  104. package/src/index.native.js +1 -10
  105. package/src/store/selectors.js +1 -1
  106. package/src/style.scss +1 -2
  107. package/src/test/editor.native.js +4 -4
  108. package/build/components/edit-post-settings/index.js +0 -16
  109. package/build/components/edit-post-settings/index.js.map +0 -1
  110. package/build/prevent-event-discovery.js +0 -24
  111. package/build/prevent-event-discovery.js.map +0 -1
  112. package/build-module/components/edit-post-settings/index.js +0 -7
  113. package/build-module/components/edit-post-settings/index.js.map +0 -1
  114. package/build-module/prevent-event-discovery.js +0 -17
  115. package/build-module/prevent-event-discovery.js.map +0 -1
  116. package/src/components/edit-post-settings/index.js +0 -7
  117. package/src/prevent-event-discovery.js +0 -21
@@ -55,14 +55,34 @@ function NavigationButton(_ref) {
55
55
  let {
56
56
  as: Tag = _components.Button,
57
57
  path,
58
- isBack = false,
59
58
  ...props
60
59
  } = _ref;
61
- const navigator = (0, _components.__experimentalUseNavigator)();
60
+ const {
61
+ goTo
62
+ } = (0, _components.__experimentalUseNavigator)();
63
+ const dataAttrName = 'data-navigator-focusable-id';
64
+ const dataAttrValue = path;
65
+ const dataAttrCssSelector = `[${dataAttrName}="${dataAttrValue}"]`;
66
+ const tagProps = { ...props,
67
+ [dataAttrName]: dataAttrValue
68
+ };
62
69
  return (0, _element.createElement)(Tag, (0, _extends2.default)({
63
- onClick: () => navigator.push(path, {
64
- isBack
70
+ onClick: () => goTo(path, {
71
+ focusTargetSelector: dataAttrCssSelector
65
72
  })
73
+ }, tagProps));
74
+ }
75
+
76
+ function NavigationBackButton(_ref2) {
77
+ let {
78
+ as: Tag = _components.Button,
79
+ ...props
80
+ } = _ref2;
81
+ const {
82
+ goBack
83
+ } = (0, _components.__experimentalUseNavigator)();
84
+ return (0, _element.createElement)(Tag, (0, _extends2.default)({
85
+ onClick: goBack
66
86
  }, props));
67
87
  }
68
88
 
@@ -199,12 +219,12 @@ function PreferencesModal() {
199
219
  const {
200
220
  tabs,
201
221
  sectionsContentMap
202
- } = (0, _element.useMemo)(() => sections.reduce((accumulator, _ref2) => {
222
+ } = (0, _element.useMemo)(() => sections.reduce((accumulator, _ref3) => {
203
223
  let {
204
224
  name,
205
225
  tabLabel: title,
206
226
  content
207
- } = _ref2;
227
+ } = _ref3;
208
228
  accumulator.tabs.push({
209
229
  name,
210
230
  title
@@ -262,10 +282,8 @@ function PreferencesModal() {
262
282
  justify: "left",
263
283
  size: "small",
264
284
  gap: "6"
265
- }, (0, _element.createElement)(NavigationButton, {
266
- path: "/",
285
+ }, (0, _element.createElement)(NavigationBackButton, {
267
286
  icon: (0, _i18n.isRTL)() ? _icons.chevronRight : _icons.chevronLeft,
268
- isBack: true,
269
287
  "aria-label": (0, _i18n.__)('Navigate to the previous view')
270
288
  }), (0, _element.createElement)(_components.__experimentalText, {
271
289
  size: "16"
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/components/preferences-modal/index.js"],"names":["MODAL_NAME","PREFERENCES_MENU","NavigationButton","as","Tag","Button","path","isBack","props","navigator","push","PreferencesModal","isLargeViewport","closeModal","editPostStore","isModalActive","isViewable","select","getEditedPostAttribute","editorStore","getPostType","coreStore","postType","showBlockBreadcrumbsOption","getEditorSettings","getEditorMode","isFeatureActive","mode","isRichEditingEnabled","richEditingEnabled","hasReducedUI","sections","name","tabLabel","content","taxonomy","slug","activeMenu","setActiveMenu","tabs","sectionsContentMap","reduce","accumulator","title","getCurrentTab","tab","modalContent","undefined","map","Item","chevronLeft","chevronRight","section"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalNavigatorProvider as NavigatorProvider,\n\t__experimentalNavigatorScreen as NavigatorScreen,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\t__experimentalHStack as HStack,\n\t__experimentalText as Text,\n\t__experimentalTruncate as Truncate,\n\tFlexItem,\n\tModal,\n\tTabPanel,\n\tButton,\n\tCard,\n\tCardHeader,\n\tCardBody,\n} from '@wordpress/components';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMemo, useCallback, useState } from '@wordpress/element';\nimport {\n\tPostTaxonomies,\n\tPostExcerptCheck,\n\tPageAttributesCheck,\n\tPostFeaturedImageCheck,\n\tPostTypeSupportCheck,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { chevronLeft, chevronRight, Icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport Section from './section';\nimport {\n\tEnablePluginDocumentSettingPanelOption,\n\tEnablePublishSidebarOption,\n\tEnablePanelOption,\n\tEnableFeature,\n} from './options';\nimport MetaBoxesSection from './meta-boxes-section';\nimport { store as editPostStore } from '../../store';\nimport BlockManager from '../block-manager';\n\nconst MODAL_NAME = 'edit-post/preferences';\nconst PREFERENCES_MENU = 'preferences-menu';\n\nfunction NavigationButton( {\n\tas: Tag = Button,\n\tpath,\n\tisBack = false,\n\t...props\n} ) {\n\tconst navigator = useNavigator();\n\treturn (\n\t\t<Tag\n\t\t\tonClick={ () => navigator.push( path, { isBack } ) }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nexport default function PreferencesModal() {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst { closeModal } = useDispatch( editPostStore );\n\tconst { isModalActive, isViewable } = useSelect( ( select ) => {\n\t\tconst { getEditedPostAttribute } = select( editorStore );\n\t\tconst { getPostType } = select( coreStore );\n\t\tconst postType = getPostType( getEditedPostAttribute( 'type' ) );\n\t\treturn {\n\t\t\tisModalActive: select( editPostStore ).isModalActive( MODAL_NAME ),\n\t\t\tisViewable: get( postType, [ 'viewable' ], false ),\n\t\t};\n\t}, [] );\n\tconst showBlockBreadcrumbsOption = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditorSettings } = select( editorStore );\n\t\t\tconst { getEditorMode, isFeatureActive } = select( editPostStore );\n\t\t\tconst mode = getEditorMode();\n\t\t\tconst isRichEditingEnabled = getEditorSettings().richEditingEnabled;\n\t\t\tconst hasReducedUI = isFeatureActive( 'reducedUI' );\n\t\t\treturn (\n\t\t\t\t! hasReducedUI &&\n\t\t\t\tisLargeViewport &&\n\t\t\t\tisRichEditingEnabled &&\n\t\t\t\tmode === 'visual'\n\t\t\t);\n\t\t},\n\t\t[ isLargeViewport ]\n\t);\n\tconst sections = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tname: 'general',\n\t\t\t\ttabLabel: __( 'General' ),\n\t\t\t\tcontent: (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ isLargeViewport && (\n\t\t\t\t\t\t\t<Section\n\t\t\t\t\t\t\t\ttitle={ __( 'Publishing' ) }\n\t\t\t\t\t\t\t\tdescription={ __(\n\t\t\t\t\t\t\t\t\t'Change options related to publishing.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<EnablePublishSidebarOption\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Review settings, such as visibility and tags.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t\t'Include pre-publish checklist'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Section>\n\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t<Section\n\t\t\t\t\t\t\ttitle={ __( 'Appearance' ) }\n\t\t\t\t\t\t\tdescription={ __(\n\t\t\t\t\t\t\t\t'Customize options related to the block editor interface and editing flow.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\tfeatureName=\"reducedUI\"\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Compacts options and outlines in the toolbar.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tlabel={ __( 'Reduce the interface' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\tfeatureName=\"focusMode\"\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Highlights the current block and fades other content.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tlabel={ __( 'Spotlight mode' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\tfeatureName=\"showIconLabels\"\n\t\t\t\t\t\t\t\thelp={ __( 'Shows text instead of icons.' ) }\n\t\t\t\t\t\t\t\tlabel={ __( 'Display button labels' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\tfeatureName=\"themeStyles\"\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Make the editor look like your theme.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tlabel={ __( 'Use theme styles' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ showBlockBreadcrumbsOption && (\n\t\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\t\tfeatureName=\"showBlockBreadcrumbs\"\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Shows block breadcrumbs at the bottom of the editor.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Display block breadcrumbs' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Section>\n\t\t\t\t\t</>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'blocks',\n\t\t\t\ttabLabel: __( 'Blocks' ),\n\t\t\t\tcontent: (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Section\n\t\t\t\t\t\t\ttitle={ __( 'Block interactions' ) }\n\t\t\t\t\t\t\tdescription={ __(\n\t\t\t\t\t\t\t\t'Customize how you interact with blocks in the block library and editing canvas.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\tfeatureName=\"mostUsedBlocks\"\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Places the most frequent blocks in the block library.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tlabel={ __( 'Show most used blocks' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\tfeatureName=\"keepCaretInsideBlock\"\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Aids screen readers by stopping text caret from leaving blocks.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t'Contain text cursor inside block'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Section>\n\t\t\t\t\t\t<Section\n\t\t\t\t\t\t\ttitle={ __( 'Visible blocks' ) }\n\t\t\t\t\t\t\tdescription={ __(\n\t\t\t\t\t\t\t\t\"Disable blocks that you don't want to appear in the inserter. They can always be toggled back on later.\"\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockManager />\n\t\t\t\t\t\t</Section>\n\t\t\t\t\t</>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'panels',\n\t\t\t\ttabLabel: __( 'Panels' ),\n\t\t\t\tcontent: (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Section\n\t\t\t\t\t\t\ttitle={ __( 'Document settings' ) }\n\t\t\t\t\t\t\tdescription={ __(\n\t\t\t\t\t\t\t\t'Choose what displays in the panel.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<EnablePluginDocumentSettingPanelOption.Slot />\n\t\t\t\t\t\t\t{ isViewable && (\n\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Permalink' ) }\n\t\t\t\t\t\t\t\t\tpanelName=\"post-link\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ isViewable && (\n\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Template' ) }\n\t\t\t\t\t\t\t\t\tpanelName=\"template\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<PostTaxonomies\n\t\t\t\t\t\t\t\ttaxonomyWrapper={ ( content, taxonomy ) => (\n\t\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\t\tlabel={ get( taxonomy, [\n\t\t\t\t\t\t\t\t\t\t\t'labels',\n\t\t\t\t\t\t\t\t\t\t\t'menu_name',\n\t\t\t\t\t\t\t\t\t\t] ) }\n\t\t\t\t\t\t\t\t\t\tpanelName={ `taxonomy-panel-${ taxonomy.slug }` }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<PostFeaturedImageCheck>\n\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Featured image' ) }\n\t\t\t\t\t\t\t\t\tpanelName=\"featured-image\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</PostFeaturedImageCheck>\n\t\t\t\t\t\t\t<PostExcerptCheck>\n\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Excerpt' ) }\n\t\t\t\t\t\t\t\t\tpanelName=\"post-excerpt\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</PostExcerptCheck>\n\t\t\t\t\t\t\t<PostTypeSupportCheck\n\t\t\t\t\t\t\t\tsupportKeys={ [ 'comments', 'trackbacks' ] }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Discussion' ) }\n\t\t\t\t\t\t\t\t\tpanelName=\"discussion-panel\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</PostTypeSupportCheck>\n\t\t\t\t\t\t\t<PageAttributesCheck>\n\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Page attributes' ) }\n\t\t\t\t\t\t\t\t\tpanelName=\"page-attributes\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</PageAttributesCheck>\n\t\t\t\t\t\t</Section>\n\t\t\t\t\t\t<MetaBoxesSection\n\t\t\t\t\t\t\ttitle={ __( 'Additional' ) }\n\t\t\t\t\t\t\tdescription={ __(\n\t\t\t\t\t\t\t\t'Add extra areas to the editor.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t),\n\t\t\t},\n\t\t],\n\t\t[ isViewable, isLargeViewport, showBlockBreadcrumbsOption ]\n\t);\n\n\t// This is also used to sync the two different rendered components\n\t// between small and large viewports.\n\tconst [ activeMenu, setActiveMenu ] = useState( PREFERENCES_MENU );\n\t/**\n\t * Create helper objects from `sections` for easier data handling.\n\t * `tabs` is used for creating the `TabPanel` and `sectionsContentMap`\n\t * is used for easier access to active tab's content.\n\t */\n\tconst { tabs, sectionsContentMap } = useMemo(\n\t\t() =>\n\t\t\tsections.reduce(\n\t\t\t\t( accumulator, { name, tabLabel: title, content } ) => {\n\t\t\t\t\taccumulator.tabs.push( { name, title } );\n\t\t\t\t\taccumulator.sectionsContentMap[ name ] = content;\n\t\t\t\t\treturn accumulator;\n\t\t\t\t},\n\t\t\t\t{ tabs: [], sectionsContentMap: {} }\n\t\t\t),\n\t\t[ sections ]\n\t);\n\tconst getCurrentTab = useCallback(\n\t\t( tab ) => sectionsContentMap[ tab.name ] || null,\n\t\t[ sectionsContentMap ]\n\t);\n\tif ( ! isModalActive ) {\n\t\treturn null;\n\t}\n\tlet modalContent;\n\t// We render different components based on the viewport size.\n\tif ( isLargeViewport ) {\n\t\tmodalContent = (\n\t\t\t<TabPanel\n\t\t\t\tclassName=\"edit-post-preferences__tabs\"\n\t\t\t\ttabs={ tabs }\n\t\t\t\tinitialTabName={\n\t\t\t\t\tactiveMenu !== PREFERENCES_MENU ? activeMenu : undefined\n\t\t\t\t}\n\t\t\t\tonSelect={ setActiveMenu }\n\t\t\t\torientation=\"vertical\"\n\t\t\t>\n\t\t\t\t{ getCurrentTab }\n\t\t\t</TabPanel>\n\t\t);\n\t} else {\n\t\tmodalContent = (\n\t\t\t<NavigatorProvider initialPath=\"/\">\n\t\t\t\t<NavigatorScreen path=\"/\">\n\t\t\t\t\t<Card isBorderless size=\"small\">\n\t\t\t\t\t\t<CardBody>\n\t\t\t\t\t\t\t<ItemGroup>\n\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<NavigationButton\n\t\t\t\t\t\t\t\t\t\t\tkey={ tab.name }\n\t\t\t\t\t\t\t\t\t\t\tpath={ tab.name }\n\t\t\t\t\t\t\t\t\t\t\tas={ Item }\n\t\t\t\t\t\t\t\t\t\t\tisAction\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t\t\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Truncate>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{ tab.title }\n\t\t\t\t\t\t\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisRTL()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? chevronLeft\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: chevronRight\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t\t\t\t\t</NavigationButton>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t</CardBody>\n\t\t\t\t\t</Card>\n\t\t\t\t</NavigatorScreen>\n\t\t\t\t{ sections.map( ( section ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<NavigatorScreen\n\t\t\t\t\t\t\tkey={ `${ section.name }-menu` }\n\t\t\t\t\t\t\tpath={ section.name }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Card isBorderless size=\"large\">\n\t\t\t\t\t\t\t\t<CardHeader\n\t\t\t\t\t\t\t\t\tisBorderless={ false }\n\t\t\t\t\t\t\t\t\tjustify=\"left\"\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\tgap=\"6\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<NavigationButton\n\t\t\t\t\t\t\t\t\t\tpath=\"/\"\n\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\tisRTL() ? chevronRight : chevronLeft\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tisBack\n\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t'Navigate to the previous view'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<Text size=\"16\">{ section.tabLabel }</Text>\n\t\t\t\t\t\t\t\t</CardHeader>\n\t\t\t\t\t\t\t\t<CardBody>{ section.content }</CardBody>\n\t\t\t\t\t\t\t</Card>\n\t\t\t\t\t\t</NavigatorScreen>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</NavigatorProvider>\n\t\t);\n\t}\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"edit-post-preferences-modal\"\n\t\t\ttitle={ __( 'Preferences' ) }\n\t\t\tcloseLabel={ __( 'Close' ) }\n\t\t\tonRequestClose={ closeModal }\n\t\t>\n\t\t\t{ modalContent }\n\t\t</Modal>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/components/preferences-modal/index.js"],"names":["MODAL_NAME","PREFERENCES_MENU","NavigationButton","as","Tag","Button","path","props","goTo","dataAttrName","dataAttrValue","dataAttrCssSelector","tagProps","focusTargetSelector","NavigationBackButton","goBack","PreferencesModal","isLargeViewport","closeModal","editPostStore","isModalActive","isViewable","select","getEditedPostAttribute","editorStore","getPostType","coreStore","postType","showBlockBreadcrumbsOption","getEditorSettings","getEditorMode","isFeatureActive","mode","isRichEditingEnabled","richEditingEnabled","hasReducedUI","sections","name","tabLabel","content","taxonomy","slug","activeMenu","setActiveMenu","tabs","sectionsContentMap","reduce","accumulator","title","push","getCurrentTab","tab","modalContent","undefined","map","Item","chevronLeft","chevronRight","section"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalNavigatorProvider as NavigatorProvider,\n\t__experimentalNavigatorScreen as NavigatorScreen,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\t__experimentalHStack as HStack,\n\t__experimentalText as Text,\n\t__experimentalTruncate as Truncate,\n\tFlexItem,\n\tModal,\n\tTabPanel,\n\tButton,\n\tCard,\n\tCardHeader,\n\tCardBody,\n} from '@wordpress/components';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMemo, useCallback, useState } from '@wordpress/element';\nimport {\n\tPostTaxonomies,\n\tPostExcerptCheck,\n\tPageAttributesCheck,\n\tPostFeaturedImageCheck,\n\tPostTypeSupportCheck,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { chevronLeft, chevronRight, Icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport Section from './section';\nimport {\n\tEnablePluginDocumentSettingPanelOption,\n\tEnablePublishSidebarOption,\n\tEnablePanelOption,\n\tEnableFeature,\n} from './options';\nimport MetaBoxesSection from './meta-boxes-section';\nimport { store as editPostStore } from '../../store';\nimport BlockManager from '../block-manager';\n\nconst MODAL_NAME = 'edit-post/preferences';\nconst PREFERENCES_MENU = 'preferences-menu';\n\nfunction NavigationButton( { as: Tag = Button, path, ...props } ) {\n\tconst { goTo } = useNavigator();\n\n\tconst dataAttrName = 'data-navigator-focusable-id';\n\tconst dataAttrValue = path;\n\n\tconst dataAttrCssSelector = `[${ dataAttrName }=\"${ dataAttrValue }\"]`;\n\n\tconst tagProps = {\n\t\t...props,\n\t\t[ dataAttrName ]: dataAttrValue,\n\t};\n\n\treturn (\n\t\t<Tag\n\t\t\tonClick={ () =>\n\t\t\t\tgoTo( path, { focusTargetSelector: dataAttrCssSelector } )\n\t\t\t}\n\t\t\t{ ...tagProps }\n\t\t/>\n\t);\n}\n\nfunction NavigationBackButton( { as: Tag = Button, ...props } ) {\n\tconst { goBack } = useNavigator();\n\treturn <Tag onClick={ goBack } { ...props } />;\n}\n\nexport default function PreferencesModal() {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst { closeModal } = useDispatch( editPostStore );\n\tconst { isModalActive, isViewable } = useSelect( ( select ) => {\n\t\tconst { getEditedPostAttribute } = select( editorStore );\n\t\tconst { getPostType } = select( coreStore );\n\t\tconst postType = getPostType( getEditedPostAttribute( 'type' ) );\n\t\treturn {\n\t\t\tisModalActive: select( editPostStore ).isModalActive( MODAL_NAME ),\n\t\t\tisViewable: get( postType, [ 'viewable' ], false ),\n\t\t};\n\t}, [] );\n\tconst showBlockBreadcrumbsOption = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditorSettings } = select( editorStore );\n\t\t\tconst { getEditorMode, isFeatureActive } = select( editPostStore );\n\t\t\tconst mode = getEditorMode();\n\t\t\tconst isRichEditingEnabled = getEditorSettings().richEditingEnabled;\n\t\t\tconst hasReducedUI = isFeatureActive( 'reducedUI' );\n\t\t\treturn (\n\t\t\t\t! hasReducedUI &&\n\t\t\t\tisLargeViewport &&\n\t\t\t\tisRichEditingEnabled &&\n\t\t\t\tmode === 'visual'\n\t\t\t);\n\t\t},\n\t\t[ isLargeViewport ]\n\t);\n\tconst sections = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tname: 'general',\n\t\t\t\ttabLabel: __( 'General' ),\n\t\t\t\tcontent: (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ isLargeViewport && (\n\t\t\t\t\t\t\t<Section\n\t\t\t\t\t\t\t\ttitle={ __( 'Publishing' ) }\n\t\t\t\t\t\t\t\tdescription={ __(\n\t\t\t\t\t\t\t\t\t'Change options related to publishing.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<EnablePublishSidebarOption\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Review settings, such as visibility and tags.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t\t'Include pre-publish checklist'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Section>\n\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t<Section\n\t\t\t\t\t\t\ttitle={ __( 'Appearance' ) }\n\t\t\t\t\t\t\tdescription={ __(\n\t\t\t\t\t\t\t\t'Customize options related to the block editor interface and editing flow.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\tfeatureName=\"reducedUI\"\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Compacts options and outlines in the toolbar.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tlabel={ __( 'Reduce the interface' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\tfeatureName=\"focusMode\"\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Highlights the current block and fades other content.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tlabel={ __( 'Spotlight mode' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\tfeatureName=\"showIconLabels\"\n\t\t\t\t\t\t\t\thelp={ __( 'Shows text instead of icons.' ) }\n\t\t\t\t\t\t\t\tlabel={ __( 'Display button labels' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\tfeatureName=\"themeStyles\"\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Make the editor look like your theme.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tlabel={ __( 'Use theme styles' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ showBlockBreadcrumbsOption && (\n\t\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\t\tfeatureName=\"showBlockBreadcrumbs\"\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Shows block breadcrumbs at the bottom of the editor.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Display block breadcrumbs' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Section>\n\t\t\t\t\t</>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'blocks',\n\t\t\t\ttabLabel: __( 'Blocks' ),\n\t\t\t\tcontent: (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Section\n\t\t\t\t\t\t\ttitle={ __( 'Block interactions' ) }\n\t\t\t\t\t\t\tdescription={ __(\n\t\t\t\t\t\t\t\t'Customize how you interact with blocks in the block library and editing canvas.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\tfeatureName=\"mostUsedBlocks\"\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Places the most frequent blocks in the block library.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tlabel={ __( 'Show most used blocks' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<EnableFeature\n\t\t\t\t\t\t\t\tfeatureName=\"keepCaretInsideBlock\"\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Aids screen readers by stopping text caret from leaving blocks.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t'Contain text cursor inside block'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Section>\n\t\t\t\t\t\t<Section\n\t\t\t\t\t\t\ttitle={ __( 'Visible blocks' ) }\n\t\t\t\t\t\t\tdescription={ __(\n\t\t\t\t\t\t\t\t\"Disable blocks that you don't want to appear in the inserter. They can always be toggled back on later.\"\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockManager />\n\t\t\t\t\t\t</Section>\n\t\t\t\t\t</>\n\t\t\t\t),\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'panels',\n\t\t\t\ttabLabel: __( 'Panels' ),\n\t\t\t\tcontent: (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Section\n\t\t\t\t\t\t\ttitle={ __( 'Document settings' ) }\n\t\t\t\t\t\t\tdescription={ __(\n\t\t\t\t\t\t\t\t'Choose what displays in the panel.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<EnablePluginDocumentSettingPanelOption.Slot />\n\t\t\t\t\t\t\t{ isViewable && (\n\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Permalink' ) }\n\t\t\t\t\t\t\t\t\tpanelName=\"post-link\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ isViewable && (\n\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Template' ) }\n\t\t\t\t\t\t\t\t\tpanelName=\"template\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<PostTaxonomies\n\t\t\t\t\t\t\t\ttaxonomyWrapper={ ( content, taxonomy ) => (\n\t\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\t\tlabel={ get( taxonomy, [\n\t\t\t\t\t\t\t\t\t\t\t'labels',\n\t\t\t\t\t\t\t\t\t\t\t'menu_name',\n\t\t\t\t\t\t\t\t\t\t] ) }\n\t\t\t\t\t\t\t\t\t\tpanelName={ `taxonomy-panel-${ taxonomy.slug }` }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<PostFeaturedImageCheck>\n\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Featured image' ) }\n\t\t\t\t\t\t\t\t\tpanelName=\"featured-image\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</PostFeaturedImageCheck>\n\t\t\t\t\t\t\t<PostExcerptCheck>\n\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Excerpt' ) }\n\t\t\t\t\t\t\t\t\tpanelName=\"post-excerpt\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</PostExcerptCheck>\n\t\t\t\t\t\t\t<PostTypeSupportCheck\n\t\t\t\t\t\t\t\tsupportKeys={ [ 'comments', 'trackbacks' ] }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Discussion' ) }\n\t\t\t\t\t\t\t\t\tpanelName=\"discussion-panel\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</PostTypeSupportCheck>\n\t\t\t\t\t\t\t<PageAttributesCheck>\n\t\t\t\t\t\t\t\t<EnablePanelOption\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Page attributes' ) }\n\t\t\t\t\t\t\t\t\tpanelName=\"page-attributes\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</PageAttributesCheck>\n\t\t\t\t\t\t</Section>\n\t\t\t\t\t\t<MetaBoxesSection\n\t\t\t\t\t\t\ttitle={ __( 'Additional' ) }\n\t\t\t\t\t\t\tdescription={ __(\n\t\t\t\t\t\t\t\t'Add extra areas to the editor.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t),\n\t\t\t},\n\t\t],\n\t\t[ isViewable, isLargeViewport, showBlockBreadcrumbsOption ]\n\t);\n\n\t// This is also used to sync the two different rendered components\n\t// between small and large viewports.\n\tconst [ activeMenu, setActiveMenu ] = useState( PREFERENCES_MENU );\n\t/**\n\t * Create helper objects from `sections` for easier data handling.\n\t * `tabs` is used for creating the `TabPanel` and `sectionsContentMap`\n\t * is used for easier access to active tab's content.\n\t */\n\tconst { tabs, sectionsContentMap } = useMemo(\n\t\t() =>\n\t\t\tsections.reduce(\n\t\t\t\t( accumulator, { name, tabLabel: title, content } ) => {\n\t\t\t\t\taccumulator.tabs.push( { name, title } );\n\t\t\t\t\taccumulator.sectionsContentMap[ name ] = content;\n\t\t\t\t\treturn accumulator;\n\t\t\t\t},\n\t\t\t\t{ tabs: [], sectionsContentMap: {} }\n\t\t\t),\n\t\t[ sections ]\n\t);\n\tconst getCurrentTab = useCallback(\n\t\t( tab ) => sectionsContentMap[ tab.name ] || null,\n\t\t[ sectionsContentMap ]\n\t);\n\tif ( ! isModalActive ) {\n\t\treturn null;\n\t}\n\tlet modalContent;\n\t// We render different components based on the viewport size.\n\tif ( isLargeViewport ) {\n\t\tmodalContent = (\n\t\t\t<TabPanel\n\t\t\t\tclassName=\"edit-post-preferences__tabs\"\n\t\t\t\ttabs={ tabs }\n\t\t\t\tinitialTabName={\n\t\t\t\t\tactiveMenu !== PREFERENCES_MENU ? activeMenu : undefined\n\t\t\t\t}\n\t\t\t\tonSelect={ setActiveMenu }\n\t\t\t\torientation=\"vertical\"\n\t\t\t>\n\t\t\t\t{ getCurrentTab }\n\t\t\t</TabPanel>\n\t\t);\n\t} else {\n\t\tmodalContent = (\n\t\t\t<NavigatorProvider initialPath=\"/\">\n\t\t\t\t<NavigatorScreen path=\"/\">\n\t\t\t\t\t<Card isBorderless size=\"small\">\n\t\t\t\t\t\t<CardBody>\n\t\t\t\t\t\t\t<ItemGroup>\n\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<NavigationButton\n\t\t\t\t\t\t\t\t\t\t\tkey={ tab.name }\n\t\t\t\t\t\t\t\t\t\t\tpath={ tab.name }\n\t\t\t\t\t\t\t\t\t\t\tas={ Item }\n\t\t\t\t\t\t\t\t\t\t\tisAction\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t\t\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Truncate>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{ tab.title }\n\t\t\t\t\t\t\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisRTL()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? chevronLeft\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: chevronRight\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t\t\t\t\t</NavigationButton>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t</CardBody>\n\t\t\t\t\t</Card>\n\t\t\t\t</NavigatorScreen>\n\t\t\t\t{ sections.map( ( section ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<NavigatorScreen\n\t\t\t\t\t\t\tkey={ `${ section.name }-menu` }\n\t\t\t\t\t\t\tpath={ section.name }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Card isBorderless size=\"large\">\n\t\t\t\t\t\t\t\t<CardHeader\n\t\t\t\t\t\t\t\t\tisBorderless={ false }\n\t\t\t\t\t\t\t\t\tjustify=\"left\"\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\tgap=\"6\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<NavigationBackButton\n\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\tisRTL() ? chevronRight : chevronLeft\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t'Navigate to the previous view'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<Text size=\"16\">{ section.tabLabel }</Text>\n\t\t\t\t\t\t\t\t</CardHeader>\n\t\t\t\t\t\t\t\t<CardBody>{ section.content }</CardBody>\n\t\t\t\t\t\t\t</Card>\n\t\t\t\t\t\t</NavigatorScreen>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</NavigatorProvider>\n\t\t);\n\t}\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"edit-post-preferences-modal\"\n\t\t\ttitle={ __( 'Preferences' ) }\n\t\t\tcloseLabel={ __( 'Close' ) }\n\t\t\tonRequestClose={ closeModal }\n\t\t>\n\t\t\t{ modalContent }\n\t\t</Modal>\n\t);\n}\n"]}
@@ -21,6 +21,8 @@ var _icons = require("@wordpress/icons");
21
21
 
22
22
  var _compose = require("@wordpress/compose");
23
23
 
24
+ var _i18n = require("@wordpress/i18n");
25
+
24
26
  var _store = require("../../store");
25
27
 
26
28
  /**
@@ -48,17 +50,24 @@ function InserterSidebar() {
48
50
  setIsInserterOpened
49
51
  } = (0, _data.useDispatch)(_store.store);
50
52
  const isMobileViewport = (0, _compose.useViewportMatch)('medium', '<');
53
+ const TagName = !isMobileViewport ? _components.VisuallyHidden : 'div';
51
54
  const [inserterDialogRef, inserterDialogProps] = (0, _compose.__experimentalUseDialog)({
52
- onClose: () => setIsInserterOpened(false)
55
+ onClose: () => setIsInserterOpened(false),
56
+ focusOnMount: null
53
57
  });
58
+ const libraryRef = (0, _element.useRef)();
59
+ (0, _element.useEffect)(() => {
60
+ libraryRef.current.focusSearch();
61
+ }, []);
54
62
  return (0, _element.createElement)("div", (0, _extends2.default)({
55
63
  ref: inserterDialogRef
56
64
  }, inserterDialogProps, {
57
65
  className: "edit-post-editor__inserter-panel"
58
- }), (0, _element.createElement)("div", {
66
+ }), (0, _element.createElement)(TagName, {
59
67
  className: "edit-post-editor__inserter-panel-header"
60
68
  }, (0, _element.createElement)(_components.Button, {
61
69
  icon: _icons.close,
70
+ label: (0, _i18n.__)('Close block inserter'),
62
71
  onClick: () => setIsInserterOpened(false)
63
72
  })), (0, _element.createElement)("div", {
64
73
  className: "edit-post-editor__inserter-panel-content"
@@ -68,7 +77,8 @@ function InserterSidebar() {
68
77
  shouldFocusBlock: isMobileViewport,
69
78
  rootClientId: insertionPoint.rootClientId,
70
79
  __experimentalInsertionIndex: insertionPoint.insertionIndex,
71
- __experimentalFilterValue: insertionPoint.filterValue
80
+ __experimentalFilterValue: insertionPoint.filterValue,
81
+ ref: libraryRef
72
82
  })));
73
83
  }
74
84
  //# sourceMappingURL=inserter-sidebar.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/components/secondary-sidebar/inserter-sidebar.js"],"names":["InserterSidebar","insertionPoint","showMostUsedBlocks","select","isFeatureActive","__experimentalGetInsertionPoint","editPostStore","setIsInserterOpened","isMobileViewport","inserterDialogRef","inserterDialogProps","onClose","close","rootClientId","insertionIndex","filterValue"],"mappings":";;;;;;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AACA;;AAQA;;AAfA;AACA;AACA;;AAUA;AACA;AACA;AAGe,SAASA,eAAT,GAA2B;AACzC,QAAM;AAAEC,IAAAA,cAAF;AAAkBC,IAAAA;AAAlB,MAAyC,qBAAaC,MAAF,IAAc;AACvE,UAAM;AAAEC,MAAAA,eAAF;AAAmBC,MAAAA;AAAnB,QAAuDF,MAAM,CAClEG,YADkE,CAAnE;AAGA,WAAO;AACNL,MAAAA,cAAc,EAAEI,+BAA+B,EADzC;AAENH,MAAAA,kBAAkB,EAAEE,eAAe,CAAE,gBAAF;AAF7B,KAAP;AAIA,GAR8C,EAQ5C,EAR4C,CAA/C;AASA,QAAM;AAAEG,IAAAA;AAAF,MAA0B,uBAAaD,YAAb,CAAhC;AAEA,QAAME,gBAAgB,GAAG,+BAAkB,QAAlB,EAA4B,GAA5B,CAAzB;AACA,QAAM,CAAEC,iBAAF,EAAqBC,mBAArB,IAA6C,sCAAW;AAC7DC,IAAAA,OAAO,EAAE,MAAMJ,mBAAmB,CAAE,KAAF;AAD2B,GAAX,CAAnD;AAIA,SACC;AACC,IAAA,GAAG,EAAGE;AADP,KAEMC,mBAFN;AAGC,IAAA,SAAS,EAAC;AAHX,MAKC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,4BAAC,kBAAD;AACC,IAAA,IAAI,EAAGE,YADR;AAEC,IAAA,OAAO,EAAG,MAAML,mBAAmB,CAAE,KAAF;AAFpC,IADD,CALD,EAWC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,4BAAC,kCAAD;AACC,IAAA,kBAAkB,EAAGL,kBADtB;AAEC,IAAA,qBAAqB,MAFtB;AAGC,IAAA,gBAAgB,EAAGM,gBAHpB;AAIC,IAAA,YAAY,EAAGP,cAAc,CAACY,YAJ/B;AAKC,IAAA,4BAA4B,EAC3BZ,cAAc,CAACa,cANjB;AAQC,IAAA,yBAAyB,EAAGb,cAAc,CAACc;AAR5C,IADD,CAXD,CADD;AA0BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { Button } from '@wordpress/components';\nimport { __experimentalLibrary as Library } from '@wordpress/block-editor';\nimport { close } from '@wordpress/icons';\nimport {\n\tuseViewportMatch,\n\t__experimentalUseDialog as useDialog,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\n\nexport default function InserterSidebar() {\n\tconst { insertionPoint, showMostUsedBlocks } = useSelect( ( select ) => {\n\t\tconst { isFeatureActive, __experimentalGetInsertionPoint } = select(\n\t\t\teditPostStore\n\t\t);\n\t\treturn {\n\t\t\tinsertionPoint: __experimentalGetInsertionPoint(),\n\t\t\tshowMostUsedBlocks: isFeatureActive( 'mostUsedBlocks' ),\n\t\t};\n\t}, [] );\n\tconst { setIsInserterOpened } = useDispatch( editPostStore );\n\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst [ inserterDialogRef, inserterDialogProps ] = useDialog( {\n\t\tonClose: () => setIsInserterOpened( false ),\n\t} );\n\n\treturn (\n\t\t<div\n\t\t\tref={ inserterDialogRef }\n\t\t\t{ ...inserterDialogProps }\n\t\t\tclassName=\"edit-post-editor__inserter-panel\"\n\t\t>\n\t\t\t<div className=\"edit-post-editor__inserter-panel-header\">\n\t\t\t\t<Button\n\t\t\t\t\ticon={ close }\n\t\t\t\t\tonClick={ () => setIsInserterOpened( false ) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<div className=\"edit-post-editor__inserter-panel-content\">\n\t\t\t\t<Library\n\t\t\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t\t\tshowInserterHelpPanel\n\t\t\t\t\tshouldFocusBlock={ isMobileViewport }\n\t\t\t\t\trootClientId={ insertionPoint.rootClientId }\n\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\tinsertionPoint.insertionIndex\n\t\t\t\t\t}\n\t\t\t\t\t__experimentalFilterValue={ insertionPoint.filterValue }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/components/secondary-sidebar/inserter-sidebar.js"],"names":["InserterSidebar","insertionPoint","showMostUsedBlocks","select","isFeatureActive","__experimentalGetInsertionPoint","editPostStore","setIsInserterOpened","isMobileViewport","TagName","VisuallyHidden","inserterDialogRef","inserterDialogProps","onClose","focusOnMount","libraryRef","current","focusSearch","close","rootClientId","insertionIndex","filterValue"],"mappings":";;;;;;;;;AAYA;;;;AATA;;AACA;;AACA;;AACA;;AACA;;AAIA;;AAMA;;AAjBA;AACA;AACA;;AAYA;AACA;AACA;AAGe,SAASA,eAAT,GAA2B;AACzC,QAAM;AAAEC,IAAAA,cAAF;AAAkBC,IAAAA;AAAlB,MAAyC,qBAAaC,MAAF,IAAc;AACvE,UAAM;AAAEC,MAAAA,eAAF;AAAmBC,MAAAA;AAAnB,QAAuDF,MAAM,CAClEG,YADkE,CAAnE;AAGA,WAAO;AACNL,MAAAA,cAAc,EAAEI,+BAA+B,EADzC;AAENH,MAAAA,kBAAkB,EAAEE,eAAe,CAAE,gBAAF;AAF7B,KAAP;AAIA,GAR8C,EAQ5C,EAR4C,CAA/C;AASA,QAAM;AAAEG,IAAAA;AAAF,MAA0B,uBAAaD,YAAb,CAAhC;AAEA,QAAME,gBAAgB,GAAG,+BAAkB,QAAlB,EAA4B,GAA5B,CAAzB;AACA,QAAMC,OAAO,GAAG,CAAED,gBAAF,GAAqBE,0BAArB,GAAsC,KAAtD;AACA,QAAM,CAAEC,iBAAF,EAAqBC,mBAArB,IAA6C,sCAAW;AAC7DC,IAAAA,OAAO,EAAE,MAAMN,mBAAmB,CAAE,KAAF,CAD2B;AAE7DO,IAAAA,YAAY,EAAE;AAF+C,GAAX,CAAnD;AAKA,QAAMC,UAAU,GAAG,sBAAnB;AACA,0BAAW,MAAM;AAChBA,IAAAA,UAAU,CAACC,OAAX,CAAmBC,WAAnB;AACA,GAFD,EAEG,EAFH;AAIA,SACC;AACC,IAAA,GAAG,EAAGN;AADP,KAEMC,mBAFN;AAGC,IAAA,SAAS,EAAC;AAHX,MAKC,4BAAC,OAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KACC,4BAAC,kBAAD;AACC,IAAA,IAAI,EAAGM,YADR;AAEC,IAAA,KAAK,EAAG,cAAI,sBAAJ,CAFT;AAGC,IAAA,OAAO,EAAG,MAAMX,mBAAmB,CAAE,KAAF;AAHpC,IADD,CALD,EAYC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,4BAAC,kCAAD;AACC,IAAA,kBAAkB,EAAGL,kBADtB;AAEC,IAAA,qBAAqB,MAFtB;AAGC,IAAA,gBAAgB,EAAGM,gBAHpB;AAIC,IAAA,YAAY,EAAGP,cAAc,CAACkB,YAJ/B;AAKC,IAAA,4BAA4B,EAC3BlB,cAAc,CAACmB,cANjB;AAQC,IAAA,yBAAyB,EAAGnB,cAAc,CAACoB,WAR5C;AASC,IAAA,GAAG,EAAGN;AATP,IADD,CAZD,CADD;AA4BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { Button, VisuallyHidden } from '@wordpress/components';\nimport { __experimentalLibrary as Library } from '@wordpress/block-editor';\nimport { close } from '@wordpress/icons';\nimport {\n\tuseViewportMatch,\n\t__experimentalUseDialog as useDialog,\n} from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\n\nexport default function InserterSidebar() {\n\tconst { insertionPoint, showMostUsedBlocks } = useSelect( ( select ) => {\n\t\tconst { isFeatureActive, __experimentalGetInsertionPoint } = select(\n\t\t\teditPostStore\n\t\t);\n\t\treturn {\n\t\t\tinsertionPoint: __experimentalGetInsertionPoint(),\n\t\t\tshowMostUsedBlocks: isFeatureActive( 'mostUsedBlocks' ),\n\t\t};\n\t}, [] );\n\tconst { setIsInserterOpened } = useDispatch( editPostStore );\n\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst TagName = ! isMobileViewport ? VisuallyHidden : 'div';\n\tconst [ inserterDialogRef, inserterDialogProps ] = useDialog( {\n\t\tonClose: () => setIsInserterOpened( false ),\n\t\tfocusOnMount: null,\n\t} );\n\n\tconst libraryRef = useRef();\n\tuseEffect( () => {\n\t\tlibraryRef.current.focusSearch();\n\t}, [] );\n\n\treturn (\n\t\t<div\n\t\t\tref={ inserterDialogRef }\n\t\t\t{ ...inserterDialogProps }\n\t\t\tclassName=\"edit-post-editor__inserter-panel\"\n\t\t>\n\t\t\t<TagName className=\"edit-post-editor__inserter-panel-header\">\n\t\t\t\t<Button\n\t\t\t\t\ticon={ close }\n\t\t\t\t\tlabel={ __( 'Close block inserter' ) }\n\t\t\t\t\tonClick={ () => setIsInserterOpened( false ) }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t\t<div className=\"edit-post-editor__inserter-panel-content\">\n\t\t\t\t<Library\n\t\t\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t\t\tshowInserterHelpPanel\n\t\t\t\t\tshouldFocusBlock={ isMobileViewport }\n\t\t\t\t\trootClientId={ insertionPoint.rootClientId }\n\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\tinsertionPoint.insertionIndex\n\t\t\t\t\t}\n\t\t\t\t\t__experimentalFilterValue={ insertionPoint.filterValue }\n\t\t\t\t\tref={ libraryRef }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"]}
@@ -45,7 +45,8 @@ function ListViewSidebar() {
45
45
  }
46
46
 
47
47
  const focusOnMountRef = (0, _compose.useFocusOnMount)('firstElement');
48
- const focusReturnRef = (0, _compose.useFocusReturn)();
48
+ const headerFocusReturnRef = (0, _compose.useFocusReturn)();
49
+ const contentFocusReturnRef = (0, _compose.useFocusReturn)();
49
50
 
50
51
  function closeOnEscape(event) {
51
52
  if (event.keyCode === _keycodes.ESCAPE && !event.defaultPrevented) {
@@ -62,16 +63,17 @@ function ListViewSidebar() {
62
63
  className: "edit-post-editor__list-view-panel",
63
64
  onKeyDown: closeOnEscape
64
65
  }, (0, _element.createElement)("div", {
65
- className: "edit-post-editor__list-view-panel-header"
66
+ className: "edit-post-editor__list-view-panel-header",
67
+ ref: headerFocusReturnRef
66
68
  }, (0, _element.createElement)("strong", {
67
69
  id: labelId
68
- }, (0, _i18n.__)('List view')), (0, _element.createElement)(_components.Button, {
70
+ }, (0, _i18n.__)('List View')), (0, _element.createElement)(_components.Button, {
69
71
  icon: _icons.closeSmall,
70
- label: (0, _i18n.__)('Close list view sidebar'),
72
+ label: (0, _i18n.__)('Close List View Sidebar'),
71
73
  onClick: () => setIsListViewOpened(false)
72
74
  })), (0, _element.createElement)("div", {
73
75
  className: "edit-post-editor__list-view-panel-content",
74
- ref: (0, _compose.useMergeRefs)([focusReturnRef, focusOnMountRef])
76
+ ref: (0, _compose.useMergeRefs)([contentFocusReturnRef, focusOnMountRef])
75
77
  }, (0, _element.createElement)(_blockEditor.__experimentalListView, {
76
78
  onSelect: selectEditorBlock,
77
79
  showNestedBlocks: true,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/components/secondary-sidebar/list-view-sidebar.js"],"names":["ListViewSidebar","setIsListViewOpened","editPostStore","clearSelectedBlock","selectBlock","blockEditorStore","selectEditorBlock","clientId","focusOnMountRef","focusReturnRef","closeOnEscape","event","keyCode","ESCAPE","defaultPrevented","preventDefault","instanceId","labelId","closeSmall"],"mappings":";;;;;;;;;AAGA;;AAIA;;AACA;;AAMA;;AACA;;AACA;;AACA;;AAKA;;AAtBA;AACA;AACA;;AAiBA;AACA;AACA;AAGe,SAASA,eAAT,GAA2B;AACzC,QAAM;AAAEC,IAAAA;AAAF,MAA0B,uBAAaC,YAAb,CAAhC;AAEA,QAAM;AAAEC,IAAAA,kBAAF;AAAsBC,IAAAA;AAAtB,MAAsC,uBAAaC,kBAAb,CAA5C;;AACA,iBAAeC,iBAAf,CAAkCC,QAAlC,EAA6C;AAC5C,UAAMJ,kBAAkB,EAAxB;AACAC,IAAAA,WAAW,CAAEG,QAAF,EAAY,CAAC,CAAb,CAAX;AACA;;AAED,QAAMC,eAAe,GAAG,8BAAiB,cAAjB,CAAxB;AACA,QAAMC,cAAc,GAAG,8BAAvB;;AACA,WAASC,aAAT,CAAwBC,KAAxB,EAAgC;AAC/B,QAAKA,KAAK,CAACC,OAAN,KAAkBC,gBAAlB,IAA4B,CAAEF,KAAK,CAACG,gBAAzC,EAA4D;AAC3DH,MAAAA,KAAK,CAACI,cAAN;AACAd,MAAAA,mBAAmB,CAAE,KAAF,CAAnB;AACA;AACD;;AAED,QAAMe,UAAU,GAAG,4BAAehB,eAAf,CAAnB;AACA,QAAMiB,OAAO,GAAI,2CAA2CD,UAAY,EAAxE;AAEA,SACC;AACA;AACC,yBAAkBC,OADnB;AAEC,MAAA,SAAS,EAAC,mCAFX;AAGC,MAAA,SAAS,EAAGP;AAHb,OAKC;AAAK,MAAA,SAAS,EAAC;AAAf,OACC;AAAQ,MAAA,EAAE,EAAGO;AAAb,OAAyB,cAAI,WAAJ,CAAzB,CADD,EAEC,4BAAC,kBAAD;AACC,MAAA,IAAI,EAAGC,iBADR;AAEC,MAAA,KAAK,EAAG,cAAI,yBAAJ,CAFT;AAGC,MAAA,OAAO,EAAG,MAAMjB,mBAAmB,CAAE,KAAF;AAHpC,MAFD,CALD,EAaC;AACC,MAAA,SAAS,EAAC,2CADX;AAEC,MAAA,GAAG,EAAG,2BAAc,CAAEQ,cAAF,EAAkBD,eAAlB,CAAd;AAFP,OAIC,4BAAC,mCAAD;AACC,MAAA,QAAQ,EAAGF,iBADZ;AAEC,MAAA,gBAAgB,MAFjB;AAGC,MAAA,sBAAsB,MAHvB;AAIC,MAAA,wCAAwC;AAJzC,MAJD,CAbD;AAFD;AA4BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalListView as ListView,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Button } from '@wordpress/components';\nimport {\n\tuseFocusOnMount,\n\tuseFocusReturn,\n\tuseInstanceId,\n\tuseMergeRefs,\n} from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { closeSmall } from '@wordpress/icons';\nimport { ESCAPE } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\n\nexport default function ListViewSidebar() {\n\tconst { setIsListViewOpened } = useDispatch( editPostStore );\n\n\tconst { clearSelectedBlock, selectBlock } = useDispatch( blockEditorStore );\n\tasync function selectEditorBlock( clientId ) {\n\t\tawait clearSelectedBlock();\n\t\tselectBlock( clientId, -1 );\n\t}\n\n\tconst focusOnMountRef = useFocusOnMount( 'firstElement' );\n\tconst focusReturnRef = useFocusReturn();\n\tfunction closeOnEscape( event ) {\n\t\tif ( event.keyCode === ESCAPE && ! event.defaultPrevented ) {\n\t\t\tevent.preventDefault();\n\t\t\tsetIsListViewOpened( false );\n\t\t}\n\t}\n\n\tconst instanceId = useInstanceId( ListViewSidebar );\n\tconst labelId = `edit-post-editor__list-view-panel-label-${ instanceId }`;\n\n\treturn (\n\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions\n\t\t<div\n\t\t\taria-labelledby={ labelId }\n\t\t\tclassName=\"edit-post-editor__list-view-panel\"\n\t\t\tonKeyDown={ closeOnEscape }\n\t\t>\n\t\t\t<div className=\"edit-post-editor__list-view-panel-header\">\n\t\t\t\t<strong id={ labelId }>{ __( 'List view' ) }</strong>\n\t\t\t\t<Button\n\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\tlabel={ __( 'Close list view sidebar' ) }\n\t\t\t\t\tonClick={ () => setIsListViewOpened( false ) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<div\n\t\t\t\tclassName=\"edit-post-editor__list-view-panel-content\"\n\t\t\t\tref={ useMergeRefs( [ focusReturnRef, focusOnMountRef ] ) }\n\t\t\t>\n\t\t\t\t<ListView\n\t\t\t\t\tonSelect={ selectEditorBlock }\n\t\t\t\t\tshowNestedBlocks\n\t\t\t\t\t__experimentalFeatures\n\t\t\t\t\t__experimentalPersistentListViewFeatures\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/components/secondary-sidebar/list-view-sidebar.js"],"names":["ListViewSidebar","setIsListViewOpened","editPostStore","clearSelectedBlock","selectBlock","blockEditorStore","selectEditorBlock","clientId","focusOnMountRef","headerFocusReturnRef","contentFocusReturnRef","closeOnEscape","event","keyCode","ESCAPE","defaultPrevented","preventDefault","instanceId","labelId","closeSmall"],"mappings":";;;;;;;;;AAGA;;AAIA;;AACA;;AAMA;;AACA;;AACA;;AACA;;AAKA;;AAtBA;AACA;AACA;;AAiBA;AACA;AACA;AAGe,SAASA,eAAT,GAA2B;AACzC,QAAM;AAAEC,IAAAA;AAAF,MAA0B,uBAAaC,YAAb,CAAhC;AAEA,QAAM;AAAEC,IAAAA,kBAAF;AAAsBC,IAAAA;AAAtB,MAAsC,uBAAaC,kBAAb,CAA5C;;AACA,iBAAeC,iBAAf,CAAkCC,QAAlC,EAA6C;AAC5C,UAAMJ,kBAAkB,EAAxB;AACAC,IAAAA,WAAW,CAAEG,QAAF,EAAY,CAAC,CAAb,CAAX;AACA;;AAED,QAAMC,eAAe,GAAG,8BAAiB,cAAjB,CAAxB;AACA,QAAMC,oBAAoB,GAAG,8BAA7B;AACA,QAAMC,qBAAqB,GAAG,8BAA9B;;AACA,WAASC,aAAT,CAAwBC,KAAxB,EAAgC;AAC/B,QAAKA,KAAK,CAACC,OAAN,KAAkBC,gBAAlB,IAA4B,CAAEF,KAAK,CAACG,gBAAzC,EAA4D;AAC3DH,MAAAA,KAAK,CAACI,cAAN;AACAf,MAAAA,mBAAmB,CAAE,KAAF,CAAnB;AACA;AACD;;AAED,QAAMgB,UAAU,GAAG,4BAAejB,eAAf,CAAnB;AACA,QAAMkB,OAAO,GAAI,2CAA2CD,UAAY,EAAxE;AAEA,SACC;AACA;AACC,yBAAkBC,OADnB;AAEC,MAAA,SAAS,EAAC,mCAFX;AAGC,MAAA,SAAS,EAAGP;AAHb,OAKC;AACC,MAAA,SAAS,EAAC,0CADX;AAEC,MAAA,GAAG,EAAGF;AAFP,OAIC;AAAQ,MAAA,EAAE,EAAGS;AAAb,OAAyB,cAAI,WAAJ,CAAzB,CAJD,EAKC,4BAAC,kBAAD;AACC,MAAA,IAAI,EAAGC,iBADR;AAEC,MAAA,KAAK,EAAG,cAAI,yBAAJ,CAFT;AAGC,MAAA,OAAO,EAAG,MAAMlB,mBAAmB,CAAE,KAAF;AAHpC,MALD,CALD,EAgBC;AACC,MAAA,SAAS,EAAC,2CADX;AAEC,MAAA,GAAG,EAAG,2BAAc,CACnBS,qBADmB,EAEnBF,eAFmB,CAAd;AAFP,OAOC,4BAAC,mCAAD;AACC,MAAA,QAAQ,EAAGF,iBADZ;AAEC,MAAA,gBAAgB,MAFjB;AAGC,MAAA,sBAAsB,MAHvB;AAIC,MAAA,wCAAwC;AAJzC,MAPD,CAhBD;AAFD;AAkCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalListView as ListView,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Button } from '@wordpress/components';\nimport {\n\tuseFocusOnMount,\n\tuseFocusReturn,\n\tuseInstanceId,\n\tuseMergeRefs,\n} from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { closeSmall } from '@wordpress/icons';\nimport { ESCAPE } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\n\nexport default function ListViewSidebar() {\n\tconst { setIsListViewOpened } = useDispatch( editPostStore );\n\n\tconst { clearSelectedBlock, selectBlock } = useDispatch( blockEditorStore );\n\tasync function selectEditorBlock( clientId ) {\n\t\tawait clearSelectedBlock();\n\t\tselectBlock( clientId, -1 );\n\t}\n\n\tconst focusOnMountRef = useFocusOnMount( 'firstElement' );\n\tconst headerFocusReturnRef = useFocusReturn();\n\tconst contentFocusReturnRef = useFocusReturn();\n\tfunction closeOnEscape( event ) {\n\t\tif ( event.keyCode === ESCAPE && ! event.defaultPrevented ) {\n\t\t\tevent.preventDefault();\n\t\t\tsetIsListViewOpened( false );\n\t\t}\n\t}\n\n\tconst instanceId = useInstanceId( ListViewSidebar );\n\tconst labelId = `edit-post-editor__list-view-panel-label-${ instanceId }`;\n\n\treturn (\n\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions\n\t\t<div\n\t\t\taria-labelledby={ labelId }\n\t\t\tclassName=\"edit-post-editor__list-view-panel\"\n\t\t\tonKeyDown={ closeOnEscape }\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName=\"edit-post-editor__list-view-panel-header\"\n\t\t\t\tref={ headerFocusReturnRef }\n\t\t\t>\n\t\t\t\t<strong id={ labelId }>{ __( 'List View' ) }</strong>\n\t\t\t\t<Button\n\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\tlabel={ __( 'Close List View Sidebar' ) }\n\t\t\t\t\tonClick={ () => setIsListViewOpened( false ) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<div\n\t\t\t\tclassName=\"edit-post-editor__list-view-panel-content\"\n\t\t\t\tref={ useMergeRefs( [\n\t\t\t\t\tcontentFocusReturnRef,\n\t\t\t\t\tfocusOnMountRef,\n\t\t\t\t] ) }\n\t\t\t>\n\t\t\t\t<ListView\n\t\t\t\t\tonSelect={ selectEditorBlock }\n\t\t\t\t\tshowNestedBlocks\n\t\t\t\t\t__experimentalFeatures\n\t\t\t\t\t__experimentalPersistentListViewFeatures\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"]}
@@ -16,7 +16,9 @@ var _editor = require("@wordpress/editor");
16
16
  * WordPress dependencies
17
17
  */
18
18
  function PostAuthor() {
19
- return (0, _element.createElement)(_editor.PostAuthorCheck, null, (0, _element.createElement)(_components.PanelRow, null, (0, _element.createElement)(_editor.PostAuthor, null)));
19
+ return (0, _element.createElement)(_editor.PostAuthorCheck, null, (0, _element.createElement)(_components.PanelRow, {
20
+ className: "edit-post-post-author"
21
+ }, (0, _element.createElement)(_editor.PostAuthor, null)));
20
22
  }
21
23
 
22
24
  var _default = PostAuthor;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/post-author/index.js"],"names":["PostAuthor"],"mappings":";;;;;;;;;;AAGA;;AACA;;AAJA;AACA;AACA;AAOO,SAASA,UAAT,GAAsB;AAC5B,SACC,4BAAC,uBAAD,QACC,4BAAC,oBAAD,QACC,4BAAC,kBAAD,OADD,CADD,CADD;AAOA;;eAEcA,U","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { PanelRow } from '@wordpress/components';\nimport {\n\tPostAuthor as PostAuthorForm,\n\tPostAuthorCheck,\n} from '@wordpress/editor';\n\nexport function PostAuthor() {\n\treturn (\n\t\t<PostAuthorCheck>\n\t\t\t<PanelRow>\n\t\t\t\t<PostAuthorForm />\n\t\t\t</PanelRow>\n\t\t</PostAuthorCheck>\n\t);\n}\n\nexport default PostAuthor;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/post-author/index.js"],"names":["PostAuthor"],"mappings":";;;;;;;;;;AAGA;;AACA;;AAJA;AACA;AACA;AAOO,SAASA,UAAT,GAAsB;AAC5B,SACC,4BAAC,uBAAD,QACC,4BAAC,oBAAD;AAAU,IAAA,SAAS,EAAC;AAApB,KACC,4BAAC,kBAAD,OADD,CADD,CADD;AAOA;;eAEcA,U","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { PanelRow } from '@wordpress/components';\nimport {\n\tPostAuthor as PostAuthorForm,\n\tPostAuthorCheck,\n} from '@wordpress/editor';\n\nexport function PostAuthor() {\n\treturn (\n\t\t<PostAuthorCheck>\n\t\t\t<PanelRow className=\"edit-post-post-author\">\n\t\t\t\t<PostAuthorForm />\n\t\t\t</PanelRow>\n\t\t</PostAuthorCheck>\n\t);\n}\n\nexport default PostAuthor;\n"]}
@@ -34,7 +34,10 @@ var _blocks = require("@wordpress/blocks");
34
34
  /**
35
35
  * Internal dependencies
36
36
  */
37
- function PostTemplateActions() {
37
+ function PostTemplateActions(_ref) {
38
+ let {
39
+ isPostsPage
40
+ } = _ref;
38
41
  const [isModalOpen, setIsModalOpen] = (0, _element.useState)(false);
39
42
  const [isBusy, setIsBusy] = (0, _element.useState)(false);
40
43
  const [title, setTitle] = (0, _element.useState)('');
@@ -116,7 +119,7 @@ function PostTemplateActions() {
116
119
  }, !!template && (0, _element.createElement)(_components.Button, {
117
120
  variant: "link",
118
121
  onClick: () => __unstableSwitchToTemplateMode()
119
- }, (0, _i18n.__)('Edit')), (0, _element.createElement)(_components.Button, {
122
+ }, (0, _i18n.__)('Edit')), !isPostsPage && (0, _element.createElement)(_components.Button, {
120
123
  variant: "link",
121
124
  onClick: () => setIsModalOpen(true)
122
125
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/template/actions.js"],"names":["PostTemplateActions","isModalOpen","setIsModalOpen","isBusy","setIsBusy","title","setTitle","template","supportsTemplateMode","defaultTemplate","select","getCurrentPostType","getEditorSettings","editorStore","getPostType","coreStore","getEditedPostTemplate","editPostStore","isViewable","viewable","_supportsTemplateMode","defaultBlockTemplate","__unstableCreateTemplate","__unstableSwitchToTemplateMode","defaultTitle","onCreateTemplate","event","preventDefault","newTemplateContent","tagName","layout","inherit","slug","content"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { kebabCase } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tButton,\n\tModal,\n\tTextControl,\n\tFlex,\n\tFlexItem,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\nimport { createBlock, serialize } from '@wordpress/blocks';\n\nfunction PostTemplateActions() {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst [ isBusy, setIsBusy ] = useState( false );\n\tconst [ title, setTitle ] = useState( '' );\n\tconst { template, supportsTemplateMode, defaultTemplate } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCurrentPostType, getEditorSettings } = select(\n\t\t\t\teditorStore\n\t\t\t);\n\t\t\tconst { getPostType } = select( coreStore );\n\t\t\tconst { getEditedPostTemplate } = select( editPostStore );\n\n\t\t\tconst isViewable =\n\t\t\t\tgetPostType( getCurrentPostType() )?.viewable ?? false;\n\t\t\tconst _supportsTemplateMode =\n\t\t\t\tgetEditorSettings().supportsTemplateMode && isViewable;\n\n\t\t\treturn {\n\t\t\t\ttemplate: _supportsTemplateMode && getEditedPostTemplate(),\n\t\t\t\tsupportsTemplateMode: _supportsTemplateMode,\n\t\t\t\tdefaultTemplate: getEditorSettings().defaultBlockTemplate,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst {\n\t\t__unstableCreateTemplate,\n\t\t__unstableSwitchToTemplateMode,\n\t} = useDispatch( editPostStore );\n\n\tif ( ! supportsTemplateMode ) {\n\t\treturn null;\n\t}\n\n\tconst defaultTitle = __( 'Custom Template' );\n\n\tasync function onCreateTemplate( event ) {\n\t\tevent.preventDefault();\n\n\t\tif ( isBusy ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetIsBusy( true );\n\n\t\tconst newTemplateContent =\n\t\t\tdefaultTemplate ??\n\t\t\tserialize( [\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/group',\n\t\t\t\t\t{\n\t\t\t\t\t\ttagName: 'header',\n\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t},\n\t\t\t\t\t[\n\t\t\t\t\t\tcreateBlock( 'core/site-title' ),\n\t\t\t\t\t\tcreateBlock( 'core/site-tagline' ),\n\t\t\t\t\t]\n\t\t\t\t),\n\t\t\t\tcreateBlock( 'core/separator' ),\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/group',\n\t\t\t\t\t{\n\t\t\t\t\t\ttagName: 'main',\n\t\t\t\t\t},\n\t\t\t\t\t[\n\t\t\t\t\t\tcreateBlock(\n\t\t\t\t\t\t\t'core/group',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t[ createBlock( 'core/post-title' ) ]\n\t\t\t\t\t\t),\n\t\t\t\t\t\tcreateBlock( 'core/post-content', {\n\t\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t\t} ),\n\t\t\t\t\t]\n\t\t\t\t),\n\t\t\t] );\n\n\t\tawait __unstableCreateTemplate( {\n\t\t\tslug: 'wp-custom-template-' + kebabCase( title || defaultTitle ),\n\t\t\tcontent: newTemplateContent,\n\t\t\ttitle: title || defaultTitle,\n\t\t} );\n\n\t\tsetIsBusy( false );\n\t\tsetIsModalOpen( false );\n\n\t\t__unstableSwitchToTemplateMode( true );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-post-template__actions\">\n\t\t\t\t{ !! template && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ () => __unstableSwitchToTemplateMode() }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\t<Button variant=\"link\" onClick={ () => setIsModalOpen( true ) }>\n\t\t\t\t\t{\n\t\t\t\t\t\t/* translators: button to create a new template */\n\t\t\t\t\t\t_x( 'New', 'action' )\n\t\t\t\t\t}\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Create custom template' ) }\n\t\t\t\t\tcloseLabel={ __( 'Close' ) }\n\t\t\t\t\tonRequestClose={ () => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t} }\n\t\t\t\t\toverlayClassName=\"edit-post-template__modal\"\n\t\t\t\t>\n\t\t\t\t\t<form onSubmit={ onCreateTemplate }>\n\t\t\t\t\t\t<Flex align=\"flex-start\" gap={ 8 }>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\t\t\t\tplaceholder={ defaultTitle }\n\t\t\t\t\t\t\t\t\tdisabled={ isBusy }\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the template, e.g. \"Full Width\". Custom templates can be applied to any post or page.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tclassName=\"edit-post-template__modal-actions\"\n\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\t\t\tisBusy={ isBusy }\n\t\t\t\t\t\t\t\t\taria-disabled={ isBusy }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Create' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default PostTemplateActions;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/template/actions.js"],"names":["PostTemplateActions","isPostsPage","isModalOpen","setIsModalOpen","isBusy","setIsBusy","title","setTitle","template","supportsTemplateMode","defaultTemplate","select","getCurrentPostType","getEditorSettings","editorStore","getPostType","coreStore","getEditedPostTemplate","editPostStore","isViewable","viewable","_supportsTemplateMode","defaultBlockTemplate","__unstableCreateTemplate","__unstableSwitchToTemplateMode","defaultTitle","onCreateTemplate","event","preventDefault","newTemplateContent","tagName","layout","inherit","slug","content"],"mappings":";;;;;;;AAiBA;;AAdA;;AAKA;;AACA;;AAOA;;AAEA;;AACA;;AAKA;;AACA;;AAzBA;AACA;AACA;;AAGA;AACA;AACA;;AAcA;AACA;AACA;AAIA,SAASA,mBAAT,OAAgD;AAAA,MAAlB;AAAEC,IAAAA;AAAF,GAAkB;AAC/C,QAAM,CAAEC,WAAF,EAAeC,cAAf,IAAkC,uBAAU,KAAV,CAAxC;AACA,QAAM,CAAEC,MAAF,EAAUC,SAAV,IAAwB,uBAAU,KAAV,CAA9B;AACA,QAAM,CAAEC,KAAF,EAASC,QAAT,IAAsB,uBAAU,EAAV,CAA5B;AACA,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,oBAAZ;AAAkCC,IAAAA;AAAlC,MAAsD,qBACzDC,MAAF,IAAc;AAAA;;AACb,UAAM;AAAEC,MAAAA,kBAAF;AAAsBC,MAAAA;AAAtB,QAA4CF,MAAM,CACvDG,aADuD,CAAxD;AAGA,UAAM;AAAEC,MAAAA;AAAF,QAAkBJ,MAAM,CAAEK,eAAF,CAA9B;AACA,UAAM;AAAEC,MAAAA;AAAF,QAA4BN,MAAM,CAAEO,YAAF,CAAxC;AAEA,UAAMC,UAAU,4CACfJ,WAAW,CAAEH,kBAAkB,EAApB,CADI,iDACf,aAAqCQ,QADtB,yEACkC,KADlD;;AAEA,UAAMC,qBAAqB,GAC1BR,iBAAiB,GAAGJ,oBAApB,IAA4CU,UAD7C;;AAGA,WAAO;AACNX,MAAAA,QAAQ,EAAEa,qBAAqB,IAAIJ,qBAAqB,EADlD;AAENR,MAAAA,oBAAoB,EAAEY,qBAFhB;AAGNX,MAAAA,eAAe,EAAEG,iBAAiB,GAAGS;AAH/B,KAAP;AAKA,GAlB0D,EAmB3D,EAnB2D,CAA5D;AAqBA,QAAM;AACLC,IAAAA,wBADK;AAELC,IAAAA;AAFK,MAGF,uBAAaN,YAAb,CAHJ;;AAKA,MAAK,CAAET,oBAAP,EAA8B;AAC7B,WAAO,IAAP;AACA;;AAED,QAAMgB,YAAY,GAAG,cAAI,iBAAJ,CAArB;;AAEA,iBAAeC,gBAAf,CAAiCC,KAAjC,EAAyC;AACxCA,IAAAA,KAAK,CAACC,cAAN;;AAEA,QAAKxB,MAAL,EAAc;AACb;AACA;;AAEDC,IAAAA,SAAS,CAAE,IAAF,CAAT;AAEA,UAAMwB,kBAAkB,GACvBnB,eADuB,aACvBA,eADuB,cACvBA,eADuB,GAEvB,uBAAW,CACV,yBACC,YADD,EAEC;AACCoB,MAAAA,OAAO,EAAE,QADV;AAECC,MAAAA,MAAM,EAAE;AAAEC,QAAAA,OAAO,EAAE;AAAX;AAFT,KAFD,EAMC,CACC,yBAAa,iBAAb,CADD,EAEC,yBAAa,mBAAb,CAFD,CAND,CADU,EAYV,yBAAa,gBAAb,CAZU,EAaV,yBACC,YADD,EAEC;AACCF,MAAAA,OAAO,EAAE;AADV,KAFD,EAKC,CACC,yBACC,YADD,EAEC;AACCC,MAAAA,MAAM,EAAE;AAAEC,QAAAA,OAAO,EAAE;AAAX;AADT,KAFD,EAKC,CAAE,yBAAa,iBAAb,CAAF,CALD,CADD,EAQC,yBAAa,mBAAb,EAAkC;AACjCD,MAAAA,MAAM,EAAE;AAAEC,QAAAA,OAAO,EAAE;AAAX;AADyB,KAAlC,CARD,CALD,CAbU,CAAX,CAFD;AAmCA,UAAMT,wBAAwB,CAAE;AAC/BU,MAAAA,IAAI,EAAE,wBAAwB,uBAAW3B,KAAK,IAAImB,YAApB,CADC;AAE/BS,MAAAA,OAAO,EAAEL,kBAFsB;AAG/BvB,MAAAA,KAAK,EAAEA,KAAK,IAAImB;AAHe,KAAF,CAA9B;AAMApB,IAAAA,SAAS,CAAE,KAAF,CAAT;AACAF,IAAAA,cAAc,CAAE,KAAF,CAAd;;AAEAqB,IAAAA,8BAA8B,CAAE,IAAF,CAA9B;AACA;;AAED,SACC,qDACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACG,CAAC,CAAEhB,QAAH,IACD,4BAAC,kBAAD;AACC,IAAA,OAAO,EAAC,MADT;AAEC,IAAA,OAAO,EAAG,MAAMgB,8BAA8B;AAF/C,KAIG,cAAI,MAAJ,CAJH,CAFF,EASG,CAAEvB,WAAF,IACD,4BAAC,kBAAD;AACC,IAAA,OAAO,EAAC,MADT;AAEC,IAAA,OAAO,EAAG,MAAME,cAAc,CAAE,IAAF;AAF/B;AAKE;AACA,gBAAI,KAAJ,EAAW,QAAX,CANF,CAVF,CADD,EAsBGD,WAAW,IACZ,4BAAC,iBAAD;AACC,IAAA,KAAK,EAAG,cAAI,wBAAJ,CADT;AAEC,IAAA,UAAU,EAAG,cAAI,OAAJ,CAFd;AAGC,IAAA,cAAc,EAAG,MAAM;AACtBC,MAAAA,cAAc,CAAE,KAAF,CAAd;AACAI,MAAAA,QAAQ,CAAE,EAAF,CAAR;AACA,KANF;AAOC,IAAA,gBAAgB,EAAC;AAPlB,KASC;AAAM,IAAA,QAAQ,EAAGmB;AAAjB,KACC,4BAAC,gBAAD;AAAM,IAAA,KAAK,EAAC,YAAZ;AAAyB,IAAA,GAAG,EAAG;AAA/B,KACC,4BAAC,oBAAD,QACC,4BAAC,uBAAD;AACC,IAAA,KAAK,EAAG,cAAI,MAAJ,CADT;AAEC,IAAA,KAAK,EAAGpB,KAFT;AAGC,IAAA,QAAQ,EAAGC,QAHZ;AAIC,IAAA,WAAW,EAAGkB,YAJf;AAKC,IAAA,QAAQ,EAAGrB,MALZ;AAMC,IAAA,IAAI,EAAG,cACN,+GADM;AANR,IADD,CADD,CADD,EAgBC,4BAAC,gBAAD;AACC,IAAA,SAAS,EAAC,mCADX;AAEC,IAAA,OAAO,EAAC,UAFT;AAGC,IAAA,QAAQ,EAAG;AAHZ,KAKC,4BAAC,oBAAD,QACC,4BAAC,kBAAD;AACC,IAAA,OAAO,EAAC,UADT;AAEC,IAAA,OAAO,EAAG,MAAM;AACfD,MAAAA,cAAc,CAAE,KAAF,CAAd;AACAI,MAAAA,QAAQ,CAAE,EAAF,CAAR;AACA;AALF,KAOG,cAAI,QAAJ,CAPH,CADD,CALD,EAgBC,4BAAC,oBAAD,QACC,4BAAC,kBAAD;AACC,IAAA,OAAO,EAAC,SADT;AAEC,IAAA,IAAI,EAAC,QAFN;AAGC,IAAA,MAAM,EAAGH,MAHV;AAIC,qBAAgBA;AAJjB,KAMG,cAAI,QAAJ,CANH,CADD,CAhBD,CAhBD,CATD,CAvBF,CADD;AAiFA;;eAEcJ,mB","sourcesContent":["/**\n * External dependencies\n */\nimport { kebabCase } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tButton,\n\tModal,\n\tTextControl,\n\tFlex,\n\tFlexItem,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\nimport { createBlock, serialize } from '@wordpress/blocks';\n\nfunction PostTemplateActions( { isPostsPage } ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst [ isBusy, setIsBusy ] = useState( false );\n\tconst [ title, setTitle ] = useState( '' );\n\tconst { template, supportsTemplateMode, defaultTemplate } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCurrentPostType, getEditorSettings } = select(\n\t\t\t\teditorStore\n\t\t\t);\n\t\t\tconst { getPostType } = select( coreStore );\n\t\t\tconst { getEditedPostTemplate } = select( editPostStore );\n\n\t\t\tconst isViewable =\n\t\t\t\tgetPostType( getCurrentPostType() )?.viewable ?? false;\n\t\t\tconst _supportsTemplateMode =\n\t\t\t\tgetEditorSettings().supportsTemplateMode && isViewable;\n\n\t\t\treturn {\n\t\t\t\ttemplate: _supportsTemplateMode && getEditedPostTemplate(),\n\t\t\t\tsupportsTemplateMode: _supportsTemplateMode,\n\t\t\t\tdefaultTemplate: getEditorSettings().defaultBlockTemplate,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst {\n\t\t__unstableCreateTemplate,\n\t\t__unstableSwitchToTemplateMode,\n\t} = useDispatch( editPostStore );\n\n\tif ( ! supportsTemplateMode ) {\n\t\treturn null;\n\t}\n\n\tconst defaultTitle = __( 'Custom Template' );\n\n\tasync function onCreateTemplate( event ) {\n\t\tevent.preventDefault();\n\n\t\tif ( isBusy ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetIsBusy( true );\n\n\t\tconst newTemplateContent =\n\t\t\tdefaultTemplate ??\n\t\t\tserialize( [\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/group',\n\t\t\t\t\t{\n\t\t\t\t\t\ttagName: 'header',\n\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t},\n\t\t\t\t\t[\n\t\t\t\t\t\tcreateBlock( 'core/site-title' ),\n\t\t\t\t\t\tcreateBlock( 'core/site-tagline' ),\n\t\t\t\t\t]\n\t\t\t\t),\n\t\t\t\tcreateBlock( 'core/separator' ),\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/group',\n\t\t\t\t\t{\n\t\t\t\t\t\ttagName: 'main',\n\t\t\t\t\t},\n\t\t\t\t\t[\n\t\t\t\t\t\tcreateBlock(\n\t\t\t\t\t\t\t'core/group',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t[ createBlock( 'core/post-title' ) ]\n\t\t\t\t\t\t),\n\t\t\t\t\t\tcreateBlock( 'core/post-content', {\n\t\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t\t} ),\n\t\t\t\t\t]\n\t\t\t\t),\n\t\t\t] );\n\n\t\tawait __unstableCreateTemplate( {\n\t\t\tslug: 'wp-custom-template-' + kebabCase( title || defaultTitle ),\n\t\t\tcontent: newTemplateContent,\n\t\t\ttitle: title || defaultTitle,\n\t\t} );\n\n\t\tsetIsBusy( false );\n\t\tsetIsModalOpen( false );\n\n\t\t__unstableSwitchToTemplateMode( true );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-post-template__actions\">\n\t\t\t\t{ !! template && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ () => __unstableSwitchToTemplateMode() }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\t{ ! isPostsPage && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ () => setIsModalOpen( true ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t/* translators: button to create a new template */\n\t\t\t\t\t\t\t_x( 'New', 'action' )\n\t\t\t\t\t\t}\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Create custom template' ) }\n\t\t\t\t\tcloseLabel={ __( 'Close' ) }\n\t\t\t\t\tonRequestClose={ () => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t} }\n\t\t\t\t\toverlayClassName=\"edit-post-template__modal\"\n\t\t\t\t>\n\t\t\t\t\t<form onSubmit={ onCreateTemplate }>\n\t\t\t\t\t\t<Flex align=\"flex-start\" gap={ 8 }>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\t\t\t\tplaceholder={ defaultTitle }\n\t\t\t\t\t\t\t\t\tdisabled={ isBusy }\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the template, e.g. \"Full Width\". Custom templates can be applied to any post or page.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tclassName=\"edit-post-template__modal-actions\"\n\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\t\t\tisBusy={ isBusy }\n\t\t\t\t\t\t\t\t\taria-disabled={ isBusy }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Create' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default PostTemplateActions;\n"]}
@@ -47,6 +47,7 @@ function TemplatePanel() {
47
47
  const {
48
48
  isEnabled,
49
49
  isOpened,
50
+ isPostsPage,
50
51
  selectedTemplate,
51
52
  availableTemplates,
52
53
  fetchedTemplates,
@@ -65,35 +66,34 @@ function TemplatePanel() {
65
66
  const {
66
67
  getEditedPostAttribute,
67
68
  getEditorSettings,
69
+ getCurrentPostId,
68
70
  getCurrentPostType
69
71
  } = select(_editor.store);
70
72
  const {
71
73
  getPostType,
74
+ getEntityRecord,
72
75
  getEntityRecords,
73
76
  canUser
74
77
  } = select(_coreData.store);
78
+ const currentPostId = getCurrentPostId();
75
79
  const currentPostType = getCurrentPostType();
80
+ const settings = getEntityRecord('root', 'site');
76
81
 
77
82
  const _isViewable = (_getPostType$viewable = (_getPostType = getPostType(currentPostType)) === null || _getPostType === void 0 ? void 0 : _getPostType.viewable) !== null && _getPostType$viewable !== void 0 ? _getPostType$viewable : false;
78
83
 
79
84
  const _supportsTemplateMode = select(_editor.store).getEditorSettings().supportsTemplateMode && _isViewable;
80
85
 
81
- const wpTemplates = getEntityRecords('postType', 'wp_template', {
82
- post_type: currentPostType
86
+ const templateRecords = getEntityRecords('postType', 'wp_template', {
87
+ post_type: currentPostType,
88
+ per_page: -1
83
89
  });
84
- const newAvailableTemplates = (0, _lodash.fromPairs)((wpTemplates || []).map(_ref => {
85
- let {
86
- slug,
87
- title
88
- } = _ref;
89
- return [slug, title.rendered];
90
- }));
91
90
  return {
92
91
  isEnabled: isEditorPanelEnabled(PANEL_NAME),
93
92
  isOpened: isEditorPanelOpened(PANEL_NAME),
93
+ isPostsPage: currentPostId === (settings === null || settings === void 0 ? void 0 : settings.page_for_posts),
94
94
  selectedTemplate: getEditedPostAttribute('template'),
95
95
  availableTemplates: getEditorSettings().availableTemplates,
96
- fetchedTemplates: newAvailableTemplates,
96
+ fetchedTemplates: templateRecords,
97
97
  template: _supportsTemplateMode && getEditedPostTemplate(),
98
98
  isViewable: _isViewable,
99
99
  supportsTemplateMode: _supportsTemplateMode,
@@ -102,7 +102,13 @@ function TemplatePanel() {
102
102
  }, []);
103
103
  const templates = (0, _element.useMemo)(() => {
104
104
  return { ...availableTemplates,
105
- ...fetchedTemplates
105
+ ...(0, _lodash.fromPairs)((fetchedTemplates !== null && fetchedTemplates !== void 0 ? fetchedTemplates : []).map(_ref => {
106
+ let {
107
+ slug,
108
+ title
109
+ } = _ref;
110
+ return [slug, title.rendered];
111
+ }))
106
112
  };
107
113
  }, [availableTemplates, fetchedTemplates]);
108
114
  const {
@@ -131,7 +137,11 @@ function TemplatePanel() {
131
137
  title: panelTitle,
132
138
  opened: isOpened,
133
139
  onToggle: onTogglePanel
134
- }, (0, _element.createElement)(_components.SelectControl, {
140
+ }, isPostsPage ? (0, _element.createElement)(_components.Notice, {
141
+ className: "edit-post-template__notice",
142
+ status: "warning",
143
+ isDismissible: false
144
+ }, (0, _i18n.__)('The posts page template cannot be changed.')) : (0, _element.createElement)(_components.SelectControl, {
135
145
  hideLabelFromVision: true,
136
146
  label: (0, _i18n.__)('Template:'),
137
147
  value: Object.keys(templates).includes(selectedTemplate) ? selectedTemplate : '',
@@ -144,7 +154,9 @@ function TemplatePanel() {
144
154
  value: templateSlug,
145
155
  label: templateName
146
156
  }))
147
- }), canUserCreate && (0, _element.createElement)(_actions.default, null));
157
+ }), canUserCreate && (0, _element.createElement)(_actions.default, {
158
+ isPostsPage: isPostsPage
159
+ }));
148
160
  }
149
161
 
150
162
  var _default = TemplatePanel;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/template/index.js"],"names":["PANEL_NAME","TemplatePanel","isEnabled","isOpened","selectedTemplate","availableTemplates","fetchedTemplates","isViewable","template","supportsTemplateMode","canUserCreate","select","isEditorPanelEnabled","isEditorPanelOpened","getEditedPostTemplate","editPostStore","getEditedPostAttribute","getEditorSettings","getCurrentPostType","editorStore","getPostType","getEntityRecords","canUser","coreStore","currentPostType","_isViewable","viewable","_supportsTemplateMode","wpTemplates","post_type","newAvailableTemplates","map","slug","title","rendered","templates","toggleEditorPanelOpened","editPost","onTogglePanel","panelTitle","Object","keys","includes","templateSlug","templateName","value","label"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { partial, isEmpty, map, fromPairs } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useMemo } from '@wordpress/element';\nimport { PanelBody, SelectControl } from '@wordpress/components';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport PostTemplateActions from './actions';\nimport { store as editPostStore } from '../../../store';\n\n/**\n * Module Constants\n */\nconst PANEL_NAME = 'template';\n\nexport function TemplatePanel() {\n\tconst {\n\t\tisEnabled,\n\t\tisOpened,\n\t\tselectedTemplate,\n\t\tavailableTemplates,\n\t\tfetchedTemplates,\n\t\tisViewable,\n\t\ttemplate,\n\t\tsupportsTemplateMode,\n\t\tcanUserCreate,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisEditorPanelEnabled,\n\t\t\tisEditorPanelOpened,\n\t\t\tgetEditedPostTemplate,\n\t\t} = select( editPostStore );\n\t\tconst {\n\t\t\tgetEditedPostAttribute,\n\t\t\tgetEditorSettings,\n\t\t\tgetCurrentPostType,\n\t\t} = select( editorStore );\n\t\tconst { getPostType, getEntityRecords, canUser } = select( coreStore );\n\t\tconst currentPostType = getCurrentPostType();\n\t\tconst _isViewable = getPostType( currentPostType )?.viewable ?? false;\n\t\tconst _supportsTemplateMode =\n\t\t\tselect( editorStore ).getEditorSettings().supportsTemplateMode &&\n\t\t\t_isViewable;\n\n\t\tconst wpTemplates = getEntityRecords( 'postType', 'wp_template', {\n\t\t\tpost_type: currentPostType,\n\t\t} );\n\n\t\tconst newAvailableTemplates = fromPairs(\n\t\t\t( wpTemplates || [] ).map( ( { slug, title } ) => [\n\t\t\t\tslug,\n\t\t\t\ttitle.rendered,\n\t\t\t] )\n\t\t);\n\n\t\treturn {\n\t\t\tisEnabled: isEditorPanelEnabled( PANEL_NAME ),\n\t\t\tisOpened: isEditorPanelOpened( PANEL_NAME ),\n\t\t\tselectedTemplate: getEditedPostAttribute( 'template' ),\n\t\t\tavailableTemplates: getEditorSettings().availableTemplates,\n\t\t\tfetchedTemplates: newAvailableTemplates,\n\t\t\ttemplate: _supportsTemplateMode && getEditedPostTemplate(),\n\t\t\tisViewable: _isViewable,\n\t\t\tsupportsTemplateMode: _supportsTemplateMode,\n\t\t\tcanUserCreate: canUser( 'create', 'templates' ),\n\t\t};\n\t}, [] );\n\n\tconst templates = useMemo( () => {\n\t\treturn {\n\t\t\t...availableTemplates,\n\t\t\t...fetchedTemplates,\n\t\t};\n\t}, [ availableTemplates, fetchedTemplates ] );\n\n\tconst { toggleEditorPanelOpened } = useDispatch( editPostStore );\n\tconst { editPost } = useDispatch( editorStore );\n\n\tif (\n\t\t! isEnabled ||\n\t\t! isViewable ||\n\t\t( isEmpty( availableTemplates ) &&\n\t\t\t( ! supportsTemplateMode || ! canUserCreate ) )\n\t) {\n\t\treturn null;\n\t}\n\n\tconst onTogglePanel = partial( toggleEditorPanelOpened, PANEL_NAME );\n\n\tlet panelTitle = __( 'Template' );\n\tif ( !! template ) {\n\t\tpanelTitle = sprintf(\n\t\t\t/* translators: %s: template title */\n\t\t\t__( 'Template: %s' ),\n\t\t\ttemplate?.title ?? template.slug\n\t\t);\n\t}\n\n\treturn (\n\t\t<PanelBody\n\t\t\ttitle={ panelTitle }\n\t\t\topened={ isOpened }\n\t\t\tonToggle={ onTogglePanel }\n\t\t>\n\t\t\t<SelectControl\n\t\t\t\thideLabelFromVision\n\t\t\t\tlabel={ __( 'Template:' ) }\n\t\t\t\tvalue={\n\t\t\t\t\tObject.keys( templates ).includes( selectedTemplate )\n\t\t\t\t\t\t? selectedTemplate\n\t\t\t\t\t\t: ''\n\t\t\t\t}\n\t\t\t\tonChange={ ( templateSlug ) => {\n\t\t\t\t\teditPost( {\n\t\t\t\t\t\ttemplate: templateSlug || '',\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\toptions={ map( templates, ( templateName, templateSlug ) => ( {\n\t\t\t\t\tvalue: templateSlug,\n\t\t\t\t\tlabel: templateName,\n\t\t\t\t} ) ) }\n\t\t\t/>\n\t\t\t{ canUserCreate && <PostTemplateActions /> }\n\t\t</PanelBody>\n\t);\n}\n\nexport default TemplatePanel;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/template/index.js"],"names":["PANEL_NAME","TemplatePanel","isEnabled","isOpened","isPostsPage","selectedTemplate","availableTemplates","fetchedTemplates","isViewable","template","supportsTemplateMode","canUserCreate","select","isEditorPanelEnabled","isEditorPanelOpened","getEditedPostTemplate","editPostStore","getEditedPostAttribute","getEditorSettings","getCurrentPostId","getCurrentPostType","editorStore","getPostType","getEntityRecord","getEntityRecords","canUser","coreStore","currentPostId","currentPostType","settings","_isViewable","viewable","_supportsTemplateMode","templateRecords","post_type","per_page","page_for_posts","templates","map","slug","title","rendered","toggleEditorPanelOpened","editPost","onTogglePanel","panelTitle","Object","keys","includes","templateSlug","templateName","value","label"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { partial, isEmpty, map, fromPairs } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useMemo } from '@wordpress/element';\nimport { Notice, PanelBody, SelectControl } from '@wordpress/components';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport PostTemplateActions from './actions';\nimport { store as editPostStore } from '../../../store';\n\n/**\n * Module Constants\n */\nconst PANEL_NAME = 'template';\n\nexport function TemplatePanel() {\n\tconst {\n\t\tisEnabled,\n\t\tisOpened,\n\t\tisPostsPage,\n\t\tselectedTemplate,\n\t\tavailableTemplates,\n\t\tfetchedTemplates,\n\t\tisViewable,\n\t\ttemplate,\n\t\tsupportsTemplateMode,\n\t\tcanUserCreate,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisEditorPanelEnabled,\n\t\t\tisEditorPanelOpened,\n\t\t\tgetEditedPostTemplate,\n\t\t} = select( editPostStore );\n\t\tconst {\n\t\t\tgetEditedPostAttribute,\n\t\t\tgetEditorSettings,\n\t\t\tgetCurrentPostId,\n\t\t\tgetCurrentPostType,\n\t\t} = select( editorStore );\n\t\tconst {\n\t\t\tgetPostType,\n\t\t\tgetEntityRecord,\n\t\t\tgetEntityRecords,\n\t\t\tcanUser,\n\t\t} = select( coreStore );\n\n\t\tconst currentPostId = getCurrentPostId();\n\t\tconst currentPostType = getCurrentPostType();\n\t\tconst settings = getEntityRecord( 'root', 'site' );\n\t\tconst _isViewable = getPostType( currentPostType )?.viewable ?? false;\n\t\tconst _supportsTemplateMode =\n\t\t\tselect( editorStore ).getEditorSettings().supportsTemplateMode &&\n\t\t\t_isViewable;\n\n\t\tconst templateRecords = getEntityRecords( 'postType', 'wp_template', {\n\t\t\tpost_type: currentPostType,\n\t\t\tper_page: -1,\n\t\t} );\n\n\t\treturn {\n\t\t\tisEnabled: isEditorPanelEnabled( PANEL_NAME ),\n\t\t\tisOpened: isEditorPanelOpened( PANEL_NAME ),\n\t\t\tisPostsPage: currentPostId === settings?.page_for_posts,\n\t\t\tselectedTemplate: getEditedPostAttribute( 'template' ),\n\t\t\tavailableTemplates: getEditorSettings().availableTemplates,\n\t\t\tfetchedTemplates: templateRecords,\n\t\t\ttemplate: _supportsTemplateMode && getEditedPostTemplate(),\n\t\t\tisViewable: _isViewable,\n\t\t\tsupportsTemplateMode: _supportsTemplateMode,\n\t\t\tcanUserCreate: canUser( 'create', 'templates' ),\n\t\t};\n\t}, [] );\n\n\tconst templates = useMemo( () => {\n\t\treturn {\n\t\t\t...availableTemplates,\n\t\t\t...fromPairs(\n\t\t\t\t( fetchedTemplates ?? [] ).map( ( { slug, title } ) => [\n\t\t\t\t\tslug,\n\t\t\t\t\ttitle.rendered,\n\t\t\t\t] )\n\t\t\t),\n\t\t};\n\t}, [ availableTemplates, fetchedTemplates ] );\n\n\tconst { toggleEditorPanelOpened } = useDispatch( editPostStore );\n\tconst { editPost } = useDispatch( editorStore );\n\n\tif (\n\t\t! isEnabled ||\n\t\t! isViewable ||\n\t\t( isEmpty( availableTemplates ) &&\n\t\t\t( ! supportsTemplateMode || ! canUserCreate ) )\n\t) {\n\t\treturn null;\n\t}\n\n\tconst onTogglePanel = partial( toggleEditorPanelOpened, PANEL_NAME );\n\n\tlet panelTitle = __( 'Template' );\n\tif ( !! template ) {\n\t\tpanelTitle = sprintf(\n\t\t\t/* translators: %s: template title */\n\t\t\t__( 'Template: %s' ),\n\t\t\ttemplate?.title ?? template.slug\n\t\t);\n\t}\n\n\treturn (\n\t\t<PanelBody\n\t\t\ttitle={ panelTitle }\n\t\t\topened={ isOpened }\n\t\t\tonToggle={ onTogglePanel }\n\t\t>\n\t\t\t{ isPostsPage ? (\n\t\t\t\t<Notice\n\t\t\t\t\tclassName=\"edit-post-template__notice\"\n\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\tisDismissible={ false }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'The posts page template cannot be changed.' ) }\n\t\t\t\t</Notice>\n\t\t\t) : (\n\t\t\t\t<SelectControl\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tlabel={ __( 'Template:' ) }\n\t\t\t\t\tvalue={\n\t\t\t\t\t\tObject.keys( templates ).includes( selectedTemplate )\n\t\t\t\t\t\t\t? selectedTemplate\n\t\t\t\t\t\t\t: ''\n\t\t\t\t\t}\n\t\t\t\t\tonChange={ ( templateSlug ) => {\n\t\t\t\t\t\teditPost( {\n\t\t\t\t\t\t\ttemplate: templateSlug || '',\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\toptions={ map(\n\t\t\t\t\t\ttemplates,\n\t\t\t\t\t\t( templateName, templateSlug ) => ( {\n\t\t\t\t\t\t\tvalue: templateSlug,\n\t\t\t\t\t\t\tlabel: templateName,\n\t\t\t\t\t\t} )\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ canUserCreate && (\n\t\t\t\t<PostTemplateActions isPostsPage={ isPostsPage } />\n\t\t\t) }\n\t\t</PanelBody>\n\t);\n}\n\nexport default TemplatePanel;\n"]}
@@ -46,6 +46,7 @@ function MaybeIframe(_ref) {
46
46
  contentRef,
47
47
  shouldIframe,
48
48
  styles,
49
+ assets,
49
50
  style
50
51
  } = _ref;
51
52
  const ref = (0, _blockEditor.__unstableUseMouseMoveTypingReset)();
@@ -68,6 +69,7 @@ function MaybeIframe(_ref) {
68
69
  head: (0, _element.createElement)(_blockEditor.__unstableEditorStyles, {
69
70
  styles: styles
70
71
  }),
72
+ assets: assets,
71
73
  ref: ref,
72
74
  contentRef: contentRef,
73
75
  style: {
@@ -116,11 +118,16 @@ function VisualEditor(_ref2) {
116
118
  };
117
119
  }, []);
118
120
  const hasMetaBoxes = (0, _data.useSelect)(select => select(_store.store).hasMetaBoxes(), []);
119
- const themeSupportsLayout = (0, _data.useSelect)(select => {
120
- const {
121
- getSettings
122
- } = select(_blockEditor.store);
123
- return getSettings().supportsLayout;
121
+ const {
122
+ themeSupportsLayout,
123
+ assets
124
+ } = (0, _data.useSelect)(select => {
125
+ const _settings = select(_blockEditor.store).getSettings();
126
+
127
+ return {
128
+ themeSupportsLayout: _settings.supportsLayout,
129
+ assets: _settings.__unstableResolvedAssets
130
+ };
124
131
  }, []);
125
132
  const {
126
133
  clearSelectedBlock
@@ -161,7 +168,7 @@ function VisualEditor(_ref2) {
161
168
  }
162
169
 
163
170
  const ref = (0, _element.useRef)();
164
- const contentRef = (0, _compose.useMergeRefs)([ref, (0, _blockEditor.__unstableUseClipboardHandler)(), (0, _blockEditor.__unstableUseCanvasClickRedirect)(), (0, _blockEditor.__unstableUseTypewriter)(), (0, _blockEditor.__unstableUseTypingObserver)(), (0, _blockEditor.__unstableUseBlockSelectionClearer)()]);
171
+ const contentRef = (0, _compose.useMergeRefs)([ref, (0, _blockEditor.__unstableUseClipboardHandler)(), (0, _blockEditor.__unstableUseTypewriter)(), (0, _blockEditor.__unstableUseTypingObserver)(), (0, _blockEditor.__unstableUseBlockSelectionClearer)()]);
165
172
  const blockSelectionClearerRef = (0, _blockEditor.__unstableUseBlockSelectionClearer)();
166
173
  const [, RecursionProvider] = (0, _blockEditor.__experimentalUseNoRecursiveRenders)(wrapperUniqueId, wrapperBlockName);
167
174
  const layout = (0, _element.useMemo)(() => {
@@ -203,6 +210,7 @@ function VisualEditor(_ref2) {
203
210
  shouldIframe: isTemplateMode || deviceType === 'Tablet' || deviceType === 'Mobile',
204
211
  contentRef: contentRef,
205
212
  styles: styles,
213
+ assets: assets,
206
214
  style: {
207
215
  paddingBottom
208
216
  }