@wordpress/editor 14.8.5 → 14.8.7
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/bindings/api.js +2 -5
- package/build/bindings/api.js.map +1 -1
- package/build/bindings/pattern-overrides.js +7 -6
- package/build/bindings/pattern-overrides.js.map +1 -1
- package/build/bindings/post-meta.js +16 -16
- package/build/bindings/post-meta.js.map +1 -1
- package/build/components/header/index.js +3 -1
- package/build/components/header/index.js.map +1 -1
- package/build/hooks/pattern-overrides.js +1 -4
- package/build/hooks/pattern-overrides.js.map +1 -1
- package/build-module/bindings/api.js +1 -4
- package/build-module/bindings/api.js.map +1 -1
- package/build-module/bindings/pattern-overrides.js +7 -6
- package/build-module/bindings/pattern-overrides.js.map +1 -1
- package/build-module/bindings/post-meta.js +16 -16
- package/build-module/bindings/post-meta.js.map +1 -1
- package/build-module/components/header/index.js +3 -1
- package/build-module/components/header/index.js.map +1 -1
- package/build-module/hooks/pattern-overrides.js +1 -4
- package/build-module/hooks/pattern-overrides.js.map +1 -1
- package/build-types/bindings/api.d.ts.map +1 -1
- package/build-types/bindings/pattern-overrides.d.ts +5 -4
- package/build-types/bindings/pattern-overrides.d.ts.map +1 -1
- package/build-types/bindings/post-meta.d.ts +8 -8
- package/build-types/bindings/post-meta.d.ts.map +1 -1
- package/build-types/components/header/index.d.ts.map +1 -1
- package/package.json +15 -15
- package/src/bindings/api.js +1 -2
- package/src/bindings/pattern-overrides.js +27 -30
- package/src/bindings/post-meta.js +28 -30
- package/src/components/header/index.js +6 -1
- package/src/hooks/pattern-overrides.js +1 -2
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -15,8 +15,8 @@ import { unlock } from '../lock-unlock';
|
|
|
15
15
|
* If the value is not available based on context, like in templates,
|
|
16
16
|
* it falls back to the default value, label, or key.
|
|
17
17
|
*
|
|
18
|
-
* @param {Object}
|
|
19
|
-
* @param {Object} context
|
|
18
|
+
* @param {Object} select The select function from the data store.
|
|
19
|
+
* @param {Object} context The context provided.
|
|
20
20
|
* @return {Object} List of post meta fields with their value and label.
|
|
21
21
|
*
|
|
22
22
|
* @example
|
|
@@ -34,11 +34,9 @@ import { unlock } from '../lock-unlock';
|
|
|
34
34
|
* }
|
|
35
35
|
* ```
|
|
36
36
|
*/
|
|
37
|
-
function getPostMetaFields(
|
|
38
|
-
const { getEditedEntityRecord } =
|
|
39
|
-
const { getRegisteredPostMeta } = unlock(
|
|
40
|
-
registry.select( coreDataStore )
|
|
41
|
-
);
|
|
37
|
+
function getPostMetaFields( select, context ) {
|
|
38
|
+
const { getEditedEntityRecord } = select( coreDataStore );
|
|
39
|
+
const { getRegisteredPostMeta } = unlock( select( coreDataStore ) );
|
|
42
40
|
|
|
43
41
|
let entityMetaValues;
|
|
44
42
|
// Try to get the current entity meta values.
|
|
@@ -75,8 +73,8 @@ function getPostMetaFields( registry, context ) {
|
|
|
75
73
|
|
|
76
74
|
export default {
|
|
77
75
|
name: 'core/post-meta',
|
|
78
|
-
getValues( {
|
|
79
|
-
const metaFields = getPostMetaFields(
|
|
76
|
+
getValues( { select, context, bindings } ) {
|
|
77
|
+
const metaFields = getPostMetaFields( select, context );
|
|
80
78
|
|
|
81
79
|
const newValues = {};
|
|
82
80
|
for ( const [ attributeName, source ] of Object.entries( bindings ) ) {
|
|
@@ -88,61 +86,61 @@ export default {
|
|
|
88
86
|
}
|
|
89
87
|
return newValues;
|
|
90
88
|
},
|
|
91
|
-
setValues( {
|
|
89
|
+
setValues( { dispatch, context, bindings } ) {
|
|
92
90
|
const newMeta = {};
|
|
93
91
|
Object.values( bindings ).forEach( ( { args, newValue } ) => {
|
|
94
92
|
newMeta[ args.key ] = newValue;
|
|
95
93
|
} );
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
94
|
+
|
|
95
|
+
dispatch( coreDataStore ).editEntityRecord(
|
|
96
|
+
'postType',
|
|
97
|
+
context?.postType,
|
|
98
|
+
context?.postId,
|
|
99
|
+
{
|
|
99
100
|
meta: newMeta,
|
|
100
|
-
}
|
|
101
|
+
}
|
|
102
|
+
);
|
|
101
103
|
},
|
|
102
|
-
canUserEditValue( {
|
|
104
|
+
canUserEditValue( { select, context, args } ) {
|
|
103
105
|
// Lock editing in query loop.
|
|
104
106
|
if ( context?.query || context?.queryId ) {
|
|
105
107
|
return false;
|
|
106
108
|
}
|
|
107
109
|
|
|
108
110
|
const postType =
|
|
109
|
-
context?.postType ||
|
|
110
|
-
registry.select( editorStore ).getCurrentPostType();
|
|
111
|
+
context?.postType || select( editorStore ).getCurrentPostType();
|
|
111
112
|
|
|
112
113
|
// Check that editing is happening in the post editor and not a template.
|
|
113
114
|
if ( postType === 'wp_template' ) {
|
|
114
115
|
return false;
|
|
115
116
|
}
|
|
116
117
|
|
|
117
|
-
const fieldValue = getPostMetaFields(
|
|
118
|
+
const fieldValue = getPostMetaFields( select, context )?.[ args.key ]
|
|
118
119
|
?.value;
|
|
119
120
|
// Empty string or `false` could be a valid value, so we need to check if the field value is undefined.
|
|
120
121
|
if ( fieldValue === undefined ) {
|
|
121
122
|
return false;
|
|
122
123
|
}
|
|
123
124
|
// Check that custom fields metabox is not enabled.
|
|
124
|
-
const areCustomFieldsEnabled =
|
|
125
|
-
|
|
126
|
-
.getEditorSettings().enableCustomFields;
|
|
125
|
+
const areCustomFieldsEnabled =
|
|
126
|
+
select( editorStore ).getEditorSettings().enableCustomFields;
|
|
127
127
|
if ( areCustomFieldsEnabled ) {
|
|
128
128
|
return false;
|
|
129
129
|
}
|
|
130
130
|
|
|
131
131
|
// Check that the user has the capability to edit post meta.
|
|
132
|
-
const canUserEdit =
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
id: context?.postId,
|
|
138
|
-
} );
|
|
132
|
+
const canUserEdit = select( coreDataStore ).canUser( 'update', {
|
|
133
|
+
kind: 'postType',
|
|
134
|
+
name: context?.postType,
|
|
135
|
+
id: context?.postId,
|
|
136
|
+
} );
|
|
139
137
|
if ( ! canUserEdit ) {
|
|
140
138
|
return false;
|
|
141
139
|
}
|
|
142
140
|
|
|
143
141
|
return true;
|
|
144
142
|
},
|
|
145
|
-
getFieldsList( {
|
|
146
|
-
return getPostMetaFields(
|
|
143
|
+
getFieldsList( { select, context } ) {
|
|
144
|
+
return getPostMetaFields( select, context );
|
|
147
145
|
},
|
|
148
146
|
};
|
|
@@ -57,6 +57,7 @@ function Header( {
|
|
|
57
57
|
isPublishSidebarOpened,
|
|
58
58
|
showIconLabels,
|
|
59
59
|
hasFixedToolbar,
|
|
60
|
+
hasBlockSelection,
|
|
60
61
|
isNestedEntity,
|
|
61
62
|
} = useSelect( ( select ) => {
|
|
62
63
|
const { get: getPreference } = select( preferencesStore );
|
|
@@ -72,6 +73,8 @@ function Header( {
|
|
|
72
73
|
isPublishSidebarOpened: _isPublishSidebarOpened(),
|
|
73
74
|
showIconLabels: getPreference( 'core', 'showIconLabels' ),
|
|
74
75
|
hasFixedToolbar: getPreference( 'core', 'fixedToolbar' ),
|
|
76
|
+
hasBlockSelection:
|
|
77
|
+
!! select( blockEditorStore ).getBlockSelectionStart(),
|
|
75
78
|
isNestedEntity:
|
|
76
79
|
!! getEditorSettings().onNavigateToPreviousEntityRecord,
|
|
77
80
|
isZoomedOutView: __unstableGetEditorMode() === 'zoom-out',
|
|
@@ -81,7 +84,9 @@ function Header( {
|
|
|
81
84
|
const [ isBlockToolsCollapsed, setIsBlockToolsCollapsed ] =
|
|
82
85
|
useState( true );
|
|
83
86
|
|
|
84
|
-
const hasCenter =
|
|
87
|
+
const hasCenter =
|
|
88
|
+
( ! hasBlockSelection || isBlockToolsCollapsed ) &&
|
|
89
|
+
! isTooNarrowForDocumentBar;
|
|
85
90
|
const hasBackButton = useHasBackButton();
|
|
86
91
|
|
|
87
92
|
// The edit-post-header classname is only kept for backward compatibilty
|
|
@@ -6,7 +6,7 @@ import { privateApis as patternsPrivateApis } from '@wordpress/patterns';
|
|
|
6
6
|
import { createHigherOrderComponent } from '@wordpress/compose';
|
|
7
7
|
import { useBlockEditingMode } from '@wordpress/block-editor';
|
|
8
8
|
import { useSelect } from '@wordpress/data';
|
|
9
|
-
import {
|
|
9
|
+
import { getBlockBindingsSource } from '@wordpress/blocks';
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Internal dependencies
|
|
@@ -58,7 +58,6 @@ function ControlsWithStoreSubscription( props ) {
|
|
|
58
58
|
const blockEditingMode = useBlockEditingMode();
|
|
59
59
|
const { hasPatternOverridesSource, isEditingSyncedPattern } = useSelect(
|
|
60
60
|
( select ) => {
|
|
61
|
-
const { getBlockBindingsSource } = unlock( select( blocksStore ) );
|
|
62
61
|
const { getCurrentPostType, getEditedPostAttribute } =
|
|
63
62
|
select( editorStore );
|
|
64
63
|
|