@wordpress/edit-site 5.3.1 → 5.3.2
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/editor/index.js +1 -15
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/block-preview-panel.js +10 -12
- package/build/components/global-styles/block-preview-panel.js.map +1 -1
- package/build/components/global-styles/context-menu.js +9 -2
- package/build/components/global-styles/context-menu.js.map +1 -1
- package/build/components/global-styles/screen-border.js +0 -6
- package/build/components/global-styles/screen-border.js.map +1 -1
- package/build/components/global-styles/screen-effects.js +53 -0
- package/build/components/global-styles/screen-effects.js.map +1 -0
- package/build/components/global-styles/shadow-panel.js +1 -1
- package/build/components/global-styles/shadow-panel.js.map +1 -1
- package/build/components/global-styles/ui.js +7 -0
- package/build/components/global-styles/ui.js.map +1 -1
- package/build/components/layout/index.js +3 -1
- package/build/components/layout/index.js.map +1 -1
- package/build/components/save-panel/index.js +77 -0
- package/build/components/save-panel/index.js.map +1 -0
- package/build/components/sidebar/index.js +25 -2
- package/build/components/sidebar/index.js.map +1 -1
- package/build-module/components/editor/index.js +3 -17
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/block-preview-panel.js +10 -11
- package/build-module/components/global-styles/block-preview-panel.js.map +1 -1
- package/build-module/components/global-styles/context-menu.js +9 -3
- package/build-module/components/global-styles/context-menu.js.map +1 -1
- package/build-module/components/global-styles/screen-border.js +0 -5
- package/build-module/components/global-styles/screen-border.js.map +1 -1
- package/build-module/components/global-styles/screen-effects.js +35 -0
- package/build-module/components/global-styles/screen-effects.js.map +1 -0
- package/build-module/components/global-styles/shadow-panel.js +1 -1
- package/build-module/components/global-styles/shadow-panel.js.map +1 -1
- package/build-module/components/global-styles/ui.js +6 -0
- package/build-module/components/global-styles/ui.js.map +1 -1
- package/build-module/components/layout/index.js +2 -1
- package/build-module/components/layout/index.js.map +1 -1
- package/build-module/components/save-panel/index.js +63 -0
- package/build-module/components/save-panel/index.js.map +1 -0
- package/build-module/components/sidebar/index.js +22 -2
- package/build-module/components/sidebar/index.js.map +1 -1
- package/build-style/style-rtl.css +83 -26
- package/build-style/style.css +83 -26
- package/package.json +8 -8
- package/src/components/editor/index.js +3 -43
- package/src/components/editor/style.scss +2 -2
- package/src/components/global-styles/block-preview-panel.js +8 -12
- package/src/components/global-styles/context-menu.js +14 -2
- package/src/components/global-styles/screen-border.js +0 -5
- package/src/components/global-styles/screen-effects.js +28 -0
- package/src/components/global-styles/shadow-panel.js +1 -1
- package/src/components/global-styles/style.scss +0 -4
- package/src/components/global-styles/ui.js +5 -0
- package/src/components/layout/index.js +3 -0
- package/src/components/layout/style.scss +25 -3
- package/src/components/save-panel/index.js +65 -0
- package/src/components/save-panel/style.scss +5 -0
- package/src/components/sidebar/index.js +26 -6
- package/src/components/sidebar/style.scss +15 -0
- package/src/components/site-hub/style.scss +1 -0
- package/src/style.scss +1 -0
|
@@ -85,9 +85,9 @@ $hub-height: $grid-unit-20 * 2 + $button-size;
|
|
|
85
85
|
}
|
|
86
86
|
|
|
87
87
|
> div {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
88
|
+
display: flex;
|
|
89
|
+
flex-direction: column;
|
|
90
|
+
height: 100%;
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
.resizable-editor__drag-handle {
|
|
@@ -205,3 +205,25 @@ $hub-height: $grid-unit-20 * 2 + $button-size;
|
|
|
205
205
|
border-radius: $radius-block-ui;
|
|
206
206
|
}
|
|
207
207
|
}
|
|
208
|
+
|
|
209
|
+
.edit-site-layout__actions {
|
|
210
|
+
z-index: z-index(".edit-site-layout__actions");
|
|
211
|
+
position: fixed !important; // Need to override the default relative positioning
|
|
212
|
+
top: -9999em;
|
|
213
|
+
bottom: auto;
|
|
214
|
+
left: auto;
|
|
215
|
+
right: 0;
|
|
216
|
+
width: $sidebar-width;
|
|
217
|
+
color: $gray-900;
|
|
218
|
+
background: $white;
|
|
219
|
+
|
|
220
|
+
&:focus,
|
|
221
|
+
&:focus-within {
|
|
222
|
+
top: 0;
|
|
223
|
+
bottom: 0;
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
@include break-medium {
|
|
227
|
+
border-left: $border-width solid $gray-300;
|
|
228
|
+
}
|
|
229
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { Button, Modal } from '@wordpress/components';
|
|
5
|
+
import { EntitiesSavedStates } from '@wordpress/editor';
|
|
6
|
+
import { useDispatch, useSelect } from '@wordpress/data';
|
|
7
|
+
import { __ } from '@wordpress/i18n';
|
|
8
|
+
import { NavigableRegion } from '@wordpress/interface';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Internal dependencies
|
|
12
|
+
*/
|
|
13
|
+
import { store as editSiteStore } from '../../store';
|
|
14
|
+
import { unlock } from '../../experiments';
|
|
15
|
+
|
|
16
|
+
export default function SavePanel() {
|
|
17
|
+
const { isSaveViewOpen, canvasMode } = useSelect( ( select ) => {
|
|
18
|
+
const { isSaveViewOpened, getCanvasMode } = unlock(
|
|
19
|
+
select( editSiteStore )
|
|
20
|
+
);
|
|
21
|
+
|
|
22
|
+
// The currently selected entity to display.
|
|
23
|
+
// Typically template or template part in the site editor.
|
|
24
|
+
return {
|
|
25
|
+
isSaveViewOpen: isSaveViewOpened(),
|
|
26
|
+
canvasMode: getCanvasMode(),
|
|
27
|
+
};
|
|
28
|
+
}, [] );
|
|
29
|
+
const { setIsSaveViewOpened } = useDispatch( editSiteStore );
|
|
30
|
+
const onClose = () => setIsSaveViewOpened( false );
|
|
31
|
+
|
|
32
|
+
if ( canvasMode === 'view' ) {
|
|
33
|
+
return isSaveViewOpen ? (
|
|
34
|
+
<Modal
|
|
35
|
+
className="edit-site-save-panel__modal"
|
|
36
|
+
onRequestClose={ onClose }
|
|
37
|
+
__experimentalHideHeader
|
|
38
|
+
>
|
|
39
|
+
<EntitiesSavedStates close={ onClose } />
|
|
40
|
+
</Modal>
|
|
41
|
+
) : null;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
return (
|
|
45
|
+
<NavigableRegion
|
|
46
|
+
className="edit-site-layout__actions"
|
|
47
|
+
ariaLabel={ __( 'Save sidebar' ) }
|
|
48
|
+
>
|
|
49
|
+
{ isSaveViewOpen ? (
|
|
50
|
+
<EntitiesSavedStates close={ onClose } />
|
|
51
|
+
) : (
|
|
52
|
+
<div className="edit-site-editor__toggle-save-panel">
|
|
53
|
+
<Button
|
|
54
|
+
variant="secondary"
|
|
55
|
+
className="edit-site-editor__toggle-save-panel-button"
|
|
56
|
+
onClick={ () => setIsSaveViewOpened( true ) }
|
|
57
|
+
aria-expanded={ false }
|
|
58
|
+
>
|
|
59
|
+
{ __( 'Open save panel' ) }
|
|
60
|
+
</Button>
|
|
61
|
+
</div>
|
|
62
|
+
) }
|
|
63
|
+
</NavigableRegion>
|
|
64
|
+
);
|
|
65
|
+
}
|
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { memo } from '@wordpress/element';
|
|
5
|
+
import { useSelect } from '@wordpress/data';
|
|
5
6
|
import { __experimentalNavigatorProvider as NavigatorProvider } from '@wordpress/components';
|
|
7
|
+
import { store as coreStore } from '@wordpress/core-data';
|
|
6
8
|
|
|
7
9
|
/**
|
|
8
10
|
* Internal dependencies
|
|
@@ -11,6 +13,7 @@ import SidebarNavigationScreenMain from '../sidebar-navigation-screen-main';
|
|
|
11
13
|
import SidebarNavigationScreenTemplates from '../sidebar-navigation-screen-templates';
|
|
12
14
|
import useSyncSidebarPathWithURL from '../sync-state-with-url/use-sync-sidebar-path-with-url';
|
|
13
15
|
import SidebarNavigationScreenNavigationMenus from '../sidebar-navigation-screen-navigation-menus';
|
|
16
|
+
import SaveButton from '../save-button';
|
|
14
17
|
|
|
15
18
|
function SidebarScreens() {
|
|
16
19
|
useSyncSidebarPathWithURL();
|
|
@@ -26,13 +29,30 @@ function SidebarScreens() {
|
|
|
26
29
|
}
|
|
27
30
|
|
|
28
31
|
function Sidebar() {
|
|
32
|
+
const { isDirty } = useSelect( ( select ) => {
|
|
33
|
+
const { __experimentalGetDirtyEntityRecords } = select( coreStore );
|
|
34
|
+
const dirtyEntityRecords = __experimentalGetDirtyEntityRecords();
|
|
35
|
+
// The currently selected entity to display.
|
|
36
|
+
// Typically template or template part in the site editor.
|
|
37
|
+
return {
|
|
38
|
+
isDirty: dirtyEntityRecords.length > 0,
|
|
39
|
+
};
|
|
40
|
+
}, [] );
|
|
41
|
+
|
|
29
42
|
return (
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
43
|
+
<>
|
|
44
|
+
<NavigatorProvider
|
|
45
|
+
className="edit-site-sidebar__content"
|
|
46
|
+
initialPath="/"
|
|
47
|
+
>
|
|
48
|
+
<SidebarScreens />
|
|
49
|
+
</NavigatorProvider>
|
|
50
|
+
{ isDirty && (
|
|
51
|
+
<div className="edit-site-sidebar__footer">
|
|
52
|
+
<SaveButton />
|
|
53
|
+
</div>
|
|
54
|
+
) }
|
|
55
|
+
</>
|
|
36
56
|
);
|
|
37
57
|
}
|
|
38
58
|
|
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
.edit-site-sidebar__content {
|
|
2
|
+
flex-grow: 1;
|
|
3
|
+
overflow-y: auto;
|
|
4
|
+
@include custom-scrollbars-on-hover;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.edit-site-sidebar__footer {
|
|
8
|
+
border-top: 1px solid $gray-800;
|
|
9
|
+
flex-shrink: 0;
|
|
10
|
+
margin: 0 $canvas-padding;
|
|
11
|
+
padding: $canvas-padding 0;
|
|
12
|
+
display: flex;
|
|
13
|
+
justify-content: flex-end;
|
|
14
|
+
}
|
|
15
|
+
|
|
1
16
|
.edit-site-sidebar__content.edit-site-sidebar__content {
|
|
2
17
|
overflow-x: unset;
|
|
3
18
|
}
|
package/src/style.scss
CHANGED
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
@import "./components/welcome-guide/style.scss";
|
|
20
20
|
@import "./components/keyboard-shortcut-help-modal/style.scss";
|
|
21
21
|
@import "./components/layout/style.scss";
|
|
22
|
+
@import "./components/save-panel/style.scss";
|
|
22
23
|
@import "./components/sidebar/style.scss";
|
|
23
24
|
@import "./components/sidebar-navigation-item/style.scss";
|
|
24
25
|
@import "./components/sidebar-navigation-screen/style.scss";
|