@wordpress/editor 13.27.1 → 13.28.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 (360) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/bindings/post-meta.js +3 -4
  3. package/build/bindings/post-meta.js.map +1 -1
  4. package/build/components/autocompleters/user.js +1 -2
  5. package/build/components/autocompleters/user.js.map +1 -1
  6. package/build/components/autosave-monitor/index.js +1 -2
  7. package/build/components/autosave-monitor/index.js.map +1 -1
  8. package/build/components/block-manager/category.js +1 -2
  9. package/build/components/block-manager/category.js.map +1 -1
  10. package/build/components/block-manager/checklist.js +1 -2
  11. package/build/components/block-manager/checklist.js.map +1 -1
  12. package/build/components/block-manager/index.js +1 -2
  13. package/build/components/block-manager/index.js.map +1 -1
  14. package/build/components/deprecated.js +52 -104
  15. package/build/components/deprecated.js.map +1 -1
  16. package/build/components/document-bar/index.js +7 -23
  17. package/build/components/document-bar/index.js.map +1 -1
  18. package/build/components/document-outline/check.js +1 -2
  19. package/build/components/document-outline/check.js.map +1 -1
  20. package/build/components/document-outline/index.js +1 -2
  21. package/build/components/document-outline/index.js.map +1 -1
  22. package/build/components/document-outline/item.js +1 -2
  23. package/build/components/document-outline/item.js.map +1 -1
  24. package/build/components/document-tools/index.js +1 -2
  25. package/build/components/document-tools/index.js.map +1 -1
  26. package/build/components/editor-canvas/edit-template-blocks-notification.js +22 -13
  27. package/build/components/editor-canvas/edit-template-blocks-notification.js.map +1 -1
  28. package/build/components/editor-canvas/index.js +16 -12
  29. package/build/components/editor-canvas/index.js.map +1 -1
  30. package/build/components/editor-help/add-blocks.native.js +1 -2
  31. package/build/components/editor-help/add-blocks.native.js.map +1 -1
  32. package/build/components/editor-help/customize-blocks.native.js +1 -2
  33. package/build/components/editor-help/customize-blocks.native.js.map +1 -1
  34. package/build/components/editor-help/help-detail-navigation-screen.native.js +1 -2
  35. package/build/components/editor-help/help-detail-navigation-screen.native.js.map +1 -1
  36. package/build/components/editor-help/help-get-support-button.native.js +1 -2
  37. package/build/components/editor-help/help-get-support-button.native.js.map +1 -1
  38. package/build/components/editor-help/help-section-title.native.js +1 -2
  39. package/build/components/editor-help/help-section-title.native.js.map +1 -1
  40. package/build/components/editor-help/help-topic-row.native.js +1 -2
  41. package/build/components/editor-help/help-topic-row.native.js.map +1 -1
  42. package/build/components/editor-help/icon-move-blocks.native.js +1 -2
  43. package/build/components/editor-help/icon-move-blocks.native.js.map +1 -1
  44. package/build/components/editor-help/index.native.js +1 -2
  45. package/build/components/editor-help/index.native.js.map +1 -1
  46. package/build/components/editor-help/intro-to-blocks.native.js +1 -2
  47. package/build/components/editor-help/intro-to-blocks.native.js.map +1 -1
  48. package/build/components/editor-help/move-blocks.native.js +1 -2
  49. package/build/components/editor-help/move-blocks.native.js.map +1 -1
  50. package/build/components/editor-help/remove-blocks.native.js +1 -2
  51. package/build/components/editor-help/remove-blocks.native.js.map +1 -1
  52. package/build/components/editor-history/redo.js +1 -2
  53. package/build/components/editor-history/redo.js.map +1 -1
  54. package/build/components/editor-history/undo.js +1 -2
  55. package/build/components/editor-history/undo.js.map +1 -1
  56. package/build/components/editor-notices/index.js +1 -2
  57. package/build/components/editor-notices/index.js.map +1 -1
  58. package/build/components/editor-snackbars/index.js +3 -1
  59. package/build/components/editor-snackbars/index.js.map +1 -1
  60. package/build/components/entities-saved-states/entity-record-item.js +1 -1
  61. package/build/components/entities-saved-states/entity-record-item.js.map +1 -1
  62. package/build/components/entities-saved-states/entity-type-list.js +7 -7
  63. package/build/components/entities-saved-states/entity-type-list.js.map +1 -1
  64. package/build/components/entities-saved-states/index.js +4 -1
  65. package/build/components/entities-saved-states/index.js.map +1 -1
  66. package/build/components/error-boundary/index.js +1 -2
  67. package/build/components/error-boundary/index.js.map +1 -1
  68. package/build/components/global-keyboard-shortcuts/register-shortcuts.js +1 -2
  69. package/build/components/global-keyboard-shortcuts/register-shortcuts.js.map +1 -1
  70. package/build/components/index.js +4 -6
  71. package/build/components/index.js.map +1 -1
  72. package/build/components/list-view-sidebar/index.js +43 -36
  73. package/build/components/list-view-sidebar/index.js.map +1 -1
  74. package/build/components/local-autosave-monitor/index.js +1 -2
  75. package/build/components/local-autosave-monitor/index.js.map +1 -1
  76. package/build/components/media-categories/index.js +1 -2
  77. package/build/components/media-categories/index.js.map +1 -1
  78. package/build/components/offline-status/index.native.js +1 -2
  79. package/build/components/offline-status/index.native.js.map +1 -1
  80. package/build/components/page-attributes/check.js +1 -2
  81. package/build/components/page-attributes/check.js.map +1 -1
  82. package/build/components/page-attributes/panel.js +1 -2
  83. package/build/components/page-attributes/panel.js.map +1 -1
  84. package/build/components/page-attributes/parent.js +1 -2
  85. package/build/components/page-attributes/parent.js.map +1 -1
  86. package/build/components/post-author/combobox.js +6 -60
  87. package/build/components/post-author/combobox.js.map +1 -1
  88. package/build/components/post-author/constants.js +7 -5
  89. package/build/components/post-author/constants.js.map +1 -1
  90. package/build/components/post-author/hook.js +72 -0
  91. package/build/components/post-author/hook.js.map +1 -0
  92. package/build/components/post-author/index.js +1 -2
  93. package/build/components/post-author/index.js.map +1 -1
  94. package/build/components/post-author/panel.js +1 -2
  95. package/build/components/post-author/panel.js.map +1 -1
  96. package/build/components/post-author/select.js +6 -24
  97. package/build/components/post-author/select.js.map +1 -1
  98. package/build/components/post-comments/index.js +1 -2
  99. package/build/components/post-comments/index.js.map +1 -1
  100. package/build/components/post-discussion/panel.js +1 -2
  101. package/build/components/post-discussion/panel.js.map +1 -1
  102. package/build/components/post-excerpt/check.js +1 -2
  103. package/build/components/post-excerpt/check.js.map +1 -1
  104. package/build/components/post-excerpt/index.js +1 -2
  105. package/build/components/post-excerpt/index.js.map +1 -1
  106. package/build/components/post-excerpt/plugin.js +1 -2
  107. package/build/components/post-excerpt/plugin.js.map +1 -1
  108. package/build/components/post-featured-image/check.js +1 -2
  109. package/build/components/post-featured-image/check.js.map +1 -1
  110. package/build/components/post-featured-image/index.js +1 -2
  111. package/build/components/post-featured-image/index.js.map +1 -1
  112. package/build/components/post-featured-image/panel.js +1 -2
  113. package/build/components/post-featured-image/panel.js.map +1 -1
  114. package/build/components/post-format/check.js +1 -2
  115. package/build/components/post-format/check.js.map +1 -1
  116. package/build/components/post-format/index.js +1 -2
  117. package/build/components/post-format/index.js.map +1 -1
  118. package/build/components/post-last-revision/check.js +1 -2
  119. package/build/components/post-last-revision/check.js.map +1 -1
  120. package/build/components/post-last-revision/index.js +6 -5
  121. package/build/components/post-last-revision/index.js.map +1 -1
  122. package/build/components/post-last-revision/panel.js +1 -2
  123. package/build/components/post-last-revision/panel.js.map +1 -1
  124. package/build/components/post-panel-row/index.js +1 -2
  125. package/build/components/post-panel-row/index.js.map +1 -1
  126. package/build/components/post-pending-status/check.js +1 -2
  127. package/build/components/post-pending-status/check.js.map +1 -1
  128. package/build/components/post-pending-status/index.js +1 -2
  129. package/build/components/post-pending-status/index.js.map +1 -1
  130. package/build/components/post-pingbacks/index.js +1 -2
  131. package/build/components/post-pingbacks/index.js.map +1 -1
  132. package/build/components/post-publish-button/index.js +1 -2
  133. package/build/components/post-publish-button/index.js.map +1 -1
  134. package/build/components/post-publish-button/label.js +1 -2
  135. package/build/components/post-publish-button/label.js.map +1 -1
  136. package/build/components/post-publish-panel/index.js +1 -2
  137. package/build/components/post-publish-panel/index.js.map +1 -1
  138. package/build/components/post-publish-panel/maybe-category-panel.js +1 -2
  139. package/build/components/post-publish-panel/maybe-category-panel.js.map +1 -1
  140. package/build/components/post-publish-panel/maybe-tags-panel.js +22 -26
  141. package/build/components/post-publish-panel/maybe-tags-panel.js.map +1 -1
  142. package/build/components/post-publish-panel/postpublish.js +1 -2
  143. package/build/components/post-publish-panel/postpublish.js.map +1 -1
  144. package/build/components/post-publish-panel/prepublish.js +1 -2
  145. package/build/components/post-publish-panel/prepublish.js.map +1 -1
  146. package/build/components/post-schedule/index.js +0 -1
  147. package/build/components/post-schedule/index.js.map +1 -1
  148. package/build/components/post-schedule/label.js +1 -1
  149. package/build/components/post-schedule/label.js.map +1 -1
  150. package/build/components/post-schedule/panel.js +1 -0
  151. package/build/components/post-schedule/panel.js.map +1 -1
  152. package/build/components/post-slug/index.js +1 -2
  153. package/build/components/post-slug/index.js.map +1 -1
  154. package/build/components/post-switch-to-draft-button/index.js +1 -0
  155. package/build/components/post-switch-to-draft-button/index.js.map +1 -1
  156. package/build/components/post-sync-status/index.js +1 -1
  157. package/build/components/post-sync-status/index.js.map +1 -1
  158. package/build/components/post-taxonomies/check.js +8 -15
  159. package/build/components/post-taxonomies/check.js.map +1 -1
  160. package/build/components/post-taxonomies/flat-term-selector.js +1 -2
  161. package/build/components/post-taxonomies/flat-term-selector.js.map +1 -1
  162. package/build/components/post-taxonomies/hierarchical-term-selector.js +1 -2
  163. package/build/components/post-taxonomies/hierarchical-term-selector.js.map +1 -1
  164. package/build/components/post-taxonomies/index.js +14 -15
  165. package/build/components/post-taxonomies/index.js.map +1 -1
  166. package/build/components/post-taxonomies/panel.js +1 -2
  167. package/build/components/post-taxonomies/panel.js.map +1 -1
  168. package/build/components/post-template/block-theme.js +24 -11
  169. package/build/components/post-template/block-theme.js.map +1 -1
  170. package/build/components/post-template/classic-theme.js +17 -13
  171. package/build/components/post-template/classic-theme.js.map +1 -1
  172. package/build/components/post-template/create-new-template-modal.js +20 -5
  173. package/build/components/post-template/create-new-template-modal.js.map +1 -1
  174. package/build/components/post-template/panel.js +5 -1
  175. package/build/components/post-template/panel.js.map +1 -1
  176. package/build/components/post-title/constants.js +2 -4
  177. package/build/components/post-title/constants.js.map +1 -1
  178. package/build/components/post-title/index.js +2 -3
  179. package/build/components/post-title/index.js.map +1 -1
  180. package/build/components/post-title/index.native.js +1 -2
  181. package/build/components/post-title/index.native.js.map +1 -1
  182. package/build/components/post-title/post-title-raw.js +1 -2
  183. package/build/components/post-title/post-title-raw.js.map +1 -1
  184. package/build/components/post-trash/check.js +1 -2
  185. package/build/components/post-trash/check.js.map +1 -1
  186. package/build/components/post-trash/index.js +1 -0
  187. package/build/components/post-trash/index.js.map +1 -1
  188. package/build/components/post-type-support-check/index.js +1 -2
  189. package/build/components/post-type-support-check/index.js.map +1 -1
  190. package/build/components/post-url/panel.js +1 -0
  191. package/build/components/post-url/panel.js.map +1 -1
  192. package/build/components/post-visibility/utils.js +1 -2
  193. package/build/components/post-visibility/utils.js.map +1 -1
  194. package/build/components/preferences-modal/enable-panel.js +1 -2
  195. package/build/components/preferences-modal/enable-panel.js.map +1 -1
  196. package/build/components/preferences-modal/enable-plugin-document-setting-panel.js +1 -2
  197. package/build/components/preferences-modal/enable-plugin-document-setting-panel.js.map +1 -1
  198. package/build/components/preferences-modal/index.js +0 -1
  199. package/build/components/preferences-modal/index.js.map +1 -1
  200. package/build/components/provider/constants.js +1 -2
  201. package/build/components/provider/constants.js.map +1 -1
  202. package/build/components/provider/index.js +13 -7
  203. package/build/components/provider/index.js.map +1 -1
  204. package/build/components/provider/index.native.js +4 -6
  205. package/build/components/provider/index.native.js.map +1 -1
  206. package/build/components/provider/use-block-editor-settings.js +2 -3
  207. package/build/components/provider/use-block-editor-settings.js.map +1 -1
  208. package/build/components/provider/use-block-editor-settings.native.js +1 -2
  209. package/build/components/provider/use-block-editor-settings.native.js.map +1 -1
  210. package/build/components/provider/with-registry-provider.js +1 -2
  211. package/build/components/provider/with-registry-provider.js.map +1 -1
  212. package/build/components/table-of-contents/index.js +1 -2
  213. package/build/components/table-of-contents/index.js.map +1 -1
  214. package/build/components/table-of-contents/panel.js +1 -2
  215. package/build/components/table-of-contents/panel.js.map +1 -1
  216. package/build/components/template-validation-notice/index.js +1 -2
  217. package/build/components/template-validation-notice/index.js.map +1 -1
  218. package/build/components/theme-support-check/index.js +1 -2
  219. package/build/components/theme-support-check/index.js.map +1 -1
  220. package/build/hooks/pattern-partial-syncing.js +9 -2
  221. package/build/hooks/pattern-partial-syncing.js.map +1 -1
  222. package/build/private-apis.js +1 -2
  223. package/build/private-apis.js.map +1 -1
  224. package/build/store/actions.js +38 -65
  225. package/build/store/actions.js.map +1 -1
  226. package/build/store/constants.js +7 -14
  227. package/build/store/constants.js.map +1 -1
  228. package/build/store/defaults.js +1 -2
  229. package/build/store/defaults.js.map +1 -1
  230. package/build/store/index.js +4 -6
  231. package/build/store/index.js.map +1 -1
  232. package/build/store/private-actions.js +1 -0
  233. package/build/store/private-actions.js.map +1 -1
  234. package/build/store/private-selectors.js +1 -2
  235. package/build/store/private-selectors.js.map +1 -1
  236. package/build/store/reducer.js +1 -2
  237. package/build/store/reducer.js.map +1 -1
  238. package/build/store/reducer.native.js +2 -4
  239. package/build/store/reducer.native.js.map +1 -1
  240. package/build/store/selectors.js +82 -144
  241. package/build/store/selectors.js.map +1 -1
  242. package/build/store/selectors.native.js +1 -2
  243. package/build/store/selectors.native.js.map +1 -1
  244. package/build-module/bindings/post-meta.js +2 -2
  245. package/build-module/bindings/post-meta.js.map +1 -1
  246. package/build-module/components/document-bar/index.js +7 -23
  247. package/build-module/components/document-bar/index.js.map +1 -1
  248. package/build-module/components/editor-canvas/edit-template-blocks-notification.js +22 -13
  249. package/build-module/components/editor-canvas/edit-template-blocks-notification.js.map +1 -1
  250. package/build-module/components/editor-canvas/index.js +15 -10
  251. package/build-module/components/editor-canvas/index.js.map +1 -1
  252. package/build-module/components/editor-snackbars/index.js +4 -1
  253. package/build-module/components/editor-snackbars/index.js.map +1 -1
  254. package/build-module/components/entities-saved-states/entity-record-item.js +1 -1
  255. package/build-module/components/entities-saved-states/entity-record-item.js.map +1 -1
  256. package/build-module/components/entities-saved-states/entity-type-list.js +8 -8
  257. package/build-module/components/entities-saved-states/entity-type-list.js.map +1 -1
  258. package/build-module/components/entities-saved-states/index.js +6 -3
  259. package/build-module/components/entities-saved-states/index.js.map +1 -1
  260. package/build-module/components/list-view-sidebar/index.js +44 -37
  261. package/build-module/components/list-view-sidebar/index.js.map +1 -1
  262. package/build-module/components/post-author/combobox.js +8 -61
  263. package/build-module/components/post-author/combobox.js.map +1 -1
  264. package/build-module/components/post-author/constants.js +5 -2
  265. package/build-module/components/post-author/constants.js.map +1 -1
  266. package/build-module/components/post-author/hook.js +65 -0
  267. package/build-module/components/post-author/hook.js.map +1 -0
  268. package/build-module/components/post-author/select.js +7 -24
  269. package/build-module/components/post-author/select.js.map +1 -1
  270. package/build-module/components/post-last-revision/index.js +6 -4
  271. package/build-module/components/post-last-revision/index.js.map +1 -1
  272. package/build-module/components/post-publish-panel/maybe-tags-panel.js +24 -27
  273. package/build-module/components/post-publish-panel/maybe-tags-panel.js.map +1 -1
  274. package/build-module/components/post-schedule/index.js +0 -1
  275. package/build-module/components/post-schedule/index.js.map +1 -1
  276. package/build-module/components/post-schedule/label.js +1 -1
  277. package/build-module/components/post-schedule/label.js.map +1 -1
  278. package/build-module/components/post-schedule/panel.js +1 -0
  279. package/build-module/components/post-schedule/panel.js.map +1 -1
  280. package/build-module/components/post-switch-to-draft-button/index.js +1 -0
  281. package/build-module/components/post-switch-to-draft-button/index.js.map +1 -1
  282. package/build-module/components/post-sync-status/index.js +1 -1
  283. package/build-module/components/post-sync-status/index.js.map +1 -1
  284. package/build-module/components/post-taxonomies/check.js +9 -14
  285. package/build-module/components/post-taxonomies/check.js.map +1 -1
  286. package/build-module/components/post-taxonomies/index.js +15 -15
  287. package/build-module/components/post-taxonomies/index.js.map +1 -1
  288. package/build-module/components/post-template/block-theme.js +24 -11
  289. package/build-module/components/post-template/block-theme.js.map +1 -1
  290. package/build-module/components/post-template/classic-theme.js +16 -11
  291. package/build-module/components/post-template/classic-theme.js.map +1 -1
  292. package/build-module/components/post-template/create-new-template-modal.js +20 -5
  293. package/build-module/components/post-template/create-new-template-modal.js.map +1 -1
  294. package/build-module/components/post-template/panel.js +5 -1
  295. package/build-module/components/post-template/panel.js.map +1 -1
  296. package/build-module/components/post-title/index.js +1 -2
  297. package/build-module/components/post-title/index.js.map +1 -1
  298. package/build-module/components/post-trash/index.js +1 -0
  299. package/build-module/components/post-trash/index.js.map +1 -1
  300. package/build-module/components/post-url/panel.js +1 -0
  301. package/build-module/components/post-url/panel.js.map +1 -1
  302. package/build-module/components/preferences-modal/index.js +0 -1
  303. package/build-module/components/preferences-modal/index.js.map +1 -1
  304. package/build-module/components/provider/index.js +11 -3
  305. package/build-module/components/provider/index.js.map +1 -1
  306. package/build-module/components/provider/use-block-editor-settings.js +1 -1
  307. package/build-module/components/provider/use-block-editor-settings.js.map +1 -1
  308. package/build-module/components/table-of-contents/panel.js +0 -1
  309. package/build-module/components/table-of-contents/panel.js.map +1 -1
  310. package/build-module/hooks/pattern-partial-syncing.js +9 -2
  311. package/build-module/hooks/pattern-partial-syncing.js.map +1 -1
  312. package/build-module/store/actions.js +7 -3
  313. package/build-module/store/actions.js.map +1 -1
  314. package/build-module/store/private-actions.js +1 -0
  315. package/build-module/store/private-actions.js.map +1 -1
  316. package/build-module/store/selectors.js +10 -0
  317. package/build-module/store/selectors.js.map +1 -1
  318. package/build-style/style-rtl.css +28 -22
  319. package/build-style/style.css +28 -22
  320. package/package.json +32 -32
  321. package/src/bindings/post-meta.js +2 -2
  322. package/src/components/document-bar/index.js +24 -38
  323. package/src/components/editor-canvas/edit-template-blocks-notification.js +31 -14
  324. package/src/components/editor-canvas/index.js +16 -6
  325. package/src/components/editor-snackbars/index.js +6 -3
  326. package/src/components/entities-saved-states/entity-record-item.js +1 -4
  327. package/src/components/entities-saved-states/entity-type-list.js +8 -8
  328. package/src/components/entities-saved-states/index.js +17 -4
  329. package/src/components/entities-saved-states/style.scss +5 -0
  330. package/src/components/list-view-sidebar/index.js +60 -47
  331. package/src/components/list-view-sidebar/style.scss +20 -20
  332. package/src/components/post-author/combobox.js +5 -61
  333. package/src/components/post-author/constants.js +6 -2
  334. package/src/components/post-author/hook.js +63 -0
  335. package/src/components/post-author/select.js +5 -25
  336. package/src/components/post-last-revision/index.js +6 -6
  337. package/src/components/post-last-revision/style.scss +3 -6
  338. package/src/components/post-panel-row/style.scss +3 -3
  339. package/src/components/post-publish-panel/maybe-tags-panel.js +27 -37
  340. package/src/components/post-publish-panel/style.scss +3 -1
  341. package/src/components/post-schedule/label.js +1 -1
  342. package/src/components/post-schedule/panel.js +1 -0
  343. package/src/components/post-schedule/test/label.js +19 -7
  344. package/src/components/post-switch-to-draft-button/index.js +1 -0
  345. package/src/components/post-sync-status/index.js +8 -2
  346. package/src/components/post-taxonomies/check.js +11 -15
  347. package/src/components/post-taxonomies/index.js +15 -22
  348. package/src/components/post-taxonomies/test/index.js +37 -51
  349. package/src/components/post-template/block-theme.js +33 -14
  350. package/src/components/post-template/classic-theme.js +17 -10
  351. package/src/components/post-template/create-new-template-modal.js +17 -9
  352. package/src/components/post-template/panel.js +5 -1
  353. package/src/components/post-trash/index.js +1 -0
  354. package/src/components/post-url/panel.js +1 -0
  355. package/src/components/provider/index.js +18 -6
  356. package/src/components/provider/use-block-editor-settings.js +1 -1
  357. package/src/hooks/pattern-partial-syncing.js +23 -4
  358. package/src/store/actions.js +8 -3
  359. package/src/store/private-actions.js +1 -0
  360. package/src/store/selectors.js +12 -0
@@ -562,6 +562,11 @@
562
562
  font-size: 13px;
563
563
  }
564
564
 
565
+ .entities-saved-states__change-summary {
566
+ color: #757575;
567
+ font-size: 12px;
568
+ }
569
+
565
570
  .editor-error-boundary {
566
571
  margin: auto;
567
572
  max-width: 780px;
@@ -608,25 +613,28 @@
608
613
  width: 350px;
609
614
  }
610
615
  }
616
+ .editor-list-view-sidebar .edit-post-editor__document-overview-panel__header {
617
+ display: flex;
618
+ border-bottom: 1px solid #ddd;
619
+ }
611
620
  .editor-list-view-sidebar .editor-list-view-sidebar__close-button {
612
- position: absolute;
613
- right: 8px;
614
- top: 6px;
615
- z-index: 1;
616
621
  background: #fff;
622
+ order: 1;
623
+ align-self: center;
624
+ margin-right: 8px;
617
625
  }
618
- .editor-list-view-sidebar .components-tab-panel__tabs {
619
- border-bottom: 1px solid #ddd;
626
+
627
+ .editor-list-view-sidebar__tabs-tablist {
620
628
  box-sizing: border-box;
621
- display: flex;
622
- width: 100%;
623
- padding-right: 56px;
629
+ flex-grow: 1;
624
630
  }
625
- .editor-list-view-sidebar .components-tab-panel__tabs .editor-list-view-sidebar__panel-tab {
631
+
632
+ .editor-list-view-sidebar__tabs-tab {
626
633
  width: 50%;
627
634
  margin-bottom: -1px;
628
635
  }
629
- .editor-list-view-sidebar .components-tab-panel__tab-content {
636
+
637
+ .editor-list-view-sidebar__tabs-tabpanel {
630
638
  height: calc(100% - 47px);
631
639
  }
632
640
 
@@ -806,19 +814,17 @@
806
814
 
807
815
  .editor-post-last-revision__title {
808
816
  width: 100%;
809
- font-weight: 600;
810
- }
811
- .editor-post-last-revision__title .dashicon {
812
- margin-right: 5px;
817
+ font-weight: 500;
813
818
  }
814
819
 
815
- .components-button.editor-post-last-revision__title {
820
+ .editor-post-last-revision__title.components-button.has-icon {
816
821
  height: 100%;
822
+ justify-content: space-between;
817
823
  }
818
- .components-button.editor-post-last-revision__title:hover, .components-button.editor-post-last-revision__title:active {
824
+ .editor-post-last-revision__title.components-button.has-icon:hover, .editor-post-last-revision__title.components-button.has-icon:active {
819
825
  background: #f0f0f0;
820
826
  }
821
- .components-button.editor-post-last-revision__title:focus {
827
+ .editor-post-last-revision__title.components-button.has-icon:focus {
822
828
  box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);
823
829
  border-radius: 0;
824
830
  }
@@ -843,7 +849,7 @@
843
849
 
844
850
  .editor-post-panel__row {
845
851
  width: 100%;
846
- min-height: 36px;
852
+ min-height: 40px;
847
853
  justify-content: flex-start !important;
848
854
  align-items: flex-start !important;
849
855
  }
@@ -851,14 +857,14 @@
851
857
  .editor-post-panel__row-label {
852
858
  width: 30%;
853
859
  flex-shrink: 0;
854
- min-height: 36px;
860
+ min-height: 40px;
855
861
  display: flex;
856
862
  align-items: center;
857
863
  }
858
864
 
859
865
  .editor-post-panel__row-control {
860
866
  flex-grow: 1;
861
- min-height: 36px;
867
+ min-height: 40px;
862
868
  display: flex;
863
869
  align-items: center;
864
870
  }
@@ -1014,7 +1020,7 @@
1014
1020
  flex: 1;
1015
1021
  }
1016
1022
  .post-publish-panel__postpublish-post-address-container input[readonly] {
1017
- padding: 16px;
1023
+ padding: 12px;
1018
1024
  background: #f0f0f0;
1019
1025
  border-color: #ccc;
1020
1026
  overflow: hidden;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/editor",
3
- "version": "13.27.1",
3
+ "version": "13.28.0",
4
4
  "description": "Enhanced block editor for WordPress posts.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -31,36 +31,36 @@
31
31
  ],
32
32
  "dependencies": {
33
33
  "@babel/runtime": "^7.16.0",
34
- "@wordpress/a11y": "^3.50.0",
35
- "@wordpress/api-fetch": "^6.47.0",
36
- "@wordpress/blob": "^3.50.0",
37
- "@wordpress/block-editor": "^12.18.1",
38
- "@wordpress/blocks": "^12.27.1",
39
- "@wordpress/commands": "^0.21.0",
40
- "@wordpress/components": "^25.16.0",
41
- "@wordpress/compose": "^6.27.0",
42
- "@wordpress/core-data": "^6.27.1",
43
- "@wordpress/data": "^9.20.0",
44
- "@wordpress/date": "^4.50.0",
45
- "@wordpress/deprecated": "^3.50.0",
46
- "@wordpress/dom": "^3.50.0",
47
- "@wordpress/element": "^5.27.0",
48
- "@wordpress/hooks": "^3.50.0",
49
- "@wordpress/html-entities": "^3.50.0",
50
- "@wordpress/i18n": "^4.50.0",
51
- "@wordpress/icons": "^9.41.0",
52
- "@wordpress/keyboard-shortcuts": "^4.27.0",
53
- "@wordpress/keycodes": "^3.50.0",
54
- "@wordpress/media-utils": "^4.41.0",
55
- "@wordpress/notices": "^4.18.0",
56
- "@wordpress/patterns": "^1.11.1",
57
- "@wordpress/preferences": "^3.27.0",
58
- "@wordpress/private-apis": "^0.32.0",
59
- "@wordpress/reusable-blocks": "^4.27.1",
60
- "@wordpress/rich-text": "^6.27.0",
61
- "@wordpress/server-side-render": "^4.27.1",
62
- "@wordpress/url": "^3.51.0",
63
- "@wordpress/wordcount": "^3.50.0",
34
+ "@wordpress/a11y": "^3.51.0",
35
+ "@wordpress/api-fetch": "^6.48.0",
36
+ "@wordpress/blob": "^3.51.0",
37
+ "@wordpress/block-editor": "^12.19.0",
38
+ "@wordpress/blocks": "^12.28.0",
39
+ "@wordpress/commands": "^0.22.0",
40
+ "@wordpress/components": "^26.0.0",
41
+ "@wordpress/compose": "^6.28.0",
42
+ "@wordpress/core-data": "^6.28.0",
43
+ "@wordpress/data": "^9.21.0",
44
+ "@wordpress/date": "^4.51.0",
45
+ "@wordpress/deprecated": "^3.51.0",
46
+ "@wordpress/dom": "^3.51.0",
47
+ "@wordpress/element": "^5.28.0",
48
+ "@wordpress/hooks": "^3.51.0",
49
+ "@wordpress/html-entities": "^3.51.0",
50
+ "@wordpress/i18n": "^4.51.0",
51
+ "@wordpress/icons": "^9.42.0",
52
+ "@wordpress/keyboard-shortcuts": "^4.28.0",
53
+ "@wordpress/keycodes": "^3.51.0",
54
+ "@wordpress/media-utils": "^4.42.0",
55
+ "@wordpress/notices": "^4.19.0",
56
+ "@wordpress/patterns": "^1.12.0",
57
+ "@wordpress/preferences": "^3.28.0",
58
+ "@wordpress/private-apis": "^0.33.0",
59
+ "@wordpress/reusable-blocks": "^4.28.0",
60
+ "@wordpress/rich-text": "^6.28.0",
61
+ "@wordpress/server-side-render": "^4.28.0",
62
+ "@wordpress/url": "^3.52.0",
63
+ "@wordpress/wordcount": "^3.51.0",
64
64
  "classnames": "^2.3.1",
65
65
  "date-fns": "^2.28.0",
66
66
  "memize": "^2.1.0",
@@ -75,5 +75,5 @@
75
75
  "publishConfig": {
76
76
  "access": "public"
77
77
  },
78
- "gitHead": "c2f6d07ffab7d68b9ac3c423ce7e11af91f6e45e"
78
+ "gitHead": "eb796371e9630636a4a8837033807b0c4a06ed67"
79
79
  }
@@ -10,12 +10,12 @@ import { __ } from '@wordpress/i18n';
10
10
  import { store as editorStore } from '../store';
11
11
 
12
12
  export default {
13
- name: 'post_meta',
13
+ name: 'core/post-meta',
14
14
  label: __( 'Post Meta' ),
15
15
  useSource( props, sourceAttributes ) {
16
16
  const { getCurrentPostType } = useSelect( editorStore );
17
17
  const { context } = props;
18
- const { value: metaKey } = sourceAttributes;
18
+ const { key: metaKey } = sourceAttributes;
19
19
  const postType = context.postType
20
20
  ? context.postType
21
21
  : getCurrentPostType();
@@ -48,51 +48,37 @@ const icons = {
48
48
  };
49
49
 
50
50
  export default function DocumentBar() {
51
- const {
52
- isEditingTemplate,
53
- templateId,
54
- postType,
55
- postId,
56
- goBack,
57
- getEditorSettings,
58
- } = useSelect( ( select ) => {
59
- const {
60
- getRenderingMode,
61
- getCurrentTemplateId,
62
- getCurrentPostId,
63
- getCurrentPostType,
64
- getEditorSettings: getSettings,
65
- } = select( editorStore );
66
- const _templateId = getCurrentTemplateId();
67
- const back = getSettings().goBack;
68
- return {
69
- isEditingTemplate:
70
- !! _templateId && getRenderingMode() === 'template-only',
71
- templateId: _templateId,
72
- postType: getCurrentPostType(),
73
- postId: getCurrentPostId(),
74
- goBack: typeof back === 'function' ? back : undefined,
75
- getEditorSettings: getSettings,
76
- };
77
- }, [] );
78
-
79
- const { setRenderingMode } = useDispatch( editorStore );
51
+ const { postType, postId, onNavigateToPreviousEntityRecord } = useSelect(
52
+ ( select ) => {
53
+ const {
54
+ getCurrentPostId,
55
+ getCurrentPostType,
56
+ getEditorSettings: getSettings,
57
+ } = select( editorStore );
58
+ return {
59
+ postType: getCurrentPostType(),
60
+ postId: getCurrentPostId(),
61
+ onNavigateToPreviousEntityRecord:
62
+ getSettings().onNavigateToPreviousEntityRecord,
63
+ getEditorSettings: getSettings,
64
+ };
65
+ },
66
+ []
67
+ );
80
68
 
81
69
  const handleOnBack = () => {
82
- if ( isEditingTemplate ) {
83
- setRenderingMode( getEditorSettings().defaultRenderingMode );
84
- return;
85
- }
86
- if ( goBack ) {
87
- goBack();
70
+ if ( onNavigateToPreviousEntityRecord ) {
71
+ onNavigateToPreviousEntityRecord();
88
72
  }
89
73
  };
90
74
 
91
75
  return (
92
76
  <BaseDocumentActions
93
- postType={ isEditingTemplate ? 'wp_template' : postType }
94
- postId={ isEditingTemplate ? templateId : postId }
95
- onBack={ isEditingTemplate || goBack ? handleOnBack : undefined }
77
+ postType={ postType }
78
+ postId={ postId }
79
+ onBack={
80
+ onNavigateToPreviousEntityRecord ? handleOnBack : undefined
81
+ }
96
82
  />
97
83
  );
98
84
  }
@@ -27,14 +27,20 @@ import { store as editorStore } from '../../store';
27
27
  * editor iframe canvas.
28
28
  */
29
29
  export default function EditTemplateBlocksNotification( { contentRef } ) {
30
- const renderingMode = useSelect(
31
- ( select ) => select( editorStore ).getRenderingMode(),
32
- []
33
- );
30
+ const { onNavigateToEntityRecord, templateId } = useSelect( ( select ) => {
31
+ const { getEditorSettings, getCurrentTemplateId } =
32
+ select( editorStore );
33
+
34
+ return {
35
+ onNavigateToEntityRecord:
36
+ getEditorSettings().onNavigateToEntityRecord,
37
+ templateId: getCurrentTemplateId(),
38
+ };
39
+ }, [] );
40
+
34
41
  const { getNotices } = useSelect( noticesStore );
35
42
 
36
43
  const { createInfoNotice, removeNotice } = useDispatch( noticesStore );
37
- const { setRenderingMode } = useDispatch( editorStore );
38
44
 
39
45
  const [ isDialogOpen, setIsDialogOpen ] = useState( false );
40
46
 
@@ -42,18 +48,17 @@ export default function EditTemplateBlocksNotification( { contentRef } ) {
42
48
 
43
49
  useEffect( () => {
44
50
  const handleClick = async ( event ) => {
45
- if ( renderingMode !== 'template-locked' ) {
46
- return;
47
- }
48
51
  if ( ! event.target.classList.contains( 'is-root-container' ) ) {
49
52
  return;
50
53
  }
54
+
51
55
  const isNoticeAlreadyShowing = getNotices().some(
52
56
  ( notice ) => notice.id === lastNoticeId.current
53
57
  );
54
58
  if ( isNoticeAlreadyShowing ) {
55
59
  return;
56
60
  }
61
+
57
62
  const { notice } = await createInfoNotice(
58
63
  __( 'Edit your template to edit this block.' ),
59
64
  {
@@ -62,7 +67,11 @@ export default function EditTemplateBlocksNotification( { contentRef } ) {
62
67
  actions: [
63
68
  {
64
69
  label: __( 'Edit template' ),
65
- onClick: () => setRenderingMode( 'template-only' ),
70
+ onClick: () =>
71
+ onNavigateToEntityRecord( {
72
+ postId: templateId,
73
+ postType: 'wp_template',
74
+ } ),
66
75
  },
67
76
  ],
68
77
  }
@@ -71,9 +80,6 @@ export default function EditTemplateBlocksNotification( { contentRef } ) {
71
80
  };
72
81
 
73
82
  const handleDblClick = ( event ) => {
74
- if ( renderingMode !== 'template-locked' ) {
75
- return;
76
- }
77
83
  if ( ! event.target.classList.contains( 'is-root-container' ) ) {
78
84
  return;
79
85
  }
@@ -90,7 +96,15 @@ export default function EditTemplateBlocksNotification( { contentRef } ) {
90
96
  canvas?.removeEventListener( 'click', handleClick );
91
97
  canvas?.removeEventListener( 'dblclick', handleDblClick );
92
98
  };
93
- }, [ lastNoticeId, renderingMode, contentRef.current ] );
99
+ }, [
100
+ lastNoticeId,
101
+ contentRef,
102
+ getNotices,
103
+ createInfoNotice,
104
+ onNavigateToEntityRecord,
105
+ templateId,
106
+ removeNotice,
107
+ ] );
94
108
 
95
109
  return (
96
110
  <ConfirmDialog
@@ -98,7 +112,10 @@ export default function EditTemplateBlocksNotification( { contentRef } ) {
98
112
  confirmButtonText={ __( 'Edit template' ) }
99
113
  onConfirm={ () => {
100
114
  setIsDialogOpen( false );
101
- setRenderingMode( 'template-only' );
115
+ onNavigateToEntityRecord( {
116
+ postId: templateId,
117
+ postType: 'wp_template',
118
+ } );
102
119
  } }
103
120
  onCancel={ () => setIsDialogOpen( false ) }
104
121
  >
@@ -35,6 +35,7 @@ const {
35
35
  useLayoutClasses,
36
36
  useLayoutStyles,
37
37
  ExperimentalBlockCanvas: BlockCanvas,
38
+ useFlashEditableBlocks,
38
39
  } = unlock( blockEditorPrivateApis );
39
40
 
40
41
  const noop = () => {};
@@ -91,7 +92,7 @@ function EditorCanvas( {
91
92
  wrapperBlockName,
92
93
  wrapperUniqueId,
93
94
  deviceType,
94
- hasHistory,
95
+ showEditorPadding,
95
96
  } = useSelect( ( select ) => {
96
97
  const {
97
98
  getCurrentPostId,
@@ -138,7 +139,8 @@ function EditorCanvas( {
138
139
  wrapperBlockName: _wrapperBlockName,
139
140
  wrapperUniqueId: getCurrentPostId(),
140
141
  deviceType: getDeviceType(),
141
- hasHistory: !! editorSettings.goBack,
142
+ showEditorPadding:
143
+ !! editorSettings.onNavigateToPreviousEntityRecord,
142
144
  };
143
145
  }, [] );
144
146
  const { isCleanNewPost } = useSelect( editorStore );
@@ -290,6 +292,9 @@ function EditorCanvas( {
290
292
  const contentRef = useMergeRefs( [
291
293
  localRef,
292
294
  renderingMode === 'post-only' ? typewriterRef : noop,
295
+ useFlashEditableBlocks( {
296
+ isEnabled: renderingMode === 'template-locked',
297
+ } ),
293
298
  ] );
294
299
 
295
300
  return (
@@ -302,7 +307,7 @@ function EditorCanvas( {
302
307
  height="100%"
303
308
  iframeProps={ {
304
309
  className: classnames( 'editor-canvas__iframe', {
305
- 'has-history': hasHistory,
310
+ 'has-editor-padding': showEditorPadding,
306
311
  } ),
307
312
  ...iframeProps,
308
313
  style: {
@@ -364,8 +369,7 @@ function EditorCanvas( {
364
369
  'is-' + deviceType.toLowerCase() + '-preview',
365
370
  renderingMode !== 'post-only'
366
371
  ? 'wp-site-blocks'
367
- : `${ blockListLayoutClass } wp-block-post-content`, // Ensure root level blocks receive default/flow blockGap styling rules.
368
- renderingMode !== 'all' && 'is-' + renderingMode
372
+ : `${ blockListLayoutClass } wp-block-post-content` // Ensure root level blocks receive default/flow blockGap styling rules.
369
373
  ) }
370
374
  layout={ blockListLayout }
371
375
  dropZoneElement={
@@ -376,8 +380,14 @@ function EditorCanvas( {
376
380
  : localRef.current?.parentNode
377
381
  }
378
382
  renderAppender={ renderAppender }
383
+ __unstableDisableDropZone={
384
+ // In template preview mode, disable drop zones at the root of the template.
385
+ renderingMode === 'template-locked' ? true : false
386
+ }
379
387
  />
380
- <EditTemplateBlocksNotification contentRef={ localRef } />
388
+ { renderingMode === 'template-locked' && (
389
+ <EditTemplateBlocksNotification contentRef={ localRef } />
390
+ ) }
381
391
  </RecursionProvider>
382
392
  { children }
383
393
  </BlockCanvas>
@@ -5,15 +5,18 @@ import { SnackbarList } from '@wordpress/components';
5
5
  import { useSelect, useDispatch } from '@wordpress/data';
6
6
  import { store as noticesStore } from '@wordpress/notices';
7
7
 
8
+ // Last three notices. Slices from the tail end of the list.
9
+ const MAX_VISIBLE_NOTICES = -3;
10
+
8
11
  export default function EditorSnackbars() {
9
12
  const notices = useSelect(
10
13
  ( select ) => select( noticesStore ).getNotices(),
11
14
  []
12
15
  );
13
16
  const { removeNotice } = useDispatch( noticesStore );
14
- const snackbarNotices = notices.filter(
15
- ( { type } ) => type === 'snackbar'
16
- );
17
+ const snackbarNotices = notices
18
+ .filter( ( { type } ) => type === 'snackbar' )
19
+ .slice( MAX_VISIBLE_NOTICES );
17
20
 
18
21
  return (
19
22
  <SnackbarList
@@ -39,10 +39,7 @@ export default function EntityRecordItem( { record, checked, onChange } ) {
39
39
  <CheckboxControl
40
40
  __nextHasNoMarginBottom
41
41
  label={
42
- <strong>
43
- { decodeEntities( entityRecordTitle ) ||
44
- __( 'Untitled' ) }
45
- </strong>
42
+ decodeEntities( entityRecordTitle ) || __( 'Untitled' )
46
43
  }
47
44
  checked={ checked }
48
45
  onChange={ onChange }
@@ -30,7 +30,7 @@ function getEntityDescription( entity, count ) {
30
30
  );
31
31
  case 'page':
32
32
  case 'post':
33
- return __( 'The following content has been modified.' );
33
+ return __( 'The following has been modified.' );
34
34
  }
35
35
  }
36
36
 
@@ -55,18 +55,15 @@ function GlobalStylesDescription( { record } ) {
55
55
  }
56
56
  );
57
57
  return globalStylesChanges.length ? (
58
- <>
59
- <h3 className="entities-saved-states__description-heading">
60
- { __( 'Changes made to:' ) }
61
- </h3>
62
- <PanelRow>{ globalStylesChanges.join( ', ' ) }</PanelRow>
63
- </>
58
+ <PanelRow className="entities-saved-states__change-summary">
59
+ { globalStylesChanges.join( ', ' ) }.
60
+ </PanelRow>
64
61
  ) : null;
65
62
  }
66
63
 
67
64
  function EntityDescription( { record, count } ) {
68
65
  if ( 'globalStyles' === record?.name ) {
69
- return <GlobalStylesDescription record={ record } />;
66
+ return null;
70
67
  }
71
68
  const description = getEntityDescription( record?.name, count );
72
69
  return description ? <PanelRow>{ description }</PanelRow> : null;
@@ -117,6 +114,9 @@ export default function EntityTypeList( {
117
114
  />
118
115
  );
119
116
  } ) }
117
+ { 'globalStyles' === firstRecord?.name && (
118
+ <GlobalStylesDescription record={ firstRecord } />
119
+ ) }
120
120
  </PanelBody>
121
121
  );
122
122
  }
@@ -2,9 +2,13 @@
2
2
  * WordPress dependencies
3
3
  */
4
4
  import { Button, Flex, FlexItem } from '@wordpress/components';
5
- import { __ } from '@wordpress/i18n';
5
+ import { __, _n, sprintf } from '@wordpress/i18n';
6
6
  import { useSelect, useDispatch } from '@wordpress/data';
7
- import { useCallback, useRef } from '@wordpress/element';
7
+ import {
8
+ useCallback,
9
+ useRef,
10
+ createInterpolateElement,
11
+ } from '@wordpress/element';
8
12
  import { store as coreStore } from '@wordpress/core-data';
9
13
  import { store as blockEditorStore } from '@wordpress/block-editor';
10
14
  import { __experimentalUseDialog as useDialog } from '@wordpress/compose';
@@ -215,8 +219,17 @@ export function EntitiesSavedStatesExtensible( {
215
219
  { additionalPrompt }
216
220
  <p>
217
221
  { isDirty
218
- ? __(
219
- 'The following changes have been made to your site, templates, and content.'
222
+ ? createInterpolateElement(
223
+ sprintf(
224
+ /* translators: %d: number of site changes waiting to be saved. */
225
+ _n(
226
+ 'There is <strong>%d site change</strong> waiting to be saved.',
227
+ 'There are <strong>%d site changes</strong> waiting to be saved.',
228
+ sortedPartitionedSavables.length
229
+ ),
230
+ sortedPartitionedSavables.length
231
+ ),
232
+ { strong: <strong /> }
220
233
  )
221
234
  : __( 'Select the items you want to save.' ) }
222
235
  </p>
@@ -19,3 +19,8 @@
19
19
  .entities-saved-states__description-heading {
20
20
  font-size: $default-font-size;
21
21
  }
22
+
23
+ .entities-saved-states__change-summary {
24
+ color: $gray-700;
25
+ font-size: $helptext-font-size;
26
+ }