@wordpress/edit-post 6.7.0 → 6.10.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.
Files changed (228) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +1 -1
  3. package/build/components/block-manager/category.js.map +1 -1
  4. package/build/components/block-manager/index.js +12 -4
  5. package/build/components/block-manager/index.js.map +1 -1
  6. package/build/components/device-preview/index.js.map +1 -1
  7. package/build/components/editor-initialization/listener-hooks.js.map +1 -1
  8. package/build/components/header/fullscreen-mode-close/index.js.map +1 -1
  9. package/build/components/header/header-toolbar/index.js.map +1 -1
  10. package/build/components/header/index.js.map +1 -1
  11. package/build/components/header/mode-switcher/index.js.map +1 -1
  12. package/build/components/header/post-publish-button-or-toggle.js.map +1 -1
  13. package/build/components/header/template-title/delete-template.js.map +1 -1
  14. package/build/components/header/template-title/edit-template-title.js +11 -2
  15. package/build/components/header/template-title/edit-template-title.js.map +1 -1
  16. package/build/components/header/template-title/index.js.map +1 -1
  17. package/build/components/header/tools-more-menu-group/index.js.map +1 -1
  18. package/build/components/keyboard-shortcut-help-modal/config.js +12 -0
  19. package/build/components/keyboard-shortcut-help-modal/config.js.map +1 -1
  20. package/build/components/keyboard-shortcut-help-modal/index.js +1 -3
  21. package/build/components/keyboard-shortcut-help-modal/index.js.map +1 -1
  22. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  23. package/build/components/layout/actions-panel.js.map +1 -1
  24. package/build/components/layout/index.js.map +1 -1
  25. package/build/components/layout/index.native.js.map +1 -1
  26. package/build/components/preferences-modal/index.js +3 -26
  27. package/build/components/preferences-modal/index.js.map +1 -1
  28. package/build/components/preferences-modal/options/enable-custom-fields.js.map +1 -1
  29. package/build/components/preferences-modal/options/enable-panel.js.map +1 -1
  30. package/build/components/preferences-modal/options/enable-publish-sidebar.js.map +1 -1
  31. package/build/components/secondary-sidebar/inserter-sidebar.js.map +1 -1
  32. package/build/components/sidebar/discussion-panel/index.js.map +1 -1
  33. package/build/components/sidebar/featured-image/index.js.map +1 -1
  34. package/build/components/sidebar/page-attributes/index.js.map +1 -1
  35. package/build/components/sidebar/plugin-document-setting-panel/index.js.map +1 -1
  36. package/build/components/sidebar/plugin-post-status-info/index.js +2 -2
  37. package/build/components/sidebar/plugin-post-status-info/index.js.map +1 -1
  38. package/build/components/sidebar/plugin-sidebar/index.js.map +1 -1
  39. package/build/components/sidebar/post-excerpt/index.js.map +1 -1
  40. package/build/components/sidebar/post-format/index.js +3 -1
  41. package/build/components/sidebar/post-format/index.js.map +1 -1
  42. package/build/components/sidebar/post-schedule/index.js +28 -12
  43. package/build/components/sidebar/post-schedule/index.js.map +1 -1
  44. package/build/components/sidebar/post-slug/index.js +3 -1
  45. package/build/components/sidebar/post-slug/index.js.map +1 -1
  46. package/build/components/sidebar/post-status/index.js +6 -2
  47. package/build/components/sidebar/post-status/index.js.map +1 -1
  48. package/build/components/sidebar/post-template/create-modal.js +116 -0
  49. package/build/components/sidebar/post-template/create-modal.js.map +1 -0
  50. package/build/components/sidebar/post-template/form.js +123 -0
  51. package/build/components/sidebar/post-template/form.js.map +1 -0
  52. package/build/components/sidebar/post-template/index.js +124 -0
  53. package/build/components/sidebar/post-template/index.js.map +1 -0
  54. package/build/components/sidebar/post-url/index.js +68 -0
  55. package/build/components/sidebar/post-url/index.js.map +1 -0
  56. package/build/components/sidebar/post-visibility/index.js +21 -6
  57. package/build/components/sidebar/post-visibility/index.js.map +1 -1
  58. package/build/components/sidebar/settings-sidebar/index.js +2 -6
  59. package/build/components/sidebar/settings-sidebar/index.js.map +1 -1
  60. package/build/components/start-page-options/index.js +31 -13
  61. package/build/components/start-page-options/index.js.map +1 -1
  62. package/build/components/visual-editor/block-inspector-button.js +3 -7
  63. package/build/components/visual-editor/block-inspector-button.js.map +1 -1
  64. package/build/components/visual-editor/index.js +4 -2
  65. package/build/components/visual-editor/index.js.map +1 -1
  66. package/build/editor.js +1 -1
  67. package/build/editor.js.map +1 -1
  68. package/build/editor.native.js +1 -1
  69. package/build/editor.native.js.map +1 -1
  70. package/build/plugins/copy-content-menu-item/index.js +1 -1
  71. package/build/plugins/copy-content-menu-item/index.js.map +1 -1
  72. package/build/store/actions.js.map +1 -1
  73. package/build/store/selectors.js +8 -8
  74. package/build/store/selectors.js.map +1 -1
  75. package/build-module/components/block-manager/category.js.map +1 -1
  76. package/build-module/components/block-manager/index.js +13 -5
  77. package/build-module/components/block-manager/index.js.map +1 -1
  78. package/build-module/components/device-preview/index.js.map +1 -1
  79. package/build-module/components/editor-initialization/listener-hooks.js.map +1 -1
  80. package/build-module/components/header/fullscreen-mode-close/index.js.map +1 -1
  81. package/build-module/components/header/header-toolbar/index.js.map +1 -1
  82. package/build-module/components/header/index.js.map +1 -1
  83. package/build-module/components/header/mode-switcher/index.js.map +1 -1
  84. package/build-module/components/header/post-publish-button-or-toggle.js.map +1 -1
  85. package/build-module/components/header/template-title/delete-template.js.map +1 -1
  86. package/build-module/components/header/template-title/edit-template-title.js +12 -2
  87. package/build-module/components/header/template-title/edit-template-title.js.map +1 -1
  88. package/build-module/components/header/template-title/index.js.map +1 -1
  89. package/build-module/components/header/tools-more-menu-group/index.js.map +1 -1
  90. package/build-module/components/keyboard-shortcut-help-modal/config.js +12 -0
  91. package/build-module/components/keyboard-shortcut-help-modal/config.js.map +1 -1
  92. package/build-module/components/keyboard-shortcut-help-modal/index.js +1 -2
  93. package/build-module/components/keyboard-shortcut-help-modal/index.js.map +1 -1
  94. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  95. package/build-module/components/layout/actions-panel.js.map +1 -1
  96. package/build-module/components/layout/index.js.map +1 -1
  97. package/build-module/components/layout/index.native.js.map +1 -1
  98. package/build-module/components/preferences-modal/index.js +3 -25
  99. package/build-module/components/preferences-modal/index.js.map +1 -1
  100. package/build-module/components/preferences-modal/options/enable-custom-fields.js.map +1 -1
  101. package/build-module/components/preferences-modal/options/enable-panel.js.map +1 -1
  102. package/build-module/components/preferences-modal/options/enable-publish-sidebar.js.map +1 -1
  103. package/build-module/components/secondary-sidebar/inserter-sidebar.js.map +1 -1
  104. package/build-module/components/sidebar/discussion-panel/index.js.map +1 -1
  105. package/build-module/components/sidebar/featured-image/index.js.map +1 -1
  106. package/build-module/components/sidebar/page-attributes/index.js.map +1 -1
  107. package/build-module/components/sidebar/plugin-document-setting-panel/index.js.map +1 -1
  108. package/build-module/components/sidebar/plugin-post-status-info/index.js +2 -2
  109. package/build-module/components/sidebar/plugin-post-status-info/index.js.map +1 -1
  110. package/build-module/components/sidebar/plugin-sidebar/index.js.map +1 -1
  111. package/build-module/components/sidebar/post-excerpt/index.js.map +1 -1
  112. package/build-module/components/sidebar/post-format/index.js +3 -1
  113. package/build-module/components/sidebar/post-format/index.js.map +1 -1
  114. package/build-module/components/sidebar/post-schedule/index.js +32 -13
  115. package/build-module/components/sidebar/post-schedule/index.js.map +1 -1
  116. package/build-module/components/sidebar/post-slug/index.js +3 -1
  117. package/build-module/components/sidebar/post-slug/index.js.map +1 -1
  118. package/build-module/components/sidebar/post-status/index.js +4 -2
  119. package/build-module/components/sidebar/post-status/index.js.map +1 -1
  120. package/build-module/components/sidebar/post-template/create-modal.js +104 -0
  121. package/build-module/components/sidebar/post-template/create-modal.js.map +1 -0
  122. package/build-module/components/sidebar/post-template/form.js +106 -0
  123. package/build-module/components/sidebar/post-template/form.js.map +1 -0
  124. package/build-module/components/sidebar/post-template/index.js +110 -0
  125. package/build-module/components/sidebar/post-template/index.js.map +1 -0
  126. package/build-module/components/sidebar/post-url/index.js +59 -0
  127. package/build-module/components/sidebar/post-url/index.js.map +1 -0
  128. package/build-module/components/sidebar/post-visibility/index.js +24 -8
  129. package/build-module/components/sidebar/post-visibility/index.js.map +1 -1
  130. package/build-module/components/sidebar/settings-sidebar/index.js +2 -4
  131. package/build-module/components/sidebar/settings-sidebar/index.js.map +1 -1
  132. package/build-module/components/start-page-options/index.js +32 -14
  133. package/build-module/components/start-page-options/index.js.map +1 -1
  134. package/build-module/components/visual-editor/block-inspector-button.js +3 -5
  135. package/build-module/components/visual-editor/block-inspector-button.js.map +1 -1
  136. package/build-module/components/visual-editor/index.js +4 -2
  137. package/build-module/components/visual-editor/index.js.map +1 -1
  138. package/build-module/editor.js +2 -2
  139. package/build-module/editor.js.map +1 -1
  140. package/build-module/editor.native.js +2 -2
  141. package/build-module/editor.native.js.map +1 -1
  142. package/build-module/plugins/copy-content-menu-item/index.js +1 -1
  143. package/build-module/plugins/copy-content-menu-item/index.js.map +1 -1
  144. package/build-module/store/actions.js.map +1 -1
  145. package/build-module/store/selectors.js +8 -7
  146. package/build-module/store/selectors.js.map +1 -1
  147. package/build-style/style-rtl.css +85 -87
  148. package/build-style/style.css +84 -90
  149. package/package.json +27 -27
  150. package/src/components/block-manager/category.js +2 -2
  151. package/src/components/block-manager/index.js +15 -4
  152. package/src/components/device-preview/index.js +4 -6
  153. package/src/components/editor-initialization/listener-hooks.js +2 -3
  154. package/src/components/header/fullscreen-mode-close/index.js +2 -3
  155. package/src/components/header/header-toolbar/index.js +6 -11
  156. package/src/components/header/index.js +6 -9
  157. package/src/components/header/mode-switcher/index.js +4 -4
  158. package/src/components/header/post-publish-button-or-toggle.js +4 -6
  159. package/src/components/header/template-title/delete-template.js +2 -3
  160. package/src/components/header/template-title/edit-template-title.js +11 -1
  161. package/src/components/header/template-title/index.js +2 -3
  162. package/src/components/header/tools-more-menu-group/index.js +2 -3
  163. package/src/components/keyboard-shortcut-help-modal/config.js +8 -0
  164. package/src/components/keyboard-shortcut-help-modal/index.js +1 -2
  165. package/src/components/keyboard-shortcut-help-modal/style.scss +0 -5
  166. package/src/components/keyboard-shortcut-help-modal/test/__snapshots__/index.js.snap +14 -0
  167. package/src/components/keyboard-shortcut-help-modal/test/index.js +2 -1
  168. package/src/components/keyboard-shortcuts/index.js +4 -8
  169. package/src/components/layout/actions-panel.js +6 -9
  170. package/src/components/layout/index.js +12 -21
  171. package/src/components/layout/index.native.js +4 -5
  172. package/src/components/preferences-modal/index.js +5 -23
  173. package/src/components/preferences-modal/options/enable-custom-fields.js +2 -2
  174. package/src/components/preferences-modal/options/enable-panel.js +2 -3
  175. package/src/components/preferences-modal/options/enable-publish-sidebar.js +2 -3
  176. package/src/components/preferences-modal/test/index.js +3 -3
  177. package/src/components/secondary-sidebar/inserter-sidebar.js +2 -3
  178. package/src/components/sidebar/discussion-panel/index.js +2 -3
  179. package/src/components/sidebar/featured-image/index.js +2 -3
  180. package/src/components/sidebar/page-attributes/index.js +2 -3
  181. package/src/components/sidebar/plugin-document-setting-panel/index.js +2 -3
  182. package/src/components/sidebar/plugin-post-status-info/index.js +2 -2
  183. package/src/components/sidebar/plugin-sidebar/index.js +2 -3
  184. package/src/components/sidebar/post-author/style.scss +4 -10
  185. package/src/components/sidebar/post-excerpt/index.js +2 -3
  186. package/src/components/sidebar/post-format/index.js +1 -1
  187. package/src/components/sidebar/post-format/style.scss +5 -0
  188. package/src/components/sidebar/post-schedule/index.js +27 -16
  189. package/src/components/sidebar/post-schedule/style.scss +17 -4
  190. package/src/components/sidebar/post-slug/index.js +1 -1
  191. package/src/components/sidebar/post-slug/style.scss +4 -3
  192. package/src/components/sidebar/post-status/index.js +8 -5
  193. package/src/components/sidebar/post-template/create-modal.js +146 -0
  194. package/src/components/sidebar/post-template/form.js +143 -0
  195. package/src/components/sidebar/post-template/index.js +102 -0
  196. package/src/components/sidebar/post-template/style.scss +36 -0
  197. package/src/components/sidebar/post-url/index.js +51 -0
  198. package/src/components/sidebar/post-url/style.scss +23 -0
  199. package/src/components/sidebar/post-visibility/index.js +22 -8
  200. package/src/components/sidebar/post-visibility/style.scss +5 -4
  201. package/src/components/sidebar/settings-sidebar/index.js +1 -5
  202. package/src/components/sidebar/template/style.scss +0 -8
  203. package/src/components/start-page-options/index.js +48 -28
  204. package/src/components/start-page-options/style.scss +0 -9
  205. package/src/components/visual-editor/block-inspector-button.js +4 -8
  206. package/src/components/visual-editor/index.js +2 -1
  207. package/src/editor.js +8 -10
  208. package/src/editor.native.js +5 -6
  209. package/src/plugins/copy-content-menu-item/index.js +1 -1
  210. package/src/store/actions.js +322 -295
  211. package/src/store/selectors.js +21 -24
  212. package/src/style.scss +3 -2
  213. package/build/components/sidebar/post-link/index.js +0 -182
  214. package/build/components/sidebar/post-link/index.js.map +0 -1
  215. package/build/components/sidebar/template/actions.js +0 -167
  216. package/build/components/sidebar/template/actions.js.map +0 -1
  217. package/build/components/sidebar/template/index.js +0 -164
  218. package/build/components/sidebar/template/index.js.map +0 -1
  219. package/build-module/components/sidebar/post-link/index.js +0 -165
  220. package/build-module/components/sidebar/post-link/index.js.map +0 -1
  221. package/build-module/components/sidebar/template/actions.js +0 -153
  222. package/build-module/components/sidebar/template/actions.js.map +0 -1
  223. package/build-module/components/sidebar/template/index.js +0 -145
  224. package/build-module/components/sidebar/template/index.js.map +0 -1
  225. package/src/components/sidebar/post-link/index.js +0 -180
  226. package/src/components/sidebar/post-link/style.scss +0 -20
  227. package/src/components/sidebar/template/actions.js +0 -203
  228. package/src/components/sidebar/template/index.js +0 -164
@@ -1,145 +0,0 @@
1
- import { createElement } from "@wordpress/element";
2
-
3
- /**
4
- * External dependencies
5
- */
6
- import { partial, isEmpty, map, fromPairs } from 'lodash';
7
- /**
8
- * WordPress dependencies
9
- */
10
-
11
- import { __, sprintf } from '@wordpress/i18n';
12
- import { useMemo } from '@wordpress/element';
13
- import { Notice, PanelBody, SelectControl } from '@wordpress/components';
14
- import { store as editorStore } from '@wordpress/editor';
15
- import { useSelect, useDispatch } from '@wordpress/data';
16
- import { store as coreStore } from '@wordpress/core-data';
17
- /**
18
- * Internal dependencies
19
- */
20
-
21
- import PostTemplateActions from './actions';
22
- import { store as editPostStore } from '../../../store';
23
- /**
24
- * Module Constants
25
- */
26
-
27
- const PANEL_NAME = 'template';
28
- export function TemplatePanel() {
29
- const {
30
- isEnabled,
31
- isOpened,
32
- isPostsPage,
33
- selectedTemplate,
34
- availableTemplates,
35
- fetchedTemplates,
36
- isViewable,
37
- template,
38
- supportsTemplateMode,
39
- canUserCreate
40
- } = useSelect(select => {
41
- var _getPostType$viewable, _getPostType;
42
-
43
- const {
44
- isEditorPanelEnabled,
45
- isEditorPanelOpened,
46
- getEditedPostTemplate
47
- } = select(editPostStore);
48
- const {
49
- getEditedPostAttribute,
50
- getEditorSettings,
51
- getCurrentPostId,
52
- getCurrentPostType
53
- } = select(editorStore);
54
- const {
55
- getPostType,
56
- getEntityRecord,
57
- getEntityRecords,
58
- canUser
59
- } = select(coreStore);
60
- const currentPostId = getCurrentPostId();
61
- const currentPostType = getCurrentPostType();
62
- const settings = getEntityRecord('root', 'site');
63
-
64
- const _isViewable = (_getPostType$viewable = (_getPostType = getPostType(currentPostType)) === null || _getPostType === void 0 ? void 0 : _getPostType.viewable) !== null && _getPostType$viewable !== void 0 ? _getPostType$viewable : false;
65
-
66
- const _supportsTemplateMode = select(editorStore).getEditorSettings().supportsTemplateMode && _isViewable;
67
-
68
- const templateRecords = getEntityRecords('postType', 'wp_template', {
69
- post_type: currentPostType,
70
- per_page: -1
71
- });
72
- return {
73
- isEnabled: isEditorPanelEnabled(PANEL_NAME),
74
- isOpened: isEditorPanelOpened(PANEL_NAME),
75
- isPostsPage: currentPostId === (settings === null || settings === void 0 ? void 0 : settings.page_for_posts),
76
- selectedTemplate: getEditedPostAttribute('template'),
77
- availableTemplates: getEditorSettings().availableTemplates,
78
- fetchedTemplates: templateRecords,
79
- template: _supportsTemplateMode && getEditedPostTemplate(),
80
- isViewable: _isViewable,
81
- supportsTemplateMode: _supportsTemplateMode,
82
- canUserCreate: canUser('create', 'templates')
83
- };
84
- }, []);
85
- const templates = useMemo(() => {
86
- return { ...availableTemplates,
87
- ...fromPairs((fetchedTemplates !== null && fetchedTemplates !== void 0 ? fetchedTemplates : []).map(_ref => {
88
- let {
89
- slug,
90
- title
91
- } = _ref;
92
- return [slug, title.rendered];
93
- }))
94
- };
95
- }, [availableTemplates, fetchedTemplates]);
96
- const {
97
- toggleEditorPanelOpened
98
- } = useDispatch(editPostStore);
99
- const {
100
- editPost
101
- } = useDispatch(editorStore);
102
-
103
- if (!isEnabled || !isViewable || isEmpty(availableTemplates) && (!supportsTemplateMode || !canUserCreate)) {
104
- return null;
105
- }
106
-
107
- const onTogglePanel = partial(toggleEditorPanelOpened, PANEL_NAME);
108
-
109
- let panelTitle = __('Template');
110
-
111
- if (!!template) {
112
- var _template$title;
113
-
114
- panelTitle = sprintf(
115
- /* translators: %s: template title */
116
- __('Template: %s'), (_template$title = template === null || template === void 0 ? void 0 : template.title) !== null && _template$title !== void 0 ? _template$title : template.slug);
117
- }
118
-
119
- return createElement(PanelBody, {
120
- title: panelTitle,
121
- opened: isOpened,
122
- onToggle: onTogglePanel
123
- }, isPostsPage ? createElement(Notice, {
124
- className: "edit-post-template__notice",
125
- status: "warning",
126
- isDismissible: false
127
- }, __('The posts page template cannot be changed.')) : createElement(SelectControl, {
128
- hideLabelFromVision: true,
129
- label: __('Template:'),
130
- value: Object.keys(templates).includes(selectedTemplate) ? selectedTemplate : '',
131
- onChange: templateSlug => {
132
- editPost({
133
- template: templateSlug || ''
134
- });
135
- },
136
- options: map(templates, (templateName, templateSlug) => ({
137
- value: templateSlug,
138
- label: templateName
139
- }))
140
- }), canUserCreate && createElement(PostTemplateActions, {
141
- isPostsPage: isPostsPage
142
- }));
143
- }
144
- export default TemplatePanel;
145
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/template/index.js"],"names":["partial","isEmpty","map","fromPairs","__","sprintf","useMemo","Notice","PanelBody","SelectControl","store","editorStore","useSelect","useDispatch","coreStore","PostTemplateActions","editPostStore","PANEL_NAME","TemplatePanel","isEnabled","isOpened","isPostsPage","selectedTemplate","availableTemplates","fetchedTemplates","isViewable","template","supportsTemplateMode","canUserCreate","select","isEditorPanelEnabled","isEditorPanelOpened","getEditedPostTemplate","getEditedPostAttribute","getEditorSettings","getCurrentPostId","getCurrentPostType","getPostType","getEntityRecord","getEntityRecords","canUser","currentPostId","currentPostType","settings","_isViewable","viewable","_supportsTemplateMode","templateRecords","post_type","per_page","page_for_posts","templates","slug","title","rendered","toggleEditorPanelOpened","editPost","onTogglePanel","panelTitle","Object","keys","includes","templateSlug","templateName","value","label"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,OAAT,EAAkBC,OAAlB,EAA2BC,GAA3B,EAAgCC,SAAhC,QAAiD,QAAjD;AAEA;AACA;AACA;;AACA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AACA,SAASC,OAAT,QAAwB,oBAAxB;AACA,SAASC,MAAT,EAAiBC,SAAjB,EAA4BC,aAA5B,QAAiD,uBAAjD;AACA,SAASC,KAAK,IAAIC,WAAlB,QAAqC,mBAArC;AACA,SAASC,SAAT,EAAoBC,WAApB,QAAuC,iBAAvC;AACA,SAASH,KAAK,IAAII,SAAlB,QAAmC,sBAAnC;AAEA;AACA;AACA;;AACA,OAAOC,mBAAP,MAAgC,WAAhC;AACA,SAASL,KAAK,IAAIM,aAAlB,QAAuC,gBAAvC;AAEA;AACA;AACA;;AACA,MAAMC,UAAU,GAAG,UAAnB;AAEA,OAAO,SAASC,aAAT,GAAyB;AAC/B,QAAM;AACLC,IAAAA,SADK;AAELC,IAAAA,QAFK;AAGLC,IAAAA,WAHK;AAILC,IAAAA,gBAJK;AAKLC,IAAAA,kBALK;AAMLC,IAAAA,gBANK;AAOLC,IAAAA,UAPK;AAQLC,IAAAA,QARK;AASLC,IAAAA,oBATK;AAULC,IAAAA;AAVK,MAWFhB,SAAS,CAAIiB,MAAF,IAAc;AAAA;;AAC5B,UAAM;AACLC,MAAAA,oBADK;AAELC,MAAAA,mBAFK;AAGLC,MAAAA;AAHK,QAIFH,MAAM,CAAEb,aAAF,CAJV;AAKA,UAAM;AACLiB,MAAAA,sBADK;AAELC,MAAAA,iBAFK;AAGLC,MAAAA,gBAHK;AAILC,MAAAA;AAJK,QAKFP,MAAM,CAAElB,WAAF,CALV;AAMA,UAAM;AACL0B,MAAAA,WADK;AAELC,MAAAA,eAFK;AAGLC,MAAAA,gBAHK;AAILC,MAAAA;AAJK,QAKFX,MAAM,CAAEf,SAAF,CALV;AAOA,UAAM2B,aAAa,GAAGN,gBAAgB,EAAtC;AACA,UAAMO,eAAe,GAAGN,kBAAkB,EAA1C;AACA,UAAMO,QAAQ,GAAGL,eAAe,CAAE,MAAF,EAAU,MAAV,CAAhC;;AACA,UAAMM,WAAW,4CAAGP,WAAW,CAAEK,eAAF,CAAd,iDAAG,aAAgCG,QAAnC,yEAA+C,KAAhE;;AACA,UAAMC,qBAAqB,GAC1BjB,MAAM,CAAElB,WAAF,CAAN,CAAsBuB,iBAAtB,GAA0CP,oBAA1C,IACAiB,WAFD;;AAIA,UAAMG,eAAe,GAAGR,gBAAgB,CAAE,UAAF,EAAc,aAAd,EAA6B;AACpES,MAAAA,SAAS,EAAEN,eADyD;AAEpEO,MAAAA,QAAQ,EAAE,CAAC;AAFyD,KAA7B,CAAxC;AAKA,WAAO;AACN9B,MAAAA,SAAS,EAAEW,oBAAoB,CAAEb,UAAF,CADzB;AAENG,MAAAA,QAAQ,EAAEW,mBAAmB,CAAEd,UAAF,CAFvB;AAGNI,MAAAA,WAAW,EAAEoB,aAAa,MAAKE,QAAL,aAAKA,QAAL,uBAAKA,QAAQ,CAAEO,cAAf,CAHpB;AAIN5B,MAAAA,gBAAgB,EAAEW,sBAAsB,CAAE,UAAF,CAJlC;AAKNV,MAAAA,kBAAkB,EAAEW,iBAAiB,GAAGX,kBALlC;AAMNC,MAAAA,gBAAgB,EAAEuB,eANZ;AAONrB,MAAAA,QAAQ,EAAEoB,qBAAqB,IAAId,qBAAqB,EAPlD;AAQNP,MAAAA,UAAU,EAAEmB,WARN;AASNjB,MAAAA,oBAAoB,EAAEmB,qBAThB;AAUNlB,MAAAA,aAAa,EAAEY,OAAO,CAAE,QAAF,EAAY,WAAZ;AAVhB,KAAP;AAYA,GA5CY,EA4CV,EA5CU,CAXb;AAyDA,QAAMW,SAAS,GAAG7C,OAAO,CAAE,MAAM;AAChC,WAAO,EACN,GAAGiB,kBADG;AAEN,SAAGpB,SAAS,CACX,CAAEqB,gBAAF,aAAEA,gBAAF,cAAEA,gBAAF,GAAsB,EAAtB,EAA2BtB,GAA3B,CAAgC;AAAA,YAAE;AAAEkD,UAAAA,IAAF;AAAQC,UAAAA;AAAR,SAAF;AAAA,eAAuB,CACtDD,IADsD,EAEtDC,KAAK,CAACC,QAFgD,CAAvB;AAAA,OAAhC,CADW;AAFN,KAAP;AASA,GAVwB,EAUtB,CAAE/B,kBAAF,EAAsBC,gBAAtB,CAVsB,CAAzB;AAYA,QAAM;AAAE+B,IAAAA;AAAF,MAA8B1C,WAAW,CAAEG,aAAF,CAA/C;AACA,QAAM;AAAEwC,IAAAA;AAAF,MAAe3C,WAAW,CAAEF,WAAF,CAAhC;;AAEA,MACC,CAAEQ,SAAF,IACA,CAAEM,UADF,IAEExB,OAAO,CAAEsB,kBAAF,CAAP,KACC,CAAEI,oBAAF,IAA0B,CAAEC,aAD7B,CAHH,EAKE;AACD,WAAO,IAAP;AACA;;AAED,QAAM6B,aAAa,GAAGzD,OAAO,CAAEuD,uBAAF,EAA2BtC,UAA3B,CAA7B;;AAEA,MAAIyC,UAAU,GAAGtD,EAAE,CAAE,UAAF,CAAnB;;AACA,MAAK,CAAC,CAAEsB,QAAR,EAAmB;AAAA;;AAClBgC,IAAAA,UAAU,GAAGrD,OAAO;AACnB;AACAD,IAAAA,EAAE,CAAE,cAAF,CAFiB,qBAGnBsB,QAHmB,aAGnBA,QAHmB,uBAGnBA,QAAQ,CAAE2B,KAHS,6DAGA3B,QAAQ,CAAC0B,IAHT,CAApB;AAKA;;AAED,SACC,cAAC,SAAD;AACC,IAAA,KAAK,EAAGM,UADT;AAEC,IAAA,MAAM,EAAGtC,QAFV;AAGC,IAAA,QAAQ,EAAGqC;AAHZ,KAKGpC,WAAW,GACZ,cAAC,MAAD;AACC,IAAA,SAAS,EAAC,4BADX;AAEC,IAAA,MAAM,EAAC,SAFR;AAGC,IAAA,aAAa,EAAG;AAHjB,KAKGjB,EAAE,CAAE,4CAAF,CALL,CADY,GASZ,cAAC,aAAD;AACC,IAAA,mBAAmB,MADpB;AAEC,IAAA,KAAK,EAAGA,EAAE,CAAE,WAAF,CAFX;AAGC,IAAA,KAAK,EACJuD,MAAM,CAACC,IAAP,CAAaT,SAAb,EAAyBU,QAAzB,CAAmCvC,gBAAnC,IACGA,gBADH,GAEG,EANL;AAQC,IAAA,QAAQ,EAAKwC,YAAF,IAAoB;AAC9BN,MAAAA,QAAQ,CAAE;AACT9B,QAAAA,QAAQ,EAAEoC,YAAY,IAAI;AADjB,OAAF,CAAR;AAGA,KAZF;AAaC,IAAA,OAAO,EAAG5D,GAAG,CACZiD,SADY,EAEZ,CAAEY,YAAF,EAAgBD,YAAhB,MAAoC;AACnCE,MAAAA,KAAK,EAAEF,YAD4B;AAEnCG,MAAAA,KAAK,EAAEF;AAF4B,KAApC,CAFY;AAbd,IAdF,EAoCGnC,aAAa,IACd,cAAC,mBAAD;AAAqB,IAAA,WAAW,EAAGP;AAAnC,IArCF,CADD;AA0CA;AAED,eAAeH,aAAf","sourcesContent":["/**\n * External dependencies\n */\nimport { partial, isEmpty, map, fromPairs } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useMemo } from '@wordpress/element';\nimport { Notice, PanelBody, SelectControl } from '@wordpress/components';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport PostTemplateActions from './actions';\nimport { store as editPostStore } from '../../../store';\n\n/**\n * Module Constants\n */\nconst PANEL_NAME = 'template';\n\nexport function TemplatePanel() {\n\tconst {\n\t\tisEnabled,\n\t\tisOpened,\n\t\tisPostsPage,\n\t\tselectedTemplate,\n\t\tavailableTemplates,\n\t\tfetchedTemplates,\n\t\tisViewable,\n\t\ttemplate,\n\t\tsupportsTemplateMode,\n\t\tcanUserCreate,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisEditorPanelEnabled,\n\t\t\tisEditorPanelOpened,\n\t\t\tgetEditedPostTemplate,\n\t\t} = select( editPostStore );\n\t\tconst {\n\t\t\tgetEditedPostAttribute,\n\t\t\tgetEditorSettings,\n\t\t\tgetCurrentPostId,\n\t\t\tgetCurrentPostType,\n\t\t} = select( editorStore );\n\t\tconst {\n\t\t\tgetPostType,\n\t\t\tgetEntityRecord,\n\t\t\tgetEntityRecords,\n\t\t\tcanUser,\n\t\t} = select( coreStore );\n\n\t\tconst currentPostId = getCurrentPostId();\n\t\tconst currentPostType = getCurrentPostType();\n\t\tconst settings = getEntityRecord( 'root', 'site' );\n\t\tconst _isViewable = getPostType( currentPostType )?.viewable ?? false;\n\t\tconst _supportsTemplateMode =\n\t\t\tselect( editorStore ).getEditorSettings().supportsTemplateMode &&\n\t\t\t_isViewable;\n\n\t\tconst templateRecords = getEntityRecords( 'postType', 'wp_template', {\n\t\t\tpost_type: currentPostType,\n\t\t\tper_page: -1,\n\t\t} );\n\n\t\treturn {\n\t\t\tisEnabled: isEditorPanelEnabled( PANEL_NAME ),\n\t\t\tisOpened: isEditorPanelOpened( PANEL_NAME ),\n\t\t\tisPostsPage: currentPostId === settings?.page_for_posts,\n\t\t\tselectedTemplate: getEditedPostAttribute( 'template' ),\n\t\t\tavailableTemplates: getEditorSettings().availableTemplates,\n\t\t\tfetchedTemplates: templateRecords,\n\t\t\ttemplate: _supportsTemplateMode && getEditedPostTemplate(),\n\t\t\tisViewable: _isViewable,\n\t\t\tsupportsTemplateMode: _supportsTemplateMode,\n\t\t\tcanUserCreate: canUser( 'create', 'templates' ),\n\t\t};\n\t}, [] );\n\n\tconst templates = useMemo( () => {\n\t\treturn {\n\t\t\t...availableTemplates,\n\t\t\t...fromPairs(\n\t\t\t\t( fetchedTemplates ?? [] ).map( ( { slug, title } ) => [\n\t\t\t\t\tslug,\n\t\t\t\t\ttitle.rendered,\n\t\t\t\t] )\n\t\t\t),\n\t\t};\n\t}, [ availableTemplates, fetchedTemplates ] );\n\n\tconst { toggleEditorPanelOpened } = useDispatch( editPostStore );\n\tconst { editPost } = useDispatch( editorStore );\n\n\tif (\n\t\t! isEnabled ||\n\t\t! isViewable ||\n\t\t( isEmpty( availableTemplates ) &&\n\t\t\t( ! supportsTemplateMode || ! canUserCreate ) )\n\t) {\n\t\treturn null;\n\t}\n\n\tconst onTogglePanel = partial( toggleEditorPanelOpened, PANEL_NAME );\n\n\tlet panelTitle = __( 'Template' );\n\tif ( !! template ) {\n\t\tpanelTitle = sprintf(\n\t\t\t/* translators: %s: template title */\n\t\t\t__( 'Template: %s' ),\n\t\t\ttemplate?.title ?? template.slug\n\t\t);\n\t}\n\n\treturn (\n\t\t<PanelBody\n\t\t\ttitle={ panelTitle }\n\t\t\topened={ isOpened }\n\t\t\tonToggle={ onTogglePanel }\n\t\t>\n\t\t\t{ isPostsPage ? (\n\t\t\t\t<Notice\n\t\t\t\t\tclassName=\"edit-post-template__notice\"\n\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\tisDismissible={ false }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'The posts page template cannot be changed.' ) }\n\t\t\t\t</Notice>\n\t\t\t) : (\n\t\t\t\t<SelectControl\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tlabel={ __( 'Template:' ) }\n\t\t\t\t\tvalue={\n\t\t\t\t\t\tObject.keys( templates ).includes( selectedTemplate )\n\t\t\t\t\t\t\t? selectedTemplate\n\t\t\t\t\t\t\t: ''\n\t\t\t\t\t}\n\t\t\t\t\tonChange={ ( templateSlug ) => {\n\t\t\t\t\t\teditPost( {\n\t\t\t\t\t\t\ttemplate: templateSlug || '',\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\toptions={ map(\n\t\t\t\t\t\ttemplates,\n\t\t\t\t\t\t( templateName, templateSlug ) => ( {\n\t\t\t\t\t\t\tvalue: templateSlug,\n\t\t\t\t\t\t\tlabel: templateName,\n\t\t\t\t\t\t} )\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ canUserCreate && (\n\t\t\t\t<PostTemplateActions isPostsPage={ isPostsPage } />\n\t\t\t) }\n\t\t</PanelBody>\n\t);\n}\n\nexport default TemplatePanel;\n"]}
@@ -1,180 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { get } from 'lodash';
5
-
6
- /**
7
- * WordPress dependencies
8
- */
9
- import { __ } from '@wordpress/i18n';
10
- import { PanelBody, TextControl, ExternalLink } from '@wordpress/components';
11
- import { withSelect, withDispatch } from '@wordpress/data';
12
- import { compose, ifCondition } from '@wordpress/compose';
13
- import { store as editorStore } from '@wordpress/editor';
14
- import { safeDecodeURIComponent, cleanForSlug } from '@wordpress/url';
15
- import { store as coreStore } from '@wordpress/core-data';
16
- import { useState } from '@wordpress/element';
17
-
18
- /**
19
- * Internal dependencies
20
- */
21
- import { store as editPostStore } from '../../../store';
22
-
23
- /**
24
- * Module Constants
25
- */
26
- const PANEL_NAME = 'post-link';
27
-
28
- function PostLink( {
29
- isOpened,
30
- onTogglePanel,
31
- isEditable,
32
- postLink,
33
- permalinkPrefix,
34
- permalinkSuffix,
35
- editPermalink,
36
- postSlug,
37
- postTypeLabel,
38
- } ) {
39
- const [ forceEmptyField, setForceEmptyField ] = useState( false );
40
-
41
- let prefixElement, postNameElement, suffixElement;
42
- if ( isEditable ) {
43
- prefixElement = permalinkPrefix && (
44
- <span className="edit-post-post-link__link-prefix">
45
- { permalinkPrefix }
46
- </span>
47
- );
48
- postNameElement = postSlug && (
49
- <span className="edit-post-post-link__link-post-name">
50
- { postSlug }
51
- </span>
52
- );
53
- suffixElement = permalinkSuffix && (
54
- <span className="edit-post-post-link__link-suffix">
55
- { permalinkSuffix }
56
- </span>
57
- );
58
- }
59
-
60
- return (
61
- <PanelBody
62
- title={ __( 'Permalink' ) }
63
- opened={ isOpened }
64
- onToggle={ onTogglePanel }
65
- >
66
- { isEditable && (
67
- <div className="editor-post-link">
68
- <TextControl
69
- label={ __( 'URL Slug' ) }
70
- value={ forceEmptyField ? '' : postSlug }
71
- autoComplete="off"
72
- spellCheck="false"
73
- onChange={ ( newValue ) => {
74
- editPermalink( newValue );
75
- // When we delete the field the permalink gets
76
- // reverted to the original value.
77
- // The forceEmptyField logic allows the user to have
78
- // the field temporarily empty while typing.
79
- if ( ! newValue ) {
80
- if ( ! forceEmptyField ) {
81
- setForceEmptyField( true );
82
- }
83
- return;
84
- }
85
- if ( forceEmptyField ) {
86
- setForceEmptyField( false );
87
- }
88
- } }
89
- onBlur={ ( event ) => {
90
- editPermalink( cleanForSlug( event.target.value ) );
91
- if ( forceEmptyField ) {
92
- setForceEmptyField( false );
93
- }
94
- } }
95
- />
96
- <p>
97
- { __( 'The last part of the URL.' ) }{ ' ' }
98
- <ExternalLink
99
- href={ __(
100
- 'https://wordpress.org/support/article/settings-sidebar/#permalink'
101
- ) }
102
- >
103
- { __( 'Read about permalinks' ) }
104
- </ExternalLink>
105
- </p>
106
- </div>
107
- ) }
108
- <h3 className="edit-post-post-link__preview-label">
109
- { postTypeLabel || __( 'View post' ) }
110
- </h3>
111
- <div className="edit-post-post-link__preview-link-container">
112
- <ExternalLink
113
- className="edit-post-post-link__link"
114
- href={ postLink }
115
- target="_blank"
116
- >
117
- { isEditable ? (
118
- <>
119
- { prefixElement }
120
- { postNameElement }
121
- { suffixElement }
122
- </>
123
- ) : (
124
- postLink
125
- ) }
126
- </ExternalLink>
127
- </div>
128
- </PanelBody>
129
- );
130
- }
131
-
132
- export default compose( [
133
- withSelect( ( select ) => {
134
- const {
135
- isPermalinkEditable,
136
- getCurrentPost,
137
- isCurrentPostPublished,
138
- getPermalinkParts,
139
- getEditedPostAttribute,
140
- getEditedPostSlug,
141
- } = select( editorStore );
142
- const { isEditorPanelEnabled, isEditorPanelOpened } = select(
143
- editPostStore
144
- );
145
- const { getPostType } = select( coreStore );
146
-
147
- const { link } = getCurrentPost();
148
-
149
- const postTypeName = getEditedPostAttribute( 'type' );
150
- const postType = getPostType( postTypeName );
151
- const permalinkParts = getPermalinkParts();
152
-
153
- return {
154
- postLink: link,
155
- isEditable: isPermalinkEditable(),
156
- isPublished: isCurrentPostPublished(),
157
- isOpened: isEditorPanelOpened( PANEL_NAME ),
158
- isEnabled: isEditorPanelEnabled( PANEL_NAME ),
159
- isViewable: get( postType, [ 'viewable' ], false ),
160
- postSlug: safeDecodeURIComponent( getEditedPostSlug() ),
161
- postTypeLabel: get( postType, [ 'labels', 'view_item' ] ),
162
- hasPermalinkParts: !! permalinkParts,
163
- permalinkPrefix: permalinkParts?.prefix,
164
- permalinkSuffix: permalinkParts?.suffix,
165
- };
166
- } ),
167
- ifCondition( ( { isEnabled, postLink, isViewable, hasPermalinkParts } ) => {
168
- return isEnabled && postLink && isViewable && hasPermalinkParts;
169
- } ),
170
- withDispatch( ( dispatch ) => {
171
- const { toggleEditorPanelOpened } = dispatch( editPostStore );
172
- const { editPost } = dispatch( editorStore );
173
- return {
174
- onTogglePanel: () => toggleEditorPanelOpened( PANEL_NAME ),
175
- editPermalink: ( newSlug ) => {
176
- editPost( { slug: newSlug } );
177
- },
178
- };
179
- } ),
180
- ] )( PostLink );
@@ -1,20 +0,0 @@
1
- .edit-post-post-link__link-post-name {
2
- font-weight: 600;
3
- }
4
-
5
- .edit-post-post-link__preview-label {
6
- font-weight: 400;
7
- margin: 0;
8
- }
9
-
10
- .edit-post-post-link__link {
11
- text-align: left;
12
- word-wrap: break-word;
13
- display: block;
14
- }
15
-
16
- /* rtl:begin:ignore */
17
- .edit-post-post-link__preview-link-container {
18
- direction: ltr;
19
- }
20
- /* rtl:end:ignore */
@@ -1,203 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { kebabCase } from 'lodash';
5
-
6
- /**
7
- * WordPress dependencies
8
- */
9
- import { __, _x } from '@wordpress/i18n';
10
- import {
11
- Button,
12
- Modal,
13
- TextControl,
14
- Flex,
15
- FlexItem,
16
- } from '@wordpress/components';
17
- import { useSelect, useDispatch } from '@wordpress/data';
18
- import { useState } from '@wordpress/element';
19
- import { store as editorStore } from '@wordpress/editor';
20
- import { store as coreStore } from '@wordpress/core-data';
21
-
22
- /**
23
- * Internal dependencies
24
- */
25
- import { store as editPostStore } from '../../../store';
26
- import { createBlock, serialize } from '@wordpress/blocks';
27
-
28
- function PostTemplateActions( { isPostsPage } ) {
29
- const [ isModalOpen, setIsModalOpen ] = useState( false );
30
- const [ isBusy, setIsBusy ] = useState( false );
31
- const [ title, setTitle ] = useState( '' );
32
- const { template, supportsTemplateMode, defaultTemplate } = useSelect(
33
- ( select ) => {
34
- const { getCurrentPostType, getEditorSettings } = select(
35
- editorStore
36
- );
37
- const { getPostType } = select( coreStore );
38
- const { getEditedPostTemplate } = select( editPostStore );
39
-
40
- const isViewable =
41
- getPostType( getCurrentPostType() )?.viewable ?? false;
42
- const _supportsTemplateMode =
43
- getEditorSettings().supportsTemplateMode && isViewable;
44
-
45
- return {
46
- template: _supportsTemplateMode && getEditedPostTemplate(),
47
- supportsTemplateMode: _supportsTemplateMode,
48
- defaultTemplate: getEditorSettings().defaultBlockTemplate,
49
- };
50
- },
51
- []
52
- );
53
- const {
54
- __unstableCreateTemplate,
55
- __unstableSwitchToTemplateMode,
56
- } = useDispatch( editPostStore );
57
-
58
- if ( ! supportsTemplateMode ) {
59
- return null;
60
- }
61
-
62
- const defaultTitle = __( 'Custom Template' );
63
-
64
- async function onCreateTemplate( event ) {
65
- event.preventDefault();
66
-
67
- if ( isBusy ) {
68
- return;
69
- }
70
-
71
- setIsBusy( true );
72
-
73
- const newTemplateContent =
74
- defaultTemplate ??
75
- serialize( [
76
- createBlock(
77
- 'core/group',
78
- {
79
- tagName: 'header',
80
- layout: { inherit: true },
81
- },
82
- [
83
- createBlock( 'core/site-title' ),
84
- createBlock( 'core/site-tagline' ),
85
- ]
86
- ),
87
- createBlock( 'core/separator' ),
88
- createBlock(
89
- 'core/group',
90
- {
91
- tagName: 'main',
92
- },
93
- [
94
- createBlock(
95
- 'core/group',
96
- {
97
- layout: { inherit: true },
98
- },
99
- [ createBlock( 'core/post-title' ) ]
100
- ),
101
- createBlock( 'core/post-content', {
102
- layout: { inherit: true },
103
- } ),
104
- ]
105
- ),
106
- ] );
107
-
108
- await __unstableCreateTemplate( {
109
- slug: 'wp-custom-template-' + kebabCase( title || defaultTitle ),
110
- content: newTemplateContent,
111
- title: title || defaultTitle,
112
- } );
113
-
114
- setIsBusy( false );
115
- setIsModalOpen( false );
116
-
117
- __unstableSwitchToTemplateMode( true );
118
- }
119
-
120
- return (
121
- <>
122
- <div className="edit-post-template__actions">
123
- { !! template && (
124
- <Button
125
- variant="link"
126
- onClick={ () => __unstableSwitchToTemplateMode() }
127
- >
128
- { __( 'Edit' ) }
129
- </Button>
130
- ) }
131
- { ! isPostsPage && (
132
- <Button
133
- variant="link"
134
- onClick={ () => setIsModalOpen( true ) }
135
- >
136
- {
137
- /* translators: button to create a new template */
138
- _x( 'New', 'action' )
139
- }
140
- </Button>
141
- ) }
142
- </div>
143
- { isModalOpen && (
144
- <Modal
145
- title={ __( 'Create custom template' ) }
146
- closeLabel={ __( 'Close' ) }
147
- onRequestClose={ () => {
148
- setIsModalOpen( false );
149
- setTitle( '' );
150
- } }
151
- overlayClassName="edit-post-template__modal"
152
- >
153
- <form onSubmit={ onCreateTemplate }>
154
- <Flex align="flex-start" gap={ 8 }>
155
- <FlexItem>
156
- <TextControl
157
- label={ __( 'Name' ) }
158
- value={ title }
159
- onChange={ setTitle }
160
- placeholder={ defaultTitle }
161
- disabled={ isBusy }
162
- help={ __(
163
- 'Describe the purpose of the template, e.g. "Full Width". Custom templates can be applied to any post or page.'
164
- ) }
165
- />
166
- </FlexItem>
167
- </Flex>
168
-
169
- <Flex
170
- className="edit-post-template__modal-actions"
171
- justify="flex-end"
172
- expanded={ false }
173
- >
174
- <FlexItem>
175
- <Button
176
- variant="tertiary"
177
- onClick={ () => {
178
- setIsModalOpen( false );
179
- setTitle( '' );
180
- } }
181
- >
182
- { __( 'Cancel' ) }
183
- </Button>
184
- </FlexItem>
185
- <FlexItem>
186
- <Button
187
- variant="primary"
188
- type="submit"
189
- isBusy={ isBusy }
190
- aria-disabled={ isBusy }
191
- >
192
- { __( 'Create' ) }
193
- </Button>
194
- </FlexItem>
195
- </Flex>
196
- </form>
197
- </Modal>
198
- ) }
199
- </>
200
- );
201
- }
202
-
203
- export default PostTemplateActions;