@wordpress/edit-site 5.12.15 → 5.12.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/components/header-edit-mode/document-actions/index.js +11 -25
- package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build/components/page/index.js +3 -3
- package/build/components/page/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-template/home-template-details.js +2 -2
- package/build/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
- package/build/hooks/push-changes-to-global-styles/index.js +147 -27
- package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build-module/components/header-edit-mode/document-actions/index.js +11 -26
- package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build-module/components/page/index.js +3 -3
- package/build-module/components/page/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-template/home-template-details.js +2 -2
- package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
- package/build-module/hooks/push-changes-to-global-styles/index.js +148 -28
- package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build-style/style-rtl.css +25 -11
- package/build-style/style.css +25 -11
- package/package.json +14 -14
- package/src/components/header-edit-mode/document-actions/index.js +13 -26
- package/src/components/header-edit-mode/document-actions/style.scss +14 -6
- package/src/components/page/index.js +8 -8
- package/src/components/page/style.scss +8 -5
- package/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +11 -10
- package/src/components/sidebar-navigation-screen-template/home-template-details.js +4 -2
- package/src/components/table/style.scss +1 -0
- package/src/hooks/push-changes-to-global-styles/index.js +152 -28
|
@@ -8,7 +8,7 @@ import classnames from 'classnames';
|
|
|
8
8
|
* WordPress dependencies
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import {
|
|
11
|
+
import { __, isRTL } from '@wordpress/i18n';
|
|
12
12
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
13
13
|
import { Button, VisuallyHidden, __experimentalText as Text, __experimentalHStack as HStack } from '@wordpress/components';
|
|
14
14
|
import { BlockIcon } from '@wordpress/block-editor';
|
|
@@ -23,8 +23,14 @@ import { store as coreStore } from '@wordpress/core-data';
|
|
|
23
23
|
|
|
24
24
|
import useEditedEntityRecord from '../../use-edited-entity-record';
|
|
25
25
|
import { store as editSiteStore } from '../../../store';
|
|
26
|
+
const typeLabels = {
|
|
27
|
+
wp_block: __('Editing pattern:'),
|
|
28
|
+
wp_navigation: __('Editing navigation menu:'),
|
|
29
|
+
wp_template: __('Editing template:'),
|
|
30
|
+
wp_template_part: __('Editing template part:')
|
|
31
|
+
};
|
|
26
32
|
export default function DocumentActions() {
|
|
27
|
-
const isPage = useSelect(select => select(editSiteStore).isPage());
|
|
33
|
+
const isPage = useSelect(select => select(editSiteStore).isPage(), []);
|
|
28
34
|
return isPage ? createElement(PageDocumentActions, null) : createElement(TemplateDocumentActions, null);
|
|
29
35
|
}
|
|
30
36
|
|
|
@@ -91,6 +97,8 @@ function TemplateDocumentActions({
|
|
|
91
97
|
className,
|
|
92
98
|
onBack
|
|
93
99
|
}) {
|
|
100
|
+
var _typeLabels$record$ty;
|
|
101
|
+
|
|
94
102
|
const {
|
|
95
103
|
isLoaded,
|
|
96
104
|
record,
|
|
@@ -108,7 +116,6 @@ function TemplateDocumentActions({
|
|
|
108
116
|
}, __('Document not found'));
|
|
109
117
|
}
|
|
110
118
|
|
|
111
|
-
const entityLabel = getEntityLabel(record.type);
|
|
112
119
|
let typeIcon = icon;
|
|
113
120
|
|
|
114
121
|
if (record.type === 'wp_navigation') {
|
|
@@ -123,9 +130,7 @@ function TemplateDocumentActions({
|
|
|
123
130
|
onBack: onBack
|
|
124
131
|
}, createElement(VisuallyHidden, {
|
|
125
132
|
as: "span"
|
|
126
|
-
},
|
|
127
|
-
/* translators: %s: the entity being edited, like "template"*/
|
|
128
|
-
__('Editing %s: '), entityLabel)), getTitle());
|
|
133
|
+
}, (_typeLabels$record$ty = typeLabels[record.type]) !== null && _typeLabels$record$ty !== void 0 ? _typeLabels$record$ty : typeLabels.wp_template), getTitle());
|
|
129
134
|
}
|
|
130
135
|
|
|
131
136
|
function BaseDocumentActions({
|
|
@@ -162,24 +167,4 @@ function BaseDocumentActions({
|
|
|
162
167
|
className: "edit-site-document-actions__shortcut"
|
|
163
168
|
}, displayShortcut.primary('k'))));
|
|
164
169
|
}
|
|
165
|
-
|
|
166
|
-
function getEntityLabel(entityType) {
|
|
167
|
-
let label = '';
|
|
168
|
-
|
|
169
|
-
switch (entityType) {
|
|
170
|
-
case 'wp_navigation':
|
|
171
|
-
label = 'navigation menu';
|
|
172
|
-
break;
|
|
173
|
-
|
|
174
|
-
case 'wp_template_part':
|
|
175
|
-
label = 'template part';
|
|
176
|
-
break;
|
|
177
|
-
|
|
178
|
-
default:
|
|
179
|
-
label = 'template';
|
|
180
|
-
break;
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
return label;
|
|
184
|
-
}
|
|
185
170
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/header-edit-mode/document-actions/index.js"],"names":["classnames","sprintf","__","isRTL","useSelect","useDispatch","Button","VisuallyHidden","__experimentalText","Text","__experimentalHStack","HStack","BlockIcon","store","commandsStore","chevronLeftSmall","chevronRightSmall","page","pageIcon","navigation","navigationIcon","symbol","displayShortcut","useState","useEffect","useRef","coreStore","useEditedEntityRecord","editSiteStore","DocumentActions","isPage","select","PageDocumentActions","hasPageContentFocus","hasResolved","isFound","title","_hasPageContentFocus","getEditedPostContext","getEditedEntityRecord","hasFinishedResolution","context","queryArgs","postType","postId","setHasPageContentFocus","hasEditedTemplate","setHasEditedTemplate","prevHasPageContentFocus","current","TemplateDocumentActions","className","onBack","isLoaded","record","getTitle","icon","entityLabel","getEntityLabel","type","typeIcon","BaseDocumentActions","children","open","openCommandCenter","event","stopPropagation","primary","entityType","label"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { sprintf, __, isRTL } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\tVisuallyHidden,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { BlockIcon } from '@wordpress/block-editor';\nimport { store as commandsStore } from '@wordpress/commands';\nimport {\n\tchevronLeftSmall,\n\tchevronRightSmall,\n\tpage as pageIcon,\n\tnavigation as navigationIcon,\n\tsymbol,\n} from '@wordpress/icons';\nimport { displayShortcut } from '@wordpress/keycodes';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport useEditedEntityRecord from '../../use-edited-entity-record';\nimport { store as editSiteStore } from '../../../store';\n\nexport default function DocumentActions() {\n\tconst isPage = useSelect( ( select ) => select( editSiteStore ).isPage() );\n\treturn isPage ? <PageDocumentActions /> : <TemplateDocumentActions />;\n}\n\nfunction PageDocumentActions() {\n\tconst { hasPageContentFocus, hasResolved, isFound, title } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\thasPageContentFocus: _hasPageContentFocus,\n\t\t\t\tgetEditedPostContext,\n\t\t\t} = select( editSiteStore );\n\t\t\tconst { getEditedEntityRecord, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst context = getEditedPostContext();\n\t\t\tconst queryArgs = [ 'postType', context.postType, context.postId ];\n\t\t\tconst page = getEditedEntityRecord( ...queryArgs );\n\t\t\treturn {\n\t\t\t\thasPageContentFocus: _hasPageContentFocus(),\n\t\t\t\thasResolved: hasFinishedResolution(\n\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\tqueryArgs\n\t\t\t\t),\n\t\t\t\tisFound: !! page,\n\t\t\t\ttitle: page?.title,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst { setHasPageContentFocus } = useDispatch( editSiteStore );\n\n\tconst [ hasEditedTemplate, setHasEditedTemplate ] = useState( false );\n\tconst prevHasPageContentFocus = useRef( false );\n\tuseEffect( () => {\n\t\tif ( prevHasPageContentFocus.current && ! hasPageContentFocus ) {\n\t\t\tsetHasEditedTemplate( true );\n\t\t}\n\t\tprevHasPageContentFocus.current = hasPageContentFocus;\n\t}, [ hasPageContentFocus ] );\n\n\tif ( ! hasResolved ) {\n\t\treturn null;\n\t}\n\n\tif ( ! isFound ) {\n\t\treturn (\n\t\t\t<div className=\"edit-site-document-actions\">\n\t\t\t\t{ __( 'Document not found' ) }\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn hasPageContentFocus ? (\n\t\t<BaseDocumentActions\n\t\t\tclassName={ classnames( 'is-page', {\n\t\t\t\t'is-animated': hasEditedTemplate,\n\t\t\t} ) }\n\t\t\ticon={ pageIcon }\n\t\t>\n\t\t\t{ title }\n\t\t</BaseDocumentActions>\n\t) : (\n\t\t<TemplateDocumentActions\n\t\t\tclassName=\"is-animated\"\n\t\t\tonBack={ () => setHasPageContentFocus( true ) }\n\t\t/>\n\t);\n}\n\nfunction TemplateDocumentActions( { className, onBack } ) {\n\tconst { isLoaded, record, getTitle, icon } = useEditedEntityRecord();\n\n\tif ( ! isLoaded ) {\n\t\treturn null;\n\t}\n\n\tif ( ! record ) {\n\t\treturn (\n\t\t\t<div className=\"edit-site-document-actions\">\n\t\t\t\t{ __( 'Document not found' ) }\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst entityLabel = getEntityLabel( record.type );\n\n\tlet typeIcon = icon;\n\tif ( record.type === 'wp_navigation' ) {\n\t\ttypeIcon = navigationIcon;\n\t} else if ( record.type === 'wp_block' ) {\n\t\ttypeIcon = symbol;\n\t}\n\n\treturn (\n\t\t<BaseDocumentActions\n\t\t\tclassName={ className }\n\t\t\ticon={ typeIcon }\n\t\t\tonBack={ onBack }\n\t\t>\n\t\t\t<VisuallyHidden as=\"span\">\n\t\t\t\t{ sprintf(\n\t\t\t\t\t/* translators: %s: the entity being edited, like \"template\"*/\n\t\t\t\t\t__( 'Editing %s: ' ),\n\t\t\t\t\tentityLabel\n\t\t\t\t) }\n\t\t\t</VisuallyHidden>\n\t\t\t{ getTitle() }\n\t\t</BaseDocumentActions>\n\t);\n}\n\nfunction BaseDocumentActions( { className, icon, children, onBack } ) {\n\tconst { open: openCommandCenter } = useDispatch( commandsStore );\n\treturn (\n\t\t<div\n\t\t\tclassName={ classnames( 'edit-site-document-actions', className ) }\n\t\t>\n\t\t\t{ onBack && (\n\t\t\t\t<Button\n\t\t\t\t\tclassName=\"edit-site-document-actions__back\"\n\t\t\t\t\ticon={ isRTL() ? chevronRightSmall : chevronLeftSmall }\n\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\tonBack();\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t</Button>\n\t\t\t) }\n\t\t\t<Button\n\t\t\t\tclassName=\"edit-site-document-actions__command\"\n\t\t\t\tonClick={ () => openCommandCenter() }\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\tclassName=\"edit-site-document-actions__title\"\n\t\t\t\t\tspacing={ 1 }\n\t\t\t\t\tjustify=\"center\"\n\t\t\t\t>\n\t\t\t\t\t<BlockIcon icon={ icon } />\n\t\t\t\t\t<Text size=\"body\" as=\"h1\">\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</Text>\n\t\t\t\t</HStack>\n\t\t\t\t<span className=\"edit-site-document-actions__shortcut\">\n\t\t\t\t\t{ displayShortcut.primary( 'k' ) }\n\t\t\t\t</span>\n\t\t\t</Button>\n\t\t</div>\n\t);\n}\n\nfunction getEntityLabel( entityType ) {\n\tlet label = '';\n\tswitch ( entityType ) {\n\t\tcase 'wp_navigation':\n\t\t\tlabel = 'navigation menu';\n\t\t\tbreak;\n\t\tcase 'wp_template_part':\n\t\t\tlabel = 'template part';\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tlabel = 'template';\n\t\t\tbreak;\n\t}\n\n\treturn label;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/header-edit-mode/document-actions/index.js"],"names":["classnames","__","isRTL","useSelect","useDispatch","Button","VisuallyHidden","__experimentalText","Text","__experimentalHStack","HStack","BlockIcon","store","commandsStore","chevronLeftSmall","chevronRightSmall","page","pageIcon","navigation","navigationIcon","symbol","displayShortcut","useState","useEffect","useRef","coreStore","useEditedEntityRecord","editSiteStore","typeLabels","wp_block","wp_navigation","wp_template","wp_template_part","DocumentActions","isPage","select","PageDocumentActions","hasPageContentFocus","hasResolved","isFound","title","_hasPageContentFocus","getEditedPostContext","getEditedEntityRecord","hasFinishedResolution","context","queryArgs","postType","postId","setHasPageContentFocus","hasEditedTemplate","setHasEditedTemplate","prevHasPageContentFocus","current","TemplateDocumentActions","className","onBack","isLoaded","record","getTitle","icon","typeIcon","type","BaseDocumentActions","children","open","openCommandCenter","event","stopPropagation","primary"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\tVisuallyHidden,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { BlockIcon } from '@wordpress/block-editor';\nimport { store as commandsStore } from '@wordpress/commands';\nimport {\n\tchevronLeftSmall,\n\tchevronRightSmall,\n\tpage as pageIcon,\n\tnavigation as navigationIcon,\n\tsymbol,\n} from '@wordpress/icons';\nimport { displayShortcut } from '@wordpress/keycodes';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport useEditedEntityRecord from '../../use-edited-entity-record';\nimport { store as editSiteStore } from '../../../store';\n\nconst typeLabels = {\n\twp_block: __( 'Editing pattern:' ),\n\twp_navigation: __( 'Editing navigation menu:' ),\n\twp_template: __( 'Editing template:' ),\n\twp_template_part: __( 'Editing template part:' ),\n};\n\nexport default function DocumentActions() {\n\tconst isPage = useSelect(\n\t\t( select ) => select( editSiteStore ).isPage(),\n\t\t[]\n\t);\n\treturn isPage ? <PageDocumentActions /> : <TemplateDocumentActions />;\n}\n\nfunction PageDocumentActions() {\n\tconst { hasPageContentFocus, hasResolved, isFound, title } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\thasPageContentFocus: _hasPageContentFocus,\n\t\t\t\tgetEditedPostContext,\n\t\t\t} = select( editSiteStore );\n\t\t\tconst { getEditedEntityRecord, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst context = getEditedPostContext();\n\t\t\tconst queryArgs = [ 'postType', context.postType, context.postId ];\n\t\t\tconst page = getEditedEntityRecord( ...queryArgs );\n\t\t\treturn {\n\t\t\t\thasPageContentFocus: _hasPageContentFocus(),\n\t\t\t\thasResolved: hasFinishedResolution(\n\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\tqueryArgs\n\t\t\t\t),\n\t\t\t\tisFound: !! page,\n\t\t\t\ttitle: page?.title,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst { setHasPageContentFocus } = useDispatch( editSiteStore );\n\n\tconst [ hasEditedTemplate, setHasEditedTemplate ] = useState( false );\n\tconst prevHasPageContentFocus = useRef( false );\n\tuseEffect( () => {\n\t\tif ( prevHasPageContentFocus.current && ! hasPageContentFocus ) {\n\t\t\tsetHasEditedTemplate( true );\n\t\t}\n\t\tprevHasPageContentFocus.current = hasPageContentFocus;\n\t}, [ hasPageContentFocus ] );\n\n\tif ( ! hasResolved ) {\n\t\treturn null;\n\t}\n\n\tif ( ! isFound ) {\n\t\treturn (\n\t\t\t<div className=\"edit-site-document-actions\">\n\t\t\t\t{ __( 'Document not found' ) }\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn hasPageContentFocus ? (\n\t\t<BaseDocumentActions\n\t\t\tclassName={ classnames( 'is-page', {\n\t\t\t\t'is-animated': hasEditedTemplate,\n\t\t\t} ) }\n\t\t\ticon={ pageIcon }\n\t\t>\n\t\t\t{ title }\n\t\t</BaseDocumentActions>\n\t) : (\n\t\t<TemplateDocumentActions\n\t\t\tclassName=\"is-animated\"\n\t\t\tonBack={ () => setHasPageContentFocus( true ) }\n\t\t/>\n\t);\n}\n\nfunction TemplateDocumentActions( { className, onBack } ) {\n\tconst { isLoaded, record, getTitle, icon } = useEditedEntityRecord();\n\n\tif ( ! isLoaded ) {\n\t\treturn null;\n\t}\n\n\tif ( ! record ) {\n\t\treturn (\n\t\t\t<div className=\"edit-site-document-actions\">\n\t\t\t\t{ __( 'Document not found' ) }\n\t\t\t</div>\n\t\t);\n\t}\n\n\tlet typeIcon = icon;\n\tif ( record.type === 'wp_navigation' ) {\n\t\ttypeIcon = navigationIcon;\n\t} else if ( record.type === 'wp_block' ) {\n\t\ttypeIcon = symbol;\n\t}\n\n\treturn (\n\t\t<BaseDocumentActions\n\t\t\tclassName={ className }\n\t\t\ticon={ typeIcon }\n\t\t\tonBack={ onBack }\n\t\t>\n\t\t\t<VisuallyHidden as=\"span\">\n\t\t\t\t{ typeLabels[ record.type ] ?? typeLabels.wp_template }\n\t\t\t</VisuallyHidden>\n\t\t\t{ getTitle() }\n\t\t</BaseDocumentActions>\n\t);\n}\n\nfunction BaseDocumentActions( { className, icon, children, onBack } ) {\n\tconst { open: openCommandCenter } = useDispatch( commandsStore );\n\treturn (\n\t\t<div\n\t\t\tclassName={ classnames( 'edit-site-document-actions', className ) }\n\t\t>\n\t\t\t{ onBack && (\n\t\t\t\t<Button\n\t\t\t\t\tclassName=\"edit-site-document-actions__back\"\n\t\t\t\t\ticon={ isRTL() ? chevronRightSmall : chevronLeftSmall }\n\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\tonBack();\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t</Button>\n\t\t\t) }\n\t\t\t<Button\n\t\t\t\tclassName=\"edit-site-document-actions__command\"\n\t\t\t\tonClick={ () => openCommandCenter() }\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\tclassName=\"edit-site-document-actions__title\"\n\t\t\t\t\tspacing={ 1 }\n\t\t\t\t\tjustify=\"center\"\n\t\t\t\t>\n\t\t\t\t\t<BlockIcon icon={ icon } />\n\t\t\t\t\t<Text size=\"body\" as=\"h1\">\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</Text>\n\t\t\t\t</HStack>\n\t\t\t\t<span className=\"edit-site-document-actions__shortcut\">\n\t\t\t\t\t{ displayShortcut.primary( 'k' ) }\n\t\t\t\t</span>\n\t\t\t</Button>\n\t\t</div>\n\t);\n}\n"]}
|
|
@@ -27,12 +27,12 @@ export default function Page({
|
|
|
27
27
|
return createElement(NavigableRegion, {
|
|
28
28
|
className: classes,
|
|
29
29
|
ariaLabel: title
|
|
30
|
+
}, createElement("div", {
|
|
31
|
+
className: "edit-site-page-content"
|
|
30
32
|
}, !hideTitleFromUI && title && createElement(Header, {
|
|
31
33
|
title: title,
|
|
32
34
|
subTitle: subTitle,
|
|
33
35
|
actions: actions
|
|
34
|
-
}), createElement(
|
|
35
|
-
className: "edit-site-page-content"
|
|
36
|
-
}, children, createElement(EditorSnackbars, null)));
|
|
36
|
+
}), children), createElement(EditorSnackbars, null));
|
|
37
37
|
}
|
|
38
38
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/page/index.js"],"names":["classnames","NavigableRegion","EditorSnackbars","Header","Page","title","subTitle","actions","children","className","hideTitleFromUI","classes"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,eAAT,QAAgC,sBAAhC;AACA,SAASC,eAAT,QAAgC,mBAAhC;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,UAAnB;AAEA,eAAe,SAASC,IAAT,CAAe;AAC7BC,EAAAA,KAD6B;AAE7BC,EAAAA,QAF6B;AAG7BC,EAAAA,OAH6B;AAI7BC,EAAAA,QAJ6B;AAK7BC,EAAAA,SAL6B;AAM7BC,EAAAA,eAAe,GAAG;AANW,CAAf,EAOX;AACH,QAAMC,OAAO,GAAGX,UAAU,CAAE,gBAAF,EAAoBS,SAApB,CAA1B;AAEA,SACC,cAAC,eAAD;AAAiB,IAAA,SAAS,EAAGE,OAA7B;AAAuC,IAAA,SAAS,EAAGN;AAAnD,KACG,CAAEK,eAAF,IAAqBL,KAArB,IACD,cAAC,MAAD;AACC,IAAA,KAAK,EAAGA,KADT;AAEC,IAAA,QAAQ,EAAGC,QAFZ;AAGC,IAAA,OAAO,EAAGC;AAHX,IAFF,
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/page/index.js"],"names":["classnames","NavigableRegion","EditorSnackbars","Header","Page","title","subTitle","actions","children","className","hideTitleFromUI","classes"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,eAAT,QAAgC,sBAAhC;AACA,SAASC,eAAT,QAAgC,mBAAhC;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,UAAnB;AAEA,eAAe,SAASC,IAAT,CAAe;AAC7BC,EAAAA,KAD6B;AAE7BC,EAAAA,QAF6B;AAG7BC,EAAAA,OAH6B;AAI7BC,EAAAA,QAJ6B;AAK7BC,EAAAA,SAL6B;AAM7BC,EAAAA,eAAe,GAAG;AANW,CAAf,EAOX;AACH,QAAMC,OAAO,GAAGX,UAAU,CAAE,gBAAF,EAAoBS,SAApB,CAA1B;AAEA,SACC,cAAC,eAAD;AAAiB,IAAA,SAAS,EAAGE,OAA7B;AAAuC,IAAA,SAAS,EAAGN;AAAnD,KACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACG,CAAEK,eAAF,IAAqBL,KAArB,IACD,cAAC,MAAD;AACC,IAAA,KAAK,EAAGA,KADT;AAEC,IAAA,QAAQ,EAAGC,QAFZ;AAGC,IAAA,OAAO,EAAGC;AAHX,IAFF,EAQGC,QARH,CADD,EAWC,cAAC,eAAD,OAXD,CADD;AAeA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { NavigableRegion } from '@wordpress/interface';\nimport { EditorSnackbars } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport Header from './header';\n\nexport default function Page( {\n\ttitle,\n\tsubTitle,\n\tactions,\n\tchildren,\n\tclassName,\n\thideTitleFromUI = false,\n} ) {\n\tconst classes = classnames( 'edit-site-page', className );\n\n\treturn (\n\t\t<NavigableRegion className={ classes } ariaLabel={ title }>\n\t\t\t<div className=\"edit-site-page-content\">\n\t\t\t\t{ ! hideTitleFromUI && title && (\n\t\t\t\t\t<Header\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tsubTitle={ subTitle }\n\t\t\t\t\t\tactions={ actions }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t\t<EditorSnackbars />\n\t\t</NavigableRegion>\n\t);\n}\n"]}
|
package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js
CHANGED
|
@@ -108,7 +108,7 @@ export default function LeafMoreMenu(props) {
|
|
|
108
108
|
moveBlocksDown([clientId], rootClientId);
|
|
109
109
|
onClose();
|
|
110
110
|
}
|
|
111
|
-
}, __('Move down')), block.attributes?.id && createElement(MenuItem, {
|
|
111
|
+
}, __('Move down')), block.attributes?.type === 'page' && block.attributes?.id && createElement(MenuItem, {
|
|
112
112
|
onClick: () => {
|
|
113
113
|
onGoToPage(block);
|
|
114
114
|
onClose();
|
package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js"],"names":["chevronUp","chevronDown","moreVertical","DropdownMenu","MenuItem","MenuGroup","useDispatch","useSelect","useCallback","__","sprintf","BlockTitle","store","blockEditorStore","privateApis","routerPrivateApis","POPOVER_PROPS","className","placement","isPreviewingTheme","currentlyPreviewingTheme","unlock","getPathFromURL","useLocation","useHistory","LeafMoreMenu","props","location","history","block","clientId","moveBlocksDown","moveBlocksUp","removeBlocks","removeLabel","maximumLength","goToLabel","rootClientId","select","getBlockRootClientId","onGoToPage","selectedBlock","attributes","name","kind","id","type","push","postType","postId","wp_theme_preview","backPath","params","onClose"],"mappings":"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
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js"],"names":["chevronUp","chevronDown","moreVertical","DropdownMenu","MenuItem","MenuGroup","useDispatch","useSelect","useCallback","__","sprintf","BlockTitle","store","blockEditorStore","privateApis","routerPrivateApis","POPOVER_PROPS","className","placement","isPreviewingTheme","currentlyPreviewingTheme","unlock","getPathFromURL","useLocation","useHistory","LeafMoreMenu","props","location","history","block","clientId","moveBlocksDown","moveBlocksUp","removeBlocks","removeLabel","maximumLength","goToLabel","rootClientId","select","getBlockRootClientId","onGoToPage","selectedBlock","attributes","name","kind","id","type","push","postType","postId","wp_theme_preview","backPath","params","onClose"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\n\nimport { chevronUp, chevronDown, moreVertical } from '@wordpress/icons';\nimport { DropdownMenu, MenuItem, MenuGroup } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useCallback } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { BlockTitle, store as blockEditorStore } from '@wordpress/block-editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\nconst POPOVER_PROPS = {\n\tclassName: 'block-editor-block-settings-menu__popover',\n\tplacement: 'bottom-start',\n};\n\n/**\n * Internal dependencies\n */\nimport {\n\tisPreviewingTheme,\n\tcurrentlyPreviewingTheme,\n} from '../../utils/is-previewing-theme';\nimport { unlock } from '../../lock-unlock';\nimport { getPathFromURL } from '../sync-state-with-url/use-sync-path-with-url';\n\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\n\nexport default function LeafMoreMenu( props ) {\n\tconst location = useLocation();\n\tconst history = useHistory();\n\tconst { block } = props;\n\tconst { clientId } = block;\n\tconst { moveBlocksDown, moveBlocksUp, removeBlocks } =\n\t\tuseDispatch( blockEditorStore );\n\n\tconst removeLabel = sprintf(\n\t\t/* translators: %s: block name */\n\t\t__( 'Remove %s' ),\n\t\tBlockTitle( { clientId, maximumLength: 25 } )\n\t);\n\n\tconst goToLabel = sprintf(\n\t\t/* translators: %s: block name */\n\t\t__( 'Go to %s' ),\n\t\tBlockTitle( { clientId, maximumLength: 25 } )\n\t);\n\n\tconst rootClientId = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId } = select( blockEditorStore );\n\n\t\t\treturn getBlockRootClientId( clientId );\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst onGoToPage = useCallback(\n\t\t( selectedBlock ) => {\n\t\t\tconst { attributes, name } = selectedBlock;\n\t\t\tif (\n\t\t\t\tattributes.kind === 'post-type' &&\n\t\t\t\tattributes.id &&\n\t\t\t\tattributes.type &&\n\t\t\t\thistory\n\t\t\t) {\n\t\t\t\thistory.push(\n\t\t\t\t\t{\n\t\t\t\t\t\tpostType: attributes.type,\n\t\t\t\t\t\tpostId: attributes.id,\n\t\t\t\t\t\t...( isPreviewingTheme() && {\n\t\t\t\t\t\t\twp_theme_preview: currentlyPreviewingTheme(),\n\t\t\t\t\t\t} ),\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tbackPath: getPathFromURL( location.params ),\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t\tif ( name === 'core/page-list-item' && attributes.id && history ) {\n\t\t\t\thistory.push(\n\t\t\t\t\t{\n\t\t\t\t\t\tpostType: 'page',\n\t\t\t\t\t\tpostId: attributes.id,\n\t\t\t\t\t\t...( isPreviewingTheme() && {\n\t\t\t\t\t\t\twp_theme_preview: currentlyPreviewingTheme(),\n\t\t\t\t\t\t} ),\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tbackPath: getPathFromURL( location.params ),\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ history ]\n\t);\n\n\treturn (\n\t\t<DropdownMenu\n\t\t\ticon={ moreVertical }\n\t\t\tlabel={ __( 'Options' ) }\n\t\t\tclassName=\"block-editor-block-settings-menu\"\n\t\t\tpopoverProps={ POPOVER_PROPS }\n\t\t\tnoIcons\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ ( { onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\ticon={ chevronUp }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tmoveBlocksUp( [ clientId ], rootClientId );\n\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Move up' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\ticon={ chevronDown }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tmoveBlocksDown( [ clientId ], rootClientId );\n\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Move down' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t{ block.attributes?.type === 'page' &&\n\t\t\t\t\t\t\tblock.attributes?.id && (\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tonGoToPage( block );\n\t\t\t\t\t\t\t\t\t\tonClose();\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{ goToLabel }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tremoveBlocks( [ clientId ], false );\n\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ removeLabel }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t</MenuGroup>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</DropdownMenu>\n\t);\n}\n"]}
|
|
@@ -168,8 +168,8 @@ export default function HomeTemplateDetails() {
|
|
|
168
168
|
spacing: 3
|
|
169
169
|
}, createElement(SidebarNavigationScreenDetailsPanelRow, null, createElement(CheckboxControl, {
|
|
170
170
|
className: "edit-site-sidebar-navigation-screen__input-control",
|
|
171
|
-
label:
|
|
172
|
-
help:
|
|
171
|
+
label: __('Allow comments on new posts'),
|
|
172
|
+
help: __('Changes will apply to new posts only. Individual posts may override these settings.'),
|
|
173
173
|
checked: commentsOnNewPostsValue,
|
|
174
174
|
onChange: setAllowCommentsOnNewPosts
|
|
175
175
|
}))), createElement(SidebarNavigationScreenDetailsPanel, {
|
package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-template/home-template-details.js"],"names":["__","debounce","useSelect","useDispatch","store","coreStore","CheckboxControl","__experimentalUseNavigator","useNavigator","__experimentalInputControl","InputControl","__experimentalNumberControl","NumberControl","__experimentalTruncate","Truncate","__experimentalItemGroup","ItemGroup","header","footer","layout","useMemo","useState","useEffect","decodeEntities","SidebarNavigationScreenDetailsPanel","SidebarNavigationScreenDetailsPanelRow","unlock","editSiteStore","useLink","SidebarNavigationItem","EMPTY_OBJECT","TemplateAreaButton","postId","icon","title","icons","linkInfo","postType","HomeTemplateDetails","navigator","params","editEntityRecord","allowCommentsOnNewPosts","templatePartAreas","postsPerPage","postsPageTitle","postsPageId","currentTemplateParts","select","getEntityRecord","siteSettings","getSettings","_currentTemplateParts","getCurrentTemplateTemplateParts","siteEditorSettings","_postsPageRecord","page_for_posts","default_comment_status","rendered","id","posts_per_page","defaultTemplatePartAreas","commentsOnNewPostsValue","setCommentsOnNewPostsValue","postsCountValue","setPostsCountValue","postsPageTitleValue","setPostsPageTitleValue","templateAreas","length","map","templatePart","find","area","setAllowCommentsOnNewPosts","newValue","undefined","setPostsPageTitle","setPostsPerPage","label","theme","slug"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { debounce } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tCheckboxControl,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalInputControl as InputControl,\n\t__experimentalNumberControl as NumberControl,\n\t__experimentalTruncate as Truncate,\n\t__experimentalItemGroup as ItemGroup,\n} from '@wordpress/components';\nimport { header, footer, layout } from '@wordpress/icons';\nimport { useMemo, useState, useEffect } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport {\n\tSidebarNavigationScreenDetailsPanel,\n\tSidebarNavigationScreenDetailsPanelRow,\n} from '../sidebar-navigation-screen-details-panel';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\n\nconst EMPTY_OBJECT = {};\n\nfunction TemplateAreaButton( { postId, icon, title } ) {\n\tconst icons = {\n\t\theader,\n\t\tfooter,\n\t};\n\tconst linkInfo = useLink( {\n\t\tpostType: 'wp_template_part',\n\t\tpostId,\n\t} );\n\n\treturn (\n\t\t<SidebarNavigationItem\n\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template__template-area-button\"\n\t\t\t{ ...linkInfo }\n\t\t\ticon={ icons[ icon ] ?? layout }\n\t\t\twithChevron\n\t\t>\n\t\t\t<Truncate\n\t\t\t\tlimit={ 20 }\n\t\t\t\tellipsizeMode=\"tail\"\n\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template__template-area-label-text\"\n\t\t\t>\n\t\t\t\t{ decodeEntities( title ) }\n\t\t\t</Truncate>\n\t\t</SidebarNavigationItem>\n\t);\n}\n\nexport default function HomeTemplateDetails() {\n\tconst navigator = useNavigator();\n\tconst {\n\t\tparams: { postType, postId },\n\t} = navigator;\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst {\n\t\tallowCommentsOnNewPosts,\n\t\ttemplatePartAreas,\n\t\tpostsPerPage,\n\t\tpostsPageTitle,\n\t\tpostsPageId,\n\t\tcurrentTemplateParts,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\tconst siteSettings = getEntityRecord( 'root', 'site' );\n\t\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\t\tconst _currentTemplateParts =\n\t\t\t\tselect( editSiteStore ).getCurrentTemplateTemplateParts();\n\t\t\tconst siteEditorSettings = getSettings();\n\t\t\tconst _postsPageRecord = siteSettings?.page_for_posts\n\t\t\t\t? select( coreStore ).getEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t'page',\n\t\t\t\t\t\tsiteSettings?.page_for_posts\n\t\t\t\t )\n\t\t\t\t: EMPTY_OBJECT;\n\n\t\t\treturn {\n\t\t\t\tallowCommentsOnNewPosts:\n\t\t\t\t\tsiteSettings?.default_comment_status === 'open',\n\t\t\t\tpostsPageTitle: _postsPageRecord?.title?.rendered,\n\t\t\t\tpostsPageId: _postsPageRecord?.id,\n\t\t\t\tpostsPerPage: siteSettings?.posts_per_page,\n\t\t\t\ttemplatePartAreas: siteEditorSettings?.defaultTemplatePartAreas,\n\t\t\t\tcurrentTemplateParts: _currentTemplateParts,\n\t\t\t};\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst [ commentsOnNewPostsValue, setCommentsOnNewPostsValue ] =\n\t\tuseState( '' );\n\tconst [ postsCountValue, setPostsCountValue ] = useState( 1 );\n\tconst [ postsPageTitleValue, setPostsPageTitleValue ] = useState( '' );\n\n\t/*\n\t * This hook serves to set the server-retrieved values,\n\t * postsPageTitle, allowCommentsOnNewPosts, postsPerPage,\n\t * to local state.\n\t */\n\tuseEffect( () => {\n\t\tsetCommentsOnNewPostsValue( allowCommentsOnNewPosts );\n\t\tsetPostsPageTitleValue( postsPageTitle );\n\t\tsetPostsCountValue( postsPerPage );\n\t}, [ postsPageTitle, allowCommentsOnNewPosts, postsPerPage ] );\n\n\t/*\n\t * Merge data in currentTemplateParts with templatePartAreas,\n\t * which contains the template icon and fallback labels\n\t */\n\tconst templateAreas = useMemo( () => {\n\t\treturn currentTemplateParts.length && templatePartAreas\n\t\t\t? currentTemplateParts.map( ( { templatePart } ) => ( {\n\t\t\t\t\t...templatePartAreas?.find(\n\t\t\t\t\t\t( { area } ) => area === templatePart?.area\n\t\t\t\t\t),\n\t\t\t\t\t...templatePart,\n\t\t\t } ) )\n\t\t\t: [];\n\t}, [ currentTemplateParts, templatePartAreas ] );\n\n\tconst setAllowCommentsOnNewPosts = ( newValue ) => {\n\t\tsetCommentsOnNewPostsValue( newValue );\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tdefault_comment_status: newValue ? 'open' : null,\n\t\t} );\n\t};\n\n\tconst setPostsPageTitle = ( newValue ) => {\n\t\tsetPostsPageTitleValue( newValue );\n\t\teditEntityRecord( 'postType', 'page', postsPageId, {\n\t\t\ttitle: newValue,\n\t\t} );\n\t};\n\n\tconst setPostsPerPage = ( newValue ) => {\n\t\tsetPostsCountValue( newValue );\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tposts_per_page: newValue,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<SidebarNavigationScreenDetailsPanel spacing={ 6 }>\n\t\t\t\t{ postsPageId && (\n\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\t\tplaceholder={ __( 'No Title' ) }\n\t\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\t\tvalue={ postsPageTitleValue }\n\t\t\t\t\t\t\tonChange={ debounce( setPostsPageTitle, 300 ) }\n\t\t\t\t\t\t\tlabel={ __( 'Blog title' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Set the Posts Page title. Appears in search results, and when the page is shared on social media.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t) }\n\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t<NumberControl\n\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\tplaceholder={ 0 }\n\t\t\t\t\t\tvalue={ postsCountValue }\n\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\tspinControls=\"custom\"\n\t\t\t\t\t\tstep=\"1\"\n\t\t\t\t\t\tmin=\"1\"\n\t\t\t\t\t\tonChange={ setPostsPerPage }\n\t\t\t\t\t\tlabel={ __( 'Posts per page' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Set the default number of posts to display on blog pages, including categories and tags. Some templates may override this setting.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\n\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\ttitle={ __( 'Discussion' ) }\n\t\t\t\tspacing={ 3 }\n\t\t\t>\n\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\tlabel=\"Allow comments on new posts\"\n\t\t\t\t\t\thelp=\"Changes will apply to new posts only. Individual posts may override these settings.\"\n\t\t\t\t\t\tchecked={ commentsOnNewPostsValue }\n\t\t\t\t\t\tonChange={ setAllowCommentsOnNewPosts }\n\t\t\t\t\t/>\n\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\ttitle={ __( 'Areas' ) }\n\t\t\t\tspacing={ 3 }\n\t\t\t>\n\t\t\t\t<ItemGroup>\n\t\t\t\t\t{ templateAreas.map(\n\t\t\t\t\t\t( { label, icon, theme, slug, title } ) => (\n\t\t\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow\n\t\t\t\t\t\t\t\tkey={ slug }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TemplateAreaButton\n\t\t\t\t\t\t\t\t\tpostId={ `${ theme }//${ slug }` }\n\t\t\t\t\t\t\t\t\ttitle={ title?.rendered || label }\n\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t\t)\n\t\t\t\t\t) }\n\t\t\t\t</ItemGroup>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t</>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-template/home-template-details.js"],"names":["__","debounce","useSelect","useDispatch","store","coreStore","CheckboxControl","__experimentalUseNavigator","useNavigator","__experimentalInputControl","InputControl","__experimentalNumberControl","NumberControl","__experimentalTruncate","Truncate","__experimentalItemGroup","ItemGroup","header","footer","layout","useMemo","useState","useEffect","decodeEntities","SidebarNavigationScreenDetailsPanel","SidebarNavigationScreenDetailsPanelRow","unlock","editSiteStore","useLink","SidebarNavigationItem","EMPTY_OBJECT","TemplateAreaButton","postId","icon","title","icons","linkInfo","postType","HomeTemplateDetails","navigator","params","editEntityRecord","allowCommentsOnNewPosts","templatePartAreas","postsPerPage","postsPageTitle","postsPageId","currentTemplateParts","select","getEntityRecord","siteSettings","getSettings","_currentTemplateParts","getCurrentTemplateTemplateParts","siteEditorSettings","_postsPageRecord","page_for_posts","default_comment_status","rendered","id","posts_per_page","defaultTemplatePartAreas","commentsOnNewPostsValue","setCommentsOnNewPostsValue","postsCountValue","setPostsCountValue","postsPageTitleValue","setPostsPageTitleValue","templateAreas","length","map","templatePart","find","area","setAllowCommentsOnNewPosts","newValue","undefined","setPostsPageTitle","setPostsPerPage","label","theme","slug"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { debounce } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tCheckboxControl,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalInputControl as InputControl,\n\t__experimentalNumberControl as NumberControl,\n\t__experimentalTruncate as Truncate,\n\t__experimentalItemGroup as ItemGroup,\n} from '@wordpress/components';\nimport { header, footer, layout } from '@wordpress/icons';\nimport { useMemo, useState, useEffect } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport {\n\tSidebarNavigationScreenDetailsPanel,\n\tSidebarNavigationScreenDetailsPanelRow,\n} from '../sidebar-navigation-screen-details-panel';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\n\nconst EMPTY_OBJECT = {};\n\nfunction TemplateAreaButton( { postId, icon, title } ) {\n\tconst icons = {\n\t\theader,\n\t\tfooter,\n\t};\n\tconst linkInfo = useLink( {\n\t\tpostType: 'wp_template_part',\n\t\tpostId,\n\t} );\n\n\treturn (\n\t\t<SidebarNavigationItem\n\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template__template-area-button\"\n\t\t\t{ ...linkInfo }\n\t\t\ticon={ icons[ icon ] ?? layout }\n\t\t\twithChevron\n\t\t>\n\t\t\t<Truncate\n\t\t\t\tlimit={ 20 }\n\t\t\t\tellipsizeMode=\"tail\"\n\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template__template-area-label-text\"\n\t\t\t>\n\t\t\t\t{ decodeEntities( title ) }\n\t\t\t</Truncate>\n\t\t</SidebarNavigationItem>\n\t);\n}\n\nexport default function HomeTemplateDetails() {\n\tconst navigator = useNavigator();\n\tconst {\n\t\tparams: { postType, postId },\n\t} = navigator;\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst {\n\t\tallowCommentsOnNewPosts,\n\t\ttemplatePartAreas,\n\t\tpostsPerPage,\n\t\tpostsPageTitle,\n\t\tpostsPageId,\n\t\tcurrentTemplateParts,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\tconst siteSettings = getEntityRecord( 'root', 'site' );\n\t\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\t\tconst _currentTemplateParts =\n\t\t\t\tselect( editSiteStore ).getCurrentTemplateTemplateParts();\n\t\t\tconst siteEditorSettings = getSettings();\n\t\t\tconst _postsPageRecord = siteSettings?.page_for_posts\n\t\t\t\t? select( coreStore ).getEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t'page',\n\t\t\t\t\t\tsiteSettings?.page_for_posts\n\t\t\t\t )\n\t\t\t\t: EMPTY_OBJECT;\n\n\t\t\treturn {\n\t\t\t\tallowCommentsOnNewPosts:\n\t\t\t\t\tsiteSettings?.default_comment_status === 'open',\n\t\t\t\tpostsPageTitle: _postsPageRecord?.title?.rendered,\n\t\t\t\tpostsPageId: _postsPageRecord?.id,\n\t\t\t\tpostsPerPage: siteSettings?.posts_per_page,\n\t\t\t\ttemplatePartAreas: siteEditorSettings?.defaultTemplatePartAreas,\n\t\t\t\tcurrentTemplateParts: _currentTemplateParts,\n\t\t\t};\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst [ commentsOnNewPostsValue, setCommentsOnNewPostsValue ] =\n\t\tuseState( '' );\n\tconst [ postsCountValue, setPostsCountValue ] = useState( 1 );\n\tconst [ postsPageTitleValue, setPostsPageTitleValue ] = useState( '' );\n\n\t/*\n\t * This hook serves to set the server-retrieved values,\n\t * postsPageTitle, allowCommentsOnNewPosts, postsPerPage,\n\t * to local state.\n\t */\n\tuseEffect( () => {\n\t\tsetCommentsOnNewPostsValue( allowCommentsOnNewPosts );\n\t\tsetPostsPageTitleValue( postsPageTitle );\n\t\tsetPostsCountValue( postsPerPage );\n\t}, [ postsPageTitle, allowCommentsOnNewPosts, postsPerPage ] );\n\n\t/*\n\t * Merge data in currentTemplateParts with templatePartAreas,\n\t * which contains the template icon and fallback labels\n\t */\n\tconst templateAreas = useMemo( () => {\n\t\treturn currentTemplateParts.length && templatePartAreas\n\t\t\t? currentTemplateParts.map( ( { templatePart } ) => ( {\n\t\t\t\t\t...templatePartAreas?.find(\n\t\t\t\t\t\t( { area } ) => area === templatePart?.area\n\t\t\t\t\t),\n\t\t\t\t\t...templatePart,\n\t\t\t } ) )\n\t\t\t: [];\n\t}, [ currentTemplateParts, templatePartAreas ] );\n\n\tconst setAllowCommentsOnNewPosts = ( newValue ) => {\n\t\tsetCommentsOnNewPostsValue( newValue );\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tdefault_comment_status: newValue ? 'open' : null,\n\t\t} );\n\t};\n\n\tconst setPostsPageTitle = ( newValue ) => {\n\t\tsetPostsPageTitleValue( newValue );\n\t\teditEntityRecord( 'postType', 'page', postsPageId, {\n\t\t\ttitle: newValue,\n\t\t} );\n\t};\n\n\tconst setPostsPerPage = ( newValue ) => {\n\t\tsetPostsCountValue( newValue );\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tposts_per_page: newValue,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<SidebarNavigationScreenDetailsPanel spacing={ 6 }>\n\t\t\t\t{ postsPageId && (\n\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\t\tplaceholder={ __( 'No Title' ) }\n\t\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\t\tvalue={ postsPageTitleValue }\n\t\t\t\t\t\t\tonChange={ debounce( setPostsPageTitle, 300 ) }\n\t\t\t\t\t\t\tlabel={ __( 'Blog title' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Set the Posts Page title. Appears in search results, and when the page is shared on social media.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t) }\n\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t<NumberControl\n\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\tplaceholder={ 0 }\n\t\t\t\t\t\tvalue={ postsCountValue }\n\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\tspinControls=\"custom\"\n\t\t\t\t\t\tstep=\"1\"\n\t\t\t\t\t\tmin=\"1\"\n\t\t\t\t\t\tonChange={ setPostsPerPage }\n\t\t\t\t\t\tlabel={ __( 'Posts per page' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Set the default number of posts to display on blog pages, including categories and tags. Some templates may override this setting.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\n\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\ttitle={ __( 'Discussion' ) }\n\t\t\t\tspacing={ 3 }\n\t\t\t>\n\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\tlabel={ __( 'Allow comments on new posts' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Changes will apply to new posts only. Individual posts may override these settings.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tchecked={ commentsOnNewPostsValue }\n\t\t\t\t\t\tonChange={ setAllowCommentsOnNewPosts }\n\t\t\t\t\t/>\n\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\ttitle={ __( 'Areas' ) }\n\t\t\t\tspacing={ 3 }\n\t\t\t>\n\t\t\t\t<ItemGroup>\n\t\t\t\t\t{ templateAreas.map(\n\t\t\t\t\t\t( { label, icon, theme, slug, title } ) => (\n\t\t\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow\n\t\t\t\t\t\t\t\tkey={ slug }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TemplateAreaButton\n\t\t\t\t\t\t\t\t\tpostId={ `${ theme }//${ slug }` }\n\t\t\t\t\t\t\t\t\ttitle={ title?.rendered || label }\n\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t\t)\n\t\t\t\t\t) }\n\t\t\t\t</ItemGroup>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -13,7 +13,7 @@ import { createHigherOrderComponent } from '@wordpress/compose';
|
|
|
13
13
|
import { InspectorAdvancedControls, store as blockEditorStore, privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
|
|
14
14
|
import { BaseControl, Button } from '@wordpress/components';
|
|
15
15
|
import { __, sprintf } from '@wordpress/i18n';
|
|
16
|
-
import { __EXPERIMENTAL_STYLE_PROPERTY
|
|
16
|
+
import { __EXPERIMENTAL_STYLE_PROPERTY, getBlockType, hasBlockSupport } from '@wordpress/blocks';
|
|
17
17
|
import { useContext, useMemo, useCallback } from '@wordpress/element';
|
|
18
18
|
import { useDispatch } from '@wordpress/data';
|
|
19
19
|
import { store as noticesStore } from '@wordpress/notices';
|
|
@@ -24,13 +24,23 @@ import { store as noticesStore } from '@wordpress/notices';
|
|
|
24
24
|
import { useSupportedStyles } from '../../components/global-styles/hooks';
|
|
25
25
|
import { unlock } from '../../lock-unlock';
|
|
26
26
|
const {
|
|
27
|
+
cleanEmptyObject,
|
|
27
28
|
GlobalStylesContext,
|
|
28
29
|
useBlockEditingMode
|
|
29
|
-
} = unlock(blockEditorPrivateApis); //
|
|
30
|
+
} = unlock(blockEditorPrivateApis); // Block Gap is a special case and isn't defined within the blocks
|
|
31
|
+
// style properties config. We'll add it here to allow it to be pushed
|
|
32
|
+
// to global styles as well.
|
|
33
|
+
|
|
34
|
+
const STYLE_PROPERTY = { ...__EXPERIMENTAL_STYLE_PROPERTY,
|
|
35
|
+
blockGap: {
|
|
36
|
+
value: ['spacing', 'blockGap']
|
|
37
|
+
}
|
|
38
|
+
}; // TODO: Temporary duplication of constant in @wordpress/block-editor. Can be
|
|
30
39
|
// removed by moving PushChangesToGlobalStylesControl to
|
|
31
40
|
// @wordpress/block-editor.
|
|
32
41
|
|
|
33
42
|
const STYLE_PATH_TO_CSS_VAR_INFIX = {
|
|
43
|
+
'border.color': 'color',
|
|
34
44
|
'color.background': 'color',
|
|
35
45
|
'color.text': 'color',
|
|
36
46
|
'elements.link.color.text': 'color',
|
|
@@ -72,6 +82,7 @@ const STYLE_PATH_TO_CSS_VAR_INFIX = {
|
|
|
72
82
|
'elements.h6.typography.fontFamily': 'font-family',
|
|
73
83
|
'elements.h6.color.gradient': 'gradient',
|
|
74
84
|
'color.gradient': 'gradient',
|
|
85
|
+
blockGap: 'spacing',
|
|
75
86
|
'typography.fontSize': 'font-size',
|
|
76
87
|
'typography.fontFamily': 'font-family'
|
|
77
88
|
}; // TODO: Temporary duplication of constant in @wordpress/block-editor. Can be
|
|
@@ -79,6 +90,7 @@ const STYLE_PATH_TO_CSS_VAR_INFIX = {
|
|
|
79
90
|
// @wordpress/block-editor.
|
|
80
91
|
|
|
81
92
|
const STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE = {
|
|
93
|
+
'border.color': 'borderColor',
|
|
82
94
|
'color.background': 'backgroundColor',
|
|
83
95
|
'color.text': 'textColor',
|
|
84
96
|
'color.gradient': 'gradient',
|
|
@@ -86,25 +98,128 @@ const STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE = {
|
|
|
86
98
|
'typography.fontFamily': 'fontFamily'
|
|
87
99
|
};
|
|
88
100
|
const SUPPORTED_STYLES = ['border', 'color', 'spacing', 'typography'];
|
|
101
|
+
const flatBorderProperties = ['borderColor', 'borderWidth', 'borderStyle'];
|
|
102
|
+
const sides = ['top', 'right', 'bottom', 'left'];
|
|
103
|
+
|
|
104
|
+
function getBorderStyleChanges(border, presetColor, userStyle) {
|
|
105
|
+
if (!border && !presetColor) {
|
|
106
|
+
return [];
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
const changes = [...getFallbackBorderStyleChange('top', border, userStyle), ...getFallbackBorderStyleChange('right', border, userStyle), ...getFallbackBorderStyleChange('bottom', border, userStyle), ...getFallbackBorderStyleChange('left', border, userStyle)]; // Handle a flat border i.e. all sides the same, CSS shorthand.
|
|
110
|
+
|
|
111
|
+
const {
|
|
112
|
+
color: customColor,
|
|
113
|
+
style,
|
|
114
|
+
width
|
|
115
|
+
} = border || {};
|
|
116
|
+
const hasColorOrWidth = presetColor || customColor || width;
|
|
117
|
+
|
|
118
|
+
if (hasColorOrWidth && !style) {
|
|
119
|
+
// Global Styles need individual side configurations to overcome
|
|
120
|
+
// theme.json configurations which are per side as well.
|
|
121
|
+
sides.forEach(side => {
|
|
122
|
+
// Only add fallback border-style if global styles don't already
|
|
123
|
+
// have something set.
|
|
124
|
+
if (!userStyle?.[side]?.style) {
|
|
125
|
+
changes.push({
|
|
126
|
+
path: ['border', side, 'style'],
|
|
127
|
+
value: 'solid'
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
return changes;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
function getFallbackBorderStyleChange(side, border, globalBorderStyle) {
|
|
137
|
+
if (!border?.[side] || globalBorderStyle?.[side]?.style) {
|
|
138
|
+
return [];
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
const {
|
|
142
|
+
color,
|
|
143
|
+
style,
|
|
144
|
+
width
|
|
145
|
+
} = border[side];
|
|
146
|
+
const hasColorOrWidth = color || width;
|
|
147
|
+
|
|
148
|
+
if (!hasColorOrWidth || style) {
|
|
149
|
+
return [];
|
|
150
|
+
}
|
|
89
151
|
|
|
90
|
-
|
|
152
|
+
return [{
|
|
153
|
+
path: ['border', side, 'style'],
|
|
154
|
+
value: 'solid'
|
|
155
|
+
}];
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
function useChangesToPush(name, attributes, userConfig) {
|
|
91
159
|
const supports = useSupportedStyles(name);
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
160
|
+
const blockUserConfig = userConfig?.styles?.blocks?.[name];
|
|
161
|
+
return useMemo(() => {
|
|
162
|
+
const changes = supports.flatMap(key => {
|
|
163
|
+
if (!STYLE_PROPERTY[key]) {
|
|
164
|
+
return [];
|
|
165
|
+
}
|
|
96
166
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
167
|
+
const {
|
|
168
|
+
value: path
|
|
169
|
+
} = STYLE_PROPERTY[key];
|
|
170
|
+
const presetAttributeKey = path.join('.');
|
|
171
|
+
const presetAttributeValue = attributes[STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE[presetAttributeKey]];
|
|
172
|
+
const value = presetAttributeValue ? `var:preset|${STYLE_PATH_TO_CSS_VAR_INFIX[presetAttributeKey]}|${presetAttributeValue}` : get(attributes.style, path); // Links only have a single support entry but have two element
|
|
173
|
+
// style properties, color and hover color. The following check
|
|
174
|
+
// will add the hover color to the changes if required.
|
|
175
|
+
|
|
176
|
+
if (key === 'linkColor') {
|
|
177
|
+
const linkChanges = value ? [{
|
|
178
|
+
path,
|
|
179
|
+
value
|
|
180
|
+
}] : [];
|
|
181
|
+
const hoverPath = ['elements', 'link', ':hover', 'color', 'text'];
|
|
182
|
+
const hoverValue = get(attributes.style, hoverPath);
|
|
183
|
+
|
|
184
|
+
if (hoverValue) {
|
|
185
|
+
linkChanges.push({
|
|
186
|
+
path: hoverPath,
|
|
187
|
+
value: hoverValue
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
return linkChanges;
|
|
192
|
+
} // The shorthand border styles can't be mapped directly as global
|
|
193
|
+
// styles requires longhand config.
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
if (flatBorderProperties.includes(key) && value) {
|
|
197
|
+
// The shorthand config path is included to clear the block attribute.
|
|
198
|
+
const borderChanges = [{
|
|
199
|
+
path,
|
|
200
|
+
value
|
|
201
|
+
}];
|
|
202
|
+
sides.forEach(side => {
|
|
203
|
+
const currentPath = [...path];
|
|
204
|
+
currentPath.splice(-1, 0, side);
|
|
205
|
+
borderChanges.push({
|
|
206
|
+
path: currentPath,
|
|
207
|
+
value
|
|
208
|
+
});
|
|
209
|
+
});
|
|
210
|
+
return borderChanges;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
return value ? [{
|
|
214
|
+
path,
|
|
215
|
+
value
|
|
216
|
+
}] : [];
|
|
217
|
+
}); // To ensure display of a visible border, global styles require a
|
|
218
|
+
// default border style if a border color or width is present.
|
|
219
|
+
|
|
220
|
+
getBorderStyleChanges(attributes.style?.border, attributes.borderColor, blockUserConfig?.border).forEach(change => changes.push(change));
|
|
221
|
+
return changes;
|
|
222
|
+
}, [supports, attributes, blockUserConfig]);
|
|
108
223
|
}
|
|
109
224
|
|
|
110
225
|
function cloneDeep(object) {
|
|
@@ -116,11 +231,11 @@ function PushChangesToGlobalStylesControl({
|
|
|
116
231
|
attributes,
|
|
117
232
|
setAttributes
|
|
118
233
|
}) {
|
|
119
|
-
const changes = useChangesToPush(name, attributes);
|
|
120
234
|
const {
|
|
121
235
|
user: userConfig,
|
|
122
236
|
setUserConfig
|
|
123
237
|
} = useContext(GlobalStylesContext);
|
|
238
|
+
const changes = useChangesToPush(name, attributes, userConfig);
|
|
124
239
|
const {
|
|
125
240
|
__unstableMarkNextChangeAsNotPersistent
|
|
126
241
|
} = useDispatch(blockEditorStore);
|
|
@@ -144,17 +259,24 @@ function PushChangesToGlobalStylesControl({
|
|
|
144
259
|
} of changes) {
|
|
145
260
|
set(newBlockStyles, path, undefined);
|
|
146
261
|
set(newUserConfig, ['styles', 'blocks', name, ...path], value);
|
|
147
|
-
}
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
const newBlockAttributes = {
|
|
265
|
+
borderColor: undefined,
|
|
266
|
+
backgroundColor: undefined,
|
|
267
|
+
textColor: undefined,
|
|
268
|
+
gradient: undefined,
|
|
269
|
+
fontSize: undefined,
|
|
270
|
+
fontFamily: undefined,
|
|
271
|
+
style: cleanEmptyObject(newBlockStyles)
|
|
272
|
+
}; // @wordpress/core-data doesn't support editing multiple entity types in
|
|
148
273
|
// a single undo level. So for now, we disable @wordpress/core-data undo
|
|
149
274
|
// tracking and implement our own Undo button in the snackbar
|
|
150
275
|
// notification.
|
|
151
276
|
|
|
152
|
-
|
|
153
277
|
__unstableMarkNextChangeAsNotPersistent();
|
|
154
278
|
|
|
155
|
-
setAttributes(
|
|
156
|
-
style: newBlockStyles
|
|
157
|
-
});
|
|
279
|
+
setAttributes(newBlockAttributes);
|
|
158
280
|
setUserConfig(() => newUserConfig, {
|
|
159
281
|
undoIgnore: true
|
|
160
282
|
});
|
|
@@ -167,9 +289,7 @@ function PushChangesToGlobalStylesControl({
|
|
|
167
289
|
onClick() {
|
|
168
290
|
__unstableMarkNextChangeAsNotPersistent();
|
|
169
291
|
|
|
170
|
-
setAttributes(
|
|
171
|
-
style: blockStyles
|
|
172
|
-
});
|
|
292
|
+
setAttributes(attributes);
|
|
173
293
|
setUserConfig(() => userConfig, {
|
|
174
294
|
undoIgnore: true
|
|
175
295
|
});
|
|
@@ -177,7 +297,7 @@ function PushChangesToGlobalStylesControl({
|
|
|
177
297
|
|
|
178
298
|
}]
|
|
179
299
|
});
|
|
180
|
-
}, [
|
|
300
|
+
}, [__unstableMarkNextChangeAsNotPersistent, attributes, changes, createSuccessNotice, name, setAttributes, setUserConfig, userConfig]);
|
|
181
301
|
return createElement(BaseControl, {
|
|
182
302
|
className: "edit-site-push-changes-to-global-styles-control",
|
|
183
303
|
help: sprintf( // translators: %s: Title of the block e.g. 'Heading'.
|