@wordpress/edit-post 7.35.0 → 8.0.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 (202) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/build/commands/use-commands.js +56 -0
  3. package/build/commands/use-commands.js.map +1 -0
  4. package/build/components/{header/fullscreen-mode-close/index.js → back-button/fullscreen-mode-close.js} +16 -14
  5. package/build/components/back-button/fullscreen-mode-close.js.map +1 -0
  6. package/build/components/back-button/index.js +57 -0
  7. package/build/components/back-button/index.js.map +1 -0
  8. package/build/components/header/header-toolbar/index.native.js +63 -62
  9. package/build/components/header/header-toolbar/index.native.js.map +1 -1
  10. package/build/components/header/index.native.js +2 -2
  11. package/build/components/header/index.native.js.map +1 -1
  12. package/build/components/init-pattern-modal/index.js +50 -43
  13. package/build/components/init-pattern-modal/index.js.map +1 -1
  14. package/build/components/layout/index.js +92 -146
  15. package/build/components/layout/index.js.map +1 -1
  16. package/build/components/layout/index.native.js +28 -21
  17. package/build/components/layout/index.native.js.map +1 -1
  18. package/build/components/layout/use-padding-appender.js.map +1 -0
  19. package/build/components/layout/use-should-iframe.js +46 -0
  20. package/build/components/layout/use-should-iframe.js.map +1 -0
  21. package/build/components/meta-boxes/index.js +10 -9
  22. package/build/components/meta-boxes/index.js.map +1 -1
  23. package/build/components/meta-boxes/meta-boxes-area/index.js +11 -11
  24. package/build/components/meta-boxes/meta-boxes-area/index.js.map +1 -1
  25. package/build/components/more-menu/index.js +49 -0
  26. package/build/components/more-menu/index.js.map +1 -0
  27. package/build/components/{header/more-menu → more-menu}/manage-patterns-menu-item.js +5 -4
  28. package/build/components/more-menu/manage-patterns-menu-item.js.map +1 -0
  29. package/build/components/{header/more-menu → more-menu}/welcome-guide-menu-item.js +2 -2
  30. package/build/components/more-menu/welcome-guide-menu-item.js.map +1 -0
  31. package/build/components/preferences-modal/enable-custom-fields.js +23 -18
  32. package/build/components/preferences-modal/enable-custom-fields.js.map +1 -1
  33. package/build/components/preferences-modal/index.js +4 -4
  34. package/build/components/preferences-modal/index.js.map +1 -1
  35. package/build/components/preferences-modal/meta-boxes-section.js +13 -13
  36. package/build/components/preferences-modal/meta-boxes-section.js.map +1 -1
  37. package/build/components/visual-editor/header.native.js +11 -10
  38. package/build/components/visual-editor/header.native.js.map +1 -1
  39. package/build/components/visual-editor/index.native.js +3 -3
  40. package/build/components/visual-editor/index.native.js.map +1 -1
  41. package/build/components/welcome-guide/default.js +50 -33
  42. package/build/components/welcome-guide/default.js.map +1 -1
  43. package/build/components/welcome-guide/image.js +13 -12
  44. package/build/components/welcome-guide/image.js.map +1 -1
  45. package/build/components/welcome-guide/index.js +2 -2
  46. package/build/components/welcome-guide/index.js.map +1 -1
  47. package/build/components/welcome-guide/template.js +12 -8
  48. package/build/components/welcome-guide/template.js.map +1 -1
  49. package/build/deprecated.js +9 -9
  50. package/build/deprecated.js.map +1 -1
  51. package/build/editor.js +16 -11
  52. package/build/editor.js.map +1 -1
  53. package/build/editor.native.js +18 -12
  54. package/build/editor.native.js.map +1 -1
  55. package/build/index.js +12 -13
  56. package/build/index.js.map +1 -1
  57. package/build/index.native.js +2 -2
  58. package/build/index.native.js.map +1 -1
  59. package/build/store/selectors.js +1 -1
  60. package/build/store/selectors.js.map +1 -1
  61. package/build-module/commands/use-commands.js +49 -0
  62. package/build-module/commands/use-commands.js.map +1 -0
  63. package/build-module/components/{header/fullscreen-mode-close/index.js → back-button/fullscreen-mode-close.js} +16 -14
  64. package/build-module/components/back-button/fullscreen-mode-close.js.map +1 -0
  65. package/build-module/components/back-button/index.js +49 -0
  66. package/build-module/components/back-button/index.js.map +1 -0
  67. package/build-module/components/header/header-toolbar/index.native.js +64 -62
  68. package/build-module/components/header/header-toolbar/index.native.js.map +1 -1
  69. package/build-module/components/header/index.native.js +2 -2
  70. package/build-module/components/header/index.native.js.map +1 -1
  71. package/build-module/components/init-pattern-modal/index.js +52 -43
  72. package/build-module/components/init-pattern-modal/index.js.map +1 -1
  73. package/build-module/components/layout/index.js +97 -149
  74. package/build-module/components/layout/index.js.map +1 -1
  75. package/build-module/components/layout/index.native.js +30 -21
  76. package/build-module/components/layout/index.native.js.map +1 -1
  77. package/build-module/components/layout/use-padding-appender.js.map +1 -0
  78. package/build-module/components/layout/use-should-iframe.js +39 -0
  79. package/build-module/components/layout/use-should-iframe.js.map +1 -0
  80. package/build-module/components/meta-boxes/index.js +12 -9
  81. package/build-module/components/meta-boxes/index.js.map +1 -1
  82. package/build-module/components/meta-boxes/meta-boxes-area/index.js +11 -9
  83. package/build-module/components/meta-boxes/meta-boxes-area/index.js.map +1 -1
  84. package/build-module/components/more-menu/index.js +43 -0
  85. package/build-module/components/more-menu/index.js.map +1 -0
  86. package/build-module/components/{header/more-menu → more-menu}/manage-patterns-menu-item.js +5 -4
  87. package/build-module/components/more-menu/manage-patterns-menu-item.js.map +1 -0
  88. package/build-module/components/{header/more-menu → more-menu}/welcome-guide-menu-item.js +2 -2
  89. package/build-module/components/more-menu/welcome-guide-menu-item.js.map +1 -0
  90. package/build-module/components/preferences-modal/enable-custom-fields.js +25 -18
  91. package/build-module/components/preferences-modal/enable-custom-fields.js.map +1 -1
  92. package/build-module/components/preferences-modal/index.js +4 -4
  93. package/build-module/components/preferences-modal/index.js.map +1 -1
  94. package/build-module/components/preferences-modal/meta-boxes-section.js +14 -13
  95. package/build-module/components/preferences-modal/meta-boxes-section.js.map +1 -1
  96. package/build-module/components/visual-editor/header.native.js +11 -10
  97. package/build-module/components/visual-editor/header.native.js.map +1 -1
  98. package/build-module/components/visual-editor/index.native.js +3 -3
  99. package/build-module/components/visual-editor/index.native.js.map +1 -1
  100. package/build-module/components/welcome-guide/default.js +52 -33
  101. package/build-module/components/welcome-guide/default.js.map +1 -1
  102. package/build-module/components/welcome-guide/image.js +14 -12
  103. package/build-module/components/welcome-guide/image.js.map +1 -1
  104. package/build-module/components/welcome-guide/index.js +2 -2
  105. package/build-module/components/welcome-guide/index.js.map +1 -1
  106. package/build-module/components/welcome-guide/template.js +14 -8
  107. package/build-module/components/welcome-guide/template.js.map +1 -1
  108. package/build-module/deprecated.js +9 -9
  109. package/build-module/deprecated.js.map +1 -1
  110. package/build-module/editor.js +17 -11
  111. package/build-module/editor.js.map +1 -1
  112. package/build-module/editor.native.js +18 -12
  113. package/build-module/editor.native.js.map +1 -1
  114. package/build-module/index.js +10 -7
  115. package/build-module/index.js.map +1 -1
  116. package/build-module/index.native.js +2 -2
  117. package/build-module/index.native.js.map +1 -1
  118. package/build-module/store/selectors.js +1 -1
  119. package/build-module/store/selectors.js.map +1 -1
  120. package/build-style/style-rtl.css +27 -128
  121. package/build-style/style.css +27 -128
  122. package/package.json +32 -32
  123. package/src/commands/use-commands.js +48 -0
  124. package/src/components/{header/fullscreen-mode-close/index.js → back-button/fullscreen-mode-close.js} +1 -1
  125. package/src/components/back-button/index.js +34 -0
  126. package/src/components/{header/fullscreen-mode-close → back-button}/style.scss +16 -2
  127. package/src/components/{header/fullscreen-mode-close/test/index.js → back-button/test/fullscreen-mode-close.js} +1 -1
  128. package/src/components/layout/index.js +85 -194
  129. package/src/components/layout/style.scss +9 -17
  130. package/src/components/layout/use-should-iframe.js +40 -0
  131. package/src/components/{header/more-menu → more-menu}/index.js +2 -2
  132. package/src/index.js +11 -6
  133. package/src/store/selectors.js +8 -5
  134. package/src/style.scss +2 -5
  135. package/src/test/__snapshots__/editor.native.js.snap +72 -0
  136. package/src/test/editor.native.js +77 -0
  137. package/build/components/header/fullscreen-mode-close/index.js.map +0 -1
  138. package/build/components/header/index.js +0 -69
  139. package/build/components/header/index.js.map +0 -1
  140. package/build/components/header/main-dashboard-button/index.js +0 -33
  141. package/build/components/header/main-dashboard-button/index.js.map +0 -1
  142. package/build/components/header/more-menu/index.js +0 -43
  143. package/build/components/header/more-menu/index.js.map +0 -1
  144. package/build/components/header/more-menu/manage-patterns-menu-item.js.map +0 -1
  145. package/build/components/header/more-menu/welcome-guide-menu-item.js.map +0 -1
  146. package/build/components/text-editor/index.js +0 -61
  147. package/build/components/text-editor/index.js.map +0 -1
  148. package/build/components/visual-editor/block-inspector-button.js +0 -55
  149. package/build/components/visual-editor/block-inspector-button.js.map +0 -1
  150. package/build/components/visual-editor/index.js +0 -98
  151. package/build/components/visual-editor/index.js.map +0 -1
  152. package/build/components/visual-editor/use-padding-appender.js.map +0 -1
  153. package/build/hooks/commands/use-common-commands.js +0 -119
  154. package/build/hooks/commands/use-common-commands.js.map +0 -1
  155. package/build/hooks/components/index.js +0 -11
  156. package/build/hooks/components/index.js.map +0 -1
  157. package/build/hooks/index.js +0 -5
  158. package/build/hooks/index.js.map +0 -1
  159. package/build/hooks/validate-multiple-use/index.js +0 -134
  160. package/build/hooks/validate-multiple-use/index.js.map +0 -1
  161. package/build-module/components/header/fullscreen-mode-close/index.js.map +0 -1
  162. package/build-module/components/header/index.js +0 -61
  163. package/build-module/components/header/index.js.map +0 -1
  164. package/build-module/components/header/main-dashboard-button/index.js +0 -26
  165. package/build-module/components/header/main-dashboard-button/index.js.map +0 -1
  166. package/build-module/components/header/more-menu/index.js +0 -35
  167. package/build-module/components/header/more-menu/index.js.map +0 -1
  168. package/build-module/components/header/more-menu/manage-patterns-menu-item.js.map +0 -1
  169. package/build-module/components/header/more-menu/welcome-guide-menu-item.js.map +0 -1
  170. package/build-module/components/text-editor/index.js +0 -54
  171. package/build-module/components/text-editor/index.js.map +0 -1
  172. package/build-module/components/visual-editor/block-inspector-button.js +0 -47
  173. package/build-module/components/visual-editor/block-inspector-button.js.map +0 -1
  174. package/build-module/components/visual-editor/index.js +0 -90
  175. package/build-module/components/visual-editor/index.js.map +0 -1
  176. package/build-module/components/visual-editor/use-padding-appender.js.map +0 -1
  177. package/build-module/hooks/commands/use-common-commands.js +0 -112
  178. package/build-module/hooks/commands/use-common-commands.js.map +0 -1
  179. package/build-module/hooks/components/index.js +0 -8
  180. package/build-module/hooks/components/index.js.map +0 -1
  181. package/build-module/hooks/index.js +0 -6
  182. package/build-module/hooks/index.js.map +0 -1
  183. package/build-module/hooks/validate-multiple-use/index.js +0 -132
  184. package/build-module/hooks/validate-multiple-use/index.js.map +0 -1
  185. package/src/components/header/index.js +0 -53
  186. package/src/components/header/main-dashboard-button/index.js +0 -28
  187. package/src/components/header/style.scss +0 -14
  188. package/src/components/text-editor/index.js +0 -63
  189. package/src/components/text-editor/style.scss +0 -71
  190. package/src/components/visual-editor/block-inspector-button.js +0 -59
  191. package/src/components/visual-editor/index.js +0 -108
  192. package/src/components/visual-editor/style.scss +0 -53
  193. package/src/hooks/commands/use-common-commands.js +0 -126
  194. package/src/hooks/components/index.js +0 -13
  195. package/src/hooks/index.js +0 -5
  196. package/src/hooks/validate-multiple-use/index.js +0 -163
  197. /package/build/components/{visual-editor → layout}/use-padding-appender.js +0 -0
  198. /package/build-module/components/{visual-editor → layout}/use-padding-appender.js +0 -0
  199. /package/src/components/{header/fullscreen-mode-close/test/__snapshots__/index.js.snap → back-button/test/__snapshots__/fullscreen-mode-close.js.snap} +0 -0
  200. /package/src/components/{visual-editor → layout}/use-padding-appender.js +0 -0
  201. /package/src/components/{header/more-menu → more-menu}/manage-patterns-menu-item.js +0 -0
  202. /package/src/components/{header/more-menu → more-menu}/welcome-guide-menu-item.js +0 -0
@@ -104,19 +104,6 @@
104
104
  }
105
105
  }
106
106
 
107
- /**
108
- * Show icon label overrides.
109
- */
110
- .show-icon-labels .editor-header .edit-post-fullscreen-mode-close.has-icon {
111
- width: 60px;
112
- }
113
- .show-icon-labels .editor-header .edit-post-fullscreen-mode-close.has-icon svg {
114
- display: block;
115
- }
116
- .show-icon-labels .editor-header .edit-post-fullscreen-mode-close.has-icon::after {
117
- content: none;
118
- }
119
-
120
107
  .edit-post-fullscreen-mode-close.components-button {
121
108
  display: none;
122
109
  }
@@ -129,10 +116,9 @@
129
116
  background: #1e1e1e;
130
117
  color: #fff;
131
118
  border-radius: 0;
132
- height: 61px;
119
+ height: 60px;
133
120
  width: 60px;
134
121
  position: relative;
135
- margin-bottom: -1px;
136
122
  }
137
123
  .edit-post-fullscreen-mode-close.components-button:active {
138
124
  color: #fff;
@@ -182,25 +168,35 @@
182
168
  margin-top: -1px;
183
169
  }
184
170
 
171
+ /**
172
+ * Show icon label overrides.
173
+ */
174
+ .show-icon-labels .editor-header .edit-post-fullscreen-mode-close.has-icon {
175
+ width: 60px;
176
+ }
177
+ .show-icon-labels .editor-header .edit-post-fullscreen-mode-close.has-icon svg {
178
+ display: block;
179
+ }
180
+ .show-icon-labels .editor-header .edit-post-fullscreen-mode-close.has-icon::after {
181
+ content: none;
182
+ }
183
+
184
+ .editor-visual-editor {
185
+ flex: 1 0 auto;
186
+ height: auto;
187
+ }
188
+
185
189
  .edit-post-layout__metaboxes {
186
190
  flex-shrink: 0;
187
191
  clear: both;
188
192
  }
189
193
 
190
- .edit-post-layout .components-editor-notices__snackbar {
194
+ .components-editor-notices__snackbar {
191
195
  position: fixed;
192
196
  right: 0;
193
- bottom: 16px;
194
- padding-left: 16px;
195
- padding-right: 16px;
196
- }
197
-
198
- .is-distraction-free .components-editor-notices__snackbar {
199
- bottom: 16px;
200
- }
201
-
202
- .has-block-breadcrumbs .components-editor-notices__snackbar {
203
- bottom: 40px;
197
+ bottom: 24px;
198
+ padding-left: 24px;
199
+ padding-right: 24px;
204
200
  }
205
201
 
206
202
  .edit-post-layout .components-editor-notices__snackbar {
@@ -330,103 +326,6 @@ body.is-fullscreen-mode .edit-post-layout .components-editor-notices__snackbar {
330
326
  clear: both;
331
327
  }
332
328
 
333
- .edit-post-text-editor {
334
- position: relative;
335
- width: 100%;
336
- background-color: #fff;
337
- flex-grow: 1;
338
- }
339
- .edit-post-text-editor .editor-post-title:not(.is-raw-text),
340
- .edit-post-text-editor .editor-post-title.is-raw-text textarea {
341
- max-width: none;
342
- line-height: 1.4;
343
- font-family: Menlo, Consolas, monaco, monospace;
344
- font-size: 2.5em;
345
- font-weight: normal;
346
- border: 1px solid #949494;
347
- border-radius: 0;
348
- padding: 16px;
349
- }
350
- @media (min-width: 600px) {
351
- .edit-post-text-editor .editor-post-title:not(.is-raw-text),
352
- .edit-post-text-editor .editor-post-title.is-raw-text textarea {
353
- padding: 24px;
354
- }
355
- }
356
- .edit-post-text-editor .editor-post-title:not(.is-raw-text):focus,
357
- .edit-post-text-editor .editor-post-title.is-raw-text textarea:focus {
358
- border-color: var(--wp-admin-theme-color);
359
- box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);
360
- }
361
-
362
- .edit-post-text-editor__body {
363
- width: 100%;
364
- padding: 0 12px 12px 12px;
365
- max-width: 1080px;
366
- margin-left: auto;
367
- margin-right: auto;
368
- }
369
- @media (min-width: 960px) {
370
- .edit-post-text-editor__body {
371
- padding: 0 24px 24px 24px;
372
- }
373
- }
374
-
375
- .edit-post-text-editor__toolbar {
376
- position: sticky;
377
- z-index: 1;
378
- top: 0;
379
- left: 0;
380
- right: 0;
381
- display: flex;
382
- background: rgba(255, 255, 255, 0.8);
383
- padding: 4px 12px;
384
- }
385
- @media (min-width: 600px) {
386
- .edit-post-text-editor__toolbar {
387
- padding: 12px;
388
- }
389
- }
390
- @media (min-width: 960px) {
391
- .edit-post-text-editor__toolbar {
392
- padding: 12px 24px;
393
- }
394
- }
395
- .edit-post-text-editor__toolbar h2 {
396
- line-height: 36px;
397
- margin: 0 auto 0 0;
398
- font-size: 13px;
399
- color: #1e1e1e;
400
- }
401
-
402
- .edit-post-visual-editor {
403
- position: relative;
404
- display: flex;
405
- flex-flow: column;
406
- background-color: #ddd;
407
- flex: 1 0 auto;
408
- }
409
- .edit-post-visual-editor:not(.has-inline-canvas) {
410
- overflow: hidden;
411
- }
412
- .edit-post-visual-editor .components-button {
413
- font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
414
- font-size: 13px;
415
- padding: 6px 12px;
416
- }
417
- .edit-post-visual-editor .components-button.has-icon {
418
- padding: 6px;
419
- }
420
-
421
- .edit-post-visual-editor__content-area {
422
- width: 100%;
423
- height: 100%;
424
- position: relative;
425
- box-sizing: border-box;
426
- display: flex;
427
- flex-grow: 1;
428
- }
429
-
430
329
  .edit-post-welcome-guide,
431
330
  .edit-template-welcome-guide {
432
331
  width: 312px;
@@ -518,7 +417,7 @@ body.js.block-editor-page .media-frame select.attachment-filters:last-of-type {
518
417
  }
519
418
 
520
419
  .editor-header,
521
- .edit-post-text-editor,
420
+ .editor-text-editor,
522
421
  .editor-sidebar,
523
422
  .editor-post-publish-panel {
524
423
  box-sizing: border-box;
@@ -526,9 +425,9 @@ body.js.block-editor-page .media-frame select.attachment-filters:last-of-type {
526
425
  .editor-header *,
527
426
  .editor-header *::before,
528
427
  .editor-header *::after,
529
- .edit-post-text-editor *,
530
- .edit-post-text-editor *::before,
531
- .edit-post-text-editor *::after,
428
+ .editor-text-editor *,
429
+ .editor-text-editor *::before,
430
+ .editor-text-editor *::after,
532
431
  .editor-sidebar *,
533
432
  .editor-sidebar *::before,
534
433
  .editor-sidebar *::after,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/edit-post",
3
- "version": "7.35.0",
3
+ "version": "8.0.0",
4
4
  "description": "Edit Post module for WordPress.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -20,42 +20,42 @@
20
20
  "url": "https://github.com/WordPress/gutenberg/issues"
21
21
  },
22
22
  "engines": {
23
- "node": ">=12"
23
+ "node": ">=18.12.0",
24
+ "npm": ">=8.19.2"
24
25
  },
25
26
  "main": "build/index.js",
26
27
  "module": "build-module/index.js",
27
28
  "react-native": "src/index",
28
29
  "dependencies": {
29
30
  "@babel/runtime": "^7.16.0",
30
- "@wordpress/a11y": "^3.58.0",
31
- "@wordpress/api-fetch": "^6.55.0",
32
- "@wordpress/block-editor": "^12.26.0",
33
- "@wordpress/block-library": "^8.35.0",
34
- "@wordpress/blocks": "^12.35.0",
35
- "@wordpress/commands": "^0.29.0",
36
- "@wordpress/components": "^27.6.0",
37
- "@wordpress/compose": "^6.35.0",
38
- "@wordpress/core-commands": "^0.27.0",
39
- "@wordpress/core-data": "^6.35.0",
40
- "@wordpress/data": "^9.28.0",
41
- "@wordpress/deprecated": "^3.58.0",
42
- "@wordpress/dom": "^3.58.0",
43
- "@wordpress/editor": "^13.35.0",
44
- "@wordpress/element": "^5.35.0",
45
- "@wordpress/hooks": "^3.58.0",
46
- "@wordpress/i18n": "^4.58.0",
47
- "@wordpress/icons": "^9.49.0",
48
- "@wordpress/keyboard-shortcuts": "^4.35.0",
49
- "@wordpress/keycodes": "^3.58.0",
50
- "@wordpress/media-utils": "^4.49.0",
51
- "@wordpress/notices": "^4.26.0",
52
- "@wordpress/plugins": "^6.26.0",
53
- "@wordpress/preferences": "^3.35.0",
54
- "@wordpress/private-apis": "^0.40.0",
55
- "@wordpress/url": "^3.59.0",
56
- "@wordpress/viewport": "^5.35.0",
57
- "@wordpress/warning": "^2.58.0",
58
- "@wordpress/widgets": "^3.35.0",
31
+ "@wordpress/a11y": "^4.0.0",
32
+ "@wordpress/api-fetch": "^7.0.0",
33
+ "@wordpress/block-editor": "^13.0.0",
34
+ "@wordpress/block-library": "^9.0.0",
35
+ "@wordpress/blocks": "^13.0.0",
36
+ "@wordpress/commands": "^1.0.0",
37
+ "@wordpress/components": "^28.0.0",
38
+ "@wordpress/compose": "^7.0.0",
39
+ "@wordpress/core-commands": "^1.0.0",
40
+ "@wordpress/core-data": "^7.0.0",
41
+ "@wordpress/data": "^10.0.0",
42
+ "@wordpress/deprecated": "^4.0.0",
43
+ "@wordpress/dom": "^4.0.0",
44
+ "@wordpress/editor": "^14.0.0",
45
+ "@wordpress/element": "^6.0.0",
46
+ "@wordpress/hooks": "^4.0.0",
47
+ "@wordpress/i18n": "^5.0.0",
48
+ "@wordpress/icons": "^10.0.0",
49
+ "@wordpress/keyboard-shortcuts": "^5.0.0",
50
+ "@wordpress/keycodes": "^4.0.0",
51
+ "@wordpress/notices": "^5.0.0",
52
+ "@wordpress/plugins": "^7.0.0",
53
+ "@wordpress/preferences": "^4.0.0",
54
+ "@wordpress/private-apis": "^1.0.0",
55
+ "@wordpress/url": "^4.0.0",
56
+ "@wordpress/viewport": "^6.0.0",
57
+ "@wordpress/warning": "^3.0.0",
58
+ "@wordpress/widgets": "^4.0.0",
59
59
  "clsx": "^2.1.1",
60
60
  "memize": "^2.1.0"
61
61
  },
@@ -66,5 +66,5 @@
66
66
  "publishConfig": {
67
67
  "access": "public"
68
68
  },
69
- "gitHead": "42f38f287506a6b3ed8ccba839b18ad066821044"
69
+ "gitHead": "2f30cddff15723ac7017fd009fc5913b7b419400"
70
70
  }
@@ -0,0 +1,48 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { useSelect, useDispatch } from '@wordpress/data';
5
+ import { __ } from '@wordpress/i18n';
6
+ import { fullscreen } from '@wordpress/icons';
7
+ import { useCommand } from '@wordpress/commands';
8
+ import { store as preferencesStore } from '@wordpress/preferences';
9
+ import { store as noticesStore } from '@wordpress/notices';
10
+
11
+ export default function useCommands() {
12
+ const { isFullscreen } = useSelect( ( select ) => {
13
+ const { get } = select( preferencesStore );
14
+
15
+ return {
16
+ isFullscreen: get( 'core/edit-post', 'fullscreenMode' ),
17
+ };
18
+ }, [] );
19
+ const { toggle } = useDispatch( preferencesStore );
20
+ const { createInfoNotice } = useDispatch( noticesStore );
21
+
22
+ useCommand( {
23
+ name: 'core/toggle-fullscreen-mode',
24
+ label: isFullscreen
25
+ ? __( 'Exit fullscreen' )
26
+ : __( 'Enter fullscreen' ),
27
+ icon: fullscreen,
28
+ callback: ( { close } ) => {
29
+ toggle( 'core/edit-post', 'fullscreenMode' );
30
+ close();
31
+ createInfoNotice(
32
+ isFullscreen ? __( 'Fullscreen off.' ) : __( 'Fullscreen on.' ),
33
+ {
34
+ id: 'core/edit-post/toggle-fullscreen-mode/notice',
35
+ type: 'snackbar',
36
+ actions: [
37
+ {
38
+ label: __( 'Undo' ),
39
+ onClick: () => {
40
+ toggle( 'core/edit-post', 'fullscreenMode' );
41
+ },
42
+ },
43
+ ],
44
+ }
45
+ );
46
+ },
47
+ } );
48
+ }
@@ -22,7 +22,7 @@ import { useReducedMotion } from '@wordpress/compose';
22
22
  /**
23
23
  * Internal dependencies
24
24
  */
25
- import { store as editPostStore } from '../../../store';
25
+ import { store as editPostStore } from '../../store';
26
26
 
27
27
  function FullscreenModeClose( { showTooltip, icon, href, initialPost } ) {
28
28
  const { isActive, isRequestingSiteIcon, postType, siteIconUrl } = useSelect(
@@ -0,0 +1,34 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { privateApis as editorPrivateApis } from '@wordpress/editor';
5
+ import { __unstableMotion as motion } from '@wordpress/components';
6
+
7
+ /**
8
+ * Internal dependencies
9
+ */
10
+ import FullscreenModeClose from './fullscreen-mode-close';
11
+ import { unlock } from '../../lock-unlock';
12
+
13
+ const { BackButton: BackButtonFill } = unlock( editorPrivateApis );
14
+
15
+ const slideX = {
16
+ hidden: { x: '-100%' },
17
+ distractionFreeInactive: { x: 0 },
18
+ hover: { x: 0, transition: { type: 'tween', delay: 0.2 } },
19
+ };
20
+
21
+ function BackButton( { initialPost } ) {
22
+ return (
23
+ <BackButtonFill>
24
+ <motion.div
25
+ variants={ slideX }
26
+ transition={ { type: 'tween', delay: 0.8 } }
27
+ >
28
+ <FullscreenModeClose showTooltip initialPost={ initialPost } />
29
+ </motion.div>
30
+ </BackButtonFill>
31
+ );
32
+ }
33
+
34
+ export default BackButton;
@@ -14,10 +14,9 @@
14
14
  background: $gray-900;
15
15
  color: $white;
16
16
  border-radius: 0;
17
- height: $header-height + $border-width;
17
+ height: $header-height;
18
18
  width: $header-height;
19
19
  position: relative;
20
- margin-bottom: - $border-width;
21
20
 
22
21
  &:active {
23
22
  color: $white;
@@ -65,3 +64,18 @@
65
64
  margin-top: -($border-width);
66
65
  }
67
66
  }
67
+
68
+ /**
69
+ * Show icon label overrides.
70
+ */
71
+ .show-icon-labels .editor-header {
72
+ .edit-post-fullscreen-mode-close.has-icon {
73
+ width: $header-height;
74
+ svg {
75
+ display: block;
76
+ }
77
+ &::after {
78
+ content: none;
79
+ }
80
+ }
81
+ }
@@ -11,7 +11,7 @@ import { useSelect } from '@wordpress/data';
11
11
  /**
12
12
  * Internal dependencies
13
13
  */
14
- import FullscreenModeClose from '../';
14
+ import FullscreenModeClose from '../fullscreen-mode-close';
15
15
 
16
16
  jest.mock( '@wordpress/data/src/components/use-select', () => {
17
17
  // This allows us to tweak the returned value on each test.