@wordpress/edit-site 4.1.0-next.e230fbab09.0 → 4.2.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/CHANGELOG.md +4 -0
- package/build/components/add-new-template/new-template-part.js +2 -9
- package/build/components/add-new-template/new-template-part.js.map +1 -1
- package/build/components/add-new-template/new-template.js +28 -12
- package/build/components/add-new-template/new-template.js.map +1 -1
- package/build/components/editor/index.js +9 -3
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/border-panel.js +25 -24
- package/build/components/global-styles/border-panel.js.map +1 -1
- package/build/components/global-styles/dimensions-panel.js +1 -28
- package/build/components/global-styles/dimensions-panel.js.map +1 -1
- package/build/components/header/document-actions/index.js +13 -11
- package/build/components/header/document-actions/index.js.map +1 -1
- package/build/components/header/index.js +5 -3
- package/build/components/header/index.js.map +1 -1
- package/build/components/header/more-menu/index.js +9 -1
- package/build/components/header/more-menu/index.js.map +1 -1
- package/build/components/header/more-menu/site-export.js +5 -2
- package/build/components/header/more-menu/site-export.js.map +1 -1
- package/build/components/header/plugin-more-menu-item/index.js +5 -0
- package/build/components/header/plugin-more-menu-item/index.js.map +1 -1
- package/build/components/list/actions/rename-menu-item.js +3 -10
- package/build/components/list/actions/rename-menu-item.js.map +1 -1
- package/build/components/preferences-modal/enable-feature.js +40 -0
- package/build/components/preferences-modal/enable-feature.js.map +1 -0
- package/build/components/preferences-modal/index.js +68 -0
- package/build/components/preferences-modal/index.js.map +1 -0
- package/build/index.js +1 -0
- package/build/index.js.map +1 -1
- package/build/store/actions.js +3 -3
- package/build/store/actions.js.map +1 -1
- package/build/store/selectors.js +3 -1
- package/build/store/selectors.js.map +1 -1
- package/build-module/components/add-new-template/new-template-part.js +3 -10
- package/build-module/components/add-new-template/new-template-part.js.map +1 -1
- package/build-module/components/add-new-template/new-template.js +27 -12
- package/build-module/components/add-new-template/new-template.js.map +1 -1
- package/build-module/components/editor/index.js +8 -3
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/border-panel.js +27 -26
- package/build-module/components/global-styles/border-panel.js.map +1 -1
- package/build-module/components/global-styles/dimensions-panel.js +2 -29
- package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
- package/build-module/components/header/document-actions/index.js +13 -11
- package/build-module/components/header/document-actions/index.js.map +1 -1
- package/build-module/components/header/index.js +5 -3
- package/build-module/components/header/index.js.map +1 -1
- package/build-module/components/header/more-menu/index.js +8 -1
- package/build-module/components/header/more-menu/index.js.map +1 -1
- package/build-module/components/header/more-menu/site-export.js +5 -2
- package/build-module/components/header/more-menu/site-export.js.map +1 -1
- package/build-module/components/header/plugin-more-menu-item/index.js +4 -0
- package/build-module/components/header/plugin-more-menu-item/index.js.map +1 -1
- package/build-module/components/list/actions/rename-menu-item.js +4 -11
- package/build-module/components/list/actions/rename-menu-item.js.map +1 -1
- package/build-module/components/preferences-modal/enable-feature.js +27 -0
- package/build-module/components/preferences-modal/enable-feature.js.map +1 -0
- package/build-module/components/preferences-modal/index.js +57 -0
- package/build-module/components/preferences-modal/index.js.map +1 -0
- package/build-module/index.js +1 -0
- package/build-module/index.js.map +1 -1
- package/build-module/store/actions.js +3 -3
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/selectors.js +3 -1
- package/build-module/store/selectors.js.map +1 -1
- package/build-style/style-rtl.css +35 -1
- package/build-style/style.css +35 -1
- package/package.json +29 -29
- package/src/components/add-new-template/new-template-part.js +3 -12
- package/src/components/add-new-template/new-template.js +49 -12
- package/src/components/editor/index.js +13 -0
- package/src/components/global-styles/border-panel.js +32 -26
- package/src/components/global-styles/dimensions-panel.js +1 -34
- package/src/components/header/document-actions/index.js +14 -10
- package/src/components/header/index.js +6 -1
- package/src/components/header/more-menu/index.js +15 -0
- package/src/components/header/more-menu/site-export.js +13 -2
- package/src/components/header/plugin-more-menu-item/index.js +2 -0
- package/src/components/header/style.scss +45 -0
- package/src/components/list/actions/rename-menu-item.js +3 -13
- package/src/components/preferences-modal/enable-feature.js +24 -0
- package/src/components/preferences-modal/index.js +76 -0
- package/src/index.js +1 -0
- package/src/store/actions.js +4 -4
- package/src/store/selectors.js +10 -0
- package/src/store/test/selectors.js +4 -0
|
@@ -163,3 +163,48 @@ body.is-navigation-sidebar-open {
|
|
|
163
163
|
}
|
|
164
164
|
}
|
|
165
165
|
}
|
|
166
|
+
|
|
167
|
+
// Button text label styles
|
|
168
|
+
|
|
169
|
+
.show-icon-labels .edit-site-header {
|
|
170
|
+
.components-button.has-icon {
|
|
171
|
+
width: auto;
|
|
172
|
+
|
|
173
|
+
// Hide the button icons when labels are set to display...
|
|
174
|
+
svg {
|
|
175
|
+
display: none;
|
|
176
|
+
}
|
|
177
|
+
// ... and display labels.
|
|
178
|
+
&::after {
|
|
179
|
+
content: attr(aria-label);
|
|
180
|
+
}
|
|
181
|
+
&[aria-disabled="true"] {
|
|
182
|
+
background-color: transparent;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
.is-tertiary {
|
|
186
|
+
&:active {
|
|
187
|
+
box-shadow: 0 0 0 1.5px var(--wp-admin-theme-color);
|
|
188
|
+
background-color: transparent;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
// Some margins and padding have to be adjusted so the buttons can still fit on smaller screens.
|
|
192
|
+
.edit-site-save-button__button {
|
|
193
|
+
padding-left: 6px;
|
|
194
|
+
padding-right: 6px;
|
|
195
|
+
margin-right: $grid-unit-05;
|
|
196
|
+
}
|
|
197
|
+
.block-editor-post-preview__button-toggle {
|
|
198
|
+
margin-right: $grid-unit-05;
|
|
199
|
+
}
|
|
200
|
+
// The inserter and the template details toggle have custom labels, different from their aria-label, so we don't want to display both.
|
|
201
|
+
.edit-site-header-toolbar__inserter-toggle.edit-site-header-toolbar__inserter-toggle,
|
|
202
|
+
.edit-site-document-actions__get-info.edit-site-document-actions__get-info.edit-site-document-actions__get-info {
|
|
203
|
+
&::after {
|
|
204
|
+
content: none;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
height: 36px;
|
|
208
|
+
padding: 0 6px;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { __ } from '@wordpress/i18n';
|
|
5
5
|
import { useState } from '@wordpress/element';
|
|
6
|
-
import { useDispatch
|
|
6
|
+
import { useDispatch } from '@wordpress/data';
|
|
7
7
|
import {
|
|
8
8
|
Button,
|
|
9
9
|
Flex,
|
|
@@ -19,7 +19,6 @@ export default function RenameMenuItem( { template, onClose } ) {
|
|
|
19
19
|
const [ title, setTitle ] = useState( () => template.title.rendered );
|
|
20
20
|
const [ isModalOpen, setIsModalOpen ] = useState( false );
|
|
21
21
|
|
|
22
|
-
const { getLastEntitySaveError } = useSelect( coreStore );
|
|
23
22
|
const { editEntityRecord, saveEditedEntityRecord } = useDispatch(
|
|
24
23
|
coreStore
|
|
25
24
|
);
|
|
@@ -48,19 +47,10 @@ export default function RenameMenuItem( { template, onClose } ) {
|
|
|
48
47
|
await saveEditedEntityRecord(
|
|
49
48
|
'postType',
|
|
50
49
|
template.type,
|
|
51
|
-
template.id
|
|
50
|
+
template.id,
|
|
51
|
+
{ throwOnError: true }
|
|
52
52
|
);
|
|
53
53
|
|
|
54
|
-
const lastError = getLastEntitySaveError(
|
|
55
|
-
'postType',
|
|
56
|
-
template.type,
|
|
57
|
-
template.id
|
|
58
|
-
);
|
|
59
|
-
|
|
60
|
-
if ( lastError ) {
|
|
61
|
-
throw lastError;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
54
|
createSuccessNotice( __( 'Entity renamed.' ), {
|
|
65
55
|
type: 'snackbar',
|
|
66
56
|
} );
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { useSelect, useDispatch } from '@wordpress/data';
|
|
5
|
+
import { ___unstablePreferencesModalBaseOption as BaseOption } from '@wordpress/interface';
|
|
6
|
+
import { store as preferencesStore } from '@wordpress/preferences';
|
|
7
|
+
|
|
8
|
+
export default function EnableFeature( props ) {
|
|
9
|
+
const { featureName, ...remainingProps } = props;
|
|
10
|
+
const isChecked = useSelect(
|
|
11
|
+
( select ) =>
|
|
12
|
+
!! select( preferencesStore ).get( 'core/edit-site', featureName ),
|
|
13
|
+
[ featureName ]
|
|
14
|
+
);
|
|
15
|
+
const { toggle } = useDispatch( preferencesStore );
|
|
16
|
+
const onChange = () => toggle( 'core/edit-site', featureName );
|
|
17
|
+
return (
|
|
18
|
+
<BaseOption
|
|
19
|
+
onChange={ onChange }
|
|
20
|
+
isChecked={ isChecked }
|
|
21
|
+
{ ...remainingProps }
|
|
22
|
+
/>
|
|
23
|
+
);
|
|
24
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import {
|
|
5
|
+
PreferencesModal,
|
|
6
|
+
PreferencesModalTabs,
|
|
7
|
+
PreferencesModalSection,
|
|
8
|
+
} from '@wordpress/interface';
|
|
9
|
+
import { useMemo } from '@wordpress/element';
|
|
10
|
+
import { __ } from '@wordpress/i18n';
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Internal dependencies
|
|
14
|
+
*/
|
|
15
|
+
import EnableFeature from './enable-feature';
|
|
16
|
+
|
|
17
|
+
export default function EditSitePreferencesModal( {
|
|
18
|
+
isModalActive,
|
|
19
|
+
toggleModal,
|
|
20
|
+
} ) {
|
|
21
|
+
const sections = useMemo( () => [
|
|
22
|
+
{
|
|
23
|
+
name: 'general',
|
|
24
|
+
tabLabel: __( 'General' ),
|
|
25
|
+
content: (
|
|
26
|
+
<PreferencesModalSection
|
|
27
|
+
title={ __( 'Appearance' ) }
|
|
28
|
+
description={ __(
|
|
29
|
+
'Customize options related to the block editor interface and editing flow.'
|
|
30
|
+
) }
|
|
31
|
+
>
|
|
32
|
+
<EnableFeature
|
|
33
|
+
featureName="focusMode"
|
|
34
|
+
help={ __(
|
|
35
|
+
'Highlights the current block and fades other content.'
|
|
36
|
+
) }
|
|
37
|
+
label={ __( 'Spotlight mode' ) }
|
|
38
|
+
/>
|
|
39
|
+
<EnableFeature
|
|
40
|
+
featureName="showIconLabels"
|
|
41
|
+
label={ __( 'Show button text labels' ) }
|
|
42
|
+
help={ __( 'Show text instead of icons on buttons' ) }
|
|
43
|
+
/>
|
|
44
|
+
</PreferencesModalSection>
|
|
45
|
+
),
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: 'blocks',
|
|
49
|
+
tabLabel: __( 'Blocks' ),
|
|
50
|
+
content: (
|
|
51
|
+
<PreferencesModalSection
|
|
52
|
+
title={ __( 'Block interactions' ) }
|
|
53
|
+
description={ __(
|
|
54
|
+
'Customize how you interact with blocks in the block library and editing canvas.'
|
|
55
|
+
) }
|
|
56
|
+
>
|
|
57
|
+
<EnableFeature
|
|
58
|
+
featureName="keepCaretInsideBlock"
|
|
59
|
+
help={ __(
|
|
60
|
+
'Aids screen readers by stopping text caret from leaving blocks.'
|
|
61
|
+
) }
|
|
62
|
+
label={ __( 'Contain text cursor inside block' ) }
|
|
63
|
+
/>
|
|
64
|
+
</PreferencesModalSection>
|
|
65
|
+
),
|
|
66
|
+
},
|
|
67
|
+
] );
|
|
68
|
+
if ( ! isModalActive ) {
|
|
69
|
+
return null;
|
|
70
|
+
}
|
|
71
|
+
return (
|
|
72
|
+
<PreferencesModal closeModal={ toggleModal }>
|
|
73
|
+
<PreferencesModalTabs sections={ sections } />
|
|
74
|
+
</PreferencesModal>
|
|
75
|
+
);
|
|
76
|
+
}
|
package/src/index.js
CHANGED
package/src/store/actions.js
CHANGED
|
@@ -333,11 +333,11 @@ export const revertTemplate = (
|
|
|
333
333
|
}
|
|
334
334
|
|
|
335
335
|
try {
|
|
336
|
-
const
|
|
336
|
+
const templateEntityConfig = registry
|
|
337
337
|
.select( coreStore )
|
|
338
|
-
.
|
|
338
|
+
.getEntityConfig( 'postType', template.type );
|
|
339
339
|
|
|
340
|
-
if ( !
|
|
340
|
+
if ( ! templateEntityConfig ) {
|
|
341
341
|
registry
|
|
342
342
|
.dispatch( noticesStore )
|
|
343
343
|
.createErrorNotice(
|
|
@@ -350,7 +350,7 @@ export const revertTemplate = (
|
|
|
350
350
|
}
|
|
351
351
|
|
|
352
352
|
const fileTemplatePath = addQueryArgs(
|
|
353
|
-
`${
|
|
353
|
+
`${ templateEntityConfig.baseURL }/${ template.id }`,
|
|
354
354
|
{ context: 'edit', source: 'theme' }
|
|
355
355
|
);
|
|
356
356
|
|
package/src/store/selectors.js
CHANGED
|
@@ -120,6 +120,14 @@ export const getSettings = createSelector(
|
|
|
120
120
|
state,
|
|
121
121
|
'fixedToolbar'
|
|
122
122
|
),
|
|
123
|
+
keepCaretInsideBlock: !! __unstableGetPreference(
|
|
124
|
+
state,
|
|
125
|
+
'keepCaretInsideBlock'
|
|
126
|
+
),
|
|
127
|
+
showIconLabels: !! __unstableGetPreference(
|
|
128
|
+
state,
|
|
129
|
+
'showIconLabels'
|
|
130
|
+
),
|
|
123
131
|
__experimentalSetIsInserterOpened: setIsInserterOpen,
|
|
124
132
|
__experimentalReusableBlocks: getReusableBlocks( state ),
|
|
125
133
|
__experimentalPreferPatternsOnRoot:
|
|
@@ -145,6 +153,8 @@ export const getSettings = createSelector(
|
|
|
145
153
|
state.settings,
|
|
146
154
|
__unstableGetPreference( state, 'focusMode' ),
|
|
147
155
|
__unstableGetPreference( state, 'fixedToolbar' ),
|
|
156
|
+
__unstableGetPreference( state, 'keepCaretInsideBlock' ),
|
|
157
|
+
__unstableGetPreference( state, 'showIconLabels' ),
|
|
148
158
|
getReusableBlocks( state ),
|
|
149
159
|
getEditedPostType( state ),
|
|
150
160
|
]
|
|
@@ -79,6 +79,8 @@ describe( 'selectors', () => {
|
|
|
79
79
|
outlineMode: true,
|
|
80
80
|
focusMode: false,
|
|
81
81
|
hasFixedToolbar: false,
|
|
82
|
+
keepCaretInsideBlock: false,
|
|
83
|
+
showIconLabels: false,
|
|
82
84
|
__experimentalSetIsInserterOpened: setInserterOpened,
|
|
83
85
|
__experimentalReusableBlocks: [],
|
|
84
86
|
__experimentalPreferPatternsOnRoot: true,
|
|
@@ -102,6 +104,8 @@ describe( 'selectors', () => {
|
|
|
102
104
|
key: 'value',
|
|
103
105
|
focusMode: true,
|
|
104
106
|
hasFixedToolbar: true,
|
|
107
|
+
keepCaretInsideBlock: false,
|
|
108
|
+
showIconLabels: false,
|
|
105
109
|
__experimentalSetIsInserterOpened: setInserterOpened,
|
|
106
110
|
__experimentalReusableBlocks: [],
|
|
107
111
|
mediaUpload: expect.any( Function ),
|