@wordpress/editor 14.18.0 → 14.19.1
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/CHANGELOG.md +2 -0
- package/README.md +2 -0
- package/build/components/document-bar/index.js +3 -2
- package/build/components/document-bar/index.js.map +1 -1
- package/build/components/document-outline/index.js +37 -17
- package/build/components/document-outline/index.js.map +1 -1
- package/build/components/document-outline/item.js +32 -20
- package/build/components/document-outline/item.js.map +1 -1
- package/build/components/entities-saved-states/entity-record-item.js +4 -3
- package/build/components/entities-saved-states/entity-record-item.js.map +1 -1
- package/build/components/entities-saved-states/entity-type-list.js +2 -1
- package/build/components/entities-saved-states/entity-type-list.js.map +1 -1
- package/build/components/entities-saved-states/index.js +66 -42
- package/build/components/entities-saved-states/index.js.map +1 -1
- package/build/components/post-actions/index.js +19 -28
- package/build/components/post-actions/index.js.map +1 -1
- package/build/components/post-card-panel/index.js +5 -5
- package/build/components/post-card-panel/index.js.map +1 -1
- package/build/components/post-featured-image/index.js +4 -2
- package/build/components/post-featured-image/index.js.map +1 -1
- package/build/components/post-template/block-theme.js +68 -48
- package/build/components/post-template/block-theme.js.map +1 -1
- package/build/components/post-template/classic-theme.js +30 -18
- package/build/components/post-template/classic-theme.js.map +1 -1
- package/build/components/post-template/create-new-template-modal.js +3 -1
- package/build/components/post-template/create-new-template-modal.js.map +1 -1
- package/build/components/post-template/panel.js +3 -11
- package/build/components/post-template/panel.js.map +1 -1
- package/build/components/preferences-modal/block-visibility.js +2 -1
- package/build/components/preferences-modal/block-visibility.js.map +1 -1
- package/build/components/preferences-modal/index.js +1 -1
- package/build/components/preferences-modal/index.js.map +1 -1
- package/build/components/preview-dropdown/index.js +6 -3
- package/build/components/preview-dropdown/index.js.map +1 -1
- package/build/components/provider/index.js +19 -18
- package/build/components/provider/index.js.map +1 -1
- package/build/components/sidebar/header.js +1 -1
- package/build/components/sidebar/header.js.map +1 -1
- package/build/components/sidebar/index.js +1 -1
- package/build/components/sidebar/index.js.map +1 -1
- package/build/components/start-page-options/index.js +148 -23
- package/build/components/start-page-options/index.js.map +1 -1
- package/build/components/visual-editor/edit-template-blocks-notification.js +1 -1
- package/build/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
- package/build/store/private-actions.js +29 -2
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-selectors.js +45 -1
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/selectors.js +8 -7
- package/build/store/selectors.js.map +1 -1
- package/build/utils/media-upload/index.js +5 -2
- package/build/utils/media-upload/index.js.map +1 -1
- package/build-module/components/document-bar/index.js +3 -2
- package/build-module/components/document-bar/index.js.map +1 -1
- package/build-module/components/document-outline/index.js +38 -18
- package/build-module/components/document-outline/index.js.map +1 -1
- package/build-module/components/document-outline/item.js +32 -20
- package/build-module/components/document-outline/item.js.map +1 -1
- package/build-module/components/entities-saved-states/entity-record-item.js +4 -3
- package/build-module/components/entities-saved-states/entity-record-item.js.map +1 -1
- package/build-module/components/entities-saved-states/entity-type-list.js +2 -1
- package/build-module/components/entities-saved-states/entity-type-list.js.map +1 -1
- package/build-module/components/entities-saved-states/index.js +67 -43
- package/build-module/components/entities-saved-states/index.js.map +1 -1
- package/build-module/components/post-actions/index.js +19 -28
- package/build-module/components/post-actions/index.js.map +1 -1
- package/build-module/components/post-card-panel/index.js +5 -5
- package/build-module/components/post-card-panel/index.js.map +1 -1
- package/build-module/components/post-featured-image/index.js +4 -2
- package/build-module/components/post-featured-image/index.js.map +1 -1
- package/build-module/components/post-template/block-theme.js +68 -48
- package/build-module/components/post-template/block-theme.js.map +1 -1
- package/build-module/components/post-template/classic-theme.js +30 -18
- package/build-module/components/post-template/classic-theme.js.map +1 -1
- package/build-module/components/post-template/create-new-template-modal.js +3 -1
- package/build-module/components/post-template/create-new-template-modal.js.map +1 -1
- package/build-module/components/post-template/panel.js +3 -11
- package/build-module/components/post-template/panel.js.map +1 -1
- package/build-module/components/preferences-modal/block-visibility.js +2 -1
- package/build-module/components/preferences-modal/block-visibility.js.map +1 -1
- package/build-module/components/preferences-modal/index.js +1 -1
- package/build-module/components/preferences-modal/index.js.map +1 -1
- package/build-module/components/preview-dropdown/index.js +6 -3
- package/build-module/components/preview-dropdown/index.js.map +1 -1
- package/build-module/components/provider/index.js +19 -18
- package/build-module/components/provider/index.js.map +1 -1
- package/build-module/components/sidebar/header.js +1 -1
- package/build-module/components/sidebar/header.js.map +1 -1
- package/build-module/components/sidebar/index.js +1 -1
- package/build-module/components/sidebar/index.js.map +1 -1
- package/build-module/components/start-page-options/index.js +148 -24
- package/build-module/components/start-page-options/index.js.map +1 -1
- package/build-module/components/visual-editor/edit-template-blocks-notification.js +1 -1
- package/build-module/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
- package/build-module/store/private-actions.js +25 -0
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-selectors.js +44 -1
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/selectors.js +8 -7
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/media-upload/index.js +5 -2
- package/build-module/utils/media-upload/index.js.map +1 -1
- package/build-style/style-rtl.css +51 -9
- package/build-style/style.css +51 -9
- package/build-types/components/document-outline/index.d.ts.map +1 -1
- package/build-types/components/document-outline/item.d.ts +2 -1
- package/build-types/components/document-outline/item.d.ts.map +1 -1
- package/build-types/components/entities-saved-states/entity-record-item.d.ts.map +1 -1
- package/build-types/components/entities-saved-states/entity-type-list.d.ts.map +1 -1
- package/build-types/components/entities-saved-states/index.d.ts +6 -2
- package/build-types/components/entities-saved-states/index.d.ts.map +1 -1
- package/build-types/components/post-actions/index.d.ts.map +1 -1
- package/build-types/components/post-card-panel/index.d.ts.map +1 -1
- package/build-types/components/post-template/block-theme.d.ts.map +1 -1
- package/build-types/components/post-template/classic-theme.d.ts.map +1 -1
- package/build-types/components/post-template/create-new-template-modal.d.ts.map +1 -1
- package/build-types/components/post-template/panel.d.ts.map +1 -1
- package/build-types/components/preferences-modal/block-visibility.d.ts.map +1 -1
- package/build-types/components/preview-dropdown/index.d.ts.map +1 -1
- package/build-types/components/provider/index.d.ts.map +1 -1
- package/build-types/components/start-page-options/index.d.ts +2 -1
- package/build-types/components/start-page-options/index.d.ts.map +1 -1
- package/build-types/store/private-actions.d.ts +4 -0
- package/build-types/store/private-actions.d.ts.map +1 -1
- package/build-types/store/private-selectors.d.ts +13 -0
- package/build-types/store/private-selectors.d.ts.map +1 -1
- package/build-types/store/selectors.d.ts.map +1 -1
- package/build-types/utils/media-upload/index.d.ts +3 -1
- package/build-types/utils/media-upload/index.d.ts.map +1 -1
- package/package.json +37 -37
- package/src/components/document-bar/index.js +2 -2
- package/src/components/document-outline/index.js +49 -17
- package/src/components/document-outline/item.js +38 -23
- package/src/components/document-outline/style.scss +2 -0
- package/src/components/entities-saved-states/entity-record-item.js +2 -4
- package/src/components/entities-saved-states/entity-type-list.js +6 -2
- package/src/components/entities-saved-states/index.js +98 -58
- package/src/components/entities-saved-states/style.scss +40 -5
- package/src/components/post-actions/index.js +19 -37
- package/src/components/post-card-panel/index.js +9 -7
- package/src/components/post-featured-image/index.js +2 -0
- package/src/components/post-template/block-theme.js +76 -56
- package/src/components/post-template/classic-theme.js +31 -15
- package/src/components/post-template/create-new-template-modal.js +1 -0
- package/src/components/post-template/panel.js +2 -12
- package/src/components/post-text-editor/style.scss +0 -2
- package/src/components/preferences-modal/block-visibility.js +2 -1
- package/src/components/preferences-modal/index.js +1 -1
- package/src/components/preview-dropdown/index.js +8 -6
- package/src/components/provider/index.js +21 -30
- package/src/components/sidebar/header.js +1 -1
- package/src/components/sidebar/index.js +1 -1
- package/src/components/start-page-options/index.js +149 -23
- package/src/components/start-page-options/style.scss +27 -0
- package/src/components/visual-editor/edit-template-blocks-notification.js +1 -1
- package/src/store/private-actions.js +33 -0
- package/src/store/private-selectors.js +59 -4
- package/src/store/selectors.js +9 -14
- package/src/utils/media-upload/index.js +3 -0
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1,3 +1,30 @@
|
|
|
1
|
+
$actions-height: 92px;
|
|
2
|
+
|
|
3
|
+
.editor-start-page-options__modal {
|
|
4
|
+
.editor-start-page-options__modal__actions {
|
|
5
|
+
position: absolute;
|
|
6
|
+
bottom: 0;
|
|
7
|
+
width: 100%;
|
|
8
|
+
height: $actions-height;
|
|
9
|
+
background-color: $white;
|
|
10
|
+
margin-left: - $grid-unit-40;
|
|
11
|
+
margin-right: - $grid-unit-40;
|
|
12
|
+
padding-left: $grid-unit-40;
|
|
13
|
+
padding-right: $grid-unit-40;
|
|
14
|
+
border-top: 1px solid $gray-300;
|
|
15
|
+
z-index: z-index(".editor-start-page-options__modal__actions");
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.block-editor-block-patterns-list {
|
|
19
|
+
// Since the actions container is positioned absolutely,
|
|
20
|
+
// this padding bottom ensures that the content wrapper will properly
|
|
21
|
+
// detect overflowing content and start showing scrollbars at the right
|
|
22
|
+
// moment. Without this padding, the content would render under the actions
|
|
23
|
+
// bar without causing the wrapper to show a scrollbar.
|
|
24
|
+
padding-bottom: $actions-height;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
1
28
|
// 2 column masonry layout.
|
|
2
29
|
.editor-start-page-options__modal-content .block-editor-block-patterns-list {
|
|
3
30
|
column-count: 2;
|
|
@@ -94,7 +94,7 @@ export default function EditTemplateBlocksNotification( { contentRef } ) {
|
|
|
94
94
|
size="medium"
|
|
95
95
|
>
|
|
96
96
|
{ __(
|
|
97
|
-
'You’ve tried to select a block that is part of a template
|
|
97
|
+
'You’ve tried to select a block that is part of a template that may be used elsewhere on your site. Would you like to edit the template?'
|
|
98
98
|
) }
|
|
99
99
|
</ConfirmDialog>
|
|
100
100
|
);
|
|
@@ -492,3 +492,36 @@ export const removeTemplates =
|
|
|
492
492
|
.createErrorNotice( errorMessage, { type: 'snackbar' } );
|
|
493
493
|
}
|
|
494
494
|
};
|
|
495
|
+
|
|
496
|
+
/**
|
|
497
|
+
* Set the default rendering mode preference for the current post type.
|
|
498
|
+
*
|
|
499
|
+
* @param {string} mode The rendering mode to set as default.
|
|
500
|
+
*/
|
|
501
|
+
export const setDefaultRenderingMode =
|
|
502
|
+
( mode ) =>
|
|
503
|
+
( { select, registry } ) => {
|
|
504
|
+
const postType = select.getCurrentPostType();
|
|
505
|
+
const theme = registry
|
|
506
|
+
.select( coreStore )
|
|
507
|
+
.getCurrentTheme()?.stylesheet;
|
|
508
|
+
const renderingModes =
|
|
509
|
+
registry
|
|
510
|
+
.select( preferencesStore )
|
|
511
|
+
.get( 'core', 'renderingModes' )?.[ theme ] ?? {};
|
|
512
|
+
|
|
513
|
+
if ( renderingModes[ postType ] === mode ) {
|
|
514
|
+
return;
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
const newModes = {
|
|
518
|
+
[ theme ]: {
|
|
519
|
+
...renderingModes,
|
|
520
|
+
[ postType ]: mode,
|
|
521
|
+
},
|
|
522
|
+
};
|
|
523
|
+
|
|
524
|
+
registry
|
|
525
|
+
.dispatch( preferencesStore )
|
|
526
|
+
.set( 'core', 'renderingModes', newModes );
|
|
527
|
+
};
|
|
@@ -16,6 +16,7 @@ import {
|
|
|
16
16
|
verse,
|
|
17
17
|
} from '@wordpress/icons';
|
|
18
18
|
import { store as coreStore } from '@wordpress/core-data';
|
|
19
|
+
import { store as preferencesStore } from '@wordpress/preferences';
|
|
19
20
|
|
|
20
21
|
/**
|
|
21
22
|
* Internal dependencies
|
|
@@ -34,6 +35,11 @@ const EMPTY_INSERTION_POINT = {
|
|
|
34
35
|
filterValue: undefined,
|
|
35
36
|
};
|
|
36
37
|
|
|
38
|
+
/**
|
|
39
|
+
* These are rendering modes that the editor supports.
|
|
40
|
+
*/
|
|
41
|
+
const RENDERING_MODES = [ 'post-only', 'template-locked' ];
|
|
42
|
+
|
|
37
43
|
/**
|
|
38
44
|
* Get the inserter.
|
|
39
45
|
*
|
|
@@ -99,10 +105,8 @@ export const getPostIcon = createRegistrySelector(
|
|
|
99
105
|
postType === 'wp_template'
|
|
100
106
|
) {
|
|
101
107
|
const templateAreas =
|
|
102
|
-
select( coreStore ).
|
|
103
|
-
|
|
104
|
-
'__unstableBase'
|
|
105
|
-
)?.default_template_part_areas || [];
|
|
108
|
+
select( coreStore ).getCurrentTheme()
|
|
109
|
+
?.default_template_part_areas || [];
|
|
106
110
|
|
|
107
111
|
const areaData = templateAreas.find(
|
|
108
112
|
( item ) => options.area === item.area
|
|
@@ -215,3 +219,54 @@ export const getPostBlocksByName = createRegistrySelector( ( select ) =>
|
|
|
215
219
|
() => [ select( blockEditorStore ).getBlocks() ]
|
|
216
220
|
)
|
|
217
221
|
);
|
|
222
|
+
|
|
223
|
+
/**
|
|
224
|
+
* Returns the default rendering mode for a post type by user preference or post type configuration.
|
|
225
|
+
*
|
|
226
|
+
* @param {Object} state Global application state.
|
|
227
|
+
* @param {string} postType The post type.
|
|
228
|
+
*
|
|
229
|
+
* @return {string} The default rendering mode. Returns `undefined` while resolving value.
|
|
230
|
+
*/
|
|
231
|
+
export const getDefaultRenderingMode = createRegistrySelector(
|
|
232
|
+
( select ) => ( state, postType ) => {
|
|
233
|
+
const { getPostType, getCurrentTheme, hasFinishedResolution } =
|
|
234
|
+
select( coreStore );
|
|
235
|
+
|
|
236
|
+
// This needs to be called before `hasFinishedResolution`.
|
|
237
|
+
// eslint-disable-next-line @wordpress/no-unused-vars-before-return
|
|
238
|
+
const currentTheme = getCurrentTheme();
|
|
239
|
+
// eslint-disable-next-line @wordpress/no-unused-vars-before-return
|
|
240
|
+
const postTypeEntity = getPostType( postType );
|
|
241
|
+
|
|
242
|
+
// Wait for the post type and theme resolution.
|
|
243
|
+
if (
|
|
244
|
+
! hasFinishedResolution( 'getPostType', [ postType ] ) ||
|
|
245
|
+
! hasFinishedResolution( 'getCurrentTheme' )
|
|
246
|
+
) {
|
|
247
|
+
return undefined;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
const theme = currentTheme?.stylesheet;
|
|
251
|
+
const defaultModePreference = select( preferencesStore ).get(
|
|
252
|
+
'core',
|
|
253
|
+
'renderingModes'
|
|
254
|
+
)?.[ theme ]?.[ postType ];
|
|
255
|
+
const postTypeDefaultMode = Array.isArray(
|
|
256
|
+
postTypeEntity?.supports?.editor
|
|
257
|
+
)
|
|
258
|
+
? postTypeEntity.supports.editor.find(
|
|
259
|
+
( features ) => 'default-mode' in features
|
|
260
|
+
)?.[ 'default-mode' ]
|
|
261
|
+
: undefined;
|
|
262
|
+
|
|
263
|
+
const defaultMode = defaultModePreference || postTypeDefaultMode;
|
|
264
|
+
|
|
265
|
+
// Fallback gracefully to 'post-only' when rendering mode is not supported.
|
|
266
|
+
if ( ! RENDERING_MODES.includes( defaultMode ) ) {
|
|
267
|
+
return 'post-only';
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
return defaultMode;
|
|
271
|
+
}
|
|
272
|
+
);
|
package/src/store/selectors.js
CHANGED
|
@@ -1709,11 +1709,10 @@ export const __experimentalGetDefaultTemplateTypes = createRegistrySelector(
|
|
|
1709
1709
|
{
|
|
1710
1710
|
since: '6.8',
|
|
1711
1711
|
alternative:
|
|
1712
|
-
"select('core/core-data').
|
|
1712
|
+
"select('core/core-data').getCurrentTheme()?.default_template_types",
|
|
1713
1713
|
}
|
|
1714
1714
|
);
|
|
1715
|
-
return select( coreStore ).
|
|
1716
|
-
?.default_template_types;
|
|
1715
|
+
return select( coreStore ).getCurrentTheme()?.default_template_types;
|
|
1717
1716
|
}
|
|
1718
1717
|
);
|
|
1719
1718
|
|
|
@@ -1732,12 +1731,12 @@ export const __experimentalGetDefaultTemplatePartAreas = createRegistrySelector(
|
|
|
1732
1731
|
{
|
|
1733
1732
|
since: '6.8',
|
|
1734
1733
|
alternative:
|
|
1735
|
-
"select('core/core-data').
|
|
1734
|
+
"select('core/core-data').getCurrentTheme()?.default_template_part_areas",
|
|
1736
1735
|
}
|
|
1737
1736
|
);
|
|
1738
1737
|
|
|
1739
1738
|
const areas =
|
|
1740
|
-
select( coreStore ).
|
|
1739
|
+
select( coreStore ).getCurrentTheme()
|
|
1741
1740
|
?.default_template_part_areas || [];
|
|
1742
1741
|
|
|
1743
1742
|
return areas.map( ( item ) => {
|
|
@@ -1763,10 +1762,8 @@ export const __experimentalGetDefaultTemplateType = createRegistrySelector(
|
|
|
1763
1762
|
since: '6.8',
|
|
1764
1763
|
}
|
|
1765
1764
|
);
|
|
1766
|
-
const templateTypes =
|
|
1767
|
-
|
|
1768
|
-
'__unstableBase'
|
|
1769
|
-
)?.default_template_types;
|
|
1765
|
+
const templateTypes =
|
|
1766
|
+
select( coreStore ).getCurrentTheme()?.default_template_types;
|
|
1770
1767
|
|
|
1771
1768
|
if ( ! templateTypes ) {
|
|
1772
1769
|
return EMPTY_OBJECT;
|
|
@@ -1799,13 +1796,11 @@ export const __experimentalGetTemplateInfo = createRegistrySelector(
|
|
|
1799
1796
|
return EMPTY_OBJECT;
|
|
1800
1797
|
}
|
|
1801
1798
|
|
|
1802
|
-
const
|
|
1803
|
-
select( coreStore ).getEntityRecord( 'root', '__unstableBase' )
|
|
1804
|
-
?.default_template_types || [];
|
|
1799
|
+
const currentTheme = select( coreStore ).getCurrentTheme();
|
|
1805
1800
|
|
|
1801
|
+
const templateTypes = currentTheme?.default_template_types || [];
|
|
1806
1802
|
const templateAreas =
|
|
1807
|
-
|
|
1808
|
-
?.default_template_part_areas || [];
|
|
1803
|
+
currentTheme?.default_template_part_areas || [];
|
|
1809
1804
|
|
|
1810
1805
|
return getTemplateInfo( {
|
|
1811
1806
|
template,
|
|
@@ -28,6 +28,7 @@ const noop = () => {};
|
|
|
28
28
|
* @param {Function} $0.onError Function called when an error happens.
|
|
29
29
|
* @param {Function} $0.onFileChange Function called each time a file or a temporary representation of the file is available.
|
|
30
30
|
* @param {Function} $0.onSuccess Function called after the final representation of the file is available.
|
|
31
|
+
* @param {boolean} $0.multiple Whether to allow multiple files to be uploaded.
|
|
31
32
|
*/
|
|
32
33
|
export default function mediaUpload( {
|
|
33
34
|
additionalData = {},
|
|
@@ -37,6 +38,7 @@ export default function mediaUpload( {
|
|
|
37
38
|
onError = noop,
|
|
38
39
|
onFileChange,
|
|
39
40
|
onSuccess,
|
|
41
|
+
multiple = true,
|
|
40
42
|
} ) {
|
|
41
43
|
const { getCurrentPost, getEditorSettings } = select( editorStore );
|
|
42
44
|
const {
|
|
@@ -92,5 +94,6 @@ export default function mediaUpload( {
|
|
|
92
94
|
onError( message );
|
|
93
95
|
},
|
|
94
96
|
wpAllowedMimeTypes,
|
|
97
|
+
multiple,
|
|
95
98
|
} );
|
|
96
99
|
}
|