@wordpress/editor 14.29.0 → 14.29.1-next.e256d081a.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/components/commands/index.js +0 -28
- package/build/components/commands/index.js.map +1 -1
- package/build/components/post-transform-panel/hooks.js +13 -5
- package/build/components/post-transform-panel/hooks.js.map +1 -1
- package/build/components/post-transform-panel/index.js +14 -5
- package/build/components/post-transform-panel/index.js.map +1 -1
- package/build/store/selectors.js +1 -1
- package/build/store/selectors.js.map +1 -1
- package/build-module/components/commands/index.js +0 -28
- package/build-module/components/commands/index.js.map +1 -1
- package/build-module/components/post-transform-panel/hooks.js +13 -5
- package/build-module/components/post-transform-panel/hooks.js.map +1 -1
- package/build-module/components/post-transform-panel/index.js +14 -5
- package/build-module/components/post-transform-panel/index.js.map +1 -1
- package/build-module/store/selectors.js +1 -1
- package/build-module/store/selectors.js.map +1 -1
- package/build-types/components/commands/index.d.ts.map +1 -1
- package/build-types/components/post-template/hooks.d.ts +1 -1
- package/build-types/components/post-transform-panel/hooks.d.ts +5 -1
- package/build-types/components/post-transform-panel/hooks.d.ts.map +1 -1
- package/build-types/components/post-transform-panel/index.d.ts.map +1 -1
- package/build-types/store/selectors.d.ts +2 -2
- package/build-types/store/selectors.d.ts.map +1 -1
- package/package.json +37 -37
- package/src/components/commands/index.js +0 -29
- package/src/components/post-transform-panel/hooks.js +16 -9
- package/src/components/post-transform-panel/index.js +8 -4
- package/src/store/selectors.js +1 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -25,7 +25,6 @@ import { store as noticesStore } from '@wordpress/notices';
|
|
|
25
25
|
import { store as blockEditorStore } from '@wordpress/block-editor';
|
|
26
26
|
import { store as coreStore, useEntityRecord } from '@wordpress/core-data';
|
|
27
27
|
import { store as interfaceStore } from '@wordpress/interface';
|
|
28
|
-
import { getPath } from '@wordpress/url';
|
|
29
28
|
import { decodeEntities } from '@wordpress/html-entities';
|
|
30
29
|
|
|
31
30
|
/**
|
|
@@ -91,19 +90,6 @@ const getEditorCommandLoader = () =>
|
|
|
91
90
|
const { openModal, enableComplementaryArea, disableComplementaryArea } =
|
|
92
91
|
useDispatch( interfaceStore );
|
|
93
92
|
const { getCurrentPostId } = useSelect( editorStore );
|
|
94
|
-
const { isBlockBasedTheme, canCreateTemplate } = useSelect(
|
|
95
|
-
( select ) => {
|
|
96
|
-
return {
|
|
97
|
-
isBlockBasedTheme:
|
|
98
|
-
select( coreStore ).getCurrentTheme()?.is_block_theme,
|
|
99
|
-
canCreateTemplate: select( coreStore ).canUser( 'create', {
|
|
100
|
-
kind: 'postType',
|
|
101
|
-
name: 'wp_template',
|
|
102
|
-
} ),
|
|
103
|
-
};
|
|
104
|
-
},
|
|
105
|
-
[]
|
|
106
|
-
);
|
|
107
93
|
const allowSwitchEditorMode =
|
|
108
94
|
isCodeEditingEnabled && isRichEditingEnabled;
|
|
109
95
|
|
|
@@ -285,21 +271,6 @@ const getEditorCommandLoader = () =>
|
|
|
285
271
|
},
|
|
286
272
|
} );
|
|
287
273
|
}
|
|
288
|
-
if ( canCreateTemplate && isBlockBasedTheme ) {
|
|
289
|
-
const isSiteEditor = getPath( window.location.href )?.includes(
|
|
290
|
-
'site-editor.php'
|
|
291
|
-
);
|
|
292
|
-
if ( ! isSiteEditor ) {
|
|
293
|
-
commands.push( {
|
|
294
|
-
name: 'core/go-to-site-editor',
|
|
295
|
-
label: __( 'Open Site Editor' ),
|
|
296
|
-
callback: ( { close } ) => {
|
|
297
|
-
close();
|
|
298
|
-
document.location = 'site-editor.php';
|
|
299
|
-
},
|
|
300
|
-
} );
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
274
|
|
|
304
275
|
return {
|
|
305
276
|
commands,
|
|
@@ -40,7 +40,7 @@ function injectThemeAttributeInBlockTemplateContent(
|
|
|
40
40
|
* Filter all patterns and return only the ones that are compatible with the current template.
|
|
41
41
|
*
|
|
42
42
|
* @param {Array} patterns An array of patterns.
|
|
43
|
-
* @param {Object} template The current template.
|
|
43
|
+
* @param {Object} template The current template. Required values are `area`, `name`, and `slug`.
|
|
44
44
|
* @return {Array} Array of patterns that are compatible with the current template.
|
|
45
45
|
*/
|
|
46
46
|
function filterPatterns( patterns, template ) {
|
|
@@ -83,7 +83,7 @@ function preparePatterns( patterns, currentThemeStylesheet ) {
|
|
|
83
83
|
} ) );
|
|
84
84
|
}
|
|
85
85
|
|
|
86
|
-
export function useAvailablePatterns(
|
|
86
|
+
export function useAvailablePatterns( { area, name, slug } ) {
|
|
87
87
|
const { blockPatterns, restBlockPatterns, currentThemeStylesheet } =
|
|
88
88
|
useSelect( ( select ) => {
|
|
89
89
|
const { getEditorSettings } = select( editorStore );
|
|
@@ -104,11 +104,18 @@ export function useAvailablePatterns( template ) {
|
|
|
104
104
|
...( blockPatterns || [] ),
|
|
105
105
|
...( restBlockPatterns || [] ),
|
|
106
106
|
];
|
|
107
|
-
const filteredPatterns = filterPatterns( mergedPatterns,
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
);
|
|
113
|
-
}, [
|
|
107
|
+
const filteredPatterns = filterPatterns( mergedPatterns, {
|
|
108
|
+
area,
|
|
109
|
+
name,
|
|
110
|
+
slug,
|
|
111
|
+
} );
|
|
112
|
+
return preparePatterns( filteredPatterns, currentThemeStylesheet );
|
|
113
|
+
}, [
|
|
114
|
+
area,
|
|
115
|
+
name,
|
|
116
|
+
slug,
|
|
117
|
+
blockPatterns,
|
|
118
|
+
restBlockPatterns,
|
|
119
|
+
currentThemeStylesheet,
|
|
120
|
+
] );
|
|
114
121
|
}
|
|
@@ -34,19 +34,23 @@ function TemplatesList( { availableTemplates, onSelect } ) {
|
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
function PostTransform() {
|
|
37
|
-
const {
|
|
37
|
+
const { area, name, slug, postType, postId } = useSelect( ( select ) => {
|
|
38
38
|
const { getCurrentPostType, getCurrentPostId } = select( editorStore );
|
|
39
39
|
const { getEditedEntityRecord } = select( coreStore );
|
|
40
40
|
const type = getCurrentPostType();
|
|
41
41
|
const id = getCurrentPostId();
|
|
42
|
+
const record = getEditedEntityRecord( 'postType', type, id );
|
|
43
|
+
|
|
42
44
|
return {
|
|
45
|
+
area: record?.area,
|
|
46
|
+
name: record?.name,
|
|
47
|
+
slug: record?.slug,
|
|
43
48
|
postType: type,
|
|
44
49
|
postId: id,
|
|
45
|
-
record: getEditedEntityRecord( 'postType', type, id ),
|
|
46
50
|
};
|
|
47
51
|
}, [] );
|
|
48
52
|
const { editEntityRecord } = useDispatch( coreStore );
|
|
49
|
-
const availablePatterns = useAvailablePatterns(
|
|
53
|
+
const availablePatterns = useAvailablePatterns( { area, name, slug } );
|
|
50
54
|
const onTemplateSelect = async ( selectedTemplate ) => {
|
|
51
55
|
await editEntityRecord( 'postType', postType, postId, {
|
|
52
56
|
blocks: selectedTemplate.blocks,
|
|
@@ -60,7 +64,7 @@ function PostTransform() {
|
|
|
60
64
|
return (
|
|
61
65
|
<PanelBody
|
|
62
66
|
title={ __( 'Design' ) }
|
|
63
|
-
initialOpen={
|
|
67
|
+
initialOpen={ postType === TEMPLATE_PART_POST_TYPE }
|
|
64
68
|
>
|
|
65
69
|
<TemplatesList
|
|
66
70
|
availableTemplates={ availablePatterns }
|
package/src/store/selectors.js
CHANGED
|
@@ -195,7 +195,7 @@ export function getCurrentPostType( state ) {
|
|
|
195
195
|
*
|
|
196
196
|
* @param {Object} state Global application state.
|
|
197
197
|
*
|
|
198
|
-
* @return {?number} ID
|
|
198
|
+
* @return {?(number|string)} The current post ID (number) or template slug (string).
|
|
199
199
|
*/
|
|
200
200
|
export function getCurrentPostId( state ) {
|
|
201
201
|
return state.postId;
|