@wordpress/edit-site 3.0.9 → 3.0.13

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 (263) hide show
  1. package/build/components/add-new-template/index.js +49 -0
  2. package/build/components/add-new-template/index.js.map +1 -0
  3. package/build/components/add-new-template/new-template-part.js +95 -0
  4. package/build/components/add-new-template/new-template-part.js.map +1 -0
  5. package/build/components/add-new-template/new-template.js +133 -0
  6. package/build/components/add-new-template/new-template.js.map +1 -0
  7. package/build/components/block-editor/index.js +3 -1
  8. package/build/components/block-editor/index.js.map +1 -1
  9. package/build/components/create-template-part-modal/index.js +115 -0
  10. package/build/components/create-template-part-modal/index.js.map +1 -0
  11. package/build/components/editor/index.js +20 -16
  12. package/build/components/editor/index.js.map +1 -1
  13. package/build/components/global-styles/color-palette-panel.js +29 -6
  14. package/build/components/global-styles/color-palette-panel.js.map +1 -1
  15. package/build/components/global-styles/global-styles-provider.js +9 -47
  16. package/build/components/global-styles/global-styles-provider.js.map +1 -1
  17. package/build/components/global-styles/gradients-palette-panel.js +71 -0
  18. package/build/components/global-styles/gradients-palette-panel.js.map +1 -0
  19. package/build/components/global-styles/hooks.js +29 -27
  20. package/build/components/global-styles/hooks.js.map +1 -1
  21. package/build/components/global-styles/palette.js +11 -5
  22. package/build/components/global-styles/palette.js.map +1 -1
  23. package/build/components/global-styles/screen-background-color.js +2 -1
  24. package/build/components/global-styles/screen-background-color.js.map +1 -1
  25. package/build/components/global-styles/screen-block-list.js +9 -1
  26. package/build/components/global-styles/screen-block-list.js.map +1 -1
  27. package/build/components/global-styles/screen-color-palette.js +23 -3
  28. package/build/components/global-styles/screen-color-palette.js.map +1 -1
  29. package/build/components/global-styles/screen-link-color.js +2 -1
  30. package/build/components/global-styles/screen-link-color.js.map +1 -1
  31. package/build/components/global-styles/screen-text-color.js +2 -1
  32. package/build/components/global-styles/screen-text-color.js.map +1 -1
  33. package/build/components/global-styles/screen-typography-element.js +54 -0
  34. package/build/components/global-styles/screen-typography-element.js.map +1 -0
  35. package/build/components/global-styles/screen-typography.js +74 -6
  36. package/build/components/global-styles/screen-typography.js.map +1 -1
  37. package/build/components/global-styles/typography-panel.js +28 -8
  38. package/build/components/global-styles/typography-panel.js.map +1 -1
  39. package/build/components/global-styles/ui.js +12 -0
  40. package/build/components/global-styles/ui.js.map +1 -1
  41. package/build/components/global-styles/use-global-styles-output.js +2 -2
  42. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  43. package/build/components/global-styles/utils.js +1 -1
  44. package/build/components/global-styles/utils.js.map +1 -1
  45. package/build/components/header/index.js +1 -5
  46. package/build/components/header/index.js.map +1 -1
  47. package/build/components/keyboard-shortcuts/index.js +26 -0
  48. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  49. package/build/components/list/actions/index.js +104 -0
  50. package/build/components/list/actions/index.js.map +1 -0
  51. package/build/components/list/actions/rename-menu-item.js +112 -0
  52. package/build/components/list/actions/rename-menu-item.js.map +1 -0
  53. package/build/components/list/added-by.js +180 -0
  54. package/build/components/list/added-by.js.map +1 -0
  55. package/build/components/list/header.js +50 -0
  56. package/build/components/list/header.js.map +1 -0
  57. package/build/components/list/index.js +102 -0
  58. package/build/components/list/index.js.map +1 -0
  59. package/build/components/list/table.js +114 -0
  60. package/build/components/list/table.js.map +1 -0
  61. package/build/components/list/use-register-shortcuts.js +52 -0
  62. package/build/components/list/use-register-shortcuts.js.map +1 -0
  63. package/build/components/navigation-sidebar/index.js +26 -10
  64. package/build/components/navigation-sidebar/index.js.map +1 -1
  65. package/build/components/navigation-sidebar/navigation-panel/index.js +42 -44
  66. package/build/components/navigation-sidebar/navigation-panel/index.js.map +1 -1
  67. package/build/components/navigation-sidebar/navigation-toggle/index.js +5 -17
  68. package/build/components/navigation-sidebar/navigation-toggle/index.js.map +1 -1
  69. package/build/components/template-details/edit-template-title.js +33 -0
  70. package/build/components/template-details/edit-template-title.js.map +1 -0
  71. package/build/components/template-details/index.js +8 -3
  72. package/build/components/template-details/index.js.map +1 -1
  73. package/build/components/template-part-converter/convert-to-template-part.js +20 -84
  74. package/build/components/template-part-converter/convert-to-template-part.js.map +1 -1
  75. package/build/components/welcome-guide/editor.js +58 -0
  76. package/build/components/welcome-guide/editor.js.map +1 -0
  77. package/build/components/welcome-guide/image.js +27 -0
  78. package/build/components/welcome-guide/image.js.map +1 -0
  79. package/build/components/welcome-guide/index.js +49 -0
  80. package/build/components/welcome-guide/index.js.map +1 -0
  81. package/build/components/welcome-guide/styles.js +83 -0
  82. package/build/components/welcome-guide/styles.js.map +1 -0
  83. package/build/index.js +36 -6
  84. package/build/index.js.map +1 -1
  85. package/build/plugins/index.js +4 -2
  86. package/build/plugins/index.js.map +1 -1
  87. package/build/plugins/welcome-guide-menu-item.js +39 -0
  88. package/build/plugins/welcome-guide-menu-item.js.map +1 -0
  89. package/build/store/actions.js +50 -24
  90. package/build/store/actions.js.map +1 -1
  91. package/build/store/defaults.js +4 -1
  92. package/build/store/defaults.js.map +1 -1
  93. package/build/store/selectors.js +25 -5
  94. package/build/store/selectors.js.map +1 -1
  95. package/build/utils/is-template-removable.js +21 -0
  96. package/build/utils/is-template-removable.js.map +1 -0
  97. package/build-module/components/add-new-template/index.js +36 -0
  98. package/build-module/components/add-new-template/index.js.map +1 -0
  99. package/build-module/components/add-new-template/new-template-part.js +79 -0
  100. package/build-module/components/add-new-template/new-template-part.js.map +1 -0
  101. package/build-module/components/add-new-template/new-template.js +114 -0
  102. package/build-module/components/add-new-template/new-template.js.map +1 -0
  103. package/build-module/components/block-editor/index.js +2 -1
  104. package/build-module/components/block-editor/index.js.map +1 -1
  105. package/build-module/components/create-template-part-modal/index.js +102 -0
  106. package/build-module/components/create-template-part-modal/index.js.map +1 -0
  107. package/build-module/components/editor/index.js +19 -17
  108. package/build-module/components/editor/index.js.map +1 -1
  109. package/build-module/components/global-styles/color-palette-panel.js +29 -7
  110. package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
  111. package/build-module/components/global-styles/global-styles-provider.js +10 -43
  112. package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
  113. package/build-module/components/global-styles/gradients-palette-panel.js +60 -0
  114. package/build-module/components/global-styles/gradients-palette-panel.js.map +1 -0
  115. package/build-module/components/global-styles/hooks.js +30 -28
  116. package/build-module/components/global-styles/hooks.js.map +1 -1
  117. package/build-module/components/global-styles/palette.js +12 -5
  118. package/build-module/components/global-styles/palette.js.map +1 -1
  119. package/build-module/components/global-styles/screen-background-color.js +2 -1
  120. package/build-module/components/global-styles/screen-background-color.js.map +1 -1
  121. package/build-module/components/global-styles/screen-block-list.js +7 -1
  122. package/build-module/components/global-styles/screen-block-list.js.map +1 -1
  123. package/build-module/components/global-styles/screen-color-palette.js +22 -3
  124. package/build-module/components/global-styles/screen-color-palette.js.map +1 -1
  125. package/build-module/components/global-styles/screen-link-color.js +2 -1
  126. package/build-module/components/global-styles/screen-link-color.js.map +1 -1
  127. package/build-module/components/global-styles/screen-text-color.js +2 -1
  128. package/build-module/components/global-styles/screen-text-color.js.map +1 -1
  129. package/build-module/components/global-styles/screen-typography-element.js +41 -0
  130. package/build-module/components/global-styles/screen-typography-element.js.map +1 -0
  131. package/build-module/components/global-styles/screen-typography.js +70 -6
  132. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  133. package/build-module/components/global-styles/typography-panel.js +28 -8
  134. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  135. package/build-module/components/global-styles/ui.js +11 -0
  136. package/build-module/components/global-styles/ui.js.map +1 -1
  137. package/build-module/components/global-styles/use-global-styles-output.js +2 -2
  138. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  139. package/build-module/components/global-styles/utils.js +1 -1
  140. package/build-module/components/global-styles/utils.js.map +1 -1
  141. package/build-module/components/header/index.js +1 -3
  142. package/build-module/components/header/index.js.map +1 -1
  143. package/build-module/components/keyboard-shortcuts/index.js +26 -0
  144. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  145. package/build-module/components/list/actions/index.js +85 -0
  146. package/build-module/components/list/actions/index.js.map +1 -0
  147. package/build-module/components/list/actions/rename-menu-item.js +101 -0
  148. package/build-module/components/list/actions/rename-menu-item.js.map +1 -0
  149. package/build-module/components/list/added-by.js +166 -0
  150. package/build-module/components/list/added-by.js.map +1 -0
  151. package/build-module/components/list/header.js +37 -0
  152. package/build-module/components/list/header.js.map +1 -0
  153. package/build-module/components/list/index.js +81 -0
  154. package/build-module/components/list/index.js.map +1 -0
  155. package/build-module/components/list/table.js +98 -0
  156. package/build-module/components/list/table.js.map +1 -0
  157. package/build-module/components/list/use-register-shortcuts.js +41 -0
  158. package/build-module/components/list/use-register-shortcuts.js.map +1 -0
  159. package/build-module/components/navigation-sidebar/index.js +26 -10
  160. package/build-module/components/navigation-sidebar/index.js.map +1 -1
  161. package/build-module/components/navigation-sidebar/navigation-panel/index.js +41 -44
  162. package/build-module/components/navigation-sidebar/navigation-panel/index.js.map +1 -1
  163. package/build-module/components/navigation-sidebar/navigation-toggle/index.js +6 -18
  164. package/build-module/components/navigation-sidebar/navigation-toggle/index.js.map +1 -1
  165. package/build-module/components/template-details/edit-template-title.js +23 -0
  166. package/build-module/components/template-details/edit-template-title.js.map +1 -0
  167. package/build-module/components/template-details/index.js +7 -3
  168. package/build-module/components/template-details/index.js.map +1 -1
  169. package/build-module/components/template-part-converter/convert-to-template-part.js +20 -84
  170. package/build-module/components/template-part-converter/convert-to-template-part.js.map +1 -1
  171. package/build-module/components/welcome-guide/editor.js +45 -0
  172. package/build-module/components/welcome-guide/editor.js.map +1 -0
  173. package/build-module/components/welcome-guide/image.js +19 -0
  174. package/build-module/components/welcome-guide/image.js.map +1 -0
  175. package/build-module/components/welcome-guide/index.js +35 -0
  176. package/build-module/components/welcome-guide/index.js.map +1 -0
  177. package/build-module/components/welcome-guide/styles.js +69 -0
  178. package/build-module/components/welcome-guide/styles.js.map +1 -0
  179. package/build-module/index.js +28 -3
  180. package/build-module/index.js.map +1 -1
  181. package/build-module/plugins/index.js +3 -2
  182. package/build-module/plugins/index.js.map +1 -1
  183. package/build-module/plugins/welcome-guide-menu-item.js +27 -0
  184. package/build-module/plugins/welcome-guide-menu-item.js.map +1 -0
  185. package/build-module/store/actions.js +51 -25
  186. package/build-module/store/actions.js.map +1 -1
  187. package/build-module/store/defaults.js +4 -1
  188. package/build-module/store/defaults.js.map +1 -1
  189. package/build-module/store/selectors.js +21 -3
  190. package/build-module/store/selectors.js.map +1 -1
  191. package/build-module/utils/is-template-removable.js +14 -0
  192. package/build-module/utils/is-template-removable.js.map +1 -0
  193. package/build-style/style-rtl.css +477 -34
  194. package/build-style/style.css +477 -34
  195. package/package.json +10 -8
  196. package/src/components/add-new-template/index.js +30 -0
  197. package/src/components/add-new-template/new-template-part.js +81 -0
  198. package/src/components/add-new-template/new-template.js +136 -0
  199. package/src/components/add-new-template/style.scss +11 -0
  200. package/src/components/block-editor/index.js +2 -0
  201. package/src/components/create-template-part-modal/index.js +132 -0
  202. package/src/components/{template-part-converter → create-template-part-modal}/style.scss +9 -9
  203. package/src/components/editor/index.js +22 -15
  204. package/src/components/editor/style.scss +8 -0
  205. package/src/components/global-styles/color-palette-panel.js +64 -7
  206. package/src/components/global-styles/global-styles-provider.js +7 -36
  207. package/src/components/global-styles/gradients-palette-panel.js +99 -0
  208. package/src/components/global-styles/hooks.js +59 -27
  209. package/src/components/global-styles/palette.js +30 -10
  210. package/src/components/global-styles/screen-background-color.js +1 -0
  211. package/src/components/global-styles/screen-block-list.js +11 -1
  212. package/src/components/global-styles/screen-color-palette.js +30 -3
  213. package/src/components/global-styles/screen-link-color.js +1 -0
  214. package/src/components/global-styles/screen-text-color.js +1 -0
  215. package/src/components/global-styles/screen-typography-element.js +39 -0
  216. package/src/components/global-styles/screen-typography.js +84 -3
  217. package/src/components/global-styles/style.scss +42 -1
  218. package/src/components/global-styles/test/use-global-styles-output.js +3 -3
  219. package/src/components/global-styles/test/utils.js +1 -1
  220. package/src/components/global-styles/typography-panel.js +37 -7
  221. package/src/components/global-styles/ui.js +9 -0
  222. package/src/components/global-styles/use-global-styles-output.js +2 -2
  223. package/src/components/global-styles/utils.js +1 -1
  224. package/src/components/header/index.js +0 -6
  225. package/src/components/keyboard-shortcuts/index.js +32 -0
  226. package/src/components/list/actions/index.js +95 -0
  227. package/src/components/list/actions/rename-menu-item.js +134 -0
  228. package/src/components/list/added-by.js +179 -0
  229. package/src/components/list/header.js +34 -0
  230. package/src/components/list/index.js +96 -0
  231. package/src/components/list/style.scss +208 -0
  232. package/src/components/list/table.js +121 -0
  233. package/src/components/list/use-register-shortcuts.js +45 -0
  234. package/src/components/navigation-sidebar/index.js +24 -8
  235. package/src/components/navigation-sidebar/navigation-panel/index.js +57 -51
  236. package/src/components/navigation-sidebar/navigation-panel/style.scss +4 -2
  237. package/src/components/navigation-sidebar/navigation-toggle/index.js +24 -36
  238. package/src/components/navigation-sidebar/navigation-toggle/test/index.js +2 -0
  239. package/src/components/sidebar/style.scss +2 -1
  240. package/src/components/template-details/edit-template-title.js +28 -0
  241. package/src/components/template-details/index.js +15 -9
  242. package/src/components/template-part-converter/convert-to-template-part.js +20 -140
  243. package/src/components/welcome-guide/editor.js +63 -0
  244. package/src/components/welcome-guide/image.js +11 -0
  245. package/src/components/welcome-guide/index.js +33 -0
  246. package/src/components/welcome-guide/style.scss +37 -0
  247. package/src/components/welcome-guide/styles.js +116 -0
  248. package/src/index.js +31 -3
  249. package/src/plugins/index.js +3 -1
  250. package/src/plugins/welcome-guide-menu-item.js +35 -0
  251. package/src/store/actions.js +85 -35
  252. package/src/store/defaults.js +4 -1
  253. package/src/store/selectors.js +22 -4
  254. package/src/store/test/actions.js +0 -30
  255. package/src/store/test/selectors.js +24 -0
  256. package/src/style.scss +9 -6
  257. package/src/utils/is-template-removable.js +13 -0
  258. package/build/components/header/navigation-link/index.js +0 -87
  259. package/build/components/header/navigation-link/index.js.map +0 -1
  260. package/build-module/components/header/navigation-link/index.js +0 -74
  261. package/build-module/components/header/navigation-link/index.js.map +0 -1
  262. package/src/components/header/navigation-link/index.js +0 -71
  263. package/src/components/header/navigation-link/style.scss +0 -69
@@ -8,30 +8,25 @@ import { kebabCase } from 'lodash';
8
8
  * WordPress dependencies
9
9
  */
10
10
 
11
- import { useDispatch, useSelect } from '@wordpress/data';
11
+ import { useDispatch } from '@wordpress/data';
12
12
  import { BlockSettingsMenuControls, store as blockEditorStore } from '@wordpress/block-editor';
13
- import { MenuItem, Icon, BaseControl, TextControl, Flex, FlexItem, FlexBlock, Button, Modal, __experimentalRadioGroup as RadioGroup, __experimentalRadio as Radio } from '@wordpress/components';
14
- import { useInstanceId } from '@wordpress/compose';
13
+ import { MenuItem } from '@wordpress/components';
15
14
  import { createBlock, serialize } from '@wordpress/blocks';
16
15
  import { __ } from '@wordpress/i18n';
17
16
  import { useState } from '@wordpress/element';
18
17
  import { store as coreStore } from '@wordpress/core-data';
19
18
  import { store as noticesStore } from '@wordpress/notices';
20
- import { store as editorStore } from '@wordpress/editor';
21
- import { check } from '@wordpress/icons';
22
19
  /**
23
20
  * Internal dependencies
24
21
  */
25
22
 
26
- import { TEMPLATE_PART_AREA_GENERAL } from '../../store/constants';
23
+ import CreateTemplatePartModal from '../create-template-part-modal';
27
24
  export default function ConvertToTemplatePart(_ref) {
28
25
  let {
29
26
  clientIds,
30
27
  blocks
31
28
  } = _ref;
32
- const instanceId = useInstanceId(ConvertToTemplatePart);
33
29
  const [isModalOpen, setIsModalOpen] = useState(false);
34
- const [title, setTitle] = useState('');
35
30
  const {
36
31
  replaceBlocks
37
32
  } = useDispatch(blockEditorStore);
@@ -41,15 +36,15 @@ export default function ConvertToTemplatePart(_ref) {
41
36
  const {
42
37
  createSuccessNotice
43
38
  } = useDispatch(noticesStore);
44
- const [area, setArea] = useState(TEMPLATE_PART_AREA_GENERAL);
45
- const templatePartAreas = useSelect(select => select(editorStore).__experimentalGetDefaultTemplatePartAreas(), []);
46
-
47
- const onConvert = async templatePartTitle => {
48
- const defaultTitle = __('Untitled Template Part');
49
39
 
40
+ const onConvert = async _ref2 => {
41
+ let {
42
+ title,
43
+ area
44
+ } = _ref2;
50
45
  const templatePart = await saveEntityRecord('postType', 'wp_template_part', {
51
- slug: kebabCase(templatePartTitle || defaultTitle),
52
- title: templatePartTitle || defaultTitle,
46
+ slug: kebabCase(title),
47
+ title,
53
48
  content: serialize(blocks),
54
49
  area
55
50
  });
@@ -62,80 +57,21 @@ export default function ConvertToTemplatePart(_ref) {
62
57
  });
63
58
  };
64
59
 
65
- return createElement(BlockSettingsMenuControls, null, _ref2 => {
60
+ return createElement(Fragment, null, createElement(BlockSettingsMenuControls, null, _ref3 => {
66
61
  let {
67
62
  onClose
68
- } = _ref2;
69
- return createElement(Fragment, null, createElement(MenuItem, {
63
+ } = _ref3;
64
+ return createElement(MenuItem, {
70
65
  onClick: () => {
71
66
  setIsModalOpen(true);
72
- }
73
- }, __('Make template part')), isModalOpen && createElement(Modal, {
74
- title: __('Create a template part'),
75
- closeLabel: __('Close'),
76
- onRequestClose: () => {
77
- setIsModalOpen(false);
78
- setTitle('');
79
- },
80
- overlayClassName: "edit-site-template-part-converter__modal"
81
- }, createElement("form", {
82
- onSubmit: event => {
83
- event.preventDefault();
84
- onConvert(title);
85
- setIsModalOpen(false);
86
- setTitle('');
87
67
  onClose();
88
68
  }
89
- }, createElement(TextControl, {
90
- label: __('Name'),
91
- value: title,
92
- onChange: setTitle
93
- }), createElement(BaseControl, {
94
- label: __('Area'),
95
- id: `edit-site-template-part-converter__area-selection-${instanceId}`,
96
- className: "edit-site-template-part-converter__area-base-control"
97
- }, createElement(RadioGroup, {
98
- label: __('Area'),
99
- className: "edit-site-template-part-converter__area-radio-group",
100
- id: `edit-site-template-part-converter__area-selection-${instanceId}`,
101
- onChange: setArea,
102
- checked: area
103
- }, templatePartAreas.map(_ref3 => {
104
- let {
105
- icon,
106
- label,
107
- area: value,
108
- description
109
- } = _ref3;
110
- return createElement(Radio, {
111
- key: label,
112
- value: value,
113
- className: "edit-site-template-part-converter__area-radio"
114
- }, createElement(Flex, {
115
- align: "start",
116
- justify: "start"
117
- }, createElement(FlexItem, null, createElement(Icon, {
118
- icon: icon
119
- })), createElement(FlexBlock, {
120
- className: "edit-site-template-part-converter__option-label"
121
- }, label, createElement("div", null, description)), createElement(FlexItem, {
122
- className: "edit-site-template-part-converter__checkbox"
123
- }, area === value && createElement(Icon, {
124
- icon: check
125
- }))));
126
- }))), createElement(Flex, {
127
- className: "edit-site-template-part-converter__convert-modal-actions",
128
- justify: "flex-end"
129
- }, createElement(FlexItem, null, createElement(Button, {
130
- variant: "secondary",
131
- onClick: () => {
132
- setIsModalOpen(false);
133
- setTitle('');
134
- }
135
- }, __('Cancel'))), createElement(FlexItem, null, createElement(Button, {
136
- variant: "primary",
137
- type: "submit"
138
- }, __('Create')))))));
139
- });
69
+ }, __('Make template part'));
70
+ }), isModalOpen && createElement(CreateTemplatePartModal, {
71
+ closeModal: () => {
72
+ setIsModalOpen(false);
73
+ },
74
+ onCreate: onConvert
75
+ }));
140
76
  }
141
77
  //# sourceMappingURL=convert-to-template-part.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/template-part-converter/convert-to-template-part.js"],"names":["kebabCase","useDispatch","useSelect","BlockSettingsMenuControls","store","blockEditorStore","MenuItem","Icon","BaseControl","TextControl","Flex","FlexItem","FlexBlock","Button","Modal","__experimentalRadioGroup","RadioGroup","__experimentalRadio","Radio","useInstanceId","createBlock","serialize","__","useState","coreStore","noticesStore","editorStore","check","TEMPLATE_PART_AREA_GENERAL","ConvertToTemplatePart","clientIds","blocks","instanceId","isModalOpen","setIsModalOpen","title","setTitle","replaceBlocks","saveEntityRecord","createSuccessNotice","area","setArea","templatePartAreas","select","__experimentalGetDefaultTemplatePartAreas","onConvert","templatePartTitle","defaultTitle","templatePart","slug","content","theme","type","onClose","event","preventDefault","map","icon","label","value","description"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,QAA0B,QAA1B;AAEA;AACA;AACA;;AACA,SAASC,WAAT,EAAsBC,SAAtB,QAAuC,iBAAvC;AACA,SACCC,yBADD,EAECC,KAAK,IAAIC,gBAFV,QAGO,yBAHP;AAIA,SACCC,QADD,EAECC,IAFD,EAGCC,WAHD,EAICC,WAJD,EAKCC,IALD,EAMCC,QAND,EAOCC,SAPD,EAQCC,MARD,EASCC,KATD,EAUCC,wBAAwB,IAAIC,UAV7B,EAWCC,mBAAmB,IAAIC,KAXxB,QAYO,uBAZP;AAaA,SAASC,aAAT,QAA8B,oBAA9B;AACA,SAASC,WAAT,EAAsBC,SAAtB,QAAuC,mBAAvC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,QAAT,QAAyB,oBAAzB;AACA,SAASnB,KAAK,IAAIoB,SAAlB,QAAmC,sBAAnC;AACA,SAASpB,KAAK,IAAIqB,YAAlB,QAAsC,oBAAtC;AACA,SAASrB,KAAK,IAAIsB,WAAlB,QAAqC,mBAArC;AACA,SAASC,KAAT,QAAsB,kBAAtB;AAEA;AACA;AACA;;AACA,SAASC,0BAAT,QAA2C,uBAA3C;AAEA,eAAe,SAASC,qBAAT,OAAwD;AAAA,MAAxB;AAAEC,IAAAA,SAAF;AAAaC,IAAAA;AAAb,GAAwB;AACtE,QAAMC,UAAU,GAAGb,aAAa,CAAEU,qBAAF,CAAhC;AACA,QAAM,CAAEI,WAAF,EAAeC,cAAf,IAAkCX,QAAQ,CAAE,KAAF,CAAhD;AACA,QAAM,CAAEY,KAAF,EAASC,QAAT,IAAsBb,QAAQ,CAAE,EAAF,CAApC;AACA,QAAM;AAAEc,IAAAA;AAAF,MAAoBpC,WAAW,CAAEI,gBAAF,CAArC;AACA,QAAM;AAAEiC,IAAAA;AAAF,MAAuBrC,WAAW,CAAEuB,SAAF,CAAxC;AACA,QAAM;AAAEe,IAAAA;AAAF,MAA0BtC,WAAW,CAAEwB,YAAF,CAA3C;AACA,QAAM,CAAEe,IAAF,EAAQC,OAAR,IAAoBlB,QAAQ,CAAEK,0BAAF,CAAlC;AAEA,QAAMc,iBAAiB,GAAGxC,SAAS,CAChCyC,MAAF,IACCA,MAAM,CAAEjB,WAAF,CAAN,CAAsBkB,yCAAtB,EAFiC,EAGlC,EAHkC,CAAnC;;AAMA,QAAMC,SAAS,GAAG,MAAQC,iBAAR,IAA+B;AAChD,UAAMC,YAAY,GAAGzB,EAAE,CAAE,wBAAF,CAAvB;;AACA,UAAM0B,YAAY,GAAG,MAAMV,gBAAgB,CAC1C,UAD0C,EAE1C,kBAF0C,EAG1C;AACCW,MAAAA,IAAI,EAAEjD,SAAS,CAAE8C,iBAAiB,IAAIC,YAAvB,CADhB;AAECZ,MAAAA,KAAK,EAAEW,iBAAiB,IAAIC,YAF7B;AAGCG,MAAAA,OAAO,EAAE7B,SAAS,CAAEU,MAAF,CAHnB;AAICS,MAAAA;AAJD,KAH0C,CAA3C;AAUAH,IAAAA,aAAa,CACZP,SADY,EAEZV,WAAW,CAAE,oBAAF,EAAwB;AAClC6B,MAAAA,IAAI,EAAED,YAAY,CAACC,IADe;AAElCE,MAAAA,KAAK,EAAEH,YAAY,CAACG;AAFc,KAAxB,CAFC,CAAb;AAOAZ,IAAAA,mBAAmB,CAAEjB,EAAE,CAAE,wBAAF,CAAJ,EAAkC;AACpD8B,MAAAA,IAAI,EAAE;AAD8C,KAAlC,CAAnB;AAGA,GAtBD;;AAwBA,SACC,cAAC,yBAAD,QACG;AAAA,QAAE;AAAEC,MAAAA;AAAF,KAAF;AAAA,WACD,8BACC,cAAC,QAAD;AACC,MAAA,OAAO,EAAG,MAAM;AACfnB,QAAAA,cAAc,CAAE,IAAF,CAAd;AACA;AAHF,OAKGZ,EAAE,CAAE,oBAAF,CALL,CADD,EAQGW,WAAW,IACZ,cAAC,KAAD;AACC,MAAA,KAAK,EAAGX,EAAE,CAAE,wBAAF,CADX;AAEC,MAAA,UAAU,EAAGA,EAAE,CAAE,OAAF,CAFhB;AAGC,MAAA,cAAc,EAAG,MAAM;AACtBY,QAAAA,cAAc,CAAE,KAAF,CAAd;AACAE,QAAAA,QAAQ,CAAE,EAAF,CAAR;AACA,OANF;AAOC,MAAA,gBAAgB,EAAC;AAPlB,OASC;AACC,MAAA,QAAQ,EAAKkB,KAAF,IAAa;AACvBA,QAAAA,KAAK,CAACC,cAAN;AACAV,QAAAA,SAAS,CAAEV,KAAF,CAAT;AACAD,QAAAA,cAAc,CAAE,KAAF,CAAd;AACAE,QAAAA,QAAQ,CAAE,EAAF,CAAR;AACAiB,QAAAA,OAAO;AACP;AAPF,OASC,cAAC,WAAD;AACC,MAAA,KAAK,EAAG/B,EAAE,CAAE,MAAF,CADX;AAEC,MAAA,KAAK,EAAGa,KAFT;AAGC,MAAA,QAAQ,EAAGC;AAHZ,MATD,EAcC,cAAC,WAAD;AACC,MAAA,KAAK,EAAGd,EAAE,CAAE,MAAF,CADX;AAEC,MAAA,EAAE,EAAI,qDAAqDU,UAAY,EAFxE;AAGC,MAAA,SAAS,EAAC;AAHX,OAKC,cAAC,UAAD;AACC,MAAA,KAAK,EAAGV,EAAE,CAAE,MAAF,CADX;AAEC,MAAA,SAAS,EAAC,qDAFX;AAGC,MAAA,EAAE,EAAI,qDAAqDU,UAAY,EAHxE;AAIC,MAAA,QAAQ,EAAGS,OAJZ;AAKC,MAAA,OAAO,EAAGD;AALX,OAOGE,iBAAiB,CAACc,GAAlB,CACD;AAAA,UAAE;AACDC,QAAAA,IADC;AAEDC,QAAAA,KAFC;AAGDlB,QAAAA,IAAI,EAAEmB,KAHL;AAIDC,QAAAA;AAJC,OAAF;AAAA,aAMC,cAAC,KAAD;AACC,QAAA,GAAG,EAAGF,KADP;AAEC,QAAA,KAAK,EAAGC,KAFT;AAGC,QAAA,SAAS,EAAC;AAHX,SAKC,cAAC,IAAD;AACC,QAAA,KAAK,EAAC,OADP;AAEC,QAAA,OAAO,EAAC;AAFT,SAIC,cAAC,QAAD,QACC,cAAC,IAAD;AACC,QAAA,IAAI,EAAGF;AADR,QADD,CAJD,EASC,cAAC,SAAD;AAAW,QAAA,SAAS,EAAC;AAArB,SACGC,KADH,EAEC,2BACGE,WADH,CAFD,CATD,EAgBC,cAAC,QAAD;AAAU,QAAA,SAAS,EAAC;AAApB,SACGpB,IAAI,KACLmB,KADC,IAED,cAAC,IAAD;AACC,QAAA,IAAI,EACHhC;AAFF,QAHF,CAhBD,CALD,CAND;AAAA,KADC,CAPH,CALD,CAdD,EAsEC,cAAC,IAAD;AACC,MAAA,SAAS,EAAC,0DADX;AAEC,MAAA,OAAO,EAAC;AAFT,OAIC,cAAC,QAAD,QACC,cAAC,MAAD;AACC,MAAA,OAAO,EAAC,WADT;AAEC,MAAA,OAAO,EAAG,MAAM;AACfO,QAAAA,cAAc,CAAE,KAAF,CAAd;AACAE,QAAAA,QAAQ,CAAE,EAAF,CAAR;AACA;AALF,OAOGd,EAAE,CAAE,QAAF,CAPL,CADD,CAJD,EAeC,cAAC,QAAD,QACC,cAAC,MAAD;AAAQ,MAAA,OAAO,EAAC,SAAhB;AAA0B,MAAA,IAAI,EAAC;AAA/B,OACGA,EAAE,CAAE,QAAF,CADL,CADD,CAfD,CAtED,CATD,CATF,CADC;AAAA,GADH,CADD;AAuHA","sourcesContent":["/**\n * External dependencies\n */\nimport { kebabCase } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tBlockSettingsMenuControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tMenuItem,\n\tIcon,\n\tBaseControl,\n\tTextControl,\n\tFlex,\n\tFlexItem,\n\tFlexBlock,\n\tButton,\n\tModal,\n\t__experimentalRadioGroup as RadioGroup,\n\t__experimentalRadio as Radio,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { createBlock, serialize } from '@wordpress/blocks';\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as editorStore } from '@wordpress/editor';\nimport { check } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_PART_AREA_GENERAL } from '../../store/constants';\n\nexport default function ConvertToTemplatePart( { clientIds, blocks } ) {\n\tconst instanceId = useInstanceId( ConvertToTemplatePart );\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst [ title, setTitle ] = useState( '' );\n\tconst { replaceBlocks } = useDispatch( blockEditorStore );\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\tconst [ area, setArea ] = useState( TEMPLATE_PART_AREA_GENERAL );\n\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\n\tconst onConvert = async ( templatePartTitle ) => {\n\t\tconst defaultTitle = __( 'Untitled Template Part' );\n\t\tconst templatePart = await saveEntityRecord(\n\t\t\t'postType',\n\t\t\t'wp_template_part',\n\t\t\t{\n\t\t\t\tslug: kebabCase( templatePartTitle || defaultTitle ),\n\t\t\t\ttitle: templatePartTitle || defaultTitle,\n\t\t\t\tcontent: serialize( blocks ),\n\t\t\t\tarea,\n\t\t\t}\n\t\t);\n\t\treplaceBlocks(\n\t\t\tclientIds,\n\t\t\tcreateBlock( 'core/template-part', {\n\t\t\t\tslug: templatePart.slug,\n\t\t\t\ttheme: templatePart.theme,\n\t\t\t} )\n\t\t);\n\t\tcreateSuccessNotice( __( 'Template part created.' ), {\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\treturn (\n\t\t<BlockSettingsMenuControls>\n\t\t\t{ ( { onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tsetIsModalOpen( true );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Make template part' ) }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t\t{ isModalOpen && (\n\t\t\t\t\t\t<Modal\n\t\t\t\t\t\t\ttitle={ __( 'Create a template part' ) }\n\t\t\t\t\t\t\tcloseLabel={ __( 'Close' ) }\n\t\t\t\t\t\t\tonRequestClose={ () => {\n\t\t\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\toverlayClassName=\"edit-site-template-part-converter__modal\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<form\n\t\t\t\t\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\tonConvert( title );\n\t\t\t\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t\t\t\t\tonClose();\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<TextControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<BaseControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\t\t\t\t\tid={ `edit-site-template-part-converter__area-selection-${ instanceId }` }\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-template-part-converter__area-base-control\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<RadioGroup\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\t\t\t\t\t\tclassName=\"edit-site-template-part-converter__area-radio-group\"\n\t\t\t\t\t\t\t\t\t\tid={ `edit-site-template-part-converter__area-selection-${ instanceId }` }\n\t\t\t\t\t\t\t\t\t\tonChange={ setArea }\n\t\t\t\t\t\t\t\t\t\tchecked={ area }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ templatePartAreas.map(\n\t\t\t\t\t\t\t\t\t\t\t( {\n\t\t\t\t\t\t\t\t\t\t\t\ticon,\n\t\t\t\t\t\t\t\t\t\t\t\tlabel,\n\t\t\t\t\t\t\t\t\t\t\t\tarea: value,\n\t\t\t\t\t\t\t\t\t\t\t\tdescription,\n\t\t\t\t\t\t\t\t\t\t\t} ) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<Radio\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={ label }\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"edit-site-template-part-converter__area-radio\"\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\t\t\t\t\t\t\t\talign=\"start\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tjustify=\"start\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<FlexBlock className=\"edit-site-template-part-converter__option-label\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{ description }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</FlexBlock>\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<FlexItem className=\"edit-site-template-part-converter__checkbox\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{ area ===\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcheck\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t\t\t\t\t\t\t</Radio>\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</RadioGroup>\n\t\t\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-template-part-converter__convert-modal-actions\"\n\t\t\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\t\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Create' ) }\n\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t\t</form>\n\t\t\t\t\t\t</Modal>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t</BlockSettingsMenuControls>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/template-part-converter/convert-to-template-part.js"],"names":["kebabCase","useDispatch","BlockSettingsMenuControls","store","blockEditorStore","MenuItem","createBlock","serialize","__","useState","coreStore","noticesStore","CreateTemplatePartModal","ConvertToTemplatePart","clientIds","blocks","isModalOpen","setIsModalOpen","replaceBlocks","saveEntityRecord","createSuccessNotice","onConvert","title","area","templatePart","slug","content","theme","type","onClose"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,QAA0B,QAA1B;AAEA;AACA;AACA;;AACA,SAASC,WAAT,QAA4B,iBAA5B;AACA,SACCC,yBADD,EAECC,KAAK,IAAIC,gBAFV,QAGO,yBAHP;AAIA,SAASC,QAAT,QAAyB,uBAAzB;AACA,SAASC,WAAT,EAAsBC,SAAtB,QAAuC,mBAAvC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,QAAT,QAAyB,oBAAzB;AACA,SAASN,KAAK,IAAIO,SAAlB,QAAmC,sBAAnC;AACA,SAASP,KAAK,IAAIQ,YAAlB,QAAsC,oBAAtC;AAEA;AACA;AACA;;AACA,OAAOC,uBAAP,MAAoC,+BAApC;AAEA,eAAe,SAASC,qBAAT,OAAwD;AAAA,MAAxB;AAAEC,IAAAA,SAAF;AAAaC,IAAAA;AAAb,GAAwB;AACtE,QAAM,CAAEC,WAAF,EAAeC,cAAf,IAAkCR,QAAQ,CAAE,KAAF,CAAhD;AACA,QAAM;AAAES,IAAAA;AAAF,MAAoBjB,WAAW,CAAEG,gBAAF,CAArC;AACA,QAAM;AAAEe,IAAAA;AAAF,MAAuBlB,WAAW,CAAES,SAAF,CAAxC;AACA,QAAM;AAAEU,IAAAA;AAAF,MAA0BnB,WAAW,CAAEU,YAAF,CAA3C;;AAEA,QAAMU,SAAS,GAAG,eAA6B;AAAA,QAArB;AAAEC,MAAAA,KAAF;AAASC,MAAAA;AAAT,KAAqB;AAC9C,UAAMC,YAAY,GAAG,MAAML,gBAAgB,CAC1C,UAD0C,EAE1C,kBAF0C,EAG1C;AACCM,MAAAA,IAAI,EAAEzB,SAAS,CAAEsB,KAAF,CADhB;AAECA,MAAAA,KAFD;AAGCI,MAAAA,OAAO,EAAEnB,SAAS,CAAEQ,MAAF,CAHnB;AAICQ,MAAAA;AAJD,KAH0C,CAA3C;AAUAL,IAAAA,aAAa,CACZJ,SADY,EAEZR,WAAW,CAAE,oBAAF,EAAwB;AAClCmB,MAAAA,IAAI,EAAED,YAAY,CAACC,IADe;AAElCE,MAAAA,KAAK,EAAEH,YAAY,CAACG;AAFc,KAAxB,CAFC,CAAb;AAOAP,IAAAA,mBAAmB,CAAEZ,EAAE,CAAE,wBAAF,CAAJ,EAAkC;AACpDoB,MAAAA,IAAI,EAAE;AAD8C,KAAlC,CAAnB;AAGA,GArBD;;AAuBA,SACC,8BACC,cAAC,yBAAD,QACG;AAAA,QAAE;AAAEC,MAAAA;AAAF,KAAF;AAAA,WACD,cAAC,QAAD;AACC,MAAA,OAAO,EAAG,MAAM;AACfZ,QAAAA,cAAc,CAAE,IAAF,CAAd;AACAY,QAAAA,OAAO;AACP;AAJF,OAMGrB,EAAE,CAAE,oBAAF,CANL,CADC;AAAA,GADH,CADD,EAaGQ,WAAW,IACZ,cAAC,uBAAD;AACC,IAAA,UAAU,EAAG,MAAM;AAClBC,MAAAA,cAAc,CAAE,KAAF,CAAd;AACA,KAHF;AAIC,IAAA,QAAQ,EAAGI;AAJZ,IAdF,CADD;AAwBA","sourcesContent":["/**\n * External dependencies\n */\nimport { kebabCase } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport {\n\tBlockSettingsMenuControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { MenuItem } from '@wordpress/components';\nimport { createBlock, serialize } from '@wordpress/blocks';\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport CreateTemplatePartModal from '../create-template-part-modal';\n\nexport default function ConvertToTemplatePart( { clientIds, blocks } ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst { replaceBlocks } = useDispatch( blockEditorStore );\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\n\tconst onConvert = async ( { title, area } ) => {\n\t\tconst templatePart = await saveEntityRecord(\n\t\t\t'postType',\n\t\t\t'wp_template_part',\n\t\t\t{\n\t\t\t\tslug: kebabCase( title ),\n\t\t\t\ttitle,\n\t\t\t\tcontent: serialize( blocks ),\n\t\t\t\tarea,\n\t\t\t}\n\t\t);\n\t\treplaceBlocks(\n\t\t\tclientIds,\n\t\t\tcreateBlock( 'core/template-part', {\n\t\t\t\tslug: templatePart.slug,\n\t\t\t\ttheme: templatePart.theme,\n\t\t\t} )\n\t\t);\n\t\tcreateSuccessNotice( __( 'Template part created.' ), {\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<BlockSettingsMenuControls>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tsetIsModalOpen( true );\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Make template part' ) }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t) }\n\t\t\t</BlockSettingsMenuControls>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<CreateTemplatePartModal\n\t\t\t\t\tcloseModal={ () => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonCreate={ onConvert }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
@@ -0,0 +1,45 @@
1
+ import { createElement, Fragment } from "@wordpress/element";
2
+
3
+ /**
4
+ * WordPress dependencies
5
+ */
6
+ import { useDispatch } from '@wordpress/data';
7
+ import { Guide } from '@wordpress/components';
8
+ import { __ } from '@wordpress/i18n';
9
+ import { createInterpolateElement } from '@wordpress/element';
10
+ /**
11
+ * Internal dependencies
12
+ */
13
+
14
+ import WelcomeGuideImage from './image';
15
+ import { store as editSiteStore } from '../../store';
16
+ export default function WelcomeGuideEditor() {
17
+ const {
18
+ toggleFeature
19
+ } = useDispatch(editSiteStore);
20
+ return createElement(Guide, {
21
+ className: "edit-site-welcome-guide",
22
+ contentLabel: __('Welcome to the site editor'),
23
+ finishButtonText: __('Get Started'),
24
+ onFinish: () => toggleFeature('welcomeGuide'),
25
+ pages: [{
26
+ image: createElement(WelcomeGuideImage, {
27
+ nonAnimatedSrc: "https://s.w.org/images/block-editor/edit-your-site.svg?1",
28
+ animatedSrc: "https://s.w.org/images/block-editor/edit-your-site.gif?1"
29
+ }),
30
+ content: createElement(Fragment, null, createElement("h1", {
31
+ className: "edit-site-welcome-guide__heading"
32
+ }, __('Edit your site')), createElement("p", {
33
+ className: "edit-site-welcome-guide__text"
34
+ }, __('Design everything on your site — from the header right down to the footer — using blocks.')), createElement("p", {
35
+ className: "edit-site-welcome-guide__text"
36
+ }, createInterpolateElement(__('Click <StylesIconImage /> to start designing your blocks, and choose your typography, layout, and colors.'), {
37
+ StylesIconImage: createElement("img", {
38
+ alt: __('styles'),
39
+ src: "data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 4c-4.4 0-8 3.6-8 8v.1c0 4.1 3.2 7.5 7.2 7.9h.8c4.4 0 8-3.6 8-8s-3.6-8-8-8zm0 15V5c3.9 0 7 3.1 7 7s-3.1 7-7 7z' fill='%231E1E1E'/%3E%3C/svg%3E%0A"
40
+ })
41
+ })))
42
+ }]
43
+ });
44
+ }
45
+ //# sourceMappingURL=editor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/welcome-guide/editor.js"],"names":["useDispatch","Guide","__","createInterpolateElement","WelcomeGuideImage","store","editSiteStore","WelcomeGuideEditor","toggleFeature","image","content","StylesIconImage"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,WAAT,QAA4B,iBAA5B;AACA,SAASC,KAAT,QAAsB,uBAAtB;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,wBAAT,QAAyC,oBAAzC;AAEA;AACA;AACA;;AACA,OAAOC,iBAAP,MAA8B,SAA9B;AACA,SAASC,KAAK,IAAIC,aAAlB,QAAuC,aAAvC;AAEA,eAAe,SAASC,kBAAT,GAA8B;AAC5C,QAAM;AAAEC,IAAAA;AAAF,MAAoBR,WAAW,CAAEM,aAAF,CAArC;AAEA,SACC,cAAC,KAAD;AACC,IAAA,SAAS,EAAC,yBADX;AAEC,IAAA,YAAY,EAAGJ,EAAE,CAAE,4BAAF,CAFlB;AAGC,IAAA,gBAAgB,EAAGA,EAAE,CAAE,aAAF,CAHtB;AAIC,IAAA,QAAQ,EAAG,MAAMM,aAAa,CAAE,cAAF,CAJ/B;AAKC,IAAA,KAAK,EAAG,CACP;AACCC,MAAAA,KAAK,EACJ,cAAC,iBAAD;AACC,QAAA,cAAc,EAAC,0DADhB;AAEC,QAAA,WAAW,EAAC;AAFb,QAFF;AAOCC,MAAAA,OAAO,EACN,8BACC;AAAI,QAAA,SAAS,EAAC;AAAd,SACGR,EAAE,CAAE,gBAAF,CADL,CADD,EAIC;AAAG,QAAA,SAAS,EAAC;AAAb,SACGA,EAAE,CACH,2FADG,CADL,CAJD,EASC;AAAG,QAAA,SAAS,EAAC;AAAb,SACGC,wBAAwB,CACzBD,EAAE,CACD,2GADC,CADuB,EAIzB;AACCS,QAAAA,eAAe,EACd;AACC,UAAA,GAAG,EAAGT,EAAE,CAAE,QAAF,CADT;AAEC,UAAA,GAAG,EAAC;AAFL;AAFF,OAJyB,CAD3B,CATD;AARF,KADO;AALT,IADD;AA6CA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport { Guide } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport WelcomeGuideImage from './image';\nimport { store as editSiteStore } from '../../store';\n\nexport default function WelcomeGuideEditor() {\n\tconst { toggleFeature } = useDispatch( editSiteStore );\n\n\treturn (\n\t\t<Guide\n\t\t\tclassName=\"edit-site-welcome-guide\"\n\t\t\tcontentLabel={ __( 'Welcome to the site editor' ) }\n\t\t\tfinishButtonText={ __( 'Get Started' ) }\n\t\t\tonFinish={ () => toggleFeature( 'welcomeGuide' ) }\n\t\t\tpages={ [\n\t\t\t\t{\n\t\t\t\t\timage: (\n\t\t\t\t\t\t<WelcomeGuideImage\n\t\t\t\t\t\t\tnonAnimatedSrc=\"https://s.w.org/images/block-editor/edit-your-site.svg?1\"\n\t\t\t\t\t\t\tanimatedSrc=\"https://s.w.org/images/block-editor/edit-your-site.gif?1\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"edit-site-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Edit your site' ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<p className=\"edit-site-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Design everything on your site — from the header right down to the footer — using blocks.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<p className=\"edit-site-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'Click <StylesIconImage /> to start designing your blocks, and choose your typography, layout, and colors.'\n\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\t\tStylesIconImage: (\n\t\t\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\t\t\t\talt={ __( 'styles' ) }\n\t\t\t\t\t\t\t\t\t\t\t\tsrc=\"data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 4c-4.4 0-8 3.6-8 8v.1c0 4.1 3.2 7.5 7.2 7.9h.8c4.4 0 8-3.6 8-8s-3.6-8-8-8zm0 15V5c3.9 0 7 3.1 7 7s-3.1 7-7 7z' fill='%231E1E1E'/%3E%3C/svg%3E%0A\"\n\t\t\t\t\t\t\t\t\t\t\t/>\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) }\n\t\t\t\t\t\t\t</p>\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/>\n\t);\n}\n"]}
@@ -0,0 +1,19 @@
1
+ import { createElement } from "@wordpress/element";
2
+ export default function WelcomeGuideImage(_ref) {
3
+ let {
4
+ nonAnimatedSrc,
5
+ animatedSrc
6
+ } = _ref;
7
+ return createElement("picture", {
8
+ className: "edit-site-welcome-guide__image"
9
+ }, createElement("source", {
10
+ srcSet: nonAnimatedSrc,
11
+ media: "(prefers-reduced-motion: reduce)"
12
+ }), createElement("img", {
13
+ src: animatedSrc,
14
+ width: "312",
15
+ height: "240",
16
+ alt: ""
17
+ }));
18
+ }
19
+ //# sourceMappingURL=image.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/welcome-guide/image.js"],"names":["WelcomeGuideImage","nonAnimatedSrc","animatedSrc"],"mappings":";AAAA,eAAe,SAASA,iBAAT,OAA8D;AAAA,MAAlC;AAAEC,IAAAA,cAAF;AAAkBC,IAAAA;AAAlB,GAAkC;AAC5E,SACC;AAAS,IAAA,SAAS,EAAC;AAAnB,KACC;AACC,IAAA,MAAM,EAAGD,cADV;AAEC,IAAA,KAAK,EAAC;AAFP,IADD,EAKC;AAAK,IAAA,GAAG,EAAGC,WAAX;AAAyB,IAAA,KAAK,EAAC,KAA/B;AAAqC,IAAA,MAAM,EAAC,KAA5C;AAAkD,IAAA,GAAG,EAAC;AAAtD,IALD,CADD;AASA","sourcesContent":["export default function WelcomeGuideImage( { nonAnimatedSrc, animatedSrc } ) {\n\treturn (\n\t\t<picture className=\"edit-site-welcome-guide__image\">\n\t\t\t<source\n\t\t\t\tsrcSet={ nonAnimatedSrc }\n\t\t\t\tmedia=\"(prefers-reduced-motion: reduce)\"\n\t\t\t/>\n\t\t\t<img src={ animatedSrc } width=\"312\" height=\"240\" alt=\"\" />\n\t\t</picture>\n\t);\n}\n"]}
@@ -0,0 +1,35 @@
1
+ import { createElement } from "@wordpress/element";
2
+
3
+ /**
4
+ * WordPress dependencies
5
+ */
6
+ import { useSelect } from '@wordpress/data';
7
+ import { store as interfaceStore } from '@wordpress/interface';
8
+ /**
9
+ * Internal dependencies
10
+ */
11
+
12
+ import WelcomeGuideEditor from './editor';
13
+ import WelcomeGuideStyles from './styles';
14
+ import { store as editSiteStore } from '../../store';
15
+ export default function WelcomeGuide() {
16
+ const {
17
+ isActive,
18
+ isStylesOpen
19
+ } = useSelect(select => {
20
+ const sidebar = select(interfaceStore).getActiveComplementaryArea(editSiteStore.name);
21
+ const isStylesSidebar = sidebar === 'edit-site/global-styles';
22
+ const feature = isStylesSidebar ? 'welcomeGuideStyles' : 'welcomeGuide';
23
+ return {
24
+ isActive: select(editSiteStore).isFeatureActive(feature),
25
+ isStylesOpen: isStylesSidebar
26
+ };
27
+ }, []);
28
+
29
+ if (!isActive) {
30
+ return null;
31
+ }
32
+
33
+ return isStylesOpen ? createElement(WelcomeGuideStyles, null) : createElement(WelcomeGuideEditor, null);
34
+ }
35
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/welcome-guide/index.js"],"names":["useSelect","store","interfaceStore","WelcomeGuideEditor","WelcomeGuideStyles","editSiteStore","WelcomeGuide","isActive","isStylesOpen","select","sidebar","getActiveComplementaryArea","name","isStylesSidebar","feature","isFeatureActive"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,QAA0B,iBAA1B;AACA,SAASC,KAAK,IAAIC,cAAlB,QAAwC,sBAAxC;AAEA;AACA;AACA;;AACA,OAAOC,kBAAP,MAA+B,UAA/B;AACA,OAAOC,kBAAP,MAA+B,UAA/B;AACA,SAASH,KAAK,IAAII,aAAlB,QAAuC,aAAvC;AAEA,eAAe,SAASC,YAAT,GAAwB;AACtC,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,MAA6BR,SAAS,CAAIS,MAAF,IAAc;AAC3D,UAAMC,OAAO,GAAGD,MAAM,CAAEP,cAAF,CAAN,CAAyBS,0BAAzB,CACfN,aAAa,CAACO,IADC,CAAhB;AAGA,UAAMC,eAAe,GAAGH,OAAO,KAAK,yBAApC;AACA,UAAMI,OAAO,GAAGD,eAAe,GAAG,oBAAH,GAA0B,cAAzD;AAEA,WAAO;AACNN,MAAAA,QAAQ,EAAEE,MAAM,CAAEJ,aAAF,CAAN,CAAwBU,eAAxB,CAAyCD,OAAzC,CADJ;AAENN,MAAAA,YAAY,EAAEK;AAFR,KAAP;AAIA,GAX2C,EAWzC,EAXyC,CAA5C;;AAaA,MAAK,CAAEN,QAAP,EAAkB;AACjB,WAAO,IAAP;AACA;;AAED,SAAOC,YAAY,GAAG,cAAC,kBAAD,OAAH,GAA4B,cAAC,kBAAD,OAA/C;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport WelcomeGuideEditor from './editor';\nimport WelcomeGuideStyles from './styles';\nimport { store as editSiteStore } from '../../store';\n\nexport default function WelcomeGuide() {\n\tconst { isActive, isStylesOpen } = useSelect( ( select ) => {\n\t\tconst sidebar = select( interfaceStore ).getActiveComplementaryArea(\n\t\t\teditSiteStore.name\n\t\t);\n\t\tconst isStylesSidebar = sidebar === 'edit-site/global-styles';\n\t\tconst feature = isStylesSidebar ? 'welcomeGuideStyles' : 'welcomeGuide';\n\n\t\treturn {\n\t\t\tisActive: select( editSiteStore ).isFeatureActive( feature ),\n\t\t\tisStylesOpen: isStylesSidebar,\n\t\t};\n\t}, [] );\n\n\tif ( ! isActive ) {\n\t\treturn null;\n\t}\n\n\treturn isStylesOpen ? <WelcomeGuideStyles /> : <WelcomeGuideEditor />;\n}\n"]}
@@ -0,0 +1,69 @@
1
+ import { createElement, Fragment } from "@wordpress/element";
2
+
3
+ /**
4
+ * WordPress dependencies
5
+ */
6
+ import { useDispatch } from '@wordpress/data';
7
+ import { ExternalLink, Guide } from '@wordpress/components';
8
+ import { __ } from '@wordpress/i18n';
9
+ /**
10
+ * Internal dependencies
11
+ */
12
+
13
+ import WelcomeGuideImage from './image';
14
+ import { store as editSiteStore } from '../../store';
15
+ export default function WelcomeGuideStyles() {
16
+ const {
17
+ toggleFeature
18
+ } = useDispatch(editSiteStore);
19
+ return createElement(Guide, {
20
+ className: "edit-site-welcome-guide",
21
+ contentLabel: __('Welcome to styles'),
22
+ finishButtonText: __('Get Started'),
23
+ onFinish: () => toggleFeature('welcomeGuideStyles'),
24
+ pages: [{
25
+ image: createElement(WelcomeGuideImage, {
26
+ nonAnimatedSrc: "https://s.w.org/images/block-editor/welcome-to-styles.svg?1",
27
+ animatedSrc: "https://s.w.org/images/block-editor/welcome-to-styles.gif?1"
28
+ }),
29
+ content: createElement(Fragment, null, createElement("h1", {
30
+ className: "edit-site-welcome-guide__heading"
31
+ }, __('Welcome to Styles')), createElement("p", {
32
+ className: "edit-site-welcome-guide__text"
33
+ }, __('Tweak your site, or give it a whole new look! Get creative — how about a new color palette for your buttons, or choosing a new font? Take a look at what you can do here.')))
34
+ }, {
35
+ image: createElement(WelcomeGuideImage, {
36
+ nonAnimatedSrc: "https://s.w.org/images/block-editor/set-the-design.svg?1",
37
+ animatedSrc: "https://s.w.org/images/block-editor/set-the-design.gif?1"
38
+ }),
39
+ content: createElement(Fragment, null, createElement("h1", {
40
+ className: "edit-site-welcome-guide__heading"
41
+ }, __('Set the design')), createElement("p", {
42
+ className: "edit-site-welcome-guide__text"
43
+ }, __('You can customize your site as much as you like with different colors, typography, and layouts. Or if you prefer, just leave it up to your theme to handle! ')))
44
+ }, {
45
+ image: createElement(WelcomeGuideImage, {
46
+ nonAnimatedSrc: "https://s.w.org/images/block-editor/personalize-blocks.svg?1",
47
+ animatedSrc: "https://s.w.org/images/block-editor/personalize-blocks.gif?1"
48
+ }),
49
+ content: createElement(Fragment, null, createElement("h1", {
50
+ className: "edit-site-welcome-guide__heading"
51
+ }, __('Personalize blocks')), createElement("p", {
52
+ className: "edit-site-welcome-guide__text"
53
+ }, __('You can adjust your blocks to ensure a cohesive experience across your site — add your unique colors to a branded Button block, or adjust the Heading block to your preferred size.')))
54
+ }, {
55
+ image: createElement(WelcomeGuideImage, {
56
+ nonAnimatedSrc: "https://s.w.org/images/block-editor/welcome-documentation.svg",
57
+ animatedSrc: "https://s.w.org/images/block-editor/welcome-documentation.gif"
58
+ }),
59
+ content: createElement(Fragment, null, createElement("h1", {
60
+ className: "edit-site-welcome-guide__heading"
61
+ }, __('Learn more')), createElement("p", {
62
+ className: "edit-site-welcome-guide__text"
63
+ }, __('New to block themes and styling your site? '), createElement(ExternalLink, {
64
+ href: __('https://wordpress.org/support/article/wordpress-editor/')
65
+ }, __('Here’s a detailed guide to learn how to make the most of it.'))))
66
+ }]
67
+ });
68
+ }
69
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/welcome-guide/styles.js"],"names":["useDispatch","ExternalLink","Guide","__","WelcomeGuideImage","store","editSiteStore","WelcomeGuideStyles","toggleFeature","image","content"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,WAAT,QAA4B,iBAA5B;AACA,SAASC,YAAT,EAAuBC,KAAvB,QAAoC,uBAApC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,OAAOC,iBAAP,MAA8B,SAA9B;AACA,SAASC,KAAK,IAAIC,aAAlB,QAAuC,aAAvC;AAEA,eAAe,SAASC,kBAAT,GAA8B;AAC5C,QAAM;AAAEC,IAAAA;AAAF,MAAoBR,WAAW,CAAEM,aAAF,CAArC;AAEA,SACC,cAAC,KAAD;AACC,IAAA,SAAS,EAAC,yBADX;AAEC,IAAA,YAAY,EAAGH,EAAE,CAAE,mBAAF,CAFlB;AAGC,IAAA,gBAAgB,EAAGA,EAAE,CAAE,aAAF,CAHtB;AAIC,IAAA,QAAQ,EAAG,MAAMK,aAAa,CAAE,oBAAF,CAJ/B;AAKC,IAAA,KAAK,EAAG,CACP;AACCC,MAAAA,KAAK,EACJ,cAAC,iBAAD;AACC,QAAA,cAAc,EAAC,6DADhB;AAEC,QAAA,WAAW,EAAC;AAFb,QAFF;AAOCC,MAAAA,OAAO,EACN,8BACC;AAAI,QAAA,SAAS,EAAC;AAAd,SACGP,EAAE,CAAE,mBAAF,CADL,CADD,EAIC;AAAG,QAAA,SAAS,EAAC;AAAb,SACGA,EAAE,CACH,2KADG,CADL,CAJD;AARF,KADO,EAqBP;AACCM,MAAAA,KAAK,EACJ,cAAC,iBAAD;AACC,QAAA,cAAc,EAAC,0DADhB;AAEC,QAAA,WAAW,EAAC;AAFb,QAFF;AAOCC,MAAAA,OAAO,EACN,8BACC;AAAI,QAAA,SAAS,EAAC;AAAd,SACGP,EAAE,CAAE,gBAAF,CADL,CADD,EAIC;AAAG,QAAA,SAAS,EAAC;AAAb,SACGA,EAAE,CACH,8JADG,CADL,CAJD;AARF,KArBO,EAyCP;AACCM,MAAAA,KAAK,EACJ,cAAC,iBAAD;AACC,QAAA,cAAc,EAAC,8DADhB;AAEC,QAAA,WAAW,EAAC;AAFb,QAFF;AAOCC,MAAAA,OAAO,EACN,8BACC;AAAI,QAAA,SAAS,EAAC;AAAd,SACGP,EAAE,CAAE,oBAAF,CADL,CADD,EAIC;AAAG,QAAA,SAAS,EAAC;AAAb,SACGA,EAAE,CACH,qLADG,CADL,CAJD;AARF,KAzCO,EA6DP;AACCM,MAAAA,KAAK,EACJ,cAAC,iBAAD;AACC,QAAA,cAAc,EAAC,+DADhB;AAEC,QAAA,WAAW,EAAC;AAFb,QAFF;AAOCC,MAAAA,OAAO,EACN,8BACC;AAAI,QAAA,SAAS,EAAC;AAAd,SACGP,EAAE,CAAE,YAAF,CADL,CADD,EAIC;AAAG,QAAA,SAAS,EAAC;AAAb,SACGA,EAAE,CACH,6CADG,CADL,EAIC,cAAC,YAAD;AACC,QAAA,IAAI,EAAGA,EAAE,CACR,yDADQ;AADV,SAKGA,EAAE,CACH,8DADG,CALL,CAJD,CAJD;AARF,KA7DO;AALT,IADD;AAmGA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport { ExternalLink, Guide } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport WelcomeGuideImage from './image';\nimport { store as editSiteStore } from '../../store';\n\nexport default function WelcomeGuideStyles() {\n\tconst { toggleFeature } = useDispatch( editSiteStore );\n\n\treturn (\n\t\t<Guide\n\t\t\tclassName=\"edit-site-welcome-guide\"\n\t\t\tcontentLabel={ __( 'Welcome to styles' ) }\n\t\t\tfinishButtonText={ __( 'Get Started' ) }\n\t\t\tonFinish={ () => toggleFeature( 'welcomeGuideStyles' ) }\n\t\t\tpages={ [\n\t\t\t\t{\n\t\t\t\t\timage: (\n\t\t\t\t\t\t<WelcomeGuideImage\n\t\t\t\t\t\t\tnonAnimatedSrc=\"https://s.w.org/images/block-editor/welcome-to-styles.svg?1\"\n\t\t\t\t\t\t\tanimatedSrc=\"https://s.w.org/images/block-editor/welcome-to-styles.gif?1\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"edit-site-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Welcome to Styles' ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<p className=\"edit-site-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Tweak your site, or give it a whole new look! Get creative — how about a new color palette for your buttons, or choosing a new font? Take a look at what you can do here.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: (\n\t\t\t\t\t\t<WelcomeGuideImage\n\t\t\t\t\t\t\tnonAnimatedSrc=\"https://s.w.org/images/block-editor/set-the-design.svg?1\"\n\t\t\t\t\t\t\tanimatedSrc=\"https://s.w.org/images/block-editor/set-the-design.gif?1\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"edit-site-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Set the design' ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<p className=\"edit-site-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'You can customize your site as much as you like with different colors, typography, and layouts. Or if you prefer, just leave it up to your theme to handle! '\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: (\n\t\t\t\t\t\t<WelcomeGuideImage\n\t\t\t\t\t\t\tnonAnimatedSrc=\"https://s.w.org/images/block-editor/personalize-blocks.svg?1\"\n\t\t\t\t\t\t\tanimatedSrc=\"https://s.w.org/images/block-editor/personalize-blocks.gif?1\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"edit-site-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Personalize blocks' ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<p className=\"edit-site-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'You can adjust your blocks to ensure a cohesive experience across your site — add your unique colors to a branded Button block, or adjust the Heading block to your preferred size.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: (\n\t\t\t\t\t\t<WelcomeGuideImage\n\t\t\t\t\t\t\tnonAnimatedSrc=\"https://s.w.org/images/block-editor/welcome-documentation.svg\"\n\t\t\t\t\t\t\tanimatedSrc=\"https://s.w.org/images/block-editor/welcome-documentation.gif\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t),\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"edit-site-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Learn more' ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<p className=\"edit-site-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'New to block themes and styling your site? '\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/support/article/wordpress-editor/'\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\t{ __(\n\t\t\t\t\t\t\t\t\t\t'Here’s a detailed guide to learn how to make the most of it.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t</p>\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/>\n\t);\n}\n"]}
@@ -5,17 +5,20 @@ import { createElement } from "@wordpress/element";
5
5
  */
6
6
  import { store as blocksStore } from '@wordpress/blocks';
7
7
  import { registerCoreBlocks, __experimentalRegisterExperimentalCoreBlocks } from '@wordpress/block-library';
8
- import { dispatch } from '@wordpress/data';
8
+ import { dispatch, select } from '@wordpress/data';
9
9
  import { render, unmountComponentAtNode } from '@wordpress/element';
10
10
  import { __experimentalFetchLinkSuggestions as fetchLinkSuggestions, __experimentalFetchUrlData as fetchUrlData } from '@wordpress/core-data';
11
+ import { store as editorStore } from '@wordpress/editor';
12
+ import { store as viewportStore } from '@wordpress/viewport';
11
13
  /**
12
14
  * Internal dependencies
13
15
  */
14
16
 
15
17
  import './plugins';
16
18
  import './hooks';
17
- import './store';
19
+ import { store as editSiteStore } from './store';
18
20
  import Editor from './components/editor';
21
+ import List from './components/list';
19
22
  /**
20
23
  * Reinitializes the editor after the user chooses to reboot the editor after
21
24
  * an unhandled error occurs, replacing previously mounted editor element using
@@ -40,7 +43,7 @@ export function reinitializeEditor(target, settings) {
40
43
  * @param {Object} settings Editor settings.
41
44
  */
42
45
 
43
- export function initialize(id, settings) {
46
+ export function initializeEditor(id, settings) {
44
47
  settings.__experimentalFetchLinkSuggestions = (search, searchOptions) => fetchLinkSuggestions(search, searchOptions, settings);
45
48
 
46
49
  settings.__experimentalFetchRichUrlData = fetchUrlData;
@@ -63,6 +66,28 @@ export function initialize(id, settings) {
63
66
  onError: reboot
64
67
  }), target);
65
68
  }
69
+ /**
70
+ * Initializes the site editor templates list screen.
71
+ *
72
+ * @param {string} id ID of the root element to render the screen in.
73
+ * @param {string} templateType The type of the list. "wp_template" or "wp_template_part".
74
+ * @param {Object} settings Editor settings.
75
+ */
76
+
77
+ export function initializeList(id, templateType, settings) {
78
+ const target = document.getElementById(id);
79
+ dispatch(editorStore).updateEditorSettings({
80
+ defaultTemplateTypes: settings.defaultTemplateTypes,
81
+ defaultTemplatePartAreas: settings.defaultTemplatePartAreas
82
+ }); // Default the navigation panel to be opened when we're in a bigger screen.
83
+ // We update the store synchronously before rendering so that we won't
84
+ // trigger an unnecessary re-render with useEffect.
85
+
86
+ dispatch(editSiteStore).setIsNavigationPanelOpened(select(viewportStore).isViewportMatch('medium'));
87
+ render(createElement(List, {
88
+ templateType: templateType
89
+ }), target);
90
+ }
66
91
  export { default as __experimentalMainDashboardButton } from './components/main-dashboard-button';
67
92
  export { default as __experimentalNavigationToggle } from './components/navigation-sidebar/navigation-toggle';
68
93
  export { default as PluginSidebar } from './components/sidebar/plugin-sidebar';
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/index.js"],"names":["store","blocksStore","registerCoreBlocks","__experimentalRegisterExperimentalCoreBlocks","dispatch","render","unmountComponentAtNode","__experimentalFetchLinkSuggestions","fetchLinkSuggestions","__experimentalFetchUrlData","fetchUrlData","Editor","reinitializeEditor","target","settings","reboot","bind","initialize","id","search","searchOptions","__experimentalFetchRichUrlData","__experimentalSpotlightEntityBlocks","document","getElementById","__experimentalReapplyBlockTypeFilters","process","env","GUTENBERG_PHASE","enableFSEBlocks","default","__experimentalMainDashboardButton","__experimentalNavigationToggle","PluginSidebar","PluginSidebarMoreMenuItem","PluginMoreMenuItem"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,WAAlB,QAAqC,mBAArC;AACA,SACCC,kBADD,EAECC,4CAFD,QAGO,0BAHP;AAIA,SAASC,QAAT,QAAyB,iBAAzB;AACA,SAASC,MAAT,EAAiBC,sBAAjB,QAA+C,oBAA/C;AACA,SACCC,kCAAkC,IAAIC,oBADvC,EAECC,0BAA0B,IAAIC,YAF/B,QAGO,sBAHP;AAKA;AACA;AACA;;AACA,OAAO,WAAP;AACA,OAAO,SAAP;AACA,OAAO,SAAP;AACA,OAAOC,MAAP,MAAmB,qBAAnB;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,kBAAT,CAA6BC,MAA7B,EAAqCC,QAArC,EAAgD;AACtDR,EAAAA,sBAAsB,CAAEO,MAAF,CAAtB;AACA,QAAME,MAAM,GAAGH,kBAAkB,CAACI,IAAnB,CAAyB,IAAzB,EAA+BH,MAA/B,EAAuCC,QAAvC,CAAf;AACAT,EAAAA,MAAM,CACL,cAAC,MAAD;AAAQ,IAAA,eAAe,EAAGS,QAA1B;AAAqC,IAAA,OAAO,EAAGC;AAA/C,IADK,EAELF,MAFK,CAAN;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASI,UAAT,CAAqBC,EAArB,EAAyBJ,QAAzB,EAAoC;AAC1CA,EAAAA,QAAQ,CAACP,kCAAT,GAA8C,CAAEY,MAAF,EAAUC,aAAV,KAC7CZ,oBAAoB,CAAEW,MAAF,EAAUC,aAAV,EAAyBN,QAAzB,CADrB;;AAEAA,EAAAA,QAAQ,CAACO,8BAAT,GAA0CX,YAA1C;AACAI,EAAAA,QAAQ,CAACQ,mCAAT,GAA+C,CAAE,oBAAF,CAA/C;AAEA,QAAMT,MAAM,GAAGU,QAAQ,CAACC,cAAT,CAAyBN,EAAzB,CAAf;AACA,QAAMH,MAAM,GAAGH,kBAAkB,CAACI,IAAnB,CAAyB,IAAzB,EAA+BH,MAA/B,EAAuCC,QAAvC,CAAf;;AAEAV,EAAAA,QAAQ,CAAEH,WAAF,CAAR,CAAwBwB,qCAAxB;;AACAvB,EAAAA,kBAAkB;;AAClB,MAAKwB,OAAO,CAACC,GAAR,CAAYC,eAAZ,KAAgC,CAArC,EAAyC;AACxCzB,IAAAA,4CAA4C,CAAE;AAC7C0B,MAAAA,eAAe,EAAE;AAD4B,KAAF,CAA5C;AAGA;;AAEDxB,EAAAA,MAAM,CACL,cAAC,MAAD;AAAQ,IAAA,eAAe,EAAGS,QAA1B;AAAqC,IAAA,OAAO,EAAGC;AAA/C,IADK,EAELF,MAFK,CAAN;AAIA;AAED,SAASiB,OAAO,IAAIC,iCAApB,QAA6D,oCAA7D;AACA,SAASD,OAAO,IAAIE,8BAApB,QAA0D,mDAA1D;AACA,SAASF,OAAO,IAAIG,aAApB,QAAyC,qCAAzC;AACA,SAASH,OAAO,IAAII,yBAApB,QAAqD,mDAArD;AACA,SAASJ,OAAO,IAAIK,kBAApB,QAA8C,2CAA9C","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as blocksStore } from '@wordpress/blocks';\nimport {\n\tregisterCoreBlocks,\n\t__experimentalRegisterExperimentalCoreBlocks,\n} from '@wordpress/block-library';\nimport { dispatch } from '@wordpress/data';\nimport { render, unmountComponentAtNode } from '@wordpress/element';\nimport {\n\t__experimentalFetchLinkSuggestions as fetchLinkSuggestions,\n\t__experimentalFetchUrlData as fetchUrlData,\n} from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport './plugins';\nimport './hooks';\nimport './store';\nimport Editor from './components/editor';\n\n/**\n * Reinitializes the editor after the user chooses to reboot the editor after\n * an unhandled error occurs, replacing previously mounted editor element using\n * an initial state from prior to the crash.\n *\n * @param {Element} target DOM node in which editor is rendered.\n * @param {?Object} settings Editor settings object.\n */\nexport function reinitializeEditor( target, settings ) {\n\tunmountComponentAtNode( target );\n\tconst reboot = reinitializeEditor.bind( null, target, settings );\n\trender(\n\t\t<Editor initialSettings={ settings } onError={ reboot } />,\n\t\ttarget\n\t);\n}\n\n/**\n * Initializes the site editor screen.\n *\n * @param {string} id ID of the root element to render the screen in.\n * @param {Object} settings Editor settings.\n */\nexport function initialize( id, settings ) {\n\tsettings.__experimentalFetchLinkSuggestions = ( search, searchOptions ) =>\n\t\tfetchLinkSuggestions( search, searchOptions, settings );\n\tsettings.__experimentalFetchRichUrlData = fetchUrlData;\n\tsettings.__experimentalSpotlightEntityBlocks = [ 'core/template-part' ];\n\n\tconst target = document.getElementById( id );\n\tconst reboot = reinitializeEditor.bind( null, target, settings );\n\n\tdispatch( blocksStore ).__experimentalReapplyBlockTypeFilters();\n\tregisterCoreBlocks();\n\tif ( process.env.GUTENBERG_PHASE === 2 ) {\n\t\t__experimentalRegisterExperimentalCoreBlocks( {\n\t\t\tenableFSEBlocks: true,\n\t\t} );\n\t}\n\n\trender(\n\t\t<Editor initialSettings={ settings } onError={ reboot } />,\n\t\ttarget\n\t);\n}\n\nexport { default as __experimentalMainDashboardButton } from './components/main-dashboard-button';\nexport { default as __experimentalNavigationToggle } from './components/navigation-sidebar/navigation-toggle';\nexport { default as PluginSidebar } from './components/sidebar/plugin-sidebar';\nexport { default as PluginSidebarMoreMenuItem } from './components/header/plugin-sidebar-more-menu-item';\nexport { default as PluginMoreMenuItem } from './components/header/plugin-more-menu-item';\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/index.js"],"names":["store","blocksStore","registerCoreBlocks","__experimentalRegisterExperimentalCoreBlocks","dispatch","select","render","unmountComponentAtNode","__experimentalFetchLinkSuggestions","fetchLinkSuggestions","__experimentalFetchUrlData","fetchUrlData","editorStore","viewportStore","editSiteStore","Editor","List","reinitializeEditor","target","settings","reboot","bind","initializeEditor","id","search","searchOptions","__experimentalFetchRichUrlData","__experimentalSpotlightEntityBlocks","document","getElementById","__experimentalReapplyBlockTypeFilters","process","env","GUTENBERG_PHASE","enableFSEBlocks","initializeList","templateType","updateEditorSettings","defaultTemplateTypes","defaultTemplatePartAreas","setIsNavigationPanelOpened","isViewportMatch","default","__experimentalMainDashboardButton","__experimentalNavigationToggle","PluginSidebar","PluginSidebarMoreMenuItem","PluginMoreMenuItem"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as blocksStore } from '@wordpress/blocks';\nimport {\n\tregisterCoreBlocks,\n\t__experimentalRegisterExperimentalCoreBlocks,\n} from '@wordpress/block-library';\nimport { dispatch, select } from '@wordpress/data';\nimport { render, unmountComponentAtNode } from '@wordpress/element';\nimport {\n\t__experimentalFetchLinkSuggestions as fetchLinkSuggestions,\n\t__experimentalFetchUrlData as fetchUrlData,\n} from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as viewportStore } from '@wordpress/viewport';\n\n/**\n * Internal dependencies\n */\nimport './plugins';\nimport './hooks';\nimport { store as editSiteStore } from './store';\nimport Editor from './components/editor';\nimport List from './components/list';\n\n/**\n * Reinitializes the editor after the user chooses to reboot the editor after\n * an unhandled error occurs, replacing previously mounted editor element using\n * an initial state from prior to the crash.\n *\n * @param {Element} target DOM node in which editor is rendered.\n * @param {?Object} settings Editor settings object.\n */\nexport function reinitializeEditor( target, settings ) {\n\tunmountComponentAtNode( target );\n\tconst reboot = reinitializeEditor.bind( null, target, settings );\n\trender(\n\t\t<Editor initialSettings={ settings } onError={ reboot } />,\n\t\ttarget\n\t);\n}\n\n/**\n * Initializes the site editor screen.\n *\n * @param {string} id ID of the root element to render the screen in.\n * @param {Object} settings Editor settings.\n */\nexport function initializeEditor( id, settings ) {\n\tsettings.__experimentalFetchLinkSuggestions = ( search, searchOptions ) =>\n\t\tfetchLinkSuggestions( search, searchOptions, settings );\n\tsettings.__experimentalFetchRichUrlData = fetchUrlData;\n\tsettings.__experimentalSpotlightEntityBlocks = [ 'core/template-part' ];\n\n\tconst target = document.getElementById( id );\n\tconst reboot = reinitializeEditor.bind( null, target, settings );\n\n\tdispatch( blocksStore ).__experimentalReapplyBlockTypeFilters();\n\tregisterCoreBlocks();\n\tif ( process.env.GUTENBERG_PHASE === 2 ) {\n\t\t__experimentalRegisterExperimentalCoreBlocks( {\n\t\t\tenableFSEBlocks: true,\n\t\t} );\n\t}\n\n\trender(\n\t\t<Editor initialSettings={ settings } onError={ reboot } />,\n\t\ttarget\n\t);\n}\n\n/**\n * Initializes the site editor templates list screen.\n *\n * @param {string} id ID of the root element to render the screen in.\n * @param {string} templateType The type of the list. \"wp_template\" or \"wp_template_part\".\n * @param {Object} settings Editor settings.\n */\nexport function initializeList( id, templateType, settings ) {\n\tconst target = document.getElementById( id );\n\n\tdispatch( editorStore ).updateEditorSettings( {\n\t\tdefaultTemplateTypes: settings.defaultTemplateTypes,\n\t\tdefaultTemplatePartAreas: settings.defaultTemplatePartAreas,\n\t} );\n\n\t// Default the navigation panel to be opened when we're in a bigger screen.\n\t// We update the store synchronously before rendering so that we won't\n\t// trigger an unnecessary re-render with useEffect.\n\tdispatch( editSiteStore ).setIsNavigationPanelOpened(\n\t\tselect( viewportStore ).isViewportMatch( 'medium' )\n\t);\n\n\trender( <List templateType={ templateType } />, target );\n}\n\nexport { default as __experimentalMainDashboardButton } from './components/main-dashboard-button';\nexport { default as __experimentalNavigationToggle } from './components/navigation-sidebar/navigation-toggle';\nexport { default as PluginSidebar } from './components/sidebar/plugin-sidebar';\nexport { default as PluginSidebarMoreMenuItem } from './components/header/plugin-sidebar-more-menu-item';\nexport { default as PluginMoreMenuItem } from './components/header/plugin-more-menu-item';\n"]}
@@ -18,17 +18,18 @@ import { download } from '@wordpress/icons';
18
18
  */
19
19
 
20
20
  import ToolsMoreMenuGroup from '../components/header/tools-more-menu-group';
21
+ import WelcomeGuideMenuItem from './welcome-guide-menu-item';
21
22
  registerPlugin('edit-site', {
22
23
  render() {
23
24
  return createElement(Fragment, null, createElement(ToolsMoreMenuGroup, null, createElement(MenuItem, {
24
25
  role: "menuitem",
25
26
  icon: download,
26
27
  onClick: () => apiFetch({
27
- path: '/__experimental/edit-site/v1/export',
28
+ path: '/wp-block-editor/v1/export',
28
29
  parse: false
29
30
  }).then(res => res.blob()).then(blob => downloadjs(blob, 'edit-site-export.zip', 'application/zip')),
30
31
  info: __('Download your templates and template parts.')
31
- }, __('Export'))));
32
+ }, __('Export')), createElement(WelcomeGuideMenuItem, null)));
32
33
  }
33
34
 
34
35
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/plugins/index.js"],"names":["downloadjs","MenuItem","__","registerPlugin","apiFetch","download","ToolsMoreMenuGroup","render","path","parse","then","res","blob"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,QAAT,QAAyB,uBAAzB;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,cAAT,QAA+B,oBAA/B;AACA,OAAOC,QAAP,MAAqB,sBAArB;AACA,SAASC,QAAT,QAAyB,kBAAzB;AAEA;AACA;AACA;;AACA,OAAOC,kBAAP,MAA+B,4CAA/B;AAEAH,cAAc,CAAE,WAAF,EAAe;AAC5BI,EAAAA,MAAM,GAAG;AACR,WACC,8BACC,cAAC,kBAAD,QACC,cAAC,QAAD;AACC,MAAA,IAAI,EAAC,UADN;AAEC,MAAA,IAAI,EAAGF,QAFR;AAGC,MAAA,OAAO,EAAG,MACTD,QAAQ,CAAE;AACTI,QAAAA,IAAI,EAAE,qCADG;AAETC,QAAAA,KAAK,EAAE;AAFE,OAAF,CAAR,CAIEC,IAJF,CAIUC,GAAF,IAAWA,GAAG,CAACC,IAAJ,EAJnB,EAKEF,IALF,CAKUE,IAAF,IACNZ,UAAU,CACTY,IADS,EAET,sBAFS,EAGT,iBAHS,CANZ,CAJF;AAiBC,MAAA,IAAI,EAAGV,EAAE,CACR,6CADQ;AAjBV,OAqBGA,EAAE,CAAE,QAAF,CArBL,CADD,CADD,CADD;AA6BA;;AA/B2B,CAAf,CAAd","sourcesContent":["/**\n * External dependencies\n */\nimport downloadjs from 'downloadjs';\n\n/**\n * WordPress dependencies\n */\nimport { MenuItem } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { registerPlugin } from '@wordpress/plugins';\nimport apiFetch from '@wordpress/api-fetch';\nimport { download } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport ToolsMoreMenuGroup from '../components/header/tools-more-menu-group';\n\nregisterPlugin( 'edit-site', {\n\trender() {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<ToolsMoreMenuGroup>\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\trole=\"menuitem\"\n\t\t\t\t\t\ticon={ download }\n\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\tapiFetch( {\n\t\t\t\t\t\t\t\tpath: '/__experimental/edit-site/v1/export',\n\t\t\t\t\t\t\t\tparse: false,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t.then( ( res ) => res.blob() )\n\t\t\t\t\t\t\t\t.then( ( blob ) =>\n\t\t\t\t\t\t\t\t\tdownloadjs(\n\t\t\t\t\t\t\t\t\t\tblob,\n\t\t\t\t\t\t\t\t\t\t'edit-site-export.zip',\n\t\t\t\t\t\t\t\t\t\t'application/zip'\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}\n\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t'Download your templates and template parts.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Export' ) }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t</ToolsMoreMenuGroup>\n\t\t\t</>\n\t\t);\n\t},\n} );\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/plugins/index.js"],"names":["downloadjs","MenuItem","__","registerPlugin","apiFetch","download","ToolsMoreMenuGroup","WelcomeGuideMenuItem","render","path","parse","then","res","blob"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,QAAT,QAAyB,uBAAzB;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,cAAT,QAA+B,oBAA/B;AACA,OAAOC,QAAP,MAAqB,sBAArB;AACA,SAASC,QAAT,QAAyB,kBAAzB;AAEA;AACA;AACA;;AACA,OAAOC,kBAAP,MAA+B,4CAA/B;AACA,OAAOC,oBAAP,MAAiC,2BAAjC;AAEAJ,cAAc,CAAE,WAAF,EAAe;AAC5BK,EAAAA,MAAM,GAAG;AACR,WACC,8BACC,cAAC,kBAAD,QACC,cAAC,QAAD;AACC,MAAA,IAAI,EAAC,UADN;AAEC,MAAA,IAAI,EAAGH,QAFR;AAGC,MAAA,OAAO,EAAG,MACTD,QAAQ,CAAE;AACTK,QAAAA,IAAI,EAAE,4BADG;AAETC,QAAAA,KAAK,EAAE;AAFE,OAAF,CAAR,CAIEC,IAJF,CAIUC,GAAF,IAAWA,GAAG,CAACC,IAAJ,EAJnB,EAKEF,IALF,CAKUE,IAAF,IACNb,UAAU,CACTa,IADS,EAET,sBAFS,EAGT,iBAHS,CANZ,CAJF;AAiBC,MAAA,IAAI,EAAGX,EAAE,CACR,6CADQ;AAjBV,OAqBGA,EAAE,CAAE,QAAF,CArBL,CADD,EAwBC,cAAC,oBAAD,OAxBD,CADD,CADD;AA8BA;;AAhC2B,CAAf,CAAd","sourcesContent":["/**\n * External dependencies\n */\nimport downloadjs from 'downloadjs';\n\n/**\n * WordPress dependencies\n */\nimport { MenuItem } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { registerPlugin } from '@wordpress/plugins';\nimport apiFetch from '@wordpress/api-fetch';\nimport { download } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport ToolsMoreMenuGroup from '../components/header/tools-more-menu-group';\nimport WelcomeGuideMenuItem from './welcome-guide-menu-item';\n\nregisterPlugin( 'edit-site', {\n\trender() {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<ToolsMoreMenuGroup>\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\trole=\"menuitem\"\n\t\t\t\t\t\ticon={ download }\n\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\tapiFetch( {\n\t\t\t\t\t\t\t\tpath: '/wp-block-editor/v1/export',\n\t\t\t\t\t\t\t\tparse: false,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t.then( ( res ) => res.blob() )\n\t\t\t\t\t\t\t\t.then( ( blob ) =>\n\t\t\t\t\t\t\t\t\tdownloadjs(\n\t\t\t\t\t\t\t\t\t\tblob,\n\t\t\t\t\t\t\t\t\t\t'edit-site-export.zip',\n\t\t\t\t\t\t\t\t\t\t'application/zip'\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}\n\t\t\t\t\t\tinfo={ __(\n\t\t\t\t\t\t\t'Download your templates and template parts.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Export' ) }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t\t<WelcomeGuideMenuItem />\n\t\t\t\t</ToolsMoreMenuGroup>\n\t\t\t</>\n\t\t);\n\t},\n} );\n"]}
@@ -0,0 +1,27 @@
1
+ import { createElement } from "@wordpress/element";
2
+
3
+ /**
4
+ * WordPress dependencies
5
+ */
6
+ import { __ } from '@wordpress/i18n';
7
+ import { useDispatch, useSelect } from '@wordpress/data';
8
+ import { MenuItem } from '@wordpress/components';
9
+ import { store as interfaceStore } from '@wordpress/interface';
10
+ /**
11
+ * Internal dependencies
12
+ */
13
+
14
+ import { store as editSiteStore } from '../store';
15
+ export default function WelcomeGuideMenuItem() {
16
+ const {
17
+ toggleFeature
18
+ } = useDispatch(editSiteStore);
19
+ const isStylesOpen = useSelect(select => {
20
+ const sidebar = select(interfaceStore).getActiveComplementaryArea(editSiteStore.name);
21
+ return sidebar === 'edit-site/global-styles';
22
+ }, []);
23
+ return createElement(MenuItem, {
24
+ onClick: () => toggleFeature(isStylesOpen ? 'welcomeGuideStyles' : 'welcomeGuide')
25
+ }, __('Welcome Guide'));
26
+ }
27
+ //# sourceMappingURL=welcome-guide-menu-item.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/plugins/welcome-guide-menu-item.js"],"names":["__","useDispatch","useSelect","MenuItem","store","interfaceStore","editSiteStore","WelcomeGuideMenuItem","toggleFeature","isStylesOpen","select","sidebar","getActiveComplementaryArea","name"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,WAAT,EAAsBC,SAAtB,QAAuC,iBAAvC;AACA,SAASC,QAAT,QAAyB,uBAAzB;AACA,SAASC,KAAK,IAAIC,cAAlB,QAAwC,sBAAxC;AAEA;AACA;AACA;;AACA,SAASD,KAAK,IAAIE,aAAlB,QAAuC,UAAvC;AAEA,eAAe,SAASC,oBAAT,GAAgC;AAC9C,QAAM;AAAEC,IAAAA;AAAF,MAAoBP,WAAW,CAAEK,aAAF,CAArC;AACA,QAAMG,YAAY,GAAGP,SAAS,CAAIQ,MAAF,IAAc;AAC7C,UAAMC,OAAO,GAAGD,MAAM,CAAEL,cAAF,CAAN,CAAyBO,0BAAzB,CACfN,aAAa,CAACO,IADC,CAAhB;AAIA,WAAOF,OAAO,KAAK,yBAAnB;AACA,GAN6B,EAM3B,EAN2B,CAA9B;AAQA,SACC,cAAC,QAAD;AACC,IAAA,OAAO,EAAG,MACTH,aAAa,CACZC,YAAY,GAAG,oBAAH,GAA0B,cAD1B;AAFf,KAOGT,EAAE,CAAE,eAAF,CAPL,CADD;AAWA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { MenuItem } from '@wordpress/components';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../store';\n\nexport default function WelcomeGuideMenuItem() {\n\tconst { toggleFeature } = useDispatch( editSiteStore );\n\tconst isStylesOpen = useSelect( ( select ) => {\n\t\tconst sidebar = select( interfaceStore ).getActiveComplementaryArea(\n\t\t\teditSiteStore.name\n\t\t);\n\n\t\treturn sidebar === 'edit-site/global-styles';\n\t}, [] );\n\n\treturn (\n\t\t<MenuItem\n\t\t\tonClick={ () =>\n\t\t\t\ttoggleFeature(\n\t\t\t\t\tisStylesOpen ? 'welcomeGuideStyles' : 'welcomeGuide'\n\t\t\t\t)\n\t\t\t}\n\t\t>\n\t\t\t{ __( 'Welcome Guide' ) }\n\t\t</MenuItem>\n\t);\n}\n"]}