@wordpress/edit-post 7.12.14 → 7.12.16
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.
|
@@ -94,6 +94,40 @@ const interfaceLabels = {
|
|
|
94
94
|
footer: (0, _i18n.__)('Editor footer')
|
|
95
95
|
};
|
|
96
96
|
|
|
97
|
+
function useEditorStyles() {
|
|
98
|
+
const {
|
|
99
|
+
hasThemeStyleSupport,
|
|
100
|
+
editorSettings
|
|
101
|
+
} = (0, _data.useSelect)(select => ({
|
|
102
|
+
hasThemeStyleSupport: select(_store.store).isFeatureActive('themeStyles'),
|
|
103
|
+
editorSettings: select(_editor.store).getEditorSettings()
|
|
104
|
+
}), []); // Compute the default styles.
|
|
105
|
+
|
|
106
|
+
return (0, _element.useMemo)(() => {
|
|
107
|
+
var _editorSettings$style, _editorSettings$style2;
|
|
108
|
+
|
|
109
|
+
const presetStyles = (_editorSettings$style = editorSettings.styles?.filter(style => style.__unstableType && style.__unstableType !== 'theme')) !== null && _editorSettings$style !== void 0 ? _editorSettings$style : [];
|
|
110
|
+
const defaultEditorStyles = [...editorSettings.defaultEditorStyles, ...presetStyles]; // Has theme styles if the theme supports them and if some styles were not preset styles (in which case they're theme styles).
|
|
111
|
+
|
|
112
|
+
const hasThemeStyles = hasThemeStyleSupport && presetStyles.length !== ((_editorSettings$style2 = editorSettings.styles?.length) !== null && _editorSettings$style2 !== void 0 ? _editorSettings$style2 : 0); // If theme styles are not present or displayed, ensure that
|
|
113
|
+
// base layout styles are still present in the editor.
|
|
114
|
+
|
|
115
|
+
if (!editorSettings.disableLayoutStyles && !hasThemeStyles) {
|
|
116
|
+
defaultEditorStyles.push({
|
|
117
|
+
css: getLayoutStyles({
|
|
118
|
+
style: {},
|
|
119
|
+
selector: 'body',
|
|
120
|
+
hasBlockGapSupport: false,
|
|
121
|
+
hasFallbackGapSupport: true,
|
|
122
|
+
fallbackGapValue: '0.5em'
|
|
123
|
+
})
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
return hasThemeStyles ? editorSettings.styles : defaultEditorStyles;
|
|
128
|
+
}, [editorSettings.defaultEditorStyles, editorSettings.disableLayoutStyles, editorSettings.styles, hasThemeStyleSupport]);
|
|
129
|
+
}
|
|
130
|
+
|
|
97
131
|
function Layout() {
|
|
98
132
|
const isMobileViewport = (0, _compose.useViewportMatch)('medium', '<');
|
|
99
133
|
const isHugeViewport = (0, _compose.useViewportMatch)('huge', '>=');
|
|
@@ -122,43 +156,14 @@ function Layout() {
|
|
|
122
156
|
isDistractionFree,
|
|
123
157
|
showBlockBreadcrumbs,
|
|
124
158
|
isTemplateMode,
|
|
125
|
-
documentLabel
|
|
126
|
-
styles
|
|
159
|
+
documentLabel
|
|
127
160
|
} = (0, _data.useSelect)(select => {
|
|
128
161
|
const {
|
|
129
162
|
getEditorSettings,
|
|
130
163
|
getPostTypeLabel
|
|
131
164
|
} = select(_editor.store);
|
|
132
|
-
const {
|
|
133
|
-
isFeatureActive
|
|
134
|
-
} = select(_store.store);
|
|
135
165
|
const editorSettings = getEditorSettings();
|
|
136
166
|
const postTypeLabel = getPostTypeLabel();
|
|
137
|
-
const hasThemeStyles = isFeatureActive('themeStyles');
|
|
138
|
-
const themeStyles = [];
|
|
139
|
-
const presetStyles = [];
|
|
140
|
-
editorSettings.styles?.forEach(style => {
|
|
141
|
-
if (!style.__unstableType || style.__unstableType === 'theme') {
|
|
142
|
-
themeStyles.push(style);
|
|
143
|
-
} else {
|
|
144
|
-
presetStyles.push(style);
|
|
145
|
-
}
|
|
146
|
-
});
|
|
147
|
-
const defaultEditorStyles = [...editorSettings.defaultEditorStyles, ...presetStyles]; // If theme styles are not present or displayed, ensure that
|
|
148
|
-
// base layout styles are still present in the editor.
|
|
149
|
-
|
|
150
|
-
if (!editorSettings.disableLayoutStyles && !(hasThemeStyles && themeStyles.length)) {
|
|
151
|
-
defaultEditorStyles.push({
|
|
152
|
-
css: getLayoutStyles({
|
|
153
|
-
style: {},
|
|
154
|
-
selector: 'body',
|
|
155
|
-
hasBlockGapSupport: false,
|
|
156
|
-
hasFallbackGapSupport: true,
|
|
157
|
-
fallbackGapValue: '0.5em'
|
|
158
|
-
})
|
|
159
|
-
});
|
|
160
|
-
}
|
|
161
|
-
|
|
162
167
|
return {
|
|
163
168
|
isTemplateMode: select(_store.store).isEditingTemplate(),
|
|
164
169
|
hasFixedToolbar: select(_store.store).isFeatureActive('fixedToolbar'),
|
|
@@ -175,10 +180,10 @@ function Layout() {
|
|
|
175
180
|
isDistractionFree: select(_store.store).isFeatureActive('distractionFree'),
|
|
176
181
|
showBlockBreadcrumbs: select(_store.store).isFeatureActive('showBlockBreadcrumbs'),
|
|
177
182
|
// translators: Default label for the Document in the Block Breadcrumb.
|
|
178
|
-
documentLabel: postTypeLabel || (0, _i18n._x)('Document', 'noun')
|
|
179
|
-
styles: hasThemeStyles && themeStyles.length ? editorSettings.styles : defaultEditorStyles
|
|
183
|
+
documentLabel: postTypeLabel || (0, _i18n._x)('Document', 'noun')
|
|
180
184
|
};
|
|
181
185
|
}, []);
|
|
186
|
+
const styles = useEditorStyles();
|
|
182
187
|
|
|
183
188
|
const openSidebarPanel = () => openGeneralSidebar(hasBlockSelected ? 'edit-post/block' : 'edit-post/document'); // Inserter and Sidebars are mutually exclusive
|
|
184
189
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/layout/index.js"],"names":["getLayoutStyles","blockEditorPrivateApis","interfaceLabels","header","body","sidebar","actions","footer","Layout","isMobileViewport","isHugeViewport","isLargeViewport","openGeneralSidebar","closeGeneralSidebar","setIsInserterOpened","editPostStore","createErrorNotice","noticesStore","mode","isFullscreenActive","isRichEditingEnabled","sidebarIsOpened","hasActiveMetaboxes","hasFixedToolbar","previousShortcut","nextShortcut","hasBlockSelected","isInserterOpened","isListViewOpened","showIconLabels","isDistractionFree","showBlockBreadcrumbs","isTemplateMode","documentLabel","styles","select","getEditorSettings","getPostTypeLabel","editorStore","isFeatureActive","editorSettings","postTypeLabel","hasThemeStyles","themeStyles","presetStyles","forEach","style","__unstableType","push","defaultEditorStyles","disableLayoutStyles","length","css","selector","hasBlockGapSupport","hasFallbackGapSupport","fallbackGapValue","isEditingTemplate","interfaceStore","getActiveComplementaryArea","name","isPublishSidebarOpened","getEditorMode","richEditingEnabled","hasMetaBoxes","keyboardShortcutsStore","getAllShortcutKeyCombinations","openSidebarPanel","entitiesSavedStatesCallback","setEntitiesSavedStatesCallback","closeEntitiesSavedStates","arg","className","secondarySidebarLabel","secondarySidebar","onPluginAreaError","previous","next"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAutosaveMonitor,\n\tLocalAutosaveMonitor,\n\tUnsavedChangesWarning,\n\tEditorNotices,\n\tEditorKeyboardShortcutsRegister,\n\tEditorSnackbars,\n\tPostSyncStatusModal,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockBreadcrumb,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { Button, ScrollLock, Popover } from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { PluginArea } from '@wordpress/plugins';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tComplementaryArea,\n\tFullscreenMode,\n\tInterfaceSkeleton,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport { useState, useEffect, useCallback } from '@wordpress/element';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport TextEditor from '../text-editor';\nimport VisualEditor from '../visual-editor';\nimport EditPostKeyboardShortcuts from '../keyboard-shortcuts';\nimport KeyboardShortcutHelpModal from '../keyboard-shortcut-help-modal';\nimport EditPostPreferencesModal from '../preferences-modal';\nimport BrowserURL from '../browser-url';\nimport Header from '../header';\nimport InserterSidebar from '../secondary-sidebar/inserter-sidebar';\nimport ListViewSidebar from '../secondary-sidebar/list-view-sidebar';\nimport SettingsSidebar from '../sidebar/settings-sidebar';\nimport MetaBoxes from '../meta-boxes';\nimport WelcomeGuide from '../welcome-guide';\nimport ActionsPanel from './actions-panel';\nimport StartPageOptions from '../start-page-options';\nimport { store as editPostStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst { getLayoutStyles } = unlock( blockEditorPrivateApis );\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor top bar landmark region. */\n\theader: __( 'Editor top bar' ),\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\nfunction Layout() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isHugeViewport = useViewportMatch( 'huge', '>=' );\n\tconst isLargeViewport = useViewportMatch( 'large' );\n\tconst { openGeneralSidebar, closeGeneralSidebar, setIsInserterOpened } =\n\t\tuseDispatch( editPostStore );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst {\n\t\tmode,\n\t\tisFullscreenActive,\n\t\tisRichEditingEnabled,\n\t\tsidebarIsOpened,\n\t\thasActiveMetaboxes,\n\t\thasFixedToolbar,\n\t\tpreviousShortcut,\n\t\tnextShortcut,\n\t\thasBlockSelected,\n\t\tisInserterOpened,\n\t\tisListViewOpened,\n\t\tshowIconLabels,\n\t\tisDistractionFree,\n\t\tshowBlockBreadcrumbs,\n\t\tisTemplateMode,\n\t\tdocumentLabel,\n\t\tstyles,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEditorSettings, getPostTypeLabel } = select( editorStore );\n\t\tconst { isFeatureActive } = select( editPostStore );\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst postTypeLabel = getPostTypeLabel();\n\t\tconst hasThemeStyles = isFeatureActive( 'themeStyles' );\n\n\t\tconst themeStyles = [];\n\t\tconst presetStyles = [];\n\t\teditorSettings.styles?.forEach( ( style ) => {\n\t\t\tif ( ! style.__unstableType || style.__unstableType === 'theme' ) {\n\t\t\t\tthemeStyles.push( style );\n\t\t\t} else {\n\t\t\t\tpresetStyles.push( style );\n\t\t\t}\n\t\t} );\n\n\t\tconst defaultEditorStyles = [\n\t\t\t...editorSettings.defaultEditorStyles,\n\t\t\t...presetStyles,\n\t\t];\n\n\t\t// If theme styles are not present or displayed, ensure that\n\t\t// base layout styles are still present in the editor.\n\t\tif (\n\t\t\t! editorSettings.disableLayoutStyles &&\n\t\t\t! ( hasThemeStyles && themeStyles.length )\n\t\t) {\n\t\t\tdefaultEditorStyles.push( {\n\t\t\t\tcss: getLayoutStyles( {\n\t\t\t\t\tstyle: {},\n\t\t\t\t\tselector: 'body',\n\t\t\t\t\thasBlockGapSupport: false,\n\t\t\t\t\thasFallbackGapSupport: true,\n\t\t\t\t\tfallbackGapValue: '0.5em',\n\t\t\t\t} ),\n\t\t\t} );\n\t\t}\n\n\t\treturn {\n\t\t\tisTemplateMode: select( editPostStore ).isEditingTemplate(),\n\t\t\thasFixedToolbar:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'fixedToolbar' ),\n\t\t\tsidebarIsOpened: !! (\n\t\t\t\tselect( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\t\teditPostStore.name\n\t\t\t\t) || select( editPostStore ).isPublishSidebarOpened()\n\t\t\t),\n\t\t\tisFullscreenActive:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'fullscreenMode' ),\n\t\t\tisInserterOpened: select( editPostStore ).isInserterOpened(),\n\t\t\tisListViewOpened: select( editPostStore ).isListViewOpened(),\n\t\t\tmode: select( editPostStore ).getEditorMode(),\n\t\t\tisRichEditingEnabled: editorSettings.richEditingEnabled,\n\t\t\thasActiveMetaboxes: select( editPostStore ).hasMetaBoxes(),\n\t\t\tpreviousShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/edit-post/previous-region' ),\n\t\t\tnextShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/edit-post/next-region' ),\n\t\t\tshowIconLabels:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'showIconLabels' ),\n\t\t\tisDistractionFree:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'distractionFree' ),\n\t\t\tshowBlockBreadcrumbs: select( editPostStore ).isFeatureActive(\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t\t// translators: Default label for the Document in the Block Breadcrumb.\n\t\t\tdocumentLabel: postTypeLabel || _x( 'Document', 'noun' ),\n\t\t\tstyles:\n\t\t\t\thasThemeStyles && themeStyles.length\n\t\t\t\t\t? editorSettings.styles\n\t\t\t\t\t: defaultEditorStyles,\n\t\t};\n\t}, [] );\n\n\tconst openSidebarPanel = () =>\n\t\topenGeneralSidebar(\n\t\t\thasBlockSelected ? 'edit-post/block' : 'edit-post/document'\n\t\t);\n\n\t// Inserter and Sidebars are mutually exclusive\n\tuseEffect( () => {\n\t\tif ( sidebarIsOpened && ! isHugeViewport ) {\n\t\t\tsetIsInserterOpened( false );\n\t\t}\n\t}, [ sidebarIsOpened, isHugeViewport ] );\n\tuseEffect( () => {\n\t\tif ( isInserterOpened && ! isHugeViewport ) {\n\t\t\tcloseGeneralSidebar();\n\t\t}\n\t}, [ isInserterOpened, isHugeViewport ] );\n\n\t// Local state for save panel.\n\t// Note 'truthy' callback implies an open panel.\n\tconst [ entitiesSavedStatesCallback, setEntitiesSavedStatesCallback ] =\n\t\tuseState( false );\n\tconst closeEntitiesSavedStates = useCallback(\n\t\t( arg ) => {\n\t\t\tif ( typeof entitiesSavedStatesCallback === 'function' ) {\n\t\t\t\tentitiesSavedStatesCallback( arg );\n\t\t\t}\n\t\t\tsetEntitiesSavedStatesCallback( false );\n\t\t},\n\t\t[ entitiesSavedStatesCallback ]\n\t);\n\n\tconst className = classnames( 'edit-post-layout', 'is-mode-' + mode, {\n\t\t'is-sidebar-opened': sidebarIsOpened,\n\t\t'has-fixed-toolbar': hasFixedToolbar,\n\t\t'has-metaboxes': hasActiveMetaboxes,\n\t\t'show-icon-labels': showIconLabels,\n\t\t'is-distraction-free': isDistractionFree && isLargeViewport,\n\t\t'is-entity-save-view-open': !! entitiesSavedStatesCallback,\n\t} );\n\n\tconst secondarySidebarLabel = isListViewOpened\n\t\t? __( 'Document Overview' )\n\t\t: __( 'Block Library' );\n\n\tconst secondarySidebar = () => {\n\t\tif ( mode === 'visual' && isInserterOpened ) {\n\t\t\treturn <InserterSidebar />;\n\t\t}\n\t\tif ( mode === 'visual' && isListViewOpened ) {\n\t\t\treturn <ListViewSidebar />;\n\t\t}\n\n\t\treturn null;\n\t};\n\n\tfunction onPluginAreaError( name ) {\n\t\tcreateErrorNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: plugin name */\n\t\t\t\t__(\n\t\t\t\t\t'The \"%s\" plugin has encountered an error and cannot be rendered.'\n\t\t\t\t),\n\t\t\t\tname\n\t\t\t)\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<FullscreenMode isActive={ isFullscreenActive } />\n\t\t\t<BrowserURL />\n\t\t\t<UnsavedChangesWarning />\n\t\t\t<AutosaveMonitor />\n\t\t\t<LocalAutosaveMonitor />\n\t\t\t<EditPostKeyboardShortcuts />\n\t\t\t<EditorKeyboardShortcutsRegister />\n\t\t\t<SettingsSidebar />\n\t\t\t<InterfaceSkeleton\n\t\t\t\tisDistractionFree={ isDistractionFree && isLargeViewport }\n\t\t\t\tclassName={ className }\n\t\t\t\tlabels={ {\n\t\t\t\t\t...interfaceLabels,\n\t\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t\t} }\n\t\t\t\theader={\n\t\t\t\t\t<Header\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\teditorNotices={ <EditorNotices /> }\n\t\t\t\tsecondarySidebar={ secondarySidebar() }\n\t\t\t\tsidebar={\n\t\t\t\t\t( ! isMobileViewport || sidebarIsOpened ) && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isMobileViewport && ! sidebarIsOpened && (\n\t\t\t\t\t\t\t\t<div className=\"edit-post-layout__toggle-sidebar-panel\">\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"edit-post-layout__toggle-sidebar-panel-button\"\n\t\t\t\t\t\t\t\t\t\tonClick={ openSidebarPanel }\n\t\t\t\t\t\t\t\t\t\taria-expanded={ false }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ hasBlockSelected\n\t\t\t\t\t\t\t\t\t\t\t? __( 'Open block settings' )\n\t\t\t\t\t\t\t\t\t\t\t: __( 'Open document settings' ) }\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ComplementaryArea.Slot scope=\"core/edit-post\" />\n\t\t\t\t\t\t</>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tnotices={ <EditorSnackbars /> }\n\t\t\t\tcontent={\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ ! isDistractionFree && <EditorNotices /> }\n\t\t\t\t\t\t{ ( mode === 'text' || ! isRichEditingEnabled ) && (\n\t\t\t\t\t\t\t<TextEditor />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isRichEditingEnabled && mode === 'visual' && (\n\t\t\t\t\t\t\t<VisualEditor styles={ styles } />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! isDistractionFree && ! isTemplateMode && (\n\t\t\t\t\t\t\t<div className=\"edit-post-layout__metaboxes\">\n\t\t\t\t\t\t\t\t<MetaBoxes location=\"normal\" />\n\t\t\t\t\t\t\t\t<MetaBoxes location=\"advanced\" />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isMobileViewport && sidebarIsOpened && (\n\t\t\t\t\t\t\t<ScrollLock />\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t}\n\t\t\t\tfooter={\n\t\t\t\t\t! isDistractionFree &&\n\t\t\t\t\t! isMobileViewport &&\n\t\t\t\t\tshowBlockBreadcrumbs &&\n\t\t\t\t\tisRichEditingEnabled &&\n\t\t\t\t\tmode === 'visual' && (\n\t\t\t\t\t\t<div className=\"edit-post-layout__footer\">\n\t\t\t\t\t\t\t<BlockBreadcrumb rootLabelText={ documentLabel } />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tactions={\n\t\t\t\t\t<ActionsPanel\n\t\t\t\t\t\tcloseEntitiesSavedStates={ closeEntitiesSavedStates }\n\t\t\t\t\t\tisEntitiesSavedStatesOpen={\n\t\t\t\t\t\t\tentitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\tshortcuts={ {\n\t\t\t\t\tprevious: previousShortcut,\n\t\t\t\t\tnext: nextShortcut,\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<EditPostPreferencesModal />\n\t\t\t<KeyboardShortcutHelpModal />\n\t\t\t<WelcomeGuide />\n\t\t\t<PostSyncStatusModal />\n\t\t\t<StartPageOptions />\n\t\t\t<Popover.Slot />\n\t\t\t<PluginArea onError={ onPluginAreaError } />\n\t\t</>\n\t);\n}\n\nexport default Layout;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/layout/index.js"],"names":["getLayoutStyles","blockEditorPrivateApis","interfaceLabels","header","body","sidebar","actions","footer","useEditorStyles","hasThemeStyleSupport","editorSettings","select","editPostStore","isFeatureActive","editorStore","getEditorSettings","presetStyles","styles","filter","style","__unstableType","defaultEditorStyles","hasThemeStyles","length","disableLayoutStyles","push","css","selector","hasBlockGapSupport","hasFallbackGapSupport","fallbackGapValue","Layout","isMobileViewport","isHugeViewport","isLargeViewport","openGeneralSidebar","closeGeneralSidebar","setIsInserterOpened","createErrorNotice","noticesStore","mode","isFullscreenActive","isRichEditingEnabled","sidebarIsOpened","hasActiveMetaboxes","hasFixedToolbar","previousShortcut","nextShortcut","hasBlockSelected","isInserterOpened","isListViewOpened","showIconLabels","isDistractionFree","showBlockBreadcrumbs","isTemplateMode","documentLabel","getPostTypeLabel","postTypeLabel","isEditingTemplate","interfaceStore","getActiveComplementaryArea","name","isPublishSidebarOpened","getEditorMode","richEditingEnabled","hasMetaBoxes","keyboardShortcutsStore","getAllShortcutKeyCombinations","openSidebarPanel","entitiesSavedStatesCallback","setEntitiesSavedStatesCallback","closeEntitiesSavedStates","arg","className","secondarySidebarLabel","secondarySidebar","onPluginAreaError","previous","next"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAutosaveMonitor,\n\tLocalAutosaveMonitor,\n\tUnsavedChangesWarning,\n\tEditorNotices,\n\tEditorKeyboardShortcutsRegister,\n\tEditorSnackbars,\n\tPostSyncStatusModal,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockBreadcrumb,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { Button, ScrollLock, Popover } from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { PluginArea } from '@wordpress/plugins';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tComplementaryArea,\n\tFullscreenMode,\n\tInterfaceSkeleton,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport { useState, useEffect, useCallback, useMemo } from '@wordpress/element';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport TextEditor from '../text-editor';\nimport VisualEditor from '../visual-editor';\nimport EditPostKeyboardShortcuts from '../keyboard-shortcuts';\nimport KeyboardShortcutHelpModal from '../keyboard-shortcut-help-modal';\nimport EditPostPreferencesModal from '../preferences-modal';\nimport BrowserURL from '../browser-url';\nimport Header from '../header';\nimport InserterSidebar from '../secondary-sidebar/inserter-sidebar';\nimport ListViewSidebar from '../secondary-sidebar/list-view-sidebar';\nimport SettingsSidebar from '../sidebar/settings-sidebar';\nimport MetaBoxes from '../meta-boxes';\nimport WelcomeGuide from '../welcome-guide';\nimport ActionsPanel from './actions-panel';\nimport StartPageOptions from '../start-page-options';\nimport { store as editPostStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst { getLayoutStyles } = unlock( blockEditorPrivateApis );\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor top bar landmark region. */\n\theader: __( 'Editor top bar' ),\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\nfunction useEditorStyles() {\n\tconst { hasThemeStyleSupport, editorSettings } = useSelect(\n\t\t( select ) => ( {\n\t\t\thasThemeStyleSupport:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'themeStyles' ),\n\t\t\teditorSettings: select( editorStore ).getEditorSettings(),\n\t\t} ),\n\t\t[]\n\t);\n\n\t// Compute the default styles.\n\treturn useMemo( () => {\n\t\tconst presetStyles =\n\t\t\teditorSettings.styles?.filter(\n\t\t\t\t( style ) =>\n\t\t\t\t\tstyle.__unstableType && style.__unstableType !== 'theme'\n\t\t\t) ?? [];\n\n\t\tconst defaultEditorStyles = [\n\t\t\t...editorSettings.defaultEditorStyles,\n\t\t\t...presetStyles,\n\t\t];\n\n\t\t// Has theme styles if the theme supports them and if some styles were not preset styles (in which case they're theme styles).\n\t\tconst hasThemeStyles =\n\t\t\thasThemeStyleSupport &&\n\t\t\tpresetStyles.length !== ( editorSettings.styles?.length ?? 0 );\n\n\t\t// If theme styles are not present or displayed, ensure that\n\t\t// base layout styles are still present in the editor.\n\t\tif ( ! editorSettings.disableLayoutStyles && ! hasThemeStyles ) {\n\t\t\tdefaultEditorStyles.push( {\n\t\t\t\tcss: getLayoutStyles( {\n\t\t\t\t\tstyle: {},\n\t\t\t\t\tselector: 'body',\n\t\t\t\t\thasBlockGapSupport: false,\n\t\t\t\t\thasFallbackGapSupport: true,\n\t\t\t\t\tfallbackGapValue: '0.5em',\n\t\t\t\t} ),\n\t\t\t} );\n\t\t}\n\n\t\treturn hasThemeStyles ? editorSettings.styles : defaultEditorStyles;\n\t}, [\n\t\teditorSettings.defaultEditorStyles,\n\t\teditorSettings.disableLayoutStyles,\n\t\teditorSettings.styles,\n\t\thasThemeStyleSupport,\n\t] );\n}\n\nfunction Layout() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isHugeViewport = useViewportMatch( 'huge', '>=' );\n\tconst isLargeViewport = useViewportMatch( 'large' );\n\tconst { openGeneralSidebar, closeGeneralSidebar, setIsInserterOpened } =\n\t\tuseDispatch( editPostStore );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst {\n\t\tmode,\n\t\tisFullscreenActive,\n\t\tisRichEditingEnabled,\n\t\tsidebarIsOpened,\n\t\thasActiveMetaboxes,\n\t\thasFixedToolbar,\n\t\tpreviousShortcut,\n\t\tnextShortcut,\n\t\thasBlockSelected,\n\t\tisInserterOpened,\n\t\tisListViewOpened,\n\t\tshowIconLabels,\n\t\tisDistractionFree,\n\t\tshowBlockBreadcrumbs,\n\t\tisTemplateMode,\n\t\tdocumentLabel,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEditorSettings, getPostTypeLabel } = select( editorStore );\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst postTypeLabel = getPostTypeLabel();\n\n\t\treturn {\n\t\t\tisTemplateMode: select( editPostStore ).isEditingTemplate(),\n\t\t\thasFixedToolbar:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'fixedToolbar' ),\n\t\t\tsidebarIsOpened: !! (\n\t\t\t\tselect( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\t\teditPostStore.name\n\t\t\t\t) || select( editPostStore ).isPublishSidebarOpened()\n\t\t\t),\n\t\t\tisFullscreenActive:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'fullscreenMode' ),\n\t\t\tisInserterOpened: select( editPostStore ).isInserterOpened(),\n\t\t\tisListViewOpened: select( editPostStore ).isListViewOpened(),\n\t\t\tmode: select( editPostStore ).getEditorMode(),\n\t\t\tisRichEditingEnabled: editorSettings.richEditingEnabled,\n\t\t\thasActiveMetaboxes: select( editPostStore ).hasMetaBoxes(),\n\t\t\tpreviousShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/edit-post/previous-region' ),\n\t\t\tnextShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/edit-post/next-region' ),\n\t\t\tshowIconLabels:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'showIconLabels' ),\n\t\t\tisDistractionFree:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'distractionFree' ),\n\t\t\tshowBlockBreadcrumbs: select( editPostStore ).isFeatureActive(\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t\t// translators: Default label for the Document in the Block Breadcrumb.\n\t\t\tdocumentLabel: postTypeLabel || _x( 'Document', 'noun' ),\n\t\t};\n\t}, [] );\n\n\tconst styles = useEditorStyles();\n\n\tconst openSidebarPanel = () =>\n\t\topenGeneralSidebar(\n\t\t\thasBlockSelected ? 'edit-post/block' : 'edit-post/document'\n\t\t);\n\n\t// Inserter and Sidebars are mutually exclusive\n\tuseEffect( () => {\n\t\tif ( sidebarIsOpened && ! isHugeViewport ) {\n\t\t\tsetIsInserterOpened( false );\n\t\t}\n\t}, [ sidebarIsOpened, isHugeViewport ] );\n\tuseEffect( () => {\n\t\tif ( isInserterOpened && ! isHugeViewport ) {\n\t\t\tcloseGeneralSidebar();\n\t\t}\n\t}, [ isInserterOpened, isHugeViewport ] );\n\n\t// Local state for save panel.\n\t// Note 'truthy' callback implies an open panel.\n\tconst [ entitiesSavedStatesCallback, setEntitiesSavedStatesCallback ] =\n\t\tuseState( false );\n\tconst closeEntitiesSavedStates = useCallback(\n\t\t( arg ) => {\n\t\t\tif ( typeof entitiesSavedStatesCallback === 'function' ) {\n\t\t\t\tentitiesSavedStatesCallback( arg );\n\t\t\t}\n\t\t\tsetEntitiesSavedStatesCallback( false );\n\t\t},\n\t\t[ entitiesSavedStatesCallback ]\n\t);\n\n\tconst className = classnames( 'edit-post-layout', 'is-mode-' + mode, {\n\t\t'is-sidebar-opened': sidebarIsOpened,\n\t\t'has-fixed-toolbar': hasFixedToolbar,\n\t\t'has-metaboxes': hasActiveMetaboxes,\n\t\t'show-icon-labels': showIconLabels,\n\t\t'is-distraction-free': isDistractionFree && isLargeViewport,\n\t\t'is-entity-save-view-open': !! entitiesSavedStatesCallback,\n\t} );\n\n\tconst secondarySidebarLabel = isListViewOpened\n\t\t? __( 'Document Overview' )\n\t\t: __( 'Block Library' );\n\n\tconst secondarySidebar = () => {\n\t\tif ( mode === 'visual' && isInserterOpened ) {\n\t\t\treturn <InserterSidebar />;\n\t\t}\n\t\tif ( mode === 'visual' && isListViewOpened ) {\n\t\t\treturn <ListViewSidebar />;\n\t\t}\n\n\t\treturn null;\n\t};\n\n\tfunction onPluginAreaError( name ) {\n\t\tcreateErrorNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: plugin name */\n\t\t\t\t__(\n\t\t\t\t\t'The \"%s\" plugin has encountered an error and cannot be rendered.'\n\t\t\t\t),\n\t\t\t\tname\n\t\t\t)\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<FullscreenMode isActive={ isFullscreenActive } />\n\t\t\t<BrowserURL />\n\t\t\t<UnsavedChangesWarning />\n\t\t\t<AutosaveMonitor />\n\t\t\t<LocalAutosaveMonitor />\n\t\t\t<EditPostKeyboardShortcuts />\n\t\t\t<EditorKeyboardShortcutsRegister />\n\t\t\t<SettingsSidebar />\n\t\t\t<InterfaceSkeleton\n\t\t\t\tisDistractionFree={ isDistractionFree && isLargeViewport }\n\t\t\t\tclassName={ className }\n\t\t\t\tlabels={ {\n\t\t\t\t\t...interfaceLabels,\n\t\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t\t} }\n\t\t\t\theader={\n\t\t\t\t\t<Header\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\teditorNotices={ <EditorNotices /> }\n\t\t\t\tsecondarySidebar={ secondarySidebar() }\n\t\t\t\tsidebar={\n\t\t\t\t\t( ! isMobileViewport || sidebarIsOpened ) && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isMobileViewport && ! sidebarIsOpened && (\n\t\t\t\t\t\t\t\t<div className=\"edit-post-layout__toggle-sidebar-panel\">\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"edit-post-layout__toggle-sidebar-panel-button\"\n\t\t\t\t\t\t\t\t\t\tonClick={ openSidebarPanel }\n\t\t\t\t\t\t\t\t\t\taria-expanded={ false }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ hasBlockSelected\n\t\t\t\t\t\t\t\t\t\t\t? __( 'Open block settings' )\n\t\t\t\t\t\t\t\t\t\t\t: __( 'Open document settings' ) }\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ComplementaryArea.Slot scope=\"core/edit-post\" />\n\t\t\t\t\t\t</>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tnotices={ <EditorSnackbars /> }\n\t\t\t\tcontent={\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ ! isDistractionFree && <EditorNotices /> }\n\t\t\t\t\t\t{ ( mode === 'text' || ! isRichEditingEnabled ) && (\n\t\t\t\t\t\t\t<TextEditor />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isRichEditingEnabled && mode === 'visual' && (\n\t\t\t\t\t\t\t<VisualEditor styles={ styles } />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! isDistractionFree && ! isTemplateMode && (\n\t\t\t\t\t\t\t<div className=\"edit-post-layout__metaboxes\">\n\t\t\t\t\t\t\t\t<MetaBoxes location=\"normal\" />\n\t\t\t\t\t\t\t\t<MetaBoxes location=\"advanced\" />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isMobileViewport && sidebarIsOpened && (\n\t\t\t\t\t\t\t<ScrollLock />\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t}\n\t\t\t\tfooter={\n\t\t\t\t\t! isDistractionFree &&\n\t\t\t\t\t! isMobileViewport &&\n\t\t\t\t\tshowBlockBreadcrumbs &&\n\t\t\t\t\tisRichEditingEnabled &&\n\t\t\t\t\tmode === 'visual' && (\n\t\t\t\t\t\t<div className=\"edit-post-layout__footer\">\n\t\t\t\t\t\t\t<BlockBreadcrumb rootLabelText={ documentLabel } />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tactions={\n\t\t\t\t\t<ActionsPanel\n\t\t\t\t\t\tcloseEntitiesSavedStates={ closeEntitiesSavedStates }\n\t\t\t\t\t\tisEntitiesSavedStatesOpen={\n\t\t\t\t\t\t\tentitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\tshortcuts={ {\n\t\t\t\t\tprevious: previousShortcut,\n\t\t\t\t\tnext: nextShortcut,\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<EditPostPreferencesModal />\n\t\t\t<KeyboardShortcutHelpModal />\n\t\t\t<WelcomeGuide />\n\t\t\t<PostSyncStatusModal />\n\t\t\t<StartPageOptions />\n\t\t\t<Popover.Slot />\n\t\t\t<PluginArea onError={ onPluginAreaError } />\n\t\t</>\n\t);\n}\n\nexport default Layout;\n"]}
|
|
@@ -16,7 +16,7 @@ import { useViewportMatch } from '@wordpress/compose';
|
|
|
16
16
|
import { PluginArea } from '@wordpress/plugins';
|
|
17
17
|
import { __, _x, sprintf } from '@wordpress/i18n';
|
|
18
18
|
import { ComplementaryArea, FullscreenMode, InterfaceSkeleton, store as interfaceStore } from '@wordpress/interface';
|
|
19
|
-
import { useState, useEffect, useCallback } from '@wordpress/element';
|
|
19
|
+
import { useState, useEffect, useCallback, useMemo } from '@wordpress/element';
|
|
20
20
|
import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
|
|
21
21
|
import { store as noticesStore } from '@wordpress/notices';
|
|
22
22
|
/**
|
|
@@ -59,6 +59,40 @@ const interfaceLabels = {
|
|
|
59
59
|
footer: __('Editor footer')
|
|
60
60
|
};
|
|
61
61
|
|
|
62
|
+
function useEditorStyles() {
|
|
63
|
+
const {
|
|
64
|
+
hasThemeStyleSupport,
|
|
65
|
+
editorSettings
|
|
66
|
+
} = useSelect(select => ({
|
|
67
|
+
hasThemeStyleSupport: select(editPostStore).isFeatureActive('themeStyles'),
|
|
68
|
+
editorSettings: select(editorStore).getEditorSettings()
|
|
69
|
+
}), []); // Compute the default styles.
|
|
70
|
+
|
|
71
|
+
return useMemo(() => {
|
|
72
|
+
var _editorSettings$style, _editorSettings$style2;
|
|
73
|
+
|
|
74
|
+
const presetStyles = (_editorSettings$style = editorSettings.styles?.filter(style => style.__unstableType && style.__unstableType !== 'theme')) !== null && _editorSettings$style !== void 0 ? _editorSettings$style : [];
|
|
75
|
+
const defaultEditorStyles = [...editorSettings.defaultEditorStyles, ...presetStyles]; // Has theme styles if the theme supports them and if some styles were not preset styles (in which case they're theme styles).
|
|
76
|
+
|
|
77
|
+
const hasThemeStyles = hasThemeStyleSupport && presetStyles.length !== ((_editorSettings$style2 = editorSettings.styles?.length) !== null && _editorSettings$style2 !== void 0 ? _editorSettings$style2 : 0); // If theme styles are not present or displayed, ensure that
|
|
78
|
+
// base layout styles are still present in the editor.
|
|
79
|
+
|
|
80
|
+
if (!editorSettings.disableLayoutStyles && !hasThemeStyles) {
|
|
81
|
+
defaultEditorStyles.push({
|
|
82
|
+
css: getLayoutStyles({
|
|
83
|
+
style: {},
|
|
84
|
+
selector: 'body',
|
|
85
|
+
hasBlockGapSupport: false,
|
|
86
|
+
hasFallbackGapSupport: true,
|
|
87
|
+
fallbackGapValue: '0.5em'
|
|
88
|
+
})
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
return hasThemeStyles ? editorSettings.styles : defaultEditorStyles;
|
|
93
|
+
}, [editorSettings.defaultEditorStyles, editorSettings.disableLayoutStyles, editorSettings.styles, hasThemeStyleSupport]);
|
|
94
|
+
}
|
|
95
|
+
|
|
62
96
|
function Layout() {
|
|
63
97
|
const isMobileViewport = useViewportMatch('medium', '<');
|
|
64
98
|
const isHugeViewport = useViewportMatch('huge', '>=');
|
|
@@ -87,43 +121,14 @@ function Layout() {
|
|
|
87
121
|
isDistractionFree,
|
|
88
122
|
showBlockBreadcrumbs,
|
|
89
123
|
isTemplateMode,
|
|
90
|
-
documentLabel
|
|
91
|
-
styles
|
|
124
|
+
documentLabel
|
|
92
125
|
} = useSelect(select => {
|
|
93
126
|
const {
|
|
94
127
|
getEditorSettings,
|
|
95
128
|
getPostTypeLabel
|
|
96
129
|
} = select(editorStore);
|
|
97
|
-
const {
|
|
98
|
-
isFeatureActive
|
|
99
|
-
} = select(editPostStore);
|
|
100
130
|
const editorSettings = getEditorSettings();
|
|
101
131
|
const postTypeLabel = getPostTypeLabel();
|
|
102
|
-
const hasThemeStyles = isFeatureActive('themeStyles');
|
|
103
|
-
const themeStyles = [];
|
|
104
|
-
const presetStyles = [];
|
|
105
|
-
editorSettings.styles?.forEach(style => {
|
|
106
|
-
if (!style.__unstableType || style.__unstableType === 'theme') {
|
|
107
|
-
themeStyles.push(style);
|
|
108
|
-
} else {
|
|
109
|
-
presetStyles.push(style);
|
|
110
|
-
}
|
|
111
|
-
});
|
|
112
|
-
const defaultEditorStyles = [...editorSettings.defaultEditorStyles, ...presetStyles]; // If theme styles are not present or displayed, ensure that
|
|
113
|
-
// base layout styles are still present in the editor.
|
|
114
|
-
|
|
115
|
-
if (!editorSettings.disableLayoutStyles && !(hasThemeStyles && themeStyles.length)) {
|
|
116
|
-
defaultEditorStyles.push({
|
|
117
|
-
css: getLayoutStyles({
|
|
118
|
-
style: {},
|
|
119
|
-
selector: 'body',
|
|
120
|
-
hasBlockGapSupport: false,
|
|
121
|
-
hasFallbackGapSupport: true,
|
|
122
|
-
fallbackGapValue: '0.5em'
|
|
123
|
-
})
|
|
124
|
-
});
|
|
125
|
-
}
|
|
126
|
-
|
|
127
132
|
return {
|
|
128
133
|
isTemplateMode: select(editPostStore).isEditingTemplate(),
|
|
129
134
|
hasFixedToolbar: select(editPostStore).isFeatureActive('fixedToolbar'),
|
|
@@ -140,10 +145,10 @@ function Layout() {
|
|
|
140
145
|
isDistractionFree: select(editPostStore).isFeatureActive('distractionFree'),
|
|
141
146
|
showBlockBreadcrumbs: select(editPostStore).isFeatureActive('showBlockBreadcrumbs'),
|
|
142
147
|
// translators: Default label for the Document in the Block Breadcrumb.
|
|
143
|
-
documentLabel: postTypeLabel || _x('Document', 'noun')
|
|
144
|
-
styles: hasThemeStyles && themeStyles.length ? editorSettings.styles : defaultEditorStyles
|
|
148
|
+
documentLabel: postTypeLabel || _x('Document', 'noun')
|
|
145
149
|
};
|
|
146
150
|
}, []);
|
|
151
|
+
const styles = useEditorStyles();
|
|
147
152
|
|
|
148
153
|
const openSidebarPanel = () => openGeneralSidebar(hasBlockSelected ? 'edit-post/block' : 'edit-post/document'); // Inserter and Sidebars are mutually exclusive
|
|
149
154
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/layout/index.js"],"names":["classnames","AutosaveMonitor","LocalAutosaveMonitor","UnsavedChangesWarning","EditorNotices","EditorKeyboardShortcutsRegister","EditorSnackbars","PostSyncStatusModal","store","editorStore","useSelect","useDispatch","BlockBreadcrumb","privateApis","blockEditorPrivateApis","Button","ScrollLock","Popover","useViewportMatch","PluginArea","__","_x","sprintf","ComplementaryArea","FullscreenMode","InterfaceSkeleton","interfaceStore","useState","useEffect","useCallback","keyboardShortcutsStore","noticesStore","TextEditor","VisualEditor","EditPostKeyboardShortcuts","KeyboardShortcutHelpModal","EditPostPreferencesModal","BrowserURL","Header","InserterSidebar","ListViewSidebar","SettingsSidebar","MetaBoxes","WelcomeGuide","ActionsPanel","StartPageOptions","editPostStore","unlock","getLayoutStyles","interfaceLabels","header","body","sidebar","actions","footer","Layout","isMobileViewport","isHugeViewport","isLargeViewport","openGeneralSidebar","closeGeneralSidebar","setIsInserterOpened","createErrorNotice","mode","isFullscreenActive","isRichEditingEnabled","sidebarIsOpened","hasActiveMetaboxes","hasFixedToolbar","previousShortcut","nextShortcut","hasBlockSelected","isInserterOpened","isListViewOpened","showIconLabels","isDistractionFree","showBlockBreadcrumbs","isTemplateMode","documentLabel","styles","select","getEditorSettings","getPostTypeLabel","isFeatureActive","editorSettings","postTypeLabel","hasThemeStyles","themeStyles","presetStyles","forEach","style","__unstableType","push","defaultEditorStyles","disableLayoutStyles","length","css","selector","hasBlockGapSupport","hasFallbackGapSupport","fallbackGapValue","isEditingTemplate","getActiveComplementaryArea","name","isPublishSidebarOpened","getEditorMode","richEditingEnabled","hasMetaBoxes","getAllShortcutKeyCombinations","openSidebarPanel","entitiesSavedStatesCallback","setEntitiesSavedStatesCallback","closeEntitiesSavedStates","arg","className","secondarySidebarLabel","secondarySidebar","onPluginAreaError","previous","next"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SACCC,eADD,EAECC,oBAFD,EAGCC,qBAHD,EAICC,aAJD,EAKCC,+BALD,EAMCC,eAND,EAOCC,mBAPD,EAQCC,KAAK,IAAIC,WARV,QASO,mBATP;AAUA,SAASC,SAAT,EAAoBC,WAApB,QAAuC,iBAAvC;AACA,SACCC,eADD,EAECC,WAAW,IAAIC,sBAFhB,QAGO,yBAHP;AAIA,SAASC,MAAT,EAAiBC,UAAjB,EAA6BC,OAA7B,QAA4C,uBAA5C;AACA,SAASC,gBAAT,QAAiC,oBAAjC;AACA,SAASC,UAAT,QAA2B,oBAA3B;AACA,SAASC,EAAT,EAAaC,EAAb,EAAiBC,OAAjB,QAAgC,iBAAhC;AACA,SACCC,iBADD,EAECC,cAFD,EAGCC,iBAHD,EAICjB,KAAK,IAAIkB,cAJV,QAKO,sBALP;AAMA,SAASC,QAAT,EAAmBC,SAAnB,EAA8BC,WAA9B,QAAiD,oBAAjD;AACA,SAASrB,KAAK,IAAIsB,sBAAlB,QAAgD,+BAAhD;AACA,SAAStB,KAAK,IAAIuB,YAAlB,QAAsC,oBAAtC;AAEA;AACA;AACA;;AACA,OAAOC,UAAP,MAAuB,gBAAvB;AACA,OAAOC,YAAP,MAAyB,kBAAzB;AACA,OAAOC,yBAAP,MAAsC,uBAAtC;AACA,OAAOC,yBAAP,MAAsC,iCAAtC;AACA,OAAOC,wBAAP,MAAqC,sBAArC;AACA,OAAOC,UAAP,MAAuB,gBAAvB;AACA,OAAOC,MAAP,MAAmB,WAAnB;AACA,OAAOC,eAAP,MAA4B,uCAA5B;AACA,OAAOC,eAAP,MAA4B,wCAA5B;AACA,OAAOC,eAAP,MAA4B,6BAA5B;AACA,OAAOC,SAAP,MAAsB,eAAtB;AACA,OAAOC,YAAP,MAAyB,kBAAzB;AACA,OAAOC,YAAP,MAAyB,iBAAzB;AACA,OAAOC,gBAAP,MAA6B,uBAA7B;AACA,SAASrC,KAAK,IAAIsC,aAAlB,QAAuC,aAAvC;AACA,SAASC,MAAT,QAAuB,mBAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAsBD,MAAM,CAAEjC,sBAAF,CAAlC;AAEA,MAAMmC,eAAe,GAAG;AACvB;AACAC,EAAAA,MAAM,EAAE9B,EAAE,CAAE,gBAAF,CAFa;;AAGvB;AACA+B,EAAAA,IAAI,EAAE/B,EAAE,CAAE,gBAAF,CAJe;;AAKvB;AACAgC,EAAAA,OAAO,EAAEhC,EAAE,CAAE,iBAAF,CANY;;AAOvB;AACAiC,EAAAA,OAAO,EAAEjC,EAAE,CAAE,gBAAF,CARY;;AASvB;AACAkC,EAAAA,MAAM,EAAElC,EAAE,CAAE,eAAF;AAVa,CAAxB;;AAaA,SAASmC,MAAT,GAAkB;AACjB,QAAMC,gBAAgB,GAAGtC,gBAAgB,CAAE,QAAF,EAAY,GAAZ,CAAzC;AACA,QAAMuC,cAAc,GAAGvC,gBAAgB,CAAE,MAAF,EAAU,IAAV,CAAvC;AACA,QAAMwC,eAAe,GAAGxC,gBAAgB,CAAE,OAAF,CAAxC;AACA,QAAM;AAAEyC,IAAAA,kBAAF;AAAsBC,IAAAA,mBAAtB;AAA2CC,IAAAA;AAA3C,MACLlD,WAAW,CAAEmC,aAAF,CADZ;AAEA,QAAM;AAAEgB,IAAAA;AAAF,MAAwBnD,WAAW,CAAEoB,YAAF,CAAzC;AACA,QAAM;AACLgC,IAAAA,IADK;AAELC,IAAAA,kBAFK;AAGLC,IAAAA,oBAHK;AAILC,IAAAA,eAJK;AAKLC,IAAAA,kBALK;AAMLC,IAAAA,eANK;AAOLC,IAAAA,gBAPK;AAQLC,IAAAA,YARK;AASLC,IAAAA,gBATK;AAULC,IAAAA,gBAVK;AAWLC,IAAAA,gBAXK;AAYLC,IAAAA,cAZK;AAaLC,IAAAA,iBAbK;AAcLC,IAAAA,oBAdK;AAeLC,IAAAA,cAfK;AAgBLC,IAAAA,aAhBK;AAiBLC,IAAAA;AAjBK,MAkBFrE,SAAS,CAAIsE,MAAF,IAAc;AAC5B,UAAM;AAAEC,MAAAA,iBAAF;AAAqBC,MAAAA;AAArB,QAA0CF,MAAM,CAAEvE,WAAF,CAAtD;AACA,UAAM;AAAE0E,MAAAA;AAAF,QAAsBH,MAAM,CAAElC,aAAF,CAAlC;AACA,UAAMsC,cAAc,GAAGH,iBAAiB,EAAxC;AACA,UAAMI,aAAa,GAAGH,gBAAgB,EAAtC;AACA,UAAMI,cAAc,GAAGH,eAAe,CAAE,aAAF,CAAtC;AAEA,UAAMI,WAAW,GAAG,EAApB;AACA,UAAMC,YAAY,GAAG,EAArB;AACAJ,IAAAA,cAAc,CAACL,MAAf,EAAuBU,OAAvB,CAAkCC,KAAF,IAAa;AAC5C,UAAK,CAAEA,KAAK,CAACC,cAAR,IAA0BD,KAAK,CAACC,cAAN,KAAyB,OAAxD,EAAkE;AACjEJ,QAAAA,WAAW,CAACK,IAAZ,CAAkBF,KAAlB;AACA,OAFD,MAEO;AACNF,QAAAA,YAAY,CAACI,IAAb,CAAmBF,KAAnB;AACA;AACD,KAND;AAQA,UAAMG,mBAAmB,GAAG,CAC3B,GAAGT,cAAc,CAACS,mBADS,EAE3B,GAAGL,YAFwB,CAA5B,CAjB4B,CAsB5B;AACA;;AACA,QACC,CAAEJ,cAAc,CAACU,mBAAjB,IACA,EAAIR,cAAc,IAAIC,WAAW,CAACQ,MAAlC,CAFD,EAGE;AACDF,MAAAA,mBAAmB,CAACD,IAApB,CAA0B;AACzBI,QAAAA,GAAG,EAAEhD,eAAe,CAAE;AACrB0C,UAAAA,KAAK,EAAE,EADc;AAErBO,UAAAA,QAAQ,EAAE,MAFW;AAGrBC,UAAAA,kBAAkB,EAAE,KAHC;AAIrBC,UAAAA,qBAAqB,EAAE,IAJF;AAKrBC,UAAAA,gBAAgB,EAAE;AALG,SAAF;AADK,OAA1B;AASA;;AAED,WAAO;AACNvB,MAAAA,cAAc,EAAEG,MAAM,CAAElC,aAAF,CAAN,CAAwBuD,iBAAxB,EADV;AAENjC,MAAAA,eAAe,EACdY,MAAM,CAAElC,aAAF,CAAN,CAAwBqC,eAAxB,CAAyC,cAAzC,CAHK;AAINjB,MAAAA,eAAe,EAAE,CAAC,EACjBc,MAAM,CAAEtD,cAAF,CAAN,CAAyB4E,0BAAzB,CACCxD,aAAa,CAACyD,IADf,KAEKvB,MAAM,CAAElC,aAAF,CAAN,CAAwB0D,sBAAxB,EAHY,CAJZ;AASNxC,MAAAA,kBAAkB,EACjBgB,MAAM,CAAElC,aAAF,CAAN,CAAwBqC,eAAxB,CAAyC,gBAAzC,CAVK;AAWNX,MAAAA,gBAAgB,EAAEQ,MAAM,CAAElC,aAAF,CAAN,CAAwB0B,gBAAxB,EAXZ;AAYNC,MAAAA,gBAAgB,EAAEO,MAAM,CAAElC,aAAF,CAAN,CAAwB2B,gBAAxB,EAZZ;AAaNV,MAAAA,IAAI,EAAEiB,MAAM,CAAElC,aAAF,CAAN,CAAwB2D,aAAxB,EAbA;AAcNxC,MAAAA,oBAAoB,EAAEmB,cAAc,CAACsB,kBAd/B;AAeNvC,MAAAA,kBAAkB,EAAEa,MAAM,CAAElC,aAAF,CAAN,CAAwB6D,YAAxB,EAfd;AAgBNtC,MAAAA,gBAAgB,EAAEW,MAAM,CACvBlD,sBADuB,CAAN,CAEhB8E,6BAFgB,CAEe,gCAFf,CAhBZ;AAmBNtC,MAAAA,YAAY,EAAEU,MAAM,CACnBlD,sBADmB,CAAN,CAEZ8E,6BAFY,CAEmB,4BAFnB,CAnBR;AAsBNlC,MAAAA,cAAc,EACbM,MAAM,CAAElC,aAAF,CAAN,CAAwBqC,eAAxB,CAAyC,gBAAzC,CAvBK;AAwBNR,MAAAA,iBAAiB,EAChBK,MAAM,CAAElC,aAAF,CAAN,CAAwBqC,eAAxB,CAAyC,iBAAzC,CAzBK;AA0BNP,MAAAA,oBAAoB,EAAEI,MAAM,CAAElC,aAAF,CAAN,CAAwBqC,eAAxB,CACrB,sBADqB,CA1BhB;AA6BN;AACAL,MAAAA,aAAa,EAAEO,aAAa,IAAIhE,EAAE,CAAE,UAAF,EAAc,MAAd,CA9B5B;AA+BN0D,MAAAA,MAAM,EACLO,cAAc,IAAIC,WAAW,CAACQ,MAA9B,GACGX,cAAc,CAACL,MADlB,GAEGc;AAlCE,KAAP;AAoCA,GA3EY,EA2EV,EA3EU,CAlBb;;AA+FA,QAAMgB,gBAAgB,GAAG,MACxBlD,kBAAkB,CACjBY,gBAAgB,GAAG,iBAAH,GAAuB,oBADtB,CADnB,CAtGiB,CA2GjB;;;AACA3C,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAKsC,eAAe,IAAI,CAAET,cAA1B,EAA2C;AAC1CI,MAAAA,mBAAmB,CAAE,KAAF,CAAnB;AACA;AACD,GAJQ,EAIN,CAAEK,eAAF,EAAmBT,cAAnB,CAJM,CAAT;AAKA7B,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAK4C,gBAAgB,IAAI,CAAEf,cAA3B,EAA4C;AAC3CG,MAAAA,mBAAmB;AACnB;AACD,GAJQ,EAIN,CAAEY,gBAAF,EAAoBf,cAApB,CAJM,CAAT,CAjHiB,CAuHjB;AACA;;AACA,QAAM,CAAEqD,2BAAF,EAA+BC,8BAA/B,IACLpF,QAAQ,CAAE,KAAF,CADT;AAEA,QAAMqF,wBAAwB,GAAGnF,WAAW,CACzCoF,GAAF,IAAW;AACV,QAAK,OAAOH,2BAAP,KAAuC,UAA5C,EAAyD;AACxDA,MAAAA,2BAA2B,CAAEG,GAAF,CAA3B;AACA;;AACDF,IAAAA,8BAA8B,CAAE,KAAF,CAA9B;AACA,GAN0C,EAO3C,CAAED,2BAAF,CAP2C,CAA5C;AAUA,QAAMI,SAAS,GAAGlH,UAAU,CAAE,kBAAF,EAAsB,aAAa+D,IAAnC,EAAyC;AACpE,yBAAqBG,eAD+C;AAEpE,yBAAqBE,eAF+C;AAGpE,qBAAiBD,kBAHmD;AAIpE,wBAAoBO,cAJgD;AAKpE,2BAAuBC,iBAAiB,IAAIjB,eALwB;AAMpE,gCAA4B,CAAC,CAAEoD;AANqC,GAAzC,CAA5B;AASA,QAAMK,qBAAqB,GAAG1C,gBAAgB,GAC3CrD,EAAE,CAAE,mBAAF,CADyC,GAE3CA,EAAE,CAAE,eAAF,CAFL;;AAIA,QAAMgG,gBAAgB,GAAG,MAAM;AAC9B,QAAKrD,IAAI,KAAK,QAAT,IAAqBS,gBAA1B,EAA6C;AAC5C,aAAO,cAAC,eAAD,OAAP;AACA;;AACD,QAAKT,IAAI,KAAK,QAAT,IAAqBU,gBAA1B,EAA6C;AAC5C,aAAO,cAAC,eAAD,OAAP;AACA;;AAED,WAAO,IAAP;AACA,GATD;;AAWA,WAAS4C,iBAAT,CAA4Bd,IAA5B,EAAmC;AAClCzC,IAAAA,iBAAiB,CAChBxC,OAAO;AACN;AACAF,IAAAA,EAAE,CACD,kEADC,CAFI,EAKNmF,IALM,CADS,CAAjB;AASA;;AAED,SACC,8BACC,cAAC,cAAD;AAAgB,IAAA,QAAQ,EAAGvC;AAA3B,IADD,EAEC,cAAC,UAAD,OAFD,EAGC,cAAC,qBAAD,OAHD,EAIC,cAAC,eAAD,OAJD,EAKC,cAAC,oBAAD,OALD,EAMC,cAAC,yBAAD,OAND,EAOC,cAAC,+BAAD,OAPD,EAQC,cAAC,eAAD,OARD,EASC,cAAC,iBAAD;AACC,IAAA,iBAAiB,EAAGW,iBAAiB,IAAIjB,eAD1C;AAEC,IAAA,SAAS,EAAGwD,SAFb;AAGC,IAAA,MAAM,EAAG,EACR,GAAGjE,eADK;AAERmE,MAAAA,gBAAgB,EAAED;AAFV,KAHV;AAOC,IAAA,MAAM,EACL,cAAC,MAAD;AACC,MAAA,8BAA8B,EAC7BJ;AAFF,MARF;AAcC,IAAA,aAAa,EAAG,cAAC,aAAD,OAdjB;AAeC,IAAA,gBAAgB,EAAGK,gBAAgB,EAfpC;AAgBC,IAAA,OAAO,EACN,CAAE,CAAE5D,gBAAF,IAAsBU,eAAxB,KACC,8BACG,CAAEV,gBAAF,IAAsB,CAAEU,eAAxB,IACD;AAAK,MAAA,SAAS,EAAC;AAAf,OACC,cAAC,MAAD;AACC,MAAA,OAAO,EAAC,WADT;AAEC,MAAA,SAAS,EAAC,+CAFX;AAGC,MAAA,OAAO,EAAG2C,gBAHX;AAIC,uBAAgB;AAJjB,OAMGtC,gBAAgB,GACfnD,EAAE,CAAE,qBAAF,CADa,GAEfA,EAAE,CAAE,wBAAF,CARN,CADD,CAFF,EAeC,cAAC,iBAAD,CAAmB,IAAnB;AAAwB,MAAA,KAAK,EAAC;AAA9B,MAfD,CAlBH;AAqCC,IAAA,OAAO,EAAG,cAAC,eAAD,OArCX;AAsCC,IAAA,OAAO,EACN,8BACG,CAAEuD,iBAAF,IAAuB,cAAC,aAAD,OAD1B,EAEG,CAAEZ,IAAI,KAAK,MAAT,IAAmB,CAAEE,oBAAvB,KACD,cAAC,UAAD,OAHF,EAKGA,oBAAoB,IAAIF,IAAI,KAAK,QAAjC,IACD,cAAC,YAAD;AAAc,MAAA,MAAM,EAAGgB;AAAvB,MANF,EAQG,CAAEJ,iBAAF,IAAuB,CAAEE,cAAzB,IACD;AAAK,MAAA,SAAS,EAAC;AAAf,OACC,cAAC,SAAD;AAAW,MAAA,QAAQ,EAAC;AAApB,MADD,EAEC,cAAC,SAAD;AAAW,MAAA,QAAQ,EAAC;AAApB,MAFD,CATF,EAcGrB,gBAAgB,IAAIU,eAApB,IACD,cAAC,UAAD,OAfF,CAvCF;AA0DC,IAAA,MAAM,EACL,CAAES,iBAAF,IACA,CAAEnB,gBADF,IAEAoB,oBAFA,IAGAX,oBAHA,IAIAF,IAAI,KAAK,QAJT,IAKC;AAAK,MAAA,SAAS,EAAC;AAAf,OACC,cAAC,eAAD;AAAiB,MAAA,aAAa,EAAGe;AAAjC,MADD,CAhEH;AAqEC,IAAA,OAAO,EACN,cAAC,YAAD;AACC,MAAA,wBAAwB,EAAGkC,wBAD5B;AAEC,MAAA,yBAAyB,EACxBF,2BAHF;AAKC,MAAA,8BAA8B,EAC7BC;AANF,MAtEF;AAgFC,IAAA,SAAS,EAAG;AACXO,MAAAA,QAAQ,EAAEjD,gBADC;AAEXkD,MAAAA,IAAI,EAAEjD;AAFK;AAhFb,IATD,EA8FC,cAAC,wBAAD,OA9FD,EA+FC,cAAC,yBAAD,OA/FD,EAgGC,cAAC,YAAD,OAhGD,EAiGC,cAAC,mBAAD,OAjGD,EAkGC,cAAC,gBAAD,OAlGD,EAmGC,cAAC,OAAD,CAAS,IAAT,OAnGD,EAoGC,cAAC,UAAD;AAAY,IAAA,OAAO,EAAG+C;AAAtB,IApGD,CADD;AAwGA;;AAED,eAAe9D,MAAf","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAutosaveMonitor,\n\tLocalAutosaveMonitor,\n\tUnsavedChangesWarning,\n\tEditorNotices,\n\tEditorKeyboardShortcutsRegister,\n\tEditorSnackbars,\n\tPostSyncStatusModal,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockBreadcrumb,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { Button, ScrollLock, Popover } from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { PluginArea } from '@wordpress/plugins';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tComplementaryArea,\n\tFullscreenMode,\n\tInterfaceSkeleton,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport { useState, useEffect, useCallback } from '@wordpress/element';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport TextEditor from '../text-editor';\nimport VisualEditor from '../visual-editor';\nimport EditPostKeyboardShortcuts from '../keyboard-shortcuts';\nimport KeyboardShortcutHelpModal from '../keyboard-shortcut-help-modal';\nimport EditPostPreferencesModal from '../preferences-modal';\nimport BrowserURL from '../browser-url';\nimport Header from '../header';\nimport InserterSidebar from '../secondary-sidebar/inserter-sidebar';\nimport ListViewSidebar from '../secondary-sidebar/list-view-sidebar';\nimport SettingsSidebar from '../sidebar/settings-sidebar';\nimport MetaBoxes from '../meta-boxes';\nimport WelcomeGuide from '../welcome-guide';\nimport ActionsPanel from './actions-panel';\nimport StartPageOptions from '../start-page-options';\nimport { store as editPostStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst { getLayoutStyles } = unlock( blockEditorPrivateApis );\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor top bar landmark region. */\n\theader: __( 'Editor top bar' ),\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\nfunction Layout() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isHugeViewport = useViewportMatch( 'huge', '>=' );\n\tconst isLargeViewport = useViewportMatch( 'large' );\n\tconst { openGeneralSidebar, closeGeneralSidebar, setIsInserterOpened } =\n\t\tuseDispatch( editPostStore );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst {\n\t\tmode,\n\t\tisFullscreenActive,\n\t\tisRichEditingEnabled,\n\t\tsidebarIsOpened,\n\t\thasActiveMetaboxes,\n\t\thasFixedToolbar,\n\t\tpreviousShortcut,\n\t\tnextShortcut,\n\t\thasBlockSelected,\n\t\tisInserterOpened,\n\t\tisListViewOpened,\n\t\tshowIconLabels,\n\t\tisDistractionFree,\n\t\tshowBlockBreadcrumbs,\n\t\tisTemplateMode,\n\t\tdocumentLabel,\n\t\tstyles,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEditorSettings, getPostTypeLabel } = select( editorStore );\n\t\tconst { isFeatureActive } = select( editPostStore );\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst postTypeLabel = getPostTypeLabel();\n\t\tconst hasThemeStyles = isFeatureActive( 'themeStyles' );\n\n\t\tconst themeStyles = [];\n\t\tconst presetStyles = [];\n\t\teditorSettings.styles?.forEach( ( style ) => {\n\t\t\tif ( ! style.__unstableType || style.__unstableType === 'theme' ) {\n\t\t\t\tthemeStyles.push( style );\n\t\t\t} else {\n\t\t\t\tpresetStyles.push( style );\n\t\t\t}\n\t\t} );\n\n\t\tconst defaultEditorStyles = [\n\t\t\t...editorSettings.defaultEditorStyles,\n\t\t\t...presetStyles,\n\t\t];\n\n\t\t// If theme styles are not present or displayed, ensure that\n\t\t// base layout styles are still present in the editor.\n\t\tif (\n\t\t\t! editorSettings.disableLayoutStyles &&\n\t\t\t! ( hasThemeStyles && themeStyles.length )\n\t\t) {\n\t\t\tdefaultEditorStyles.push( {\n\t\t\t\tcss: getLayoutStyles( {\n\t\t\t\t\tstyle: {},\n\t\t\t\t\tselector: 'body',\n\t\t\t\t\thasBlockGapSupport: false,\n\t\t\t\t\thasFallbackGapSupport: true,\n\t\t\t\t\tfallbackGapValue: '0.5em',\n\t\t\t\t} ),\n\t\t\t} );\n\t\t}\n\n\t\treturn {\n\t\t\tisTemplateMode: select( editPostStore ).isEditingTemplate(),\n\t\t\thasFixedToolbar:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'fixedToolbar' ),\n\t\t\tsidebarIsOpened: !! (\n\t\t\t\tselect( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\t\teditPostStore.name\n\t\t\t\t) || select( editPostStore ).isPublishSidebarOpened()\n\t\t\t),\n\t\t\tisFullscreenActive:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'fullscreenMode' ),\n\t\t\tisInserterOpened: select( editPostStore ).isInserterOpened(),\n\t\t\tisListViewOpened: select( editPostStore ).isListViewOpened(),\n\t\t\tmode: select( editPostStore ).getEditorMode(),\n\t\t\tisRichEditingEnabled: editorSettings.richEditingEnabled,\n\t\t\thasActiveMetaboxes: select( editPostStore ).hasMetaBoxes(),\n\t\t\tpreviousShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/edit-post/previous-region' ),\n\t\t\tnextShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/edit-post/next-region' ),\n\t\t\tshowIconLabels:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'showIconLabels' ),\n\t\t\tisDistractionFree:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'distractionFree' ),\n\t\t\tshowBlockBreadcrumbs: select( editPostStore ).isFeatureActive(\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t\t// translators: Default label for the Document in the Block Breadcrumb.\n\t\t\tdocumentLabel: postTypeLabel || _x( 'Document', 'noun' ),\n\t\t\tstyles:\n\t\t\t\thasThemeStyles && themeStyles.length\n\t\t\t\t\t? editorSettings.styles\n\t\t\t\t\t: defaultEditorStyles,\n\t\t};\n\t}, [] );\n\n\tconst openSidebarPanel = () =>\n\t\topenGeneralSidebar(\n\t\t\thasBlockSelected ? 'edit-post/block' : 'edit-post/document'\n\t\t);\n\n\t// Inserter and Sidebars are mutually exclusive\n\tuseEffect( () => {\n\t\tif ( sidebarIsOpened && ! isHugeViewport ) {\n\t\t\tsetIsInserterOpened( false );\n\t\t}\n\t}, [ sidebarIsOpened, isHugeViewport ] );\n\tuseEffect( () => {\n\t\tif ( isInserterOpened && ! isHugeViewport ) {\n\t\t\tcloseGeneralSidebar();\n\t\t}\n\t}, [ isInserterOpened, isHugeViewport ] );\n\n\t// Local state for save panel.\n\t// Note 'truthy' callback implies an open panel.\n\tconst [ entitiesSavedStatesCallback, setEntitiesSavedStatesCallback ] =\n\t\tuseState( false );\n\tconst closeEntitiesSavedStates = useCallback(\n\t\t( arg ) => {\n\t\t\tif ( typeof entitiesSavedStatesCallback === 'function' ) {\n\t\t\t\tentitiesSavedStatesCallback( arg );\n\t\t\t}\n\t\t\tsetEntitiesSavedStatesCallback( false );\n\t\t},\n\t\t[ entitiesSavedStatesCallback ]\n\t);\n\n\tconst className = classnames( 'edit-post-layout', 'is-mode-' + mode, {\n\t\t'is-sidebar-opened': sidebarIsOpened,\n\t\t'has-fixed-toolbar': hasFixedToolbar,\n\t\t'has-metaboxes': hasActiveMetaboxes,\n\t\t'show-icon-labels': showIconLabels,\n\t\t'is-distraction-free': isDistractionFree && isLargeViewport,\n\t\t'is-entity-save-view-open': !! entitiesSavedStatesCallback,\n\t} );\n\n\tconst secondarySidebarLabel = isListViewOpened\n\t\t? __( 'Document Overview' )\n\t\t: __( 'Block Library' );\n\n\tconst secondarySidebar = () => {\n\t\tif ( mode === 'visual' && isInserterOpened ) {\n\t\t\treturn <InserterSidebar />;\n\t\t}\n\t\tif ( mode === 'visual' && isListViewOpened ) {\n\t\t\treturn <ListViewSidebar />;\n\t\t}\n\n\t\treturn null;\n\t};\n\n\tfunction onPluginAreaError( name ) {\n\t\tcreateErrorNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: plugin name */\n\t\t\t\t__(\n\t\t\t\t\t'The \"%s\" plugin has encountered an error and cannot be rendered.'\n\t\t\t\t),\n\t\t\t\tname\n\t\t\t)\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<FullscreenMode isActive={ isFullscreenActive } />\n\t\t\t<BrowserURL />\n\t\t\t<UnsavedChangesWarning />\n\t\t\t<AutosaveMonitor />\n\t\t\t<LocalAutosaveMonitor />\n\t\t\t<EditPostKeyboardShortcuts />\n\t\t\t<EditorKeyboardShortcutsRegister />\n\t\t\t<SettingsSidebar />\n\t\t\t<InterfaceSkeleton\n\t\t\t\tisDistractionFree={ isDistractionFree && isLargeViewport }\n\t\t\t\tclassName={ className }\n\t\t\t\tlabels={ {\n\t\t\t\t\t...interfaceLabels,\n\t\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t\t} }\n\t\t\t\theader={\n\t\t\t\t\t<Header\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\teditorNotices={ <EditorNotices /> }\n\t\t\t\tsecondarySidebar={ secondarySidebar() }\n\t\t\t\tsidebar={\n\t\t\t\t\t( ! isMobileViewport || sidebarIsOpened ) && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isMobileViewport && ! sidebarIsOpened && (\n\t\t\t\t\t\t\t\t<div className=\"edit-post-layout__toggle-sidebar-panel\">\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"edit-post-layout__toggle-sidebar-panel-button\"\n\t\t\t\t\t\t\t\t\t\tonClick={ openSidebarPanel }\n\t\t\t\t\t\t\t\t\t\taria-expanded={ false }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ hasBlockSelected\n\t\t\t\t\t\t\t\t\t\t\t? __( 'Open block settings' )\n\t\t\t\t\t\t\t\t\t\t\t: __( 'Open document settings' ) }\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ComplementaryArea.Slot scope=\"core/edit-post\" />\n\t\t\t\t\t\t</>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tnotices={ <EditorSnackbars /> }\n\t\t\t\tcontent={\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ ! isDistractionFree && <EditorNotices /> }\n\t\t\t\t\t\t{ ( mode === 'text' || ! isRichEditingEnabled ) && (\n\t\t\t\t\t\t\t<TextEditor />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isRichEditingEnabled && mode === 'visual' && (\n\t\t\t\t\t\t\t<VisualEditor styles={ styles } />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! isDistractionFree && ! isTemplateMode && (\n\t\t\t\t\t\t\t<div className=\"edit-post-layout__metaboxes\">\n\t\t\t\t\t\t\t\t<MetaBoxes location=\"normal\" />\n\t\t\t\t\t\t\t\t<MetaBoxes location=\"advanced\" />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isMobileViewport && sidebarIsOpened && (\n\t\t\t\t\t\t\t<ScrollLock />\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t}\n\t\t\t\tfooter={\n\t\t\t\t\t! isDistractionFree &&\n\t\t\t\t\t! isMobileViewport &&\n\t\t\t\t\tshowBlockBreadcrumbs &&\n\t\t\t\t\tisRichEditingEnabled &&\n\t\t\t\t\tmode === 'visual' && (\n\t\t\t\t\t\t<div className=\"edit-post-layout__footer\">\n\t\t\t\t\t\t\t<BlockBreadcrumb rootLabelText={ documentLabel } />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tactions={\n\t\t\t\t\t<ActionsPanel\n\t\t\t\t\t\tcloseEntitiesSavedStates={ closeEntitiesSavedStates }\n\t\t\t\t\t\tisEntitiesSavedStatesOpen={\n\t\t\t\t\t\t\tentitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\tshortcuts={ {\n\t\t\t\t\tprevious: previousShortcut,\n\t\t\t\t\tnext: nextShortcut,\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<EditPostPreferencesModal />\n\t\t\t<KeyboardShortcutHelpModal />\n\t\t\t<WelcomeGuide />\n\t\t\t<PostSyncStatusModal />\n\t\t\t<StartPageOptions />\n\t\t\t<Popover.Slot />\n\t\t\t<PluginArea onError={ onPluginAreaError } />\n\t\t</>\n\t);\n}\n\nexport default Layout;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/layout/index.js"],"names":["classnames","AutosaveMonitor","LocalAutosaveMonitor","UnsavedChangesWarning","EditorNotices","EditorKeyboardShortcutsRegister","EditorSnackbars","PostSyncStatusModal","store","editorStore","useSelect","useDispatch","BlockBreadcrumb","privateApis","blockEditorPrivateApis","Button","ScrollLock","Popover","useViewportMatch","PluginArea","__","_x","sprintf","ComplementaryArea","FullscreenMode","InterfaceSkeleton","interfaceStore","useState","useEffect","useCallback","useMemo","keyboardShortcutsStore","noticesStore","TextEditor","VisualEditor","EditPostKeyboardShortcuts","KeyboardShortcutHelpModal","EditPostPreferencesModal","BrowserURL","Header","InserterSidebar","ListViewSidebar","SettingsSidebar","MetaBoxes","WelcomeGuide","ActionsPanel","StartPageOptions","editPostStore","unlock","getLayoutStyles","interfaceLabels","header","body","sidebar","actions","footer","useEditorStyles","hasThemeStyleSupport","editorSettings","select","isFeatureActive","getEditorSettings","presetStyles","styles","filter","style","__unstableType","defaultEditorStyles","hasThemeStyles","length","disableLayoutStyles","push","css","selector","hasBlockGapSupport","hasFallbackGapSupport","fallbackGapValue","Layout","isMobileViewport","isHugeViewport","isLargeViewport","openGeneralSidebar","closeGeneralSidebar","setIsInserterOpened","createErrorNotice","mode","isFullscreenActive","isRichEditingEnabled","sidebarIsOpened","hasActiveMetaboxes","hasFixedToolbar","previousShortcut","nextShortcut","hasBlockSelected","isInserterOpened","isListViewOpened","showIconLabels","isDistractionFree","showBlockBreadcrumbs","isTemplateMode","documentLabel","getPostTypeLabel","postTypeLabel","isEditingTemplate","getActiveComplementaryArea","name","isPublishSidebarOpened","getEditorMode","richEditingEnabled","hasMetaBoxes","getAllShortcutKeyCombinations","openSidebarPanel","entitiesSavedStatesCallback","setEntitiesSavedStatesCallback","closeEntitiesSavedStates","arg","className","secondarySidebarLabel","secondarySidebar","onPluginAreaError","previous","next"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAutosaveMonitor,\n\tLocalAutosaveMonitor,\n\tUnsavedChangesWarning,\n\tEditorNotices,\n\tEditorKeyboardShortcutsRegister,\n\tEditorSnackbars,\n\tPostSyncStatusModal,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockBreadcrumb,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { Button, ScrollLock, Popover } from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { PluginArea } from '@wordpress/plugins';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tComplementaryArea,\n\tFullscreenMode,\n\tInterfaceSkeleton,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport { useState, useEffect, useCallback, useMemo } from '@wordpress/element';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport TextEditor from '../text-editor';\nimport VisualEditor from '../visual-editor';\nimport EditPostKeyboardShortcuts from '../keyboard-shortcuts';\nimport KeyboardShortcutHelpModal from '../keyboard-shortcut-help-modal';\nimport EditPostPreferencesModal from '../preferences-modal';\nimport BrowserURL from '../browser-url';\nimport Header from '../header';\nimport InserterSidebar from '../secondary-sidebar/inserter-sidebar';\nimport ListViewSidebar from '../secondary-sidebar/list-view-sidebar';\nimport SettingsSidebar from '../sidebar/settings-sidebar';\nimport MetaBoxes from '../meta-boxes';\nimport WelcomeGuide from '../welcome-guide';\nimport ActionsPanel from './actions-panel';\nimport StartPageOptions from '../start-page-options';\nimport { store as editPostStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst { getLayoutStyles } = unlock( blockEditorPrivateApis );\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor top bar landmark region. */\n\theader: __( 'Editor top bar' ),\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\nfunction useEditorStyles() {\n\tconst { hasThemeStyleSupport, editorSettings } = useSelect(\n\t\t( select ) => ( {\n\t\t\thasThemeStyleSupport:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'themeStyles' ),\n\t\t\teditorSettings: select( editorStore ).getEditorSettings(),\n\t\t} ),\n\t\t[]\n\t);\n\n\t// Compute the default styles.\n\treturn useMemo( () => {\n\t\tconst presetStyles =\n\t\t\teditorSettings.styles?.filter(\n\t\t\t\t( style ) =>\n\t\t\t\t\tstyle.__unstableType && style.__unstableType !== 'theme'\n\t\t\t) ?? [];\n\n\t\tconst defaultEditorStyles = [\n\t\t\t...editorSettings.defaultEditorStyles,\n\t\t\t...presetStyles,\n\t\t];\n\n\t\t// Has theme styles if the theme supports them and if some styles were not preset styles (in which case they're theme styles).\n\t\tconst hasThemeStyles =\n\t\t\thasThemeStyleSupport &&\n\t\t\tpresetStyles.length !== ( editorSettings.styles?.length ?? 0 );\n\n\t\t// If theme styles are not present or displayed, ensure that\n\t\t// base layout styles are still present in the editor.\n\t\tif ( ! editorSettings.disableLayoutStyles && ! hasThemeStyles ) {\n\t\t\tdefaultEditorStyles.push( {\n\t\t\t\tcss: getLayoutStyles( {\n\t\t\t\t\tstyle: {},\n\t\t\t\t\tselector: 'body',\n\t\t\t\t\thasBlockGapSupport: false,\n\t\t\t\t\thasFallbackGapSupport: true,\n\t\t\t\t\tfallbackGapValue: '0.5em',\n\t\t\t\t} ),\n\t\t\t} );\n\t\t}\n\n\t\treturn hasThemeStyles ? editorSettings.styles : defaultEditorStyles;\n\t}, [\n\t\teditorSettings.defaultEditorStyles,\n\t\teditorSettings.disableLayoutStyles,\n\t\teditorSettings.styles,\n\t\thasThemeStyleSupport,\n\t] );\n}\n\nfunction Layout() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isHugeViewport = useViewportMatch( 'huge', '>=' );\n\tconst isLargeViewport = useViewportMatch( 'large' );\n\tconst { openGeneralSidebar, closeGeneralSidebar, setIsInserterOpened } =\n\t\tuseDispatch( editPostStore );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst {\n\t\tmode,\n\t\tisFullscreenActive,\n\t\tisRichEditingEnabled,\n\t\tsidebarIsOpened,\n\t\thasActiveMetaboxes,\n\t\thasFixedToolbar,\n\t\tpreviousShortcut,\n\t\tnextShortcut,\n\t\thasBlockSelected,\n\t\tisInserterOpened,\n\t\tisListViewOpened,\n\t\tshowIconLabels,\n\t\tisDistractionFree,\n\t\tshowBlockBreadcrumbs,\n\t\tisTemplateMode,\n\t\tdocumentLabel,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEditorSettings, getPostTypeLabel } = select( editorStore );\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst postTypeLabel = getPostTypeLabel();\n\n\t\treturn {\n\t\t\tisTemplateMode: select( editPostStore ).isEditingTemplate(),\n\t\t\thasFixedToolbar:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'fixedToolbar' ),\n\t\t\tsidebarIsOpened: !! (\n\t\t\t\tselect( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\t\teditPostStore.name\n\t\t\t\t) || select( editPostStore ).isPublishSidebarOpened()\n\t\t\t),\n\t\t\tisFullscreenActive:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'fullscreenMode' ),\n\t\t\tisInserterOpened: select( editPostStore ).isInserterOpened(),\n\t\t\tisListViewOpened: select( editPostStore ).isListViewOpened(),\n\t\t\tmode: select( editPostStore ).getEditorMode(),\n\t\t\tisRichEditingEnabled: editorSettings.richEditingEnabled,\n\t\t\thasActiveMetaboxes: select( editPostStore ).hasMetaBoxes(),\n\t\t\tpreviousShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/edit-post/previous-region' ),\n\t\t\tnextShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/edit-post/next-region' ),\n\t\t\tshowIconLabels:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'showIconLabels' ),\n\t\t\tisDistractionFree:\n\t\t\t\tselect( editPostStore ).isFeatureActive( 'distractionFree' ),\n\t\t\tshowBlockBreadcrumbs: select( editPostStore ).isFeatureActive(\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t\t// translators: Default label for the Document in the Block Breadcrumb.\n\t\t\tdocumentLabel: postTypeLabel || _x( 'Document', 'noun' ),\n\t\t};\n\t}, [] );\n\n\tconst styles = useEditorStyles();\n\n\tconst openSidebarPanel = () =>\n\t\topenGeneralSidebar(\n\t\t\thasBlockSelected ? 'edit-post/block' : 'edit-post/document'\n\t\t);\n\n\t// Inserter and Sidebars are mutually exclusive\n\tuseEffect( () => {\n\t\tif ( sidebarIsOpened && ! isHugeViewport ) {\n\t\t\tsetIsInserterOpened( false );\n\t\t}\n\t}, [ sidebarIsOpened, isHugeViewport ] );\n\tuseEffect( () => {\n\t\tif ( isInserterOpened && ! isHugeViewport ) {\n\t\t\tcloseGeneralSidebar();\n\t\t}\n\t}, [ isInserterOpened, isHugeViewport ] );\n\n\t// Local state for save panel.\n\t// Note 'truthy' callback implies an open panel.\n\tconst [ entitiesSavedStatesCallback, setEntitiesSavedStatesCallback ] =\n\t\tuseState( false );\n\tconst closeEntitiesSavedStates = useCallback(\n\t\t( arg ) => {\n\t\t\tif ( typeof entitiesSavedStatesCallback === 'function' ) {\n\t\t\t\tentitiesSavedStatesCallback( arg );\n\t\t\t}\n\t\t\tsetEntitiesSavedStatesCallback( false );\n\t\t},\n\t\t[ entitiesSavedStatesCallback ]\n\t);\n\n\tconst className = classnames( 'edit-post-layout', 'is-mode-' + mode, {\n\t\t'is-sidebar-opened': sidebarIsOpened,\n\t\t'has-fixed-toolbar': hasFixedToolbar,\n\t\t'has-metaboxes': hasActiveMetaboxes,\n\t\t'show-icon-labels': showIconLabels,\n\t\t'is-distraction-free': isDistractionFree && isLargeViewport,\n\t\t'is-entity-save-view-open': !! entitiesSavedStatesCallback,\n\t} );\n\n\tconst secondarySidebarLabel = isListViewOpened\n\t\t? __( 'Document Overview' )\n\t\t: __( 'Block Library' );\n\n\tconst secondarySidebar = () => {\n\t\tif ( mode === 'visual' && isInserterOpened ) {\n\t\t\treturn <InserterSidebar />;\n\t\t}\n\t\tif ( mode === 'visual' && isListViewOpened ) {\n\t\t\treturn <ListViewSidebar />;\n\t\t}\n\n\t\treturn null;\n\t};\n\n\tfunction onPluginAreaError( name ) {\n\t\tcreateErrorNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: plugin name */\n\t\t\t\t__(\n\t\t\t\t\t'The \"%s\" plugin has encountered an error and cannot be rendered.'\n\t\t\t\t),\n\t\t\t\tname\n\t\t\t)\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<FullscreenMode isActive={ isFullscreenActive } />\n\t\t\t<BrowserURL />\n\t\t\t<UnsavedChangesWarning />\n\t\t\t<AutosaveMonitor />\n\t\t\t<LocalAutosaveMonitor />\n\t\t\t<EditPostKeyboardShortcuts />\n\t\t\t<EditorKeyboardShortcutsRegister />\n\t\t\t<SettingsSidebar />\n\t\t\t<InterfaceSkeleton\n\t\t\t\tisDistractionFree={ isDistractionFree && isLargeViewport }\n\t\t\t\tclassName={ className }\n\t\t\t\tlabels={ {\n\t\t\t\t\t...interfaceLabels,\n\t\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t\t} }\n\t\t\t\theader={\n\t\t\t\t\t<Header\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\teditorNotices={ <EditorNotices /> }\n\t\t\t\tsecondarySidebar={ secondarySidebar() }\n\t\t\t\tsidebar={\n\t\t\t\t\t( ! isMobileViewport || sidebarIsOpened ) && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isMobileViewport && ! sidebarIsOpened && (\n\t\t\t\t\t\t\t\t<div className=\"edit-post-layout__toggle-sidebar-panel\">\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"edit-post-layout__toggle-sidebar-panel-button\"\n\t\t\t\t\t\t\t\t\t\tonClick={ openSidebarPanel }\n\t\t\t\t\t\t\t\t\t\taria-expanded={ false }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ hasBlockSelected\n\t\t\t\t\t\t\t\t\t\t\t? __( 'Open block settings' )\n\t\t\t\t\t\t\t\t\t\t\t: __( 'Open document settings' ) }\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ComplementaryArea.Slot scope=\"core/edit-post\" />\n\t\t\t\t\t\t</>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tnotices={ <EditorSnackbars /> }\n\t\t\t\tcontent={\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ ! isDistractionFree && <EditorNotices /> }\n\t\t\t\t\t\t{ ( mode === 'text' || ! isRichEditingEnabled ) && (\n\t\t\t\t\t\t\t<TextEditor />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isRichEditingEnabled && mode === 'visual' && (\n\t\t\t\t\t\t\t<VisualEditor styles={ styles } />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! isDistractionFree && ! isTemplateMode && (\n\t\t\t\t\t\t\t<div className=\"edit-post-layout__metaboxes\">\n\t\t\t\t\t\t\t\t<MetaBoxes location=\"normal\" />\n\t\t\t\t\t\t\t\t<MetaBoxes location=\"advanced\" />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isMobileViewport && sidebarIsOpened && (\n\t\t\t\t\t\t\t<ScrollLock />\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t}\n\t\t\t\tfooter={\n\t\t\t\t\t! isDistractionFree &&\n\t\t\t\t\t! isMobileViewport &&\n\t\t\t\t\tshowBlockBreadcrumbs &&\n\t\t\t\t\tisRichEditingEnabled &&\n\t\t\t\t\tmode === 'visual' && (\n\t\t\t\t\t\t<div className=\"edit-post-layout__footer\">\n\t\t\t\t\t\t\t<BlockBreadcrumb rootLabelText={ documentLabel } />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tactions={\n\t\t\t\t\t<ActionsPanel\n\t\t\t\t\t\tcloseEntitiesSavedStates={ closeEntitiesSavedStates }\n\t\t\t\t\t\tisEntitiesSavedStatesOpen={\n\t\t\t\t\t\t\tentitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\tshortcuts={ {\n\t\t\t\t\tprevious: previousShortcut,\n\t\t\t\t\tnext: nextShortcut,\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<EditPostPreferencesModal />\n\t\t\t<KeyboardShortcutHelpModal />\n\t\t\t<WelcomeGuide />\n\t\t\t<PostSyncStatusModal />\n\t\t\t<StartPageOptions />\n\t\t\t<Popover.Slot />\n\t\t\t<PluginArea onError={ onPluginAreaError } />\n\t\t</>\n\t);\n}\n\nexport default Layout;\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/edit-post",
|
|
3
|
-
"version": "7.12.
|
|
3
|
+
"version": "7.12.16",
|
|
4
4
|
"description": "Edit Post module for WordPress.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -29,18 +29,18 @@
|
|
|
29
29
|
"@babel/runtime": "^7.16.0",
|
|
30
30
|
"@wordpress/a11y": "^3.35.1",
|
|
31
31
|
"@wordpress/api-fetch": "^6.32.1",
|
|
32
|
-
"@wordpress/block-editor": "^12.3.
|
|
33
|
-
"@wordpress/block-library": "^8.12.
|
|
32
|
+
"@wordpress/block-editor": "^12.3.13",
|
|
33
|
+
"@wordpress/block-library": "^8.12.16",
|
|
34
34
|
"@wordpress/blocks": "^12.12.7",
|
|
35
35
|
"@wordpress/commands": "^0.6.11",
|
|
36
36
|
"@wordpress/components": "^25.1.10",
|
|
37
37
|
"@wordpress/compose": "^6.12.2",
|
|
38
|
-
"@wordpress/core-commands": "^0.4.
|
|
39
|
-
"@wordpress/core-data": "^6.12.
|
|
38
|
+
"@wordpress/core-commands": "^0.4.14",
|
|
39
|
+
"@wordpress/core-data": "^6.12.14",
|
|
40
40
|
"@wordpress/data": "^9.5.5",
|
|
41
41
|
"@wordpress/deprecated": "^3.35.1",
|
|
42
42
|
"@wordpress/dom": "^3.35.1",
|
|
43
|
-
"@wordpress/editor": "^13.12.
|
|
43
|
+
"@wordpress/editor": "^13.12.14",
|
|
44
44
|
"@wordpress/element": "^5.12.1",
|
|
45
45
|
"@wordpress/hooks": "^3.35.1",
|
|
46
46
|
"@wordpress/i18n": "^4.35.1",
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"@wordpress/url": "^3.36.1",
|
|
57
57
|
"@wordpress/viewport": "^5.12.5",
|
|
58
58
|
"@wordpress/warning": "^2.35.1",
|
|
59
|
-
"@wordpress/widgets": "^3.12.
|
|
59
|
+
"@wordpress/widgets": "^3.12.14",
|
|
60
60
|
"classnames": "^2.3.1",
|
|
61
61
|
"memize": "^2.1.0",
|
|
62
62
|
"rememo": "^4.0.2"
|
|
@@ -68,5 +68,5 @@
|
|
|
68
68
|
"publishConfig": {
|
|
69
69
|
"access": "public"
|
|
70
70
|
},
|
|
71
|
-
"gitHead": "
|
|
71
|
+
"gitHead": "422f6fd382771134156919d2032765e57432be7e"
|
|
72
72
|
}
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
InterfaceSkeleton,
|
|
32
32
|
store as interfaceStore,
|
|
33
33
|
} from '@wordpress/interface';
|
|
34
|
-
import { useState, useEffect, useCallback } from '@wordpress/element';
|
|
34
|
+
import { useState, useEffect, useCallback, useMemo } from '@wordpress/element';
|
|
35
35
|
import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
|
|
36
36
|
import { store as noticesStore } from '@wordpress/notices';
|
|
37
37
|
|
|
@@ -70,6 +70,57 @@ const interfaceLabels = {
|
|
|
70
70
|
footer: __( 'Editor footer' ),
|
|
71
71
|
};
|
|
72
72
|
|
|
73
|
+
function useEditorStyles() {
|
|
74
|
+
const { hasThemeStyleSupport, editorSettings } = useSelect(
|
|
75
|
+
( select ) => ( {
|
|
76
|
+
hasThemeStyleSupport:
|
|
77
|
+
select( editPostStore ).isFeatureActive( 'themeStyles' ),
|
|
78
|
+
editorSettings: select( editorStore ).getEditorSettings(),
|
|
79
|
+
} ),
|
|
80
|
+
[]
|
|
81
|
+
);
|
|
82
|
+
|
|
83
|
+
// Compute the default styles.
|
|
84
|
+
return useMemo( () => {
|
|
85
|
+
const presetStyles =
|
|
86
|
+
editorSettings.styles?.filter(
|
|
87
|
+
( style ) =>
|
|
88
|
+
style.__unstableType && style.__unstableType !== 'theme'
|
|
89
|
+
) ?? [];
|
|
90
|
+
|
|
91
|
+
const defaultEditorStyles = [
|
|
92
|
+
...editorSettings.defaultEditorStyles,
|
|
93
|
+
...presetStyles,
|
|
94
|
+
];
|
|
95
|
+
|
|
96
|
+
// Has theme styles if the theme supports them and if some styles were not preset styles (in which case they're theme styles).
|
|
97
|
+
const hasThemeStyles =
|
|
98
|
+
hasThemeStyleSupport &&
|
|
99
|
+
presetStyles.length !== ( editorSettings.styles?.length ?? 0 );
|
|
100
|
+
|
|
101
|
+
// If theme styles are not present or displayed, ensure that
|
|
102
|
+
// base layout styles are still present in the editor.
|
|
103
|
+
if ( ! editorSettings.disableLayoutStyles && ! hasThemeStyles ) {
|
|
104
|
+
defaultEditorStyles.push( {
|
|
105
|
+
css: getLayoutStyles( {
|
|
106
|
+
style: {},
|
|
107
|
+
selector: 'body',
|
|
108
|
+
hasBlockGapSupport: false,
|
|
109
|
+
hasFallbackGapSupport: true,
|
|
110
|
+
fallbackGapValue: '0.5em',
|
|
111
|
+
} ),
|
|
112
|
+
} );
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
return hasThemeStyles ? editorSettings.styles : defaultEditorStyles;
|
|
116
|
+
}, [
|
|
117
|
+
editorSettings.defaultEditorStyles,
|
|
118
|
+
editorSettings.disableLayoutStyles,
|
|
119
|
+
editorSettings.styles,
|
|
120
|
+
hasThemeStyleSupport,
|
|
121
|
+
] );
|
|
122
|
+
}
|
|
123
|
+
|
|
73
124
|
function Layout() {
|
|
74
125
|
const isMobileViewport = useViewportMatch( 'medium', '<' );
|
|
75
126
|
const isHugeViewport = useViewportMatch( 'huge', '>=' );
|
|
@@ -94,45 +145,10 @@ function Layout() {
|
|
|
94
145
|
showBlockBreadcrumbs,
|
|
95
146
|
isTemplateMode,
|
|
96
147
|
documentLabel,
|
|
97
|
-
styles,
|
|
98
148
|
} = useSelect( ( select ) => {
|
|
99
149
|
const { getEditorSettings, getPostTypeLabel } = select( editorStore );
|
|
100
|
-
const { isFeatureActive } = select( editPostStore );
|
|
101
150
|
const editorSettings = getEditorSettings();
|
|
102
151
|
const postTypeLabel = getPostTypeLabel();
|
|
103
|
-
const hasThemeStyles = isFeatureActive( 'themeStyles' );
|
|
104
|
-
|
|
105
|
-
const themeStyles = [];
|
|
106
|
-
const presetStyles = [];
|
|
107
|
-
editorSettings.styles?.forEach( ( style ) => {
|
|
108
|
-
if ( ! style.__unstableType || style.__unstableType === 'theme' ) {
|
|
109
|
-
themeStyles.push( style );
|
|
110
|
-
} else {
|
|
111
|
-
presetStyles.push( style );
|
|
112
|
-
}
|
|
113
|
-
} );
|
|
114
|
-
|
|
115
|
-
const defaultEditorStyles = [
|
|
116
|
-
...editorSettings.defaultEditorStyles,
|
|
117
|
-
...presetStyles,
|
|
118
|
-
];
|
|
119
|
-
|
|
120
|
-
// If theme styles are not present or displayed, ensure that
|
|
121
|
-
// base layout styles are still present in the editor.
|
|
122
|
-
if (
|
|
123
|
-
! editorSettings.disableLayoutStyles &&
|
|
124
|
-
! ( hasThemeStyles && themeStyles.length )
|
|
125
|
-
) {
|
|
126
|
-
defaultEditorStyles.push( {
|
|
127
|
-
css: getLayoutStyles( {
|
|
128
|
-
style: {},
|
|
129
|
-
selector: 'body',
|
|
130
|
-
hasBlockGapSupport: false,
|
|
131
|
-
hasFallbackGapSupport: true,
|
|
132
|
-
fallbackGapValue: '0.5em',
|
|
133
|
-
} ),
|
|
134
|
-
} );
|
|
135
|
-
}
|
|
136
152
|
|
|
137
153
|
return {
|
|
138
154
|
isTemplateMode: select( editPostStore ).isEditingTemplate(),
|
|
@@ -165,13 +181,11 @@ function Layout() {
|
|
|
165
181
|
),
|
|
166
182
|
// translators: Default label for the Document in the Block Breadcrumb.
|
|
167
183
|
documentLabel: postTypeLabel || _x( 'Document', 'noun' ),
|
|
168
|
-
styles:
|
|
169
|
-
hasThemeStyles && themeStyles.length
|
|
170
|
-
? editorSettings.styles
|
|
171
|
-
: defaultEditorStyles,
|
|
172
184
|
};
|
|
173
185
|
}, [] );
|
|
174
186
|
|
|
187
|
+
const styles = useEditorStyles();
|
|
188
|
+
|
|
175
189
|
const openSidebarPanel = () =>
|
|
176
190
|
openGeneralSidebar(
|
|
177
191
|
hasBlockSelected ? 'edit-post/block' : 'edit-post/document'
|