@wordpress/edit-site 3.0.9 → 3.0.10
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/add-new-template/index.js +49 -0
- package/build/components/add-new-template/index.js.map +1 -0
- package/build/components/add-new-template/new-template-part.js +79 -0
- package/build/components/add-new-template/new-template-part.js.map +1 -0
- package/build/components/add-new-template/new-template.js +115 -0
- package/build/components/add-new-template/new-template.js.map +1 -0
- package/build/components/create-template-part-modal/index.js +115 -0
- package/build/components/create-template-part-modal/index.js.map +1 -0
- package/build/components/editor/index.js +11 -13
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/global-styles-provider.js +4 -4
- package/build/components/global-styles/global-styles-provider.js.map +1 -1
- package/build/components/global-styles/hooks.js +27 -25
- package/build/components/global-styles/hooks.js.map +1 -1
- package/build/components/global-styles/screen-block-list.js +9 -1
- package/build/components/global-styles/screen-block-list.js.map +1 -1
- package/build/components/global-styles/use-global-styles-output.js +2 -2
- package/build/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build/components/global-styles/utils.js +1 -1
- package/build/components/global-styles/utils.js.map +1 -1
- package/build/components/header/index.js +1 -5
- package/build/components/header/index.js.map +1 -1
- package/build/components/list/header.js +50 -0
- package/build/components/list/header.js.map +1 -0
- package/build/components/list/index.js +55 -0
- package/build/components/list/index.js.map +1 -0
- package/build/components/list/table.js +128 -0
- package/build/components/list/table.js.map +1 -0
- package/build/components/navigation-sidebar/index.js +11 -10
- package/build/components/navigation-sidebar/index.js.map +1 -1
- package/build/components/navigation-sidebar/navigation-panel/index.js +33 -53
- package/build/components/navigation-sidebar/navigation-panel/index.js.map +1 -1
- package/build/components/navigation-sidebar/navigation-toggle/index.js +3 -24
- package/build/components/navigation-sidebar/navigation-toggle/index.js.map +1 -1
- package/build/components/template-details/index.js +3 -2
- package/build/components/template-details/index.js.map +1 -1
- package/build/components/template-part-converter/convert-to-template-part.js +20 -84
- package/build/components/template-part-converter/convert-to-template-part.js.map +1 -1
- package/build/components/welcome-guide/editor.js +58 -0
- package/build/components/welcome-guide/editor.js.map +1 -0
- package/build/components/welcome-guide/image.js +27 -0
- package/build/components/welcome-guide/image.js.map +1 -0
- package/build/components/welcome-guide/index.js +49 -0
- package/build/components/welcome-guide/index.js.map +1 -0
- package/build/components/welcome-guide/styles.js +83 -0
- package/build/components/welcome-guide/styles.js.map +1 -0
- package/build/index.js +29 -5
- package/build/index.js.map +1 -1
- package/build/plugins/index.js +4 -2
- package/build/plugins/index.js.map +1 -1
- package/build/plugins/welcome-guide-menu-item.js +39 -0
- package/build/plugins/welcome-guide-menu-item.js.map +1 -0
- package/build/store/actions.js +5 -8
- package/build/store/actions.js.map +1 -1
- package/build/store/defaults.js +4 -1
- package/build/store/defaults.js.map +1 -1
- package/build/utils/is-template-removable.js +21 -0
- package/build/utils/is-template-removable.js.map +1 -0
- package/build-module/components/add-new-template/index.js +36 -0
- package/build-module/components/add-new-template/index.js.map +1 -0
- package/build-module/components/add-new-template/new-template-part.js +66 -0
- package/build-module/components/add-new-template/new-template-part.js.map +1 -0
- package/build-module/components/add-new-template/new-template.js +98 -0
- package/build-module/components/add-new-template/new-template.js.map +1 -0
- package/build-module/components/create-template-part-modal/index.js +102 -0
- package/build-module/components/create-template-part-modal/index.js.map +1 -0
- package/build-module/components/editor/index.js +9 -13
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/global-styles-provider.js +4 -4
- package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
- package/build-module/components/global-styles/hooks.js +28 -26
- package/build-module/components/global-styles/hooks.js.map +1 -1
- package/build-module/components/global-styles/screen-block-list.js +7 -1
- package/build-module/components/global-styles/screen-block-list.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js +2 -2
- package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build-module/components/global-styles/utils.js +1 -1
- package/build-module/components/global-styles/utils.js.map +1 -1
- package/build-module/components/header/index.js +1 -3
- package/build-module/components/header/index.js.map +1 -1
- package/build-module/components/list/header.js +37 -0
- package/build-module/components/list/header.js.map +1 -0
- package/build-module/components/list/index.js +40 -0
- package/build-module/components/list/index.js.map +1 -0
- package/build-module/components/list/table.js +112 -0
- package/build-module/components/list/table.js.map +1 -0
- package/build-module/components/navigation-sidebar/index.js +12 -8
- package/build-module/components/navigation-sidebar/index.js.map +1 -1
- package/build-module/components/navigation-sidebar/navigation-panel/index.js +35 -53
- package/build-module/components/navigation-sidebar/navigation-panel/index.js.map +1 -1
- package/build-module/components/navigation-sidebar/navigation-toggle/index.js +4 -24
- package/build-module/components/navigation-sidebar/navigation-toggle/index.js.map +1 -1
- package/build-module/components/template-details/index.js +3 -2
- package/build-module/components/template-details/index.js.map +1 -1
- package/build-module/components/template-part-converter/convert-to-template-part.js +20 -84
- package/build-module/components/template-part-converter/convert-to-template-part.js.map +1 -1
- package/build-module/components/welcome-guide/editor.js +45 -0
- package/build-module/components/welcome-guide/editor.js.map +1 -0
- package/build-module/components/welcome-guide/image.js +19 -0
- package/build-module/components/welcome-guide/image.js.map +1 -0
- package/build-module/components/welcome-guide/index.js +35 -0
- package/build-module/components/welcome-guide/index.js.map +1 -0
- package/build-module/components/welcome-guide/styles.js +69 -0
- package/build-module/components/welcome-guide/styles.js.map +1 -0
- package/build-module/index.js +21 -1
- package/build-module/index.js.map +1 -1
- package/build-module/plugins/index.js +3 -2
- package/build-module/plugins/index.js.map +1 -1
- package/build-module/plugins/welcome-guide-menu-item.js +27 -0
- package/build-module/plugins/welcome-guide-menu-item.js.map +1 -0
- package/build-module/store/actions.js +5 -8
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/defaults.js +4 -1
- package/build-module/store/defaults.js.map +1 -1
- package/build-module/utils/is-template-removable.js +14 -0
- package/build-module/utils/is-template-removable.js.map +1 -0
- package/build-style/style-rtl.css +348 -32
- package/build-style/style.css +348 -32
- package/package.json +7 -7
- package/src/components/add-new-template/index.js +30 -0
- package/src/components/add-new-template/new-template-part.js +67 -0
- package/src/components/add-new-template/new-template.js +117 -0
- package/src/components/add-new-template/style.scss +11 -0
- package/src/components/create-template-part-modal/index.js +132 -0
- package/src/components/{template-part-converter → create-template-part-modal}/style.scss +9 -9
- package/src/components/editor/index.js +10 -14
- package/src/components/editor/style.scss +8 -0
- package/src/components/global-styles/global-styles-provider.js +4 -3
- package/src/components/global-styles/hooks.js +58 -26
- package/src/components/global-styles/screen-block-list.js +11 -1
- package/src/components/global-styles/test/use-global-styles-output.js +2 -2
- package/src/components/global-styles/use-global-styles-output.js +2 -2
- package/src/components/global-styles/utils.js +1 -1
- package/src/components/header/index.js +0 -6
- package/src/components/list/header.js +34 -0
- package/src/components/list/index.js +38 -0
- package/src/components/list/style.scss +113 -0
- package/src/components/list/table.js +133 -0
- package/src/components/navigation-sidebar/index.js +15 -8
- package/src/components/navigation-sidebar/navigation-panel/index.js +44 -55
- package/src/components/navigation-sidebar/navigation-panel/style.scss +4 -2
- package/src/components/navigation-sidebar/navigation-toggle/index.js +4 -28
- package/src/components/template-details/index.js +3 -2
- package/src/components/template-part-converter/convert-to-template-part.js +20 -140
- package/src/components/welcome-guide/editor.js +63 -0
- package/src/components/welcome-guide/image.js +11 -0
- package/src/components/welcome-guide/index.js +33 -0
- package/src/components/welcome-guide/style.scss +37 -0
- package/src/components/welcome-guide/styles.js +116 -0
- package/src/index.js +21 -1
- package/src/plugins/index.js +3 -1
- package/src/plugins/welcome-guide-menu-item.js +35 -0
- package/src/store/actions.js +11 -9
- package/src/store/defaults.js +4 -1
- package/src/store/test/actions.js +14 -20
- package/src/style.scss +9 -6
- package/src/utils/is-template-removable.js +13 -0
- package/build/components/header/navigation-link/index.js +0 -87
- package/build/components/header/navigation-link/index.js.map +0 -1
- package/build-module/components/header/navigation-link/index.js +0 -74
- package/build-module/components/header/navigation-link/index.js.map +0 -1
- package/src/components/header/navigation-link/index.js +0 -71
- package/src/components/header/navigation-link/style.scss +0 -69
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = List;
|
|
9
|
+
|
|
10
|
+
var _element = require("@wordpress/element");
|
|
11
|
+
|
|
12
|
+
var _interface = require("@wordpress/interface");
|
|
13
|
+
|
|
14
|
+
var _i18n = require("@wordpress/i18n");
|
|
15
|
+
|
|
16
|
+
var _compose = require("@wordpress/compose");
|
|
17
|
+
|
|
18
|
+
var _header = _interopRequireDefault(require("./header"));
|
|
19
|
+
|
|
20
|
+
var _navigationSidebar = _interopRequireDefault(require("../navigation-sidebar"));
|
|
21
|
+
|
|
22
|
+
var _table = _interopRequireDefault(require("./table"));
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* WordPress dependencies
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Internal dependencies
|
|
30
|
+
*/
|
|
31
|
+
function List(_ref) {
|
|
32
|
+
let {
|
|
33
|
+
templateType
|
|
34
|
+
} = _ref;
|
|
35
|
+
const isDesktopViewport = (0, _compose.useViewportMatch)('medium');
|
|
36
|
+
return (0, _element.createElement)(_interface.InterfaceSkeleton, {
|
|
37
|
+
className: "edit-site-list",
|
|
38
|
+
labels: {
|
|
39
|
+
drawer: (0, _i18n.__)('Navigation Sidebar')
|
|
40
|
+
},
|
|
41
|
+
header: (0, _element.createElement)(_header.default, {
|
|
42
|
+
templateType: templateType
|
|
43
|
+
}),
|
|
44
|
+
drawer: (0, _element.createElement)(_navigationSidebar.default, {
|
|
45
|
+
defaultIsOpen: isDesktopViewport,
|
|
46
|
+
activeTemplateType: templateType
|
|
47
|
+
}),
|
|
48
|
+
content: (0, _element.createElement)("main", {
|
|
49
|
+
className: "edit-site-list-main"
|
|
50
|
+
}, (0, _element.createElement)(_table.default, {
|
|
51
|
+
templateType: templateType
|
|
52
|
+
}))
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/list/index.js"],"names":["List","templateType","isDesktopViewport","drawer"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AAZA;AACA;AACA;;AAKA;AACA;AACA;AAKe,SAASA,IAAT,OAAkC;AAAA,MAAnB;AAAEC,IAAAA;AAAF,GAAmB;AAChD,QAAMC,iBAAiB,GAAG,+BAAkB,QAAlB,CAA1B;AAEA,SACC,4BAAC,4BAAD;AACC,IAAA,SAAS,EAAC,gBADX;AAEC,IAAA,MAAM,EAAG;AACRC,MAAAA,MAAM,EAAE,cAAI,oBAAJ;AADA,KAFV;AAKC,IAAA,MAAM,EAAG,4BAAC,eAAD;AAAQ,MAAA,YAAY,EAAGF;AAAvB,MALV;AAMC,IAAA,MAAM,EACL,4BAAC,0BAAD;AACC,MAAA,aAAa,EAAGC,iBADjB;AAEC,MAAA,kBAAkB,EAAGD;AAFtB,MAPF;AAYC,IAAA,OAAO,EACN;AAAM,MAAA,SAAS,EAAC;AAAhB,OACC,4BAAC,cAAD;AAAO,MAAA,YAAY,EAAGA;AAAtB,MADD;AAbF,IADD;AAoBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { InterfaceSkeleton } from '@wordpress/interface';\nimport { __ } from '@wordpress/i18n';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Header from './header';\nimport NavigationSidebar from '../navigation-sidebar';\nimport Table from './table';\n\nexport default function List( { templateType } ) {\n\tconst isDesktopViewport = useViewportMatch( 'medium' );\n\n\treturn (\n\t\t<InterfaceSkeleton\n\t\t\tclassName=\"edit-site-list\"\n\t\t\tlabels={ {\n\t\t\t\tdrawer: __( 'Navigation Sidebar' ),\n\t\t\t} }\n\t\t\theader={ <Header templateType={ templateType } /> }\n\t\t\tdrawer={\n\t\t\t\t<NavigationSidebar\n\t\t\t\t\tdefaultIsOpen={ isDesktopViewport }\n\t\t\t\t\tactiveTemplateType={ templateType }\n\t\t\t\t/>\n\t\t\t}\n\t\t\tcontent={\n\t\t\t\t<main className=\"edit-site-list-main\">\n\t\t\t\t\t<Table templateType={ templateType } />\n\t\t\t\t</main>\n\t\t\t}\n\t\t/>\n\t);\n}\n"]}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = Table;
|
|
9
|
+
|
|
10
|
+
var _element = require("@wordpress/element");
|
|
11
|
+
|
|
12
|
+
var _data = require("@wordpress/data");
|
|
13
|
+
|
|
14
|
+
var _coreData = require("@wordpress/core-data");
|
|
15
|
+
|
|
16
|
+
var _i18n = require("@wordpress/i18n");
|
|
17
|
+
|
|
18
|
+
var _components = require("@wordpress/components");
|
|
19
|
+
|
|
20
|
+
var _icons = require("@wordpress/icons");
|
|
21
|
+
|
|
22
|
+
var _url = require("@wordpress/url");
|
|
23
|
+
|
|
24
|
+
var _store = require("../../store");
|
|
25
|
+
|
|
26
|
+
var _isTemplateRemovable = _interopRequireDefault(require("../../utils/is-template-removable"));
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* WordPress dependencies
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Internal dependencies
|
|
34
|
+
*/
|
|
35
|
+
function Actions(_ref) {
|
|
36
|
+
let {
|
|
37
|
+
template,
|
|
38
|
+
onClose
|
|
39
|
+
} = _ref;
|
|
40
|
+
const {
|
|
41
|
+
removeTemplate
|
|
42
|
+
} = (0, _data.useDispatch)(_store.store);
|
|
43
|
+
return (0, _element.createElement)(_components.MenuGroup, null, (0, _element.createElement)(_components.MenuItem, {
|
|
44
|
+
onClick: () => {
|
|
45
|
+
removeTemplate(template);
|
|
46
|
+
onClose();
|
|
47
|
+
}
|
|
48
|
+
}, (0, _i18n.__)('Remove template')));
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
function Table(_ref2) {
|
|
52
|
+
let {
|
|
53
|
+
templateType
|
|
54
|
+
} = _ref2;
|
|
55
|
+
const {
|
|
56
|
+
templates,
|
|
57
|
+
isLoading,
|
|
58
|
+
postType
|
|
59
|
+
} = (0, _data.useSelect)(select => {
|
|
60
|
+
const {
|
|
61
|
+
getEntityRecords,
|
|
62
|
+
hasFinishedResolution,
|
|
63
|
+
getPostType
|
|
64
|
+
} = select(_coreData.store);
|
|
65
|
+
return {
|
|
66
|
+
templates: getEntityRecords('postType', templateType),
|
|
67
|
+
isLoading: !hasFinishedResolution('getEntityRecords', ['postType', templateType]),
|
|
68
|
+
postType: getPostType(templateType)
|
|
69
|
+
};
|
|
70
|
+
}, [templateType]);
|
|
71
|
+
|
|
72
|
+
if (!templates || isLoading) {
|
|
73
|
+
return null;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
if (!templates.length) {
|
|
77
|
+
var _postType$labels, _postType$labels$name;
|
|
78
|
+
|
|
79
|
+
return (0, _element.createElement)("div", null, (0, _i18n.sprintf)( // translators: The template type name, should be either "templates" or "template parts".
|
|
80
|
+
(0, _i18n.__)('No %s found.'), postType === null || postType === void 0 ? void 0 : (_postType$labels = postType.labels) === null || _postType$labels === void 0 ? void 0 : (_postType$labels$name = _postType$labels.name) === null || _postType$labels$name === void 0 ? void 0 : _postType$labels$name.toLowerCase()));
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
return (0, _element.createElement)("ul", {
|
|
84
|
+
className: "edit-site-list-table"
|
|
85
|
+
}, (0, _element.createElement)(_components.__experimentalHStack, {
|
|
86
|
+
className: "edit-site-list-table-head",
|
|
87
|
+
as: "li"
|
|
88
|
+
}, (0, _element.createElement)(_components.FlexItem, {
|
|
89
|
+
className: "edit-site-list-table-column"
|
|
90
|
+
}, (0, _element.createElement)(_components.__experimentalHeading, {
|
|
91
|
+
level: 4
|
|
92
|
+
}, (0, _i18n.__)('Template'))), (0, _element.createElement)(_components.FlexItem, {
|
|
93
|
+
className: "edit-site-list-table-column"
|
|
94
|
+
}, (0, _element.createElement)(_components.__experimentalHeading, {
|
|
95
|
+
level: 4
|
|
96
|
+
}, (0, _i18n.__)('Added by'))), (0, _element.createElement)(_components.FlexItem, {
|
|
97
|
+
className: "edit-site-list-table-column"
|
|
98
|
+
}, (0, _element.createElement)(_components.VisuallyHidden, null, (0, _i18n.__)('Actions')))), templates.map(template => (0, _element.createElement)("li", {
|
|
99
|
+
key: template.id
|
|
100
|
+
}, (0, _element.createElement)(_components.__experimentalHStack, {
|
|
101
|
+
className: "edit-site-list-table-row"
|
|
102
|
+
}, (0, _element.createElement)(_components.FlexItem, {
|
|
103
|
+
className: "edit-site-list-table-column"
|
|
104
|
+
}, (0, _element.createElement)("a", {
|
|
105
|
+
href: (0, _url.addQueryArgs)('', {
|
|
106
|
+
page: 'gutenberg-edit-site',
|
|
107
|
+
postId: template.id,
|
|
108
|
+
postType: template.type
|
|
109
|
+
})
|
|
110
|
+
}, template.title.rendered), template.description), (0, _element.createElement)(_components.FlexItem, {
|
|
111
|
+
className: "edit-site-list-table-column"
|
|
112
|
+
}, template.theme), (0, _element.createElement)(_components.FlexItem, {
|
|
113
|
+
className: "edit-site-list-table-column"
|
|
114
|
+
}, (0, _isTemplateRemovable.default)(template) && (0, _element.createElement)(_components.DropdownMenu, {
|
|
115
|
+
icon: _icons.moreVertical,
|
|
116
|
+
label: (0, _i18n.__)('Actions'),
|
|
117
|
+
className: "edit-site-list-table__actions"
|
|
118
|
+
}, _ref3 => {
|
|
119
|
+
let {
|
|
120
|
+
onClose
|
|
121
|
+
} = _ref3;
|
|
122
|
+
return (0, _element.createElement)(Actions, {
|
|
123
|
+
template: template,
|
|
124
|
+
onClose: onClose
|
|
125
|
+
});
|
|
126
|
+
}))))));
|
|
127
|
+
}
|
|
128
|
+
//# sourceMappingURL=table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/list/table.js"],"names":["Actions","template","onClose","removeTemplate","editSiteStore","Table","templateType","templates","isLoading","postType","select","getEntityRecords","hasFinishedResolution","getPostType","coreStore","length","labels","name","toLowerCase","map","id","page","postId","type","title","rendered","description","theme","moreVertical"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tVisuallyHidden,\n\tFlexItem,\n\t__experimentalHStack as HStack,\n\t__experimentalHeading as Heading,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n} from '@wordpress/components';\nimport { moreVertical } from '@wordpress/icons';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport isTemplateRemovable from '../../utils/is-template-removable';\n\nfunction Actions( { template, onClose } ) {\n\tconst { removeTemplate } = useDispatch( editSiteStore );\n\n\treturn (\n\t\t<MenuGroup>\n\t\t\t<MenuItem\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tremoveTemplate( template );\n\t\t\t\t\tonClose();\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ __( 'Remove template' ) }\n\t\t\t</MenuItem>\n\t\t</MenuGroup>\n\t);\n}\n\nexport default function Table( { templateType } ) {\n\tconst { templates, isLoading, postType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetEntityRecords,\n\t\t\t\thasFinishedResolution,\n\t\t\t\tgetPostType,\n\t\t\t} = select( coreStore );\n\n\t\t\treturn {\n\t\t\t\ttemplates: getEntityRecords( 'postType', templateType ),\n\t\t\t\tisLoading: ! hasFinishedResolution( 'getEntityRecords', [\n\t\t\t\t\t'postType',\n\t\t\t\t\ttemplateType,\n\t\t\t\t] ),\n\t\t\t\tpostType: getPostType( templateType ),\n\t\t\t};\n\t\t},\n\t\t[ templateType ]\n\t);\n\n\tif ( ! templates || isLoading ) {\n\t\treturn null;\n\t}\n\n\tif ( ! templates.length ) {\n\t\treturn (\n\t\t\t<div>\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: The template type name, should be either \"templates\" or \"template parts\".\n\t\t\t\t\t__( 'No %s found.' ),\n\t\t\t\t\tpostType?.labels?.name?.toLowerCase()\n\t\t\t\t) }\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<ul className=\"edit-site-list-table\">\n\t\t\t<HStack className=\"edit-site-list-table-head\" as=\"li\">\n\t\t\t\t<FlexItem className=\"edit-site-list-table-column\">\n\t\t\t\t\t<Heading level={ 4 }>{ __( 'Template' ) }</Heading>\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem className=\"edit-site-list-table-column\">\n\t\t\t\t\t<Heading level={ 4 }>{ __( 'Added by' ) }</Heading>\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem className=\"edit-site-list-table-column\">\n\t\t\t\t\t<VisuallyHidden>{ __( 'Actions' ) }</VisuallyHidden>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\n\t\t\t{ templates.map( ( template ) => (\n\t\t\t\t<li key={ template.id }>\n\t\t\t\t\t<HStack className=\"edit-site-list-table-row\">\n\t\t\t\t\t\t<FlexItem className=\"edit-site-list-table-column\">\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={ addQueryArgs( '', {\n\t\t\t\t\t\t\t\t\tpage: 'gutenberg-edit-site',\n\t\t\t\t\t\t\t\t\tpostId: template.id,\n\t\t\t\t\t\t\t\t\tpostType: template.type,\n\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ template.title.rendered }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t{ template.description }\n\t\t\t\t\t\t</FlexItem>\n\n\t\t\t\t\t\t<FlexItem className=\"edit-site-list-table-column\">\n\t\t\t\t\t\t\t{ template.theme }\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t<FlexItem className=\"edit-site-list-table-column\">\n\t\t\t\t\t\t\t{ isTemplateRemovable( template ) && (\n\t\t\t\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-list-table__actions\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t\t\t\t<Actions\n\t\t\t\t\t\t\t\t\t\t\ttemplate={ template }\n\t\t\t\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</DropdownMenu>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t</HStack>\n\t\t\t\t</li>\n\t\t\t) ) }\n\t\t</ul>\n\t);\n}\n"]}
|
|
@@ -12,14 +12,10 @@ var _element = require("@wordpress/element");
|
|
|
12
12
|
|
|
13
13
|
var _components = require("@wordpress/components");
|
|
14
14
|
|
|
15
|
-
var _data = require("@wordpress/data");
|
|
16
|
-
|
|
17
15
|
var _navigationPanel = _interopRequireDefault(require("./navigation-panel"));
|
|
18
16
|
|
|
19
17
|
var _navigationToggle = _interopRequireDefault(require("./navigation-toggle"));
|
|
20
18
|
|
|
21
|
-
var _store = require("../../store");
|
|
22
|
-
|
|
23
19
|
/**
|
|
24
20
|
* WordPress dependencies
|
|
25
21
|
*/
|
|
@@ -34,14 +30,19 @@ const {
|
|
|
34
30
|
exports.NavigationPanelPreviewSlot = NavigationPanelPreviewSlot;
|
|
35
31
|
exports.NavigationPanelPreviewFill = NavigationPanelPreviewFill;
|
|
36
32
|
|
|
37
|
-
function NavigationSidebar() {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
33
|
+
function NavigationSidebar(_ref) {
|
|
34
|
+
let {
|
|
35
|
+
defaultIsOpen = false,
|
|
36
|
+
activeTemplateType
|
|
37
|
+
} = _ref;
|
|
38
|
+
const [isNavigationOpen, setIsNavigationOpen] = (0, _element.useState)(defaultIsOpen);
|
|
41
39
|
return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_navigationToggle.default, {
|
|
42
|
-
isOpen: isNavigationOpen
|
|
40
|
+
isOpen: isNavigationOpen,
|
|
41
|
+
setIsOpen: setIsNavigationOpen
|
|
43
42
|
}), (0, _element.createElement)(_navigationPanel.default, {
|
|
44
|
-
isOpen: isNavigationOpen
|
|
43
|
+
isOpen: isNavigationOpen,
|
|
44
|
+
setIsOpen: setIsNavigationOpen,
|
|
45
|
+
activeTemplateType: activeTemplateType
|
|
45
46
|
}), (0, _element.createElement)(NavigationPanelPreviewSlot, null));
|
|
46
47
|
}
|
|
47
48
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/navigation-sidebar/index.js"],"names":["Fill","NavigationPanelPreviewFill","Slot","NavigationPanelPreviewSlot","NavigationSidebar","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/navigation-sidebar/index.js"],"names":["Fill","NavigationPanelPreviewFill","Slot","NavigationPanelPreviewSlot","NavigationSidebar","defaultIsOpen","activeTemplateType","isNavigationOpen","setIsNavigationOpen"],"mappings":";;;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AAVA;AACA;AACA;;AAIA;AACA;AACA;AAIO,MAAM;AACZA,EAAAA,IAAI,EAAEC,0BADM;AAEZC,EAAAA,IAAI,EAAEC;AAFM,IAGT,gCAAgB,gCAAhB,CAHG;;;;AAKQ,SAASC,iBAAT,OAGX;AAAA,MAHuC;AAC1CC,IAAAA,aAAa,GAAG,KAD0B;AAE1CC,IAAAA;AAF0C,GAGvC;AACH,QAAM,CAAEC,gBAAF,EAAoBC,mBAApB,IAA4C,uBAAUH,aAAV,CAAlD;AAEA,SACC,qDACC,4BAAC,yBAAD;AACC,IAAA,MAAM,EAAGE,gBADV;AAEC,IAAA,SAAS,EAAGC;AAFb,IADD,EAKC,4BAAC,wBAAD;AACC,IAAA,MAAM,EAAGD,gBADV;AAEC,IAAA,SAAS,EAAGC,mBAFb;AAGC,IAAA,kBAAkB,EAAGF;AAHtB,IALD,EAUC,4BAAC,0BAAD,OAVD,CADD;AAcA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { createSlotFill } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport NavigationPanel from './navigation-panel';\nimport NavigationToggle from './navigation-toggle';\n\nexport const {\n\tFill: NavigationPanelPreviewFill,\n\tSlot: NavigationPanelPreviewSlot,\n} = createSlotFill( 'EditSiteNavigationPanelPreview' );\n\nexport default function NavigationSidebar( {\n\tdefaultIsOpen = false,\n\tactiveTemplateType,\n} ) {\n\tconst [ isNavigationOpen, setIsNavigationOpen ] = useState( defaultIsOpen );\n\n\treturn (\n\t\t<>\n\t\t\t<NavigationToggle\n\t\t\t\tisOpen={ isNavigationOpen }\n\t\t\t\tsetIsOpen={ setIsNavigationOpen }\n\t\t\t/>\n\t\t\t<NavigationPanel\n\t\t\t\tisOpen={ isNavigationOpen }\n\t\t\t\tsetIsOpen={ setIsNavigationOpen }\n\t\t\t\tactiveTemplateType={ activeTemplateType }\n\t\t\t/>\n\t\t\t<NavigationPanelPreviewSlot />\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -23,14 +23,10 @@ var _keycodes = require("@wordpress/keycodes");
|
|
|
23
23
|
|
|
24
24
|
var _htmlEntities = require("@wordpress/html-entities");
|
|
25
25
|
|
|
26
|
-
var
|
|
26
|
+
var _url = require("@wordpress/url");
|
|
27
27
|
|
|
28
28
|
var _mainDashboardButton = _interopRequireDefault(require("../../main-dashboard-button"));
|
|
29
29
|
|
|
30
|
-
var _store = require("../../../store");
|
|
31
|
-
|
|
32
|
-
var _constants = require("./constants");
|
|
33
|
-
|
|
34
30
|
/**
|
|
35
31
|
* External dependencies
|
|
36
32
|
*/
|
|
@@ -44,65 +40,30 @@ var _constants = require("./constants");
|
|
|
44
40
|
*/
|
|
45
41
|
const NavigationPanel = _ref => {
|
|
46
42
|
let {
|
|
47
|
-
isOpen
|
|
43
|
+
isOpen,
|
|
44
|
+
setIsOpen,
|
|
45
|
+
activeTemplateType
|
|
48
46
|
} = _ref;
|
|
49
|
-
const {
|
|
50
|
-
page: {
|
|
51
|
-
context: {
|
|
52
|
-
postType,
|
|
53
|
-
postId
|
|
54
|
-
} = {}
|
|
55
|
-
} = {},
|
|
56
|
-
editedPostId,
|
|
57
|
-
editedPostType,
|
|
58
|
-
activeMenu,
|
|
59
|
-
siteTitle
|
|
60
|
-
} = (0, _data.useSelect)(select => {
|
|
61
|
-
const {
|
|
62
|
-
getEditedPostType,
|
|
63
|
-
getEditedPostId,
|
|
64
|
-
getNavigationPanelActiveMenu,
|
|
65
|
-
getPage
|
|
66
|
-
} = select(_store.store);
|
|
47
|
+
const siteTitle = (0, _data.useSelect)(select => {
|
|
67
48
|
const {
|
|
68
49
|
getEntityRecord
|
|
69
50
|
} = select(_coreData.store);
|
|
70
51
|
const siteData = getEntityRecord('root', '__unstableBase', undefined) || {};
|
|
71
|
-
return
|
|
72
|
-
|
|
73
|
-
editedPostId: getEditedPostId(),
|
|
74
|
-
editedPostType: getEditedPostType(),
|
|
75
|
-
activeMenu: getNavigationPanelActiveMenu(),
|
|
76
|
-
siteTitle: siteData.name
|
|
77
|
-
};
|
|
78
|
-
}, []);
|
|
79
|
-
const {
|
|
80
|
-
setNavigationPanelActiveMenu: setActive,
|
|
81
|
-
setIsNavigationPanelOpened
|
|
82
|
-
} = (0, _data.useDispatch)(_store.store);
|
|
83
|
-
let activeItem;
|
|
84
|
-
|
|
85
|
-
if (activeMenu !== _constants.MENU_ROOT) {
|
|
86
|
-
if (activeMenu.startsWith('content')) {
|
|
87
|
-
activeItem = `${postType}-${postId}`;
|
|
88
|
-
} else {
|
|
89
|
-
activeItem = `${editedPostType}-${editedPostId}`;
|
|
90
|
-
}
|
|
91
|
-
} // Ensures focus is moved to the panel area when it is activated
|
|
52
|
+
return siteData.name;
|
|
53
|
+
}, []); // Ensures focus is moved to the panel area when it is activated
|
|
92
54
|
// from a separate component (such as document actions in the header).
|
|
93
55
|
|
|
94
|
-
|
|
95
56
|
const panelRef = (0, _element.useRef)();
|
|
96
57
|
(0, _element.useEffect)(() => {
|
|
97
58
|
if (isOpen) {
|
|
98
59
|
panelRef.current.focus();
|
|
99
60
|
}
|
|
100
|
-
}, [
|
|
61
|
+
}, [activeTemplateType, isOpen]);
|
|
101
62
|
|
|
102
63
|
const closeOnEscape = event => {
|
|
103
64
|
if (event.keyCode === _keycodes.ESCAPE && !event.defaultPrevented) {
|
|
104
65
|
event.preventDefault();
|
|
105
|
-
|
|
66
|
+
setIsOpen(false);
|
|
106
67
|
}
|
|
107
68
|
};
|
|
108
69
|
|
|
@@ -123,14 +84,33 @@ const NavigationPanel = _ref => {
|
|
|
123
84
|
}, (0, _htmlEntities.decodeEntities)(siteTitle))), (0, _element.createElement)("div", {
|
|
124
85
|
className: "edit-site-navigation-panel__scroll-container"
|
|
125
86
|
}, (0, _element.createElement)(_components.__experimentalNavigation, {
|
|
126
|
-
activeItem:
|
|
127
|
-
|
|
128
|
-
onActivateMenu: setActive
|
|
129
|
-
}, activeMenu === _constants.MENU_ROOT && (0, _element.createElement)(_mainDashboardButton.default.Slot, null, (0, _element.createElement)(_components.__experimentalNavigationBackButton, {
|
|
87
|
+
activeItem: activeTemplateType
|
|
88
|
+
}, (0, _element.createElement)(_mainDashboardButton.default.Slot, null, (0, _element.createElement)(_components.__experimentalNavigationBackButton, {
|
|
130
89
|
backButtonLabel: (0, _i18n.__)('Dashboard'),
|
|
131
90
|
className: "edit-site-navigation-panel__back-to-dashboard",
|
|
132
91
|
href: "index.php"
|
|
133
|
-
})), (0, _element.createElement)(
|
|
92
|
+
})), (0, _element.createElement)(_components.__experimentalNavigationMenu, null, (0, _element.createElement)(_components.__experimentalNavigationGroup, {
|
|
93
|
+
title: (0, _i18n.__)('Editor')
|
|
94
|
+
}, (0, _element.createElement)(_components.__experimentalNavigationItem, {
|
|
95
|
+
title: (0, _i18n.__)('Site'),
|
|
96
|
+
href: (0, _url.addQueryArgs)('', {
|
|
97
|
+
page: 'gutenberg-edit-site'
|
|
98
|
+
})
|
|
99
|
+
}), (0, _element.createElement)(_components.__experimentalNavigationItem, {
|
|
100
|
+
title: (0, _i18n.__)('Templates'),
|
|
101
|
+
item: "wp_template",
|
|
102
|
+
href: (0, _url.addQueryArgs)('', {
|
|
103
|
+
page: 'gutenberg-edit-site',
|
|
104
|
+
postType: 'wp_template'
|
|
105
|
+
})
|
|
106
|
+
}), (0, _element.createElement)(_components.__experimentalNavigationItem, {
|
|
107
|
+
title: (0, _i18n.__)('Template Parts'),
|
|
108
|
+
item: "wp_template_part",
|
|
109
|
+
href: (0, _url.addQueryArgs)('', {
|
|
110
|
+
page: 'gutenberg-edit-site',
|
|
111
|
+
postType: 'wp_template_part'
|
|
112
|
+
})
|
|
113
|
+
})))))))
|
|
134
114
|
);
|
|
135
115
|
};
|
|
136
116
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/navigation-sidebar/navigation-panel/index.js"],"names":["NavigationPanel","isOpen","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/navigation-sidebar/navigation-panel/index.js"],"names":["NavigationPanel","isOpen","setIsOpen","activeTemplateType","siteTitle","select","getEntityRecord","coreDataStore","siteData","undefined","name","panelRef","current","focus","closeOnEscape","event","keyCode","ESCAPE","defaultPrevented","preventDefault","page","postType"],"mappings":";;;;;;;;;AAiBA;;AAdA;;AAKA;;AAOA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AAKA;;AA1BA;AACA;AACA;;AAGA;AACA;AACA;;AAgBA;AACA;AACA;AAGA,MAAMA,eAAe,GAAG,QAAiD;AAAA,MAA/C;AAAEC,IAAAA,MAAF;AAAUC,IAAAA,SAAV;AAAqBC,IAAAA;AAArB,GAA+C;AACxE,QAAMC,SAAS,GAAG,qBAAaC,MAAF,IAAc;AAC1C,UAAM;AAAEC,MAAAA;AAAF,QAAsBD,MAAM,CAAEE,eAAF,CAAlC;AAEA,UAAMC,QAAQ,GACbF,eAAe,CAAE,MAAF,EAAU,gBAAV,EAA4BG,SAA5B,CAAf,IAA0D,EAD3D;AAGA,WAAOD,QAAQ,CAACE,IAAhB;AACA,GAPiB,EAOf,EAPe,CAAlB,CADwE,CAUxE;AACA;;AACA,QAAMC,QAAQ,GAAG,sBAAjB;AACA,0BAAW,MAAM;AAChB,QAAKV,MAAL,EAAc;AACbU,MAAAA,QAAQ,CAACC,OAAT,CAAiBC,KAAjB;AACA;AACD,GAJD,EAIG,CAAEV,kBAAF,EAAsBF,MAAtB,CAJH;;AAMA,QAAMa,aAAa,GAAKC,KAAF,IAAa;AAClC,QAAKA,KAAK,CAACC,OAAN,KAAkBC,gBAAlB,IAA4B,CAAEF,KAAK,CAACG,gBAAzC,EAA4D;AAC3DH,MAAAA,KAAK,CAACI,cAAN;AACAjB,MAAAA,SAAS,CAAE,KAAF,CAAT;AACA;AACD,GALD;;AAOA,SACC;AACA;AACC,MAAA,SAAS,EAAG,yBAAa,4BAAb,EAA0C;AACrD,mBAAWD;AAD0C,OAA1C,CADb;AAIC,MAAA,GAAG,EAAGU,QAJP;AAKC,MAAA,QAAQ,EAAC,IALV;AAMC,MAAA,SAAS,EAAGG;AANb,OAQC;AAAK,MAAA,SAAS,EAAC;AAAf,OACC;AAAK,MAAA,SAAS,EAAC;AAAf,OACC;AAAK,MAAA,SAAS,EAAC;AAAf,OACG,kCAAgBV,SAAhB,CADH,CADD,CADD,EAMC;AAAK,MAAA,SAAS,EAAC;AAAf,OACC,4BAAC,oCAAD;AAAY,MAAA,UAAU,EAAGD;AAAzB,OACC,4BAAC,4BAAD,CAAqB,IAArB,QACC,4BAAC,8CAAD;AACC,MAAA,eAAe,EAAG,cAAI,WAAJ,CADnB;AAEC,MAAA,SAAS,EAAC,+CAFX;AAGC,MAAA,IAAI,EAAC;AAHN,MADD,CADD,EASC,4BAAC,wCAAD,QACC,4BAAC,yCAAD;AAAiB,MAAA,KAAK,EAAG,cAAI,QAAJ;AAAzB,OACC,4BAAC,wCAAD;AACC,MAAA,KAAK,EAAG,cAAI,MAAJ,CADT;AAEC,MAAA,IAAI,EAAG,uBAAc,EAAd,EAAkB;AACxBiB,QAAAA,IAAI,EAAE;AADkB,OAAlB;AAFR,MADD,EAOC,4BAAC,wCAAD;AACC,MAAA,KAAK,EAAG,cAAI,WAAJ,CADT;AAEC,MAAA,IAAI,EAAC,aAFN;AAGC,MAAA,IAAI,EAAG,uBAAc,EAAd,EAAkB;AACxBA,QAAAA,IAAI,EAAE,qBADkB;AAExBC,QAAAA,QAAQ,EAAE;AAFc,OAAlB;AAHR,MAPD,EAeC,4BAAC,wCAAD;AACC,MAAA,KAAK,EAAG,cAAI,gBAAJ,CADT;AAEC,MAAA,IAAI,EAAC,kBAFN;AAGC,MAAA,IAAI,EAAG,uBAAc,EAAd,EAAkB;AACxBD,QAAAA,IAAI,EAAE,qBADkB;AAExBC,QAAAA,QAAQ,EAAE;AAFc,OAAlB;AAHR,MAfD,CADD,CATD,CADD,CAND,CARD;AAFD;AAyDA,CAnFD;;eAqFerB,e","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalNavigation as Navigation,\n\t__experimentalNavigationBackButton as NavigationBackButton,\n\t__experimentalNavigationGroup as NavigationGroup,\n\t__experimentalNavigationItem as NavigationItem,\n\t__experimentalNavigationMenu as NavigationMenu,\n} from '@wordpress/components';\nimport { store as coreDataStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { ESCAPE } from '@wordpress/keycodes';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport MainDashboardButton from '../../main-dashboard-button';\n\nconst NavigationPanel = ( { isOpen, setIsOpen, activeTemplateType } ) => {\n\tconst siteTitle = useSelect( ( select ) => {\n\t\tconst { getEntityRecord } = select( coreDataStore );\n\n\t\tconst siteData =\n\t\t\tgetEntityRecord( 'root', '__unstableBase', undefined ) || {};\n\n\t\treturn siteData.name;\n\t}, [] );\n\n\t// Ensures focus is moved to the panel area when it is activated\n\t// from a separate component (such as document actions in the header).\n\tconst panelRef = useRef();\n\tuseEffect( () => {\n\t\tif ( isOpen ) {\n\t\t\tpanelRef.current.focus();\n\t\t}\n\t}, [ activeTemplateType, isOpen ] );\n\n\tconst closeOnEscape = ( event ) => {\n\t\tif ( event.keyCode === ESCAPE && ! event.defaultPrevented ) {\n\t\t\tevent.preventDefault();\n\t\t\tsetIsOpen( false );\n\t\t}\n\t};\n\n\treturn (\n\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions\n\t\t<div\n\t\t\tclassName={ classnames( `edit-site-navigation-panel`, {\n\t\t\t\t'is-open': isOpen,\n\t\t\t} ) }\n\t\t\tref={ panelRef }\n\t\t\ttabIndex=\"-1\"\n\t\t\tonKeyDown={ closeOnEscape }\n\t\t>\n\t\t\t<div className=\"edit-site-navigation-panel__inner\">\n\t\t\t\t<div className=\"edit-site-navigation-panel__site-title-container\">\n\t\t\t\t\t<div className=\"edit-site-navigation-panel__site-title\">\n\t\t\t\t\t\t{ decodeEntities( siteTitle ) }\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"edit-site-navigation-panel__scroll-container\">\n\t\t\t\t\t<Navigation activeItem={ activeTemplateType }>\n\t\t\t\t\t\t<MainDashboardButton.Slot>\n\t\t\t\t\t\t\t<NavigationBackButton\n\t\t\t\t\t\t\t\tbackButtonLabel={ __( 'Dashboard' ) }\n\t\t\t\t\t\t\t\tclassName=\"edit-site-navigation-panel__back-to-dashboard\"\n\t\t\t\t\t\t\t\thref=\"index.php\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MainDashboardButton.Slot>\n\n\t\t\t\t\t\t<NavigationMenu>\n\t\t\t\t\t\t\t<NavigationGroup title={ __( 'Editor' ) }>\n\t\t\t\t\t\t\t\t<NavigationItem\n\t\t\t\t\t\t\t\t\ttitle={ __( 'Site' ) }\n\t\t\t\t\t\t\t\t\thref={ addQueryArgs( '', {\n\t\t\t\t\t\t\t\t\t\tpage: 'gutenberg-edit-site',\n\t\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<NavigationItem\n\t\t\t\t\t\t\t\t\ttitle={ __( 'Templates' ) }\n\t\t\t\t\t\t\t\t\titem=\"wp_template\"\n\t\t\t\t\t\t\t\t\thref={ addQueryArgs( '', {\n\t\t\t\t\t\t\t\t\t\tpage: 'gutenberg-edit-site',\n\t\t\t\t\t\t\t\t\t\tpostType: 'wp_template',\n\t\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<NavigationItem\n\t\t\t\t\t\t\t\t\ttitle={ __( 'Template Parts' ) }\n\t\t\t\t\t\t\t\t\titem=\"wp_template_part\"\n\t\t\t\t\t\t\t\t\thref={ addQueryArgs( '', {\n\t\t\t\t\t\t\t\t\t\tpage: 'gutenberg-edit-site',\n\t\t\t\t\t\t\t\t\t\tpostType: 'wp_template_part',\n\t\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</NavigationGroup>\n\t\t\t\t\t\t</NavigationMenu>\n\t\t\t\t\t</Navigation>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default NavigationPanel;\n"]}
|
|
@@ -19,28 +19,19 @@ var _coreData = require("@wordpress/core-data");
|
|
|
19
19
|
|
|
20
20
|
var _compose = require("@wordpress/compose");
|
|
21
21
|
|
|
22
|
-
var _store = require("../../../store");
|
|
23
|
-
|
|
24
22
|
/**
|
|
25
23
|
* WordPress dependencies
|
|
26
24
|
*/
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Internal dependencies
|
|
30
|
-
*/
|
|
31
25
|
function NavigationToggle(_ref) {
|
|
32
26
|
let {
|
|
33
27
|
icon,
|
|
34
|
-
isOpen
|
|
28
|
+
isOpen,
|
|
29
|
+
setIsOpen
|
|
35
30
|
} = _ref;
|
|
36
31
|
const {
|
|
37
32
|
isRequestingSiteIcon,
|
|
38
|
-
navigationPanelMenu,
|
|
39
33
|
siteIconUrl
|
|
40
34
|
} = (0, _data.useSelect)(select => {
|
|
41
|
-
const {
|
|
42
|
-
getCurrentTemplateNavigationPanelSubMenu
|
|
43
|
-
} = select(_store.store);
|
|
44
35
|
const {
|
|
45
36
|
getEntityRecord,
|
|
46
37
|
isResolving
|
|
@@ -48,24 +39,12 @@ function NavigationToggle(_ref) {
|
|
|
48
39
|
const siteData = getEntityRecord('root', '__unstableBase', undefined) || {};
|
|
49
40
|
return {
|
|
50
41
|
isRequestingSiteIcon: isResolving('core', 'getEntityRecord', ['root', '__unstableBase', undefined]),
|
|
51
|
-
navigationPanelMenu: getCurrentTemplateNavigationPanelSubMenu(),
|
|
52
42
|
siteIconUrl: siteData.site_icon_url
|
|
53
43
|
};
|
|
54
44
|
}, []);
|
|
55
|
-
const {
|
|
56
|
-
openNavigationPanelToMenu,
|
|
57
|
-
setIsNavigationPanelOpened
|
|
58
|
-
} = (0, _data.useDispatch)(_store.store);
|
|
59
45
|
const disableMotion = (0, _compose.useReducedMotion)();
|
|
60
46
|
|
|
61
|
-
const toggleNavigationPanel = () =>
|
|
62
|
-
if (isOpen) {
|
|
63
|
-
setIsNavigationPanelOpened(false);
|
|
64
|
-
return;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
openNavigationPanelToMenu(navigationPanelMenu);
|
|
68
|
-
};
|
|
47
|
+
const toggleNavigationPanel = () => setIsOpen(open => !open);
|
|
69
48
|
|
|
70
49
|
let buttonIcon = (0, _element.createElement)(_components.Icon, {
|
|
71
50
|
size: "36px",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/navigation-sidebar/navigation-toggle/index.js"],"names":["NavigationToggle","icon","isOpen","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/navigation-sidebar/navigation-toggle/index.js"],"names":["NavigationToggle","icon","isOpen","setIsOpen","isRequestingSiteIcon","siteIconUrl","select","getEntityRecord","isResolving","coreDataStore","siteData","undefined","site_icon_url","disableMotion","toggleNavigationPanel","open","buttonIcon","wordpress","effect","expand","scale","borderRadius","transition","type","duration"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AAZA;AACA;AACA;AAYA,SAASA,gBAAT,OAAyD;AAAA,MAA9B;AAAEC,IAAAA,IAAF;AAAQC,IAAAA,MAAR;AAAgBC,IAAAA;AAAhB,GAA8B;AACxD,QAAM;AAAEC,IAAAA,oBAAF;AAAwBC,IAAAA;AAAxB,MAAwC,qBAAaC,MAAF,IAAc;AACtE,UAAM;AAAEC,MAAAA,eAAF;AAAmBC,MAAAA;AAAnB,QAAmCF,MAAM,CAAEG,eAAF,CAA/C;AACA,UAAMC,QAAQ,GACbH,eAAe,CAAE,MAAF,EAAU,gBAAV,EAA4BI,SAA5B,CAAf,IAA0D,EAD3D;AAGA,WAAO;AACNP,MAAAA,oBAAoB,EAAEI,WAAW,CAAE,MAAF,EAAU,iBAAV,EAA6B,CAC7D,MAD6D,EAE7D,gBAF6D,EAG7DG,SAH6D,CAA7B,CAD3B;AAMNN,MAAAA,WAAW,EAAEK,QAAQ,CAACE;AANhB,KAAP;AAQA,GAb6C,EAa3C,EAb2C,CAA9C;AAeA,QAAMC,aAAa,GAAG,gCAAtB;;AAEA,QAAMC,qBAAqB,GAAG,MAAMX,SAAS,CAAIY,IAAF,IAAY,CAAEA,IAAhB,CAA7C;;AAEA,MAAIC,UAAU,GAAG,4BAAC,gBAAD;AAAM,IAAA,IAAI,EAAC,MAAX;AAAkB,IAAA,IAAI,EAAGC;AAAzB,IAAjB;AAEA,QAAMC,MAAM,GAAG;AACdC,IAAAA,MAAM,EAAE;AACPC,MAAAA,KAAK,EAAE,GADA;AAEPC,MAAAA,YAAY,EAAE,CAFP;AAGPC,MAAAA,UAAU,EAAE;AAAEC,QAAAA,IAAI,EAAE,OAAR;AAAiBC,QAAAA,QAAQ,EAAE;AAA3B;AAHL;AADM,GAAf;;AAQA,MAAKnB,WAAL,EAAmB;AAClBW,IAAAA,UAAU,GACT,4BAAC,4BAAD,CAAQ,GAAR;AACC,MAAA,QAAQ,EAAG,CAAEH,aAAF,IAAmBK,MAD/B;AAEC,MAAA,GAAG,EAAG,cAAI,WAAJ,CAFP;AAGC,MAAA,SAAS,EAAC,wCAHX;AAIC,MAAA,GAAG,EAAGb;AAJP,MADD;AAQA,GATD,MASO,IAAKD,oBAAL,EAA4B;AAClCY,IAAAA,UAAU,GAAG,IAAb;AACA,GAFM,MAEA,IAAKf,IAAL,EAAY;AAClBe,IAAAA,UAAU,GAAG,4BAAC,gBAAD;AAAM,MAAA,IAAI,EAAC,MAAX;AAAkB,MAAA,IAAI,EAAGf;AAAzB,MAAb;AACA;;AAED,SACC,4BAAC,4BAAD,CAAQ,GAAR;AACC,IAAA,SAAS,EACR,iCAAkCC,MAAM,GAAG,UAAH,GAAgB,EAAxD,CAFF;AAIC,IAAA,UAAU,EAAC;AAJZ,KAMC,4BAAC,kBAAD;AACC,IAAA,SAAS,EAAC,8CADX;AAEC,IAAA,KAAK,EAAG,cAAI,mBAAJ,CAFT;AAGC,IAAA,OAAO,EAAGY,qBAHX;AAIC,IAAA,WAAW;AAJZ,KAMGE,UANH,CAND,CADD;AAiBA;;eAEchB,gB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport {\n\tButton,\n\tIcon,\n\t__unstableMotion as motion,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { wordpress } from '@wordpress/icons';\nimport { store as coreDataStore } from '@wordpress/core-data';\nimport { useReducedMotion } from '@wordpress/compose';\n\nfunction NavigationToggle( { icon, isOpen, setIsOpen } ) {\n\tconst { isRequestingSiteIcon, siteIconUrl } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, isResolving } = select( coreDataStore );\n\t\tconst siteData =\n\t\t\tgetEntityRecord( 'root', '__unstableBase', undefined ) || {};\n\n\t\treturn {\n\t\t\tisRequestingSiteIcon: isResolving( 'core', 'getEntityRecord', [\n\t\t\t\t'root',\n\t\t\t\t'__unstableBase',\n\t\t\t\tundefined,\n\t\t\t] ),\n\t\t\tsiteIconUrl: siteData.site_icon_url,\n\t\t};\n\t}, [] );\n\n\tconst disableMotion = useReducedMotion();\n\n\tconst toggleNavigationPanel = () => setIsOpen( ( open ) => ! open );\n\n\tlet buttonIcon = <Icon size=\"36px\" icon={ wordpress } />;\n\n\tconst effect = {\n\t\texpand: {\n\t\t\tscale: 1.7,\n\t\t\tborderRadius: 0,\n\t\t\ttransition: { type: 'tween', duration: '0.2' },\n\t\t},\n\t};\n\n\tif ( siteIconUrl ) {\n\t\tbuttonIcon = (\n\t\t\t<motion.img\n\t\t\t\tvariants={ ! disableMotion && effect }\n\t\t\t\talt={ __( 'Site Icon' ) }\n\t\t\t\tclassName=\"edit-site-navigation-toggle__site-icon\"\n\t\t\t\tsrc={ siteIconUrl }\n\t\t\t/>\n\t\t);\n\t} else if ( isRequestingSiteIcon ) {\n\t\tbuttonIcon = null;\n\t} else if ( icon ) {\n\t\tbuttonIcon = <Icon size=\"36px\" icon={ icon } />;\n\t}\n\n\treturn (\n\t\t<motion.div\n\t\t\tclassName={\n\t\t\t\t'edit-site-navigation-toggle' + ( isOpen ? ' is-open' : '' )\n\t\t\t}\n\t\t\twhileHover=\"expand\"\n\t\t>\n\t\t\t<Button\n\t\t\t\tclassName=\"edit-site-navigation-toggle__button has-icon\"\n\t\t\t\tlabel={ __( 'Toggle navigation' ) }\n\t\t\t\tonClick={ toggleNavigationPanel }\n\t\t\t\tshowTooltip\n\t\t\t>\n\t\t\t\t{ buttonIcon }\n\t\t\t</Button>\n\t\t</motion.div>\n\t);\n}\n\nexport default NavigationToggle;\n"]}
|
|
@@ -93,9 +93,10 @@ function TemplateDetails(_ref) {
|
|
|
93
93
|
onClick: revert
|
|
94
94
|
}, (0, _i18n.__)('Clear customizations'))), (0, _element.createElement)(_components.Button, {
|
|
95
95
|
className: "edit-site-template-details__show-all-button",
|
|
96
|
-
href: (0, _url.addQueryArgs)('
|
|
96
|
+
href: (0, _url.addQueryArgs)('', {
|
|
97
|
+
page: 'gutenberg-edit-site',
|
|
97
98
|
// TODO: We should update this to filter by template part's areas as well.
|
|
98
|
-
|
|
99
|
+
postType: template.type
|
|
99
100
|
})
|
|
100
101
|
}, (0, _i18n.sprintf)(
|
|
101
102
|
/* translators: the template part's area name ("Headers", "Sidebars") or "templates". */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/template-details/index.js"],"names":["TemplateDetails","template","onClose","title","description","select","editorStore","__experimentalGetTemplateInfo","revertTemplate","editSiteStore","templateSubMenu","type","menu","MENU_TEMPLATES","TEMPLATE_PARTS_SUB_MENUS","find","area","revert","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/template-details/index.js"],"names":["TemplateDetails","template","onClose","title","description","select","editorStore","__experimentalGetTemplateInfo","revertTemplate","editSiteStore","templateSubMenu","type","menu","MENU_TEMPLATES","TEMPLATE_PARTS_SUB_MENUS","find","area","revert","page","postType"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AAOA;;AACA;;AACA;;AAKA;;AACA;;AAIA;;AACA;;AAzBA;AACA;AACA;;AAcA;AACA;AACA;AASe,SAASA,eAAT,OAAkD;AAAA,MAAxB;AAAEC,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,GAAwB;AAChE,QAAM;AAAEC,IAAAA,KAAF;AAASC,IAAAA;AAAT,MAAyB,qBAC5BC,MAAF,IACCA,MAAM,CAAEC,aAAF,CAAN,CAAsBC,6BAAtB,CAAqDN,QAArD,CAF6B,EAG9B,EAH8B,CAA/B;AAKA,QAAM;AAAEO,IAAAA;AAAF,MAAqB,uBAAaC,YAAb,CAA3B;AAEA,QAAMC,eAAe,GAAG,sBAAS,MAAM;AACtC,QAAK,CAAAT,QAAQ,SAAR,IAAAA,QAAQ,WAAR,YAAAA,QAAQ,CAAEU,IAAV,MAAmB,aAAxB,EAAwC;AACvC,aAAO;AAAER,QAAAA,KAAK,EAAE,cAAI,WAAJ,CAAT;AAA4BS,QAAAA,IAAI,EAAEC;AAAlC,OAAP;AACA;;AAED,WAAOC,oCAAyBC,IAAzB,CACN;AAAA,UAAE;AAAEC,QAAAA;AAAF,OAAF;AAAA,aAAgBA,IAAI,MAAKf,QAAL,aAAKA,QAAL,uBAAKA,QAAQ,CAAEe,IAAf,CAApB;AAAA,KADM,CAAP;AAGA,GARuB,EAQrB,CAAEf,QAAF,CARqB,CAAxB;;AAUA,MAAK,CAAEA,QAAP,EAAkB;AACjB,WAAO,IAAP;AACA;;AAED,QAAMgB,MAAM,GAAG,MAAM;AACpBT,IAAAA,cAAc,CAAEP,QAAF,CAAd;AACAC,IAAAA,OAAO;AACP,GAHD;;AAKA,SACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,4BAAC,iCAAD;AACC,IAAA,KAAK,EAAG,CADT;AAEC,IAAA,MAAM,EAAG,GAFV;AAGC,IAAA,SAAS,EAAC;AAHX,KAKGC,KALH,CADD,EASGC,WAAW,IACZ,4BAAC,8BAAD;AACC,IAAA,IAAI,EAAC,MADN;AAEC,IAAA,SAAS,EAAC,yCAFX;AAGC,IAAA,EAAE,EAAC;AAHJ,KAKGA,WALH,CAVF,CADD,EAqBC,4BAAC,sBAAD;AAAe,IAAA,4BAA4B,EAAGF;AAA9C,IArBD,EAuBG,mCAAsBD,QAAtB,KACD,4BAAC,qBAAD;AAAW,IAAA,SAAS,EAAC;AAArB,KACC,4BAAC,oBAAD;AACC,IAAA,SAAS,EAAC,2CADX;AAEC,IAAA,IAAI,EAAG,cAAI,mCAAJ,CAFR;AAGC,IAAA,OAAO,EAAGgB;AAHX,KAKG,cAAI,sBAAJ,CALH,CADD,CAxBF,EAmCC,4BAAC,kBAAD;AACC,IAAA,SAAS,EAAC,6CADX;AAEC,IAAA,IAAI,EAAG,uBAAc,EAAd,EAAkB;AACxBC,MAAAA,IAAI,EAAE,qBADkB;AAExB;AACAC,MAAAA,QAAQ,EAAElB,QAAQ,CAACU;AAHK,KAAlB;AAFR,KAQG;AACD;AACA,gBAAI,eAAJ,CAFC,EAGDD,eAAe,CAACP,KAHf,CARH,CAnCD,CADD;AAoDA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { sprintf, __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\tMenuGroup,\n\tMenuItem,\n\t__experimentalHeading as Heading,\n\t__experimentalText as Text,\n} from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport isTemplateRevertable from '../../utils/is-template-revertable';\nimport {\n\tMENU_TEMPLATES,\n\tTEMPLATE_PARTS_SUB_MENUS,\n} from '../navigation-sidebar/navigation-panel/constants';\nimport { store as editSiteStore } from '../../store';\nimport TemplateAreas from './template-areas';\n\nexport default function TemplateDetails( { template, onClose } ) {\n\tconst { title, description } = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetTemplateInfo( template ),\n\t\t[]\n\t);\n\tconst { revertTemplate } = useDispatch( editSiteStore );\n\n\tconst templateSubMenu = useMemo( () => {\n\t\tif ( template?.type === 'wp_template' ) {\n\t\t\treturn { title: __( 'templates' ), menu: MENU_TEMPLATES };\n\t\t}\n\n\t\treturn TEMPLATE_PARTS_SUB_MENUS.find(\n\t\t\t( { area } ) => area === template?.area\n\t\t);\n\t}, [ template ] );\n\n\tif ( ! template ) {\n\t\treturn null;\n\t}\n\n\tconst revert = () => {\n\t\trevertTemplate( template );\n\t\tonClose();\n\t};\n\n\treturn (\n\t\t<div className=\"edit-site-template-details\">\n\t\t\t<div className=\"edit-site-template-details__group\">\n\t\t\t\t<Heading\n\t\t\t\t\tlevel={ 4 }\n\t\t\t\t\tweight={ 600 }\n\t\t\t\t\tclassName=\"edit-site-template-details__title\"\n\t\t\t\t>\n\t\t\t\t\t{ title }\n\t\t\t\t</Heading>\n\n\t\t\t\t{ description && (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tsize=\"body\"\n\t\t\t\t\t\tclassName=\"edit-site-template-details__description\"\n\t\t\t\t\t\tas=\"p\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ description }\n\t\t\t\t\t</Text>\n\t\t\t\t) }\n\t\t\t</div>\n\n\t\t\t<TemplateAreas closeTemplateDetailsDropdown={ onClose } />\n\n\t\t\t{ isTemplateRevertable( template ) && (\n\t\t\t\t<MenuGroup className=\"edit-site-template-details__group edit-site-template-details__revert\">\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\tclassName=\"edit-site-template-details__revert-button\"\n\t\t\t\t\t\tinfo={ __( 'Restore template to theme default' ) }\n\t\t\t\t\t\tonClick={ revert }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Clear customizations' ) }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t</MenuGroup>\n\t\t\t) }\n\n\t\t\t<Button\n\t\t\t\tclassName=\"edit-site-template-details__show-all-button\"\n\t\t\t\thref={ addQueryArgs( '', {\n\t\t\t\t\tpage: 'gutenberg-edit-site',\n\t\t\t\t\t// TODO: We should update this to filter by template part's areas as well.\n\t\t\t\t\tpostType: template.type,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t{ sprintf(\n\t\t\t\t\t/* translators: the template part's area name (\"Headers\", \"Sidebars\") or \"templates\". */\n\t\t\t\t\t__( 'Browse all %s' ),\n\t\t\t\t\ttemplateSubMenu.title\n\t\t\t\t) }\n\t\t\t</Button>\n\t\t</div>\n\t);\n}\n"]}
|