@wordpress/block-editor 13.2.0 → 13.3.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 (367) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +0 -1
  3. package/build/components/block-breadcrumb/index.js +12 -1
  4. package/build/components/block-breadcrumb/index.js.map +1 -1
  5. package/build/components/block-lock/toolbar.js +0 -1
  6. package/build/components/block-lock/toolbar.js.map +1 -1
  7. package/build/components/block-mover/button.js +1 -1
  8. package/build/components/block-mover/button.js.map +1 -1
  9. package/build/components/block-mover/index.js +1 -1
  10. package/build/components/block-mover/index.js.map +1 -1
  11. package/build/components/block-pattern-setup/setup-toolbar.js +2 -2
  12. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  13. package/build/components/block-patterns-paging/index.js +5 -7
  14. package/build/components/block-patterns-paging/index.js.map +1 -1
  15. package/build/components/block-quick-navigation/index.js +20 -17
  16. package/build/components/block-quick-navigation/index.js.map +1 -1
  17. package/build/components/block-rename/modal.js +4 -12
  18. package/build/components/block-rename/modal.js.map +1 -1
  19. package/build/components/block-toolbar/shuffle.js +1 -0
  20. package/build/components/block-toolbar/shuffle.js.map +1 -1
  21. package/build/components/block-tools/block-selection-button.js +7 -58
  22. package/build/components/block-tools/block-selection-button.js.map +1 -1
  23. package/build/components/block-tools/block-toolbar-breadcrumb.js +9 -2
  24. package/build/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
  25. package/build/components/block-tools/index.js +14 -1
  26. package/build/components/block-tools/index.js.map +1 -1
  27. package/build/components/block-tools/use-show-block-tools.js +4 -2
  28. package/build/components/block-tools/use-show-block-tools.js.map +1 -1
  29. package/build/components/block-tools/zoom-out-mode-inserters.js +5 -4
  30. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  31. package/build/components/block-tools/zoom-out-popover.js +57 -0
  32. package/build/components/block-tools/zoom-out-popover.js.map +1 -0
  33. package/build/components/block-tools/zoom-out-toolbar.js +138 -0
  34. package/build/components/block-tools/zoom-out-toolbar.js.map +1 -0
  35. package/build/components/button-block-appender/index.js +3 -1
  36. package/build/components/button-block-appender/index.js.map +1 -1
  37. package/build/components/child-layout-control/index.js +26 -18
  38. package/build/components/child-layout-control/index.js.map +1 -1
  39. package/build/components/date-format-picker/index.js +10 -1
  40. package/build/components/date-format-picker/index.js.map +1 -1
  41. package/build/components/dimensions-tool/index.js +6 -4
  42. package/build/components/dimensions-tool/index.js.map +1 -1
  43. package/build/components/font-appearance-control/index.js +26 -61
  44. package/build/components/font-appearance-control/index.js.map +1 -1
  45. package/build/components/global-styles/background-panel.js +178 -116
  46. package/build/components/global-styles/background-panel.js.map +1 -1
  47. package/build/components/global-styles/border-panel.js +2 -1
  48. package/build/components/global-styles/border-panel.js.map +1 -1
  49. package/build/components/global-styles/color-panel.js +2 -1
  50. package/build/components/global-styles/color-panel.js.map +1 -1
  51. package/build/components/global-styles/dimensions-panel.js +2 -1
  52. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  53. package/build/components/global-styles/filters-panel.js +2 -1
  54. package/build/components/global-styles/filters-panel.js.map +1 -1
  55. package/build/components/global-styles/hooks.js +8 -0
  56. package/build/components/global-styles/hooks.js.map +1 -1
  57. package/build/components/global-styles/image-settings-panel.js +2 -1
  58. package/build/components/global-styles/image-settings-panel.js.map +1 -1
  59. package/build/components/global-styles/typography-panel.js +50 -12
  60. package/build/components/global-styles/typography-panel.js.map +1 -1
  61. package/build/components/global-styles/typography-utils.js +50 -0
  62. package/build/components/global-styles/typography-utils.js.map +1 -1
  63. package/build/components/global-styles/use-global-styles-output.js +23 -8
  64. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  65. package/build/components/global-styles/utils.js +17 -7
  66. package/build/components/global-styles/utils.js.map +1 -1
  67. package/build/components/grid/grid-item-movers.js +11 -14
  68. package/build/components/grid/grid-item-movers.js.map +1 -1
  69. package/build/components/grid/grid-item-resizer.js +2 -2
  70. package/build/components/grid/grid-item-resizer.js.map +1 -1
  71. package/build/components/grid/grid-visualizer.js +116 -36
  72. package/build/components/grid/grid-visualizer.js.map +1 -1
  73. package/build/components/grid/use-grid-layout-sync.js +29 -22
  74. package/build/components/grid/use-grid-layout-sync.js.map +1 -1
  75. package/build/components/inner-blocks/index.js +1 -1
  76. package/build/components/inner-blocks/index.js.map +1 -1
  77. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +1 -19
  78. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -1
  79. package/build/components/inserter/menu.js +26 -4
  80. package/build/components/inserter/menu.js.map +1 -1
  81. package/build/components/inserter/quick-inserter.js +2 -1
  82. package/build/components/inserter/quick-inserter.js.map +1 -1
  83. package/build/components/inspector-controls/block-support-tools-panel.js +2 -1
  84. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  85. package/build/components/link-control/link-preview.js +1 -1
  86. package/build/components/link-control/link-preview.js.map +1 -1
  87. package/build/components/media-placeholder/index.js +19 -23
  88. package/build/components/media-placeholder/index.js.map +1 -1
  89. package/build/components/navigable-toolbar/index.js +3 -1
  90. package/build/components/navigable-toolbar/index.js.map +1 -1
  91. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +5 -1
  92. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  93. package/build/components/tabbed-sidebar/index.js +66 -0
  94. package/build/components/tabbed-sidebar/index.js.map +1 -0
  95. package/build/components/url-popover/index.js +3 -0
  96. package/build/components/url-popover/index.js.map +1 -1
  97. package/build/hooks/background.js +26 -4
  98. package/build/hooks/background.js.map +1 -1
  99. package/build/hooks/block-hooks.js +11 -17
  100. package/build/hooks/block-hooks.js.map +1 -1
  101. package/build/hooks/block-style-variation.js +169 -4
  102. package/build/hooks/block-style-variation.js.map +1 -1
  103. package/build/hooks/duotone.js +16 -11
  104. package/build/hooks/duotone.js.map +1 -1
  105. package/build/hooks/grid-visualizer.js +65 -0
  106. package/build/hooks/grid-visualizer.js.map +1 -0
  107. package/build/hooks/index.js +15 -2
  108. package/build/hooks/index.js.map +1 -1
  109. package/build/hooks/layout-child.js +39 -22
  110. package/build/hooks/layout-child.js.map +1 -1
  111. package/build/hooks/position.js +2 -9
  112. package/build/hooks/position.js.map +1 -1
  113. package/build/hooks/use-bindings-attributes.js +16 -6
  114. package/build/hooks/use-bindings-attributes.js.map +1 -1
  115. package/build/hooks/utils.js +2 -0
  116. package/build/hooks/utils.js.map +1 -1
  117. package/build/layouts/constrained.js +44 -2
  118. package/build/layouts/constrained.js.map +1 -1
  119. package/build/layouts/grid.js +90 -51
  120. package/build/layouts/grid.js.map +1 -1
  121. package/build/private-apis.js +6 -1
  122. package/build/private-apis.js.map +1 -1
  123. package/build/store/defaults.js +0 -2
  124. package/build/store/defaults.js.map +1 -1
  125. package/build/store/defaults.native.js +0 -3
  126. package/build/store/defaults.native.js.map +1 -1
  127. package/build/store/private-keys.js +2 -1
  128. package/build/store/private-keys.js.map +1 -1
  129. package/build/utils/format-font-style.js +45 -0
  130. package/build/utils/format-font-style.js.map +1 -0
  131. package/build/utils/format-font-weight.js +68 -0
  132. package/build/utils/format-font-weight.js.map +1 -0
  133. package/build/utils/get-editor-region.js +34 -0
  134. package/build/utils/get-editor-region.js.map +1 -0
  135. package/build/utils/get-font-styles-and-weights.js +167 -0
  136. package/build/utils/get-font-styles-and-weights.js.map +1 -0
  137. package/build/utils/pasting.js +5 -13
  138. package/build/utils/pasting.js.map +1 -1
  139. package/build-module/components/block-breadcrumb/index.js +12 -1
  140. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  141. package/build-module/components/block-lock/toolbar.js +0 -1
  142. package/build-module/components/block-lock/toolbar.js.map +1 -1
  143. package/build-module/components/block-mover/button.js +1 -1
  144. package/build-module/components/block-mover/button.js.map +1 -1
  145. package/build-module/components/block-mover/index.js +1 -1
  146. package/build-module/components/block-mover/index.js.map +1 -1
  147. package/build-module/components/block-pattern-setup/setup-toolbar.js +2 -2
  148. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  149. package/build-module/components/block-patterns-paging/index.js +5 -7
  150. package/build-module/components/block-patterns-paging/index.js.map +1 -1
  151. package/build-module/components/block-quick-navigation/index.js +20 -17
  152. package/build-module/components/block-quick-navigation/index.js.map +1 -1
  153. package/build-module/components/block-rename/modal.js +5 -13
  154. package/build-module/components/block-rename/modal.js.map +1 -1
  155. package/build-module/components/block-toolbar/shuffle.js +1 -0
  156. package/build-module/components/block-toolbar/shuffle.js.map +1 -1
  157. package/build-module/components/block-tools/block-selection-button.js +10 -61
  158. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  159. package/build-module/components/block-tools/block-toolbar-breadcrumb.js +9 -2
  160. package/build-module/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
  161. package/build-module/components/block-tools/index.js +14 -1
  162. package/build-module/components/block-tools/index.js.map +1 -1
  163. package/build-module/components/block-tools/use-show-block-tools.js +4 -2
  164. package/build-module/components/block-tools/use-show-block-tools.js.map +1 -1
  165. package/build-module/components/block-tools/zoom-out-mode-inserters.js +5 -4
  166. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  167. package/build-module/components/block-tools/zoom-out-popover.js +48 -0
  168. package/build-module/components/block-tools/zoom-out-popover.js.map +1 -0
  169. package/build-module/components/block-tools/zoom-out-toolbar.js +131 -0
  170. package/build-module/components/block-tools/zoom-out-toolbar.js.map +1 -0
  171. package/build-module/components/button-block-appender/index.js +3 -1
  172. package/build-module/components/button-block-appender/index.js.map +1 -1
  173. package/build-module/components/child-layout-control/index.js +27 -19
  174. package/build-module/components/child-layout-control/index.js.map +1 -1
  175. package/build-module/components/date-format-picker/index.js +11 -3
  176. package/build-module/components/date-format-picker/index.js.map +1 -1
  177. package/build-module/components/dimensions-tool/index.js +6 -4
  178. package/build-module/components/dimensions-tool/index.js.map +1 -1
  179. package/build-module/components/font-appearance-control/index.js +28 -63
  180. package/build-module/components/font-appearance-control/index.js.map +1 -1
  181. package/build-module/components/global-styles/background-panel.js +181 -119
  182. package/build-module/components/global-styles/background-panel.js.map +1 -1
  183. package/build-module/components/global-styles/border-panel.js +3 -2
  184. package/build-module/components/global-styles/border-panel.js.map +1 -1
  185. package/build-module/components/global-styles/color-panel.js +3 -2
  186. package/build-module/components/global-styles/color-panel.js.map +1 -1
  187. package/build-module/components/global-styles/dimensions-panel.js +3 -2
  188. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  189. package/build-module/components/global-styles/filters-panel.js +3 -2
  190. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  191. package/build-module/components/global-styles/hooks.js +8 -0
  192. package/build-module/components/global-styles/hooks.js.map +1 -1
  193. package/build-module/components/global-styles/image-settings-panel.js +3 -2
  194. package/build-module/components/global-styles/image-settings-panel.js.map +1 -1
  195. package/build-module/components/global-styles/typography-panel.js +52 -14
  196. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  197. package/build-module/components/global-styles/typography-utils.js +48 -0
  198. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  199. package/build-module/components/global-styles/use-global-styles-output.js +23 -8
  200. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  201. package/build-module/components/global-styles/utils.js +15 -6
  202. package/build-module/components/global-styles/utils.js.map +1 -1
  203. package/build-module/components/grid/grid-item-movers.js +11 -14
  204. package/build-module/components/grid/grid-item-movers.js.map +1 -1
  205. package/build-module/components/grid/grid-item-resizer.js +2 -2
  206. package/build-module/components/grid/grid-item-resizer.js.map +1 -1
  207. package/build-module/components/grid/grid-visualizer.js +117 -37
  208. package/build-module/components/grid/grid-visualizer.js.map +1 -1
  209. package/build-module/components/grid/use-grid-layout-sync.js +29 -22
  210. package/build-module/components/grid/use-grid-layout-sync.js.map +1 -1
  211. package/build-module/components/inner-blocks/index.js +1 -1
  212. package/build-module/components/inner-blocks/index.js.map +1 -1
  213. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +1 -19
  214. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -1
  215. package/build-module/components/inserter/menu.js +26 -4
  216. package/build-module/components/inserter/menu.js.map +1 -1
  217. package/build-module/components/inserter/quick-inserter.js +2 -1
  218. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  219. package/build-module/components/inspector-controls/block-support-tools-panel.js +3 -2
  220. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  221. package/build-module/components/link-control/link-preview.js +1 -1
  222. package/build-module/components/link-control/link-preview.js.map +1 -1
  223. package/build-module/components/media-placeholder/index.js +19 -23
  224. package/build-module/components/media-placeholder/index.js.map +1 -1
  225. package/build-module/components/navigable-toolbar/index.js +3 -1
  226. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  227. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +5 -1
  228. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  229. package/build-module/components/tabbed-sidebar/index.js +60 -0
  230. package/build-module/components/tabbed-sidebar/index.js.map +1 -0
  231. package/build-module/components/url-popover/index.js +3 -0
  232. package/build-module/components/url-popover/index.js.map +1 -1
  233. package/build-module/hooks/background.js +26 -4
  234. package/build-module/hooks/background.js.map +1 -1
  235. package/build-module/hooks/block-hooks.js +11 -17
  236. package/build-module/hooks/block-hooks.js.map +1 -1
  237. package/build-module/hooks/block-style-variation.js +168 -4
  238. package/build-module/hooks/block-style-variation.js.map +1 -1
  239. package/build-module/hooks/duotone.js +16 -11
  240. package/build-module/hooks/duotone.js.map +1 -1
  241. package/build-module/hooks/grid-visualizer.js +64 -0
  242. package/build-module/hooks/grid-visualizer.js.map +1 -0
  243. package/build-module/hooks/index.js +3 -0
  244. package/build-module/hooks/index.js.map +1 -1
  245. package/build-module/hooks/layout-child.js +39 -22
  246. package/build-module/hooks/layout-child.js.map +1 -1
  247. package/build-module/hooks/position.js +2 -9
  248. package/build-module/hooks/position.js.map +1 -1
  249. package/build-module/hooks/use-bindings-attributes.js +16 -6
  250. package/build-module/hooks/use-bindings-attributes.js.map +1 -1
  251. package/build-module/hooks/utils.js +2 -0
  252. package/build-module/hooks/utils.js.map +1 -1
  253. package/build-module/layouts/constrained.js +44 -2
  254. package/build-module/layouts/constrained.js.map +1 -1
  255. package/build-module/layouts/grid.js +90 -51
  256. package/build-module/layouts/grid.js.map +1 -1
  257. package/build-module/private-apis.js +8 -3
  258. package/build-module/private-apis.js.map +1 -1
  259. package/build-module/store/defaults.js +0 -2
  260. package/build-module/store/defaults.js.map +1 -1
  261. package/build-module/store/defaults.native.js +0 -3
  262. package/build-module/store/defaults.native.js.map +1 -1
  263. package/build-module/store/private-keys.js +1 -0
  264. package/build-module/store/private-keys.js.map +1 -1
  265. package/build-module/utils/format-font-style.js +39 -0
  266. package/build-module/utils/format-font-style.js.map +1 -0
  267. package/build-module/utils/format-font-weight.js +62 -0
  268. package/build-module/utils/format-font-weight.js.map +1 -0
  269. package/build-module/utils/get-editor-region.js +28 -0
  270. package/build-module/utils/get-editor-region.js.map +1 -0
  271. package/build-module/utils/get-font-styles-and-weights.js +160 -0
  272. package/build-module/utils/get-font-styles-and-weights.js.map +1 -0
  273. package/build-module/utils/pasting.js +5 -13
  274. package/build-module/utils/pasting.js.map +1 -1
  275. package/build-style/content-rtl.css +1 -0
  276. package/build-style/content.css +1 -0
  277. package/build-style/style-rtl.css +207 -96
  278. package/build-style/style.css +207 -96
  279. package/package.json +32 -32
  280. package/src/components/block-breadcrumb/index.js +16 -1
  281. package/src/components/block-lock/toolbar.js +0 -1
  282. package/src/components/block-mover/button.js +1 -1
  283. package/src/components/block-mover/index.js +1 -1
  284. package/src/components/block-pattern-setup/setup-toolbar.js +2 -2
  285. package/src/components/block-patterns-paging/index.js +8 -11
  286. package/src/components/block-patterns-paging/style.scss +18 -0
  287. package/src/components/block-quick-navigation/index.js +21 -28
  288. package/src/components/block-rename/modal.js +2 -8
  289. package/src/components/block-switcher/test/index.js +6 -6
  290. package/src/components/block-toolbar/shuffle.js +1 -0
  291. package/src/components/block-toolbar/style.scss +1 -11
  292. package/src/components/block-tools/block-selection-button.js +11 -83
  293. package/src/components/block-tools/block-toolbar-breadcrumb.js +9 -4
  294. package/src/components/block-tools/index.js +21 -1
  295. package/src/components/block-tools/style.scss +15 -0
  296. package/src/components/block-tools/use-show-block-tools.js +14 -6
  297. package/src/components/block-tools/zoom-out-mode-inserters.js +5 -4
  298. package/src/components/block-tools/zoom-out-popover.js +49 -0
  299. package/src/components/block-tools/zoom-out-toolbar.js +140 -0
  300. package/src/components/button-block-appender/index.js +2 -1
  301. package/src/components/child-layout-control/index.js +41 -23
  302. package/src/components/date-format-picker/index.js +10 -1
  303. package/src/components/date-format-picker/style.scss +0 -9
  304. package/src/components/dimensions-tool/index.js +97 -89
  305. package/src/components/font-appearance-control/index.js +29 -83
  306. package/src/components/font-appearance-control/style.scss +3 -5
  307. package/src/components/global-styles/background-panel.js +249 -170
  308. package/src/components/global-styles/border-panel.js +3 -2
  309. package/src/components/global-styles/color-panel.js +3 -2
  310. package/src/components/global-styles/dimensions-panel.js +3 -2
  311. package/src/components/global-styles/filters-panel.js +3 -2
  312. package/src/components/global-styles/hooks.js +9 -0
  313. package/src/components/global-styles/image-settings-panel.js +3 -2
  314. package/src/components/global-styles/style.scss +105 -20
  315. package/src/components/global-styles/test/typography-utils.js +269 -0
  316. package/src/components/global-styles/typography-panel.js +49 -12
  317. package/src/components/global-styles/typography-utils.js +63 -0
  318. package/src/components/global-styles/use-global-styles-output.js +23 -8
  319. package/src/components/global-styles/utils.js +17 -6
  320. package/src/components/grid/grid-item-movers.js +11 -27
  321. package/src/components/grid/grid-item-resizer.js +3 -2
  322. package/src/components/grid/grid-visualizer.js +171 -54
  323. package/src/components/grid/style.scss +43 -8
  324. package/src/components/grid/use-grid-layout-sync.js +31 -28
  325. package/src/components/iframe/content.scss +1 -0
  326. package/src/components/inner-blocks/index.js +2 -1
  327. package/src/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +1 -16
  328. package/src/components/inserter/menu.js +47 -13
  329. package/src/components/inserter/quick-inserter.js +6 -1
  330. package/src/components/inserter/style.scss +1 -49
  331. package/src/components/inspector-controls/block-support-tools-panel.js +3 -3
  332. package/src/components/link-control/link-preview.js +1 -1
  333. package/src/components/media-placeholder/index.js +22 -32
  334. package/src/components/navigable-toolbar/index.js +3 -1
  335. package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +6 -1
  336. package/src/components/tabbed-sidebar/README.md +76 -0
  337. package/src/components/tabbed-sidebar/index.js +70 -0
  338. package/src/components/tabbed-sidebar/style.scss +53 -0
  339. package/src/components/url-popover/index.js +3 -0
  340. package/src/hooks/background.js +25 -10
  341. package/src/hooks/block-hooks.js +9 -16
  342. package/src/hooks/block-style-variation.js +202 -3
  343. package/src/hooks/duotone.js +16 -12
  344. package/src/hooks/grid-visualizer.js +64 -0
  345. package/src/hooks/index.js +3 -0
  346. package/src/hooks/layout-child.js +53 -37
  347. package/src/hooks/position.js +3 -10
  348. package/src/hooks/test/get-variation-styles-with-ref-values.js +91 -0
  349. package/src/hooks/use-bindings-attributes.js +18 -4
  350. package/src/hooks/utils.js +2 -0
  351. package/src/layouts/constrained.js +43 -2
  352. package/src/layouts/grid.js +146 -51
  353. package/src/private-apis.js +12 -1
  354. package/src/store/defaults.js +0 -2
  355. package/src/store/defaults.native.js +0 -3
  356. package/src/store/private-keys.js +1 -0
  357. package/src/style.scss +1 -1
  358. package/src/utils/format-font-style.js +40 -0
  359. package/src/utils/format-font-weight.js +63 -0
  360. package/src/utils/get-editor-region.js +31 -0
  361. package/src/utils/get-font-styles-and-weights.js +191 -0
  362. package/src/utils/pasting.js +5 -12
  363. package/src/utils/test/format-font-style.js +34 -0
  364. package/src/utils/test/format-font-weight.js +66 -0
  365. package/src/utils/test/get-font-styles-and-weights.js +513 -0
  366. package/tsconfig.tsbuildinfo +1 -1
  367. package/src/hooks/position.scss +0 -18
@@ -407,6 +407,17 @@ iframe[name=editor-canvas] {
407
407
  left: 50%;
408
408
  }
409
409
 
410
+ .zoom-out-toolbar .block-editor-block-mover-button.block-editor-block-mover-button:focus-visible::before,
411
+ .zoom-out-toolbar .zoom-out-toolbar-button:focus::before,
412
+ .zoom-out-toolbar .block-editor-block-toolbar-shuffle:focus::before,
413
+ .zoom-out-toolbar .block-selection-button_drag-handle:focus::before {
414
+ box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);
415
+ }
416
+ .zoom-out-toolbar .block-editor-block-mover {
417
+ background: none;
418
+ border: none;
419
+ }
420
+
410
421
  .block-editor-block-lock-modal {
411
422
  z-index: 1000001;
412
423
  }
@@ -893,6 +904,23 @@ iframe[name=editor-canvas] {
893
904
  .show-icon-labels .block-editor-patterns__grid-pagination .components-button::before {
894
905
  content: attr(aria-label);
895
906
  }
907
+ @media screen and (min-width: 960px) {
908
+ .show-icon-labels .block-editor-patterns__grid-pagination {
909
+ flex-direction: row;
910
+ }
911
+ .show-icon-labels .block-editor-patterns__grid-pagination .block-editor-patterns__grid-pagination-previous,
912
+ .show-icon-labels .block-editor-patterns__grid-pagination .block-editor-patterns__grid-pagination-next {
913
+ flex-direction: row;
914
+ }
915
+ }
916
+
917
+ .block-editor-block-patterns-list .block-editor-patterns__grid-pagination {
918
+ flex-direction: column;
919
+ }
920
+ .block-editor-block-patterns-list .block-editor-patterns__grid-pagination .block-editor-patterns__grid-pagination-previous,
921
+ .block-editor-block-patterns-list .block-editor-patterns__grid-pagination .block-editor-patterns__grid-pagination-next {
922
+ flex-direction: column;
923
+ }
896
924
 
897
925
  .components-popover.block-editor-block-popover {
898
926
  z-index: 31;
@@ -1518,13 +1546,6 @@ iframe[name=editor-canvas] {
1518
1546
  .block-editor-date-format-picker__custom-format-select-control__custom-option {
1519
1547
  border-top: 1px solid #ddd;
1520
1548
  }
1521
- .block-editor-date-format-picker__custom-format-select-control__custom-option.has-hint {
1522
- grid-template-columns: auto 30px;
1523
- }
1524
- .block-editor-date-format-picker__custom-format-select-control__custom-option .components-custom-select-control__item-hint {
1525
- grid-row: 2;
1526
- text-align: left;
1527
- }
1528
1549
 
1529
1550
  .block-editor-duotone-control__popover > .components-popover__content {
1530
1551
  padding: 16px;
@@ -1544,7 +1565,7 @@ iframe[name=editor-canvas] {
1544
1565
  background: linear-gradient(-45deg, transparent 48%, #ddd 48%, #ddd 52%, transparent 52%);
1545
1566
  }
1546
1567
 
1547
- .components-font-appearance-control ul li {
1568
+ .components-font-appearance-control [role=option] {
1548
1569
  color: #1e1e1e;
1549
1570
  text-transform: capitalize;
1550
1571
  }
@@ -1613,40 +1634,76 @@ iframe[name=editor-canvas] {
1613
1634
  }
1614
1635
 
1615
1636
  .block-editor-global-styles-background-panel__inspector-media-replace-container {
1616
- position: relative;
1637
+ border: 1px solid #ddd;
1638
+ border-radius: 2px;
1639
+ grid-column: 1/-1;
1640
+ }
1641
+ .block-editor-global-styles-background-panel__inspector-media-replace-container.is-open {
1642
+ background-color: #f0f0f0;
1643
+ }
1644
+ .block-editor-global-styles-background-panel__inspector-media-replace-container .block-editor-global-styles-background-panel__image-tools-panel-item {
1645
+ flex-grow: 1;
1646
+ border: 0;
1617
1647
  }
1618
- .block-editor-global-styles-background-panel__inspector-media-replace-container .components-drop-zone__content-icon {
1648
+ .block-editor-global-styles-background-panel__inspector-media-replace-container .block-editor-global-styles-background-panel__image-tools-panel-item .components-dropdown {
1649
+ display: block;
1650
+ }
1651
+ .block-editor-global-styles-background-panel__inspector-media-replace-container .block-editor-global-styles-background-panel__inspector-preview-inner {
1652
+ height: 100%;
1653
+ }
1654
+ .block-editor-global-styles-background-panel__inspector-media-replace-container .components-dropdown {
1655
+ display: block;
1656
+ height: 36px;
1657
+ }
1658
+
1659
+ .block-editor-global-styles-background-panel__image-tools-panel-item {
1660
+ border: 1px solid #ddd;
1661
+ border-radius: 2px;
1662
+ grid-column: 1/-1;
1663
+ }
1664
+ .block-editor-global-styles-background-panel__image-tools-panel-item .components-drop-zone__content-icon {
1619
1665
  display: none;
1620
1666
  }
1621
- .block-editor-global-styles-background-panel__inspector-media-replace-container button.components-button {
1667
+ .block-editor-global-styles-background-panel__image-tools-panel-item .components-dropdown {
1668
+ display: block;
1669
+ height: 36px;
1670
+ }
1671
+ .block-editor-global-styles-background-panel__image-tools-panel-item button.components-button {
1622
1672
  color: #1e1e1e;
1623
- box-shadow: inset 0 0 0 1px #ccc;
1624
1673
  width: 100%;
1625
1674
  display: block;
1626
- height: 40px;
1627
1675
  }
1628
- .block-editor-global-styles-background-panel__inspector-media-replace-container button.components-button:hover {
1676
+ .block-editor-global-styles-background-panel__image-tools-panel-item button.components-button:hover {
1629
1677
  color: var(--wp-admin-theme-color);
1630
1678
  }
1631
- .block-editor-global-styles-background-panel__inspector-media-replace-container button.components-button:focus {
1679
+ .block-editor-global-styles-background-panel__image-tools-panel-item button.components-button:focus {
1632
1680
  box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);
1633
1681
  }
1634
- .block-editor-global-styles-background-panel__inspector-media-replace-container .block-editor-global-styles-background-panel__inspector-media-replace-title {
1682
+
1683
+ .block-editor-global-styles-background-panel__image-preview-content,
1684
+ .block-editor-global-styles-background-panel__dropdown-toggle {
1685
+ height: 100%;
1686
+ width: 100%;
1687
+ padding-left: 12px;
1688
+ }
1689
+
1690
+ .block-editor-global-styles-background-panel__dropdown-toggle {
1691
+ cursor: pointer;
1692
+ background: transparent;
1693
+ border: none;
1694
+ }
1695
+
1696
+ .block-editor-global-styles-background-panel__inspector-media-replace-title {
1635
1697
  word-break: break-all;
1636
1698
  white-space: normal;
1637
1699
  text-align: start;
1638
1700
  text-align-last: center;
1639
1701
  }
1640
- .block-editor-global-styles-background-panel__inspector-media-replace-container .components-dropdown {
1641
- display: block;
1642
- }
1643
1702
 
1644
- .block-editor-global-styles-background-panel__inspector-image-indicator-wrapper {
1645
- display: block;
1703
+ .block-editor-global-styles-background-panel__inspector-preview-inner .block-editor-global-styles-background-panel__inspector-image-indicator-wrapper {
1646
1704
  width: 20px;
1647
1705
  height: 20px;
1648
- flex: none;
1649
- background: #fff;
1706
+ min-width: auto;
1650
1707
  }
1651
1708
 
1652
1709
  .block-editor-global-styles-background-panel__inspector-image-indicator {
@@ -1671,6 +1728,44 @@ iframe[name=editor-canvas] {
1671
1728
  box-sizing: inherit;
1672
1729
  }
1673
1730
 
1731
+ .block-editor-global-styles-background-panel__dropdown-content-wrapper {
1732
+ min-width: 260px;
1733
+ overflow-x: hidden;
1734
+ }
1735
+ .block-editor-global-styles-background-panel__dropdown-content-wrapper .components-base-control__help,
1736
+ .block-editor-global-styles-background-panel__dropdown-content-wrapper .components-toggle-control {
1737
+ margin-bottom: 0;
1738
+ }
1739
+ .block-editor-global-styles-background-panel__dropdown-content-wrapper .components-focal-point-picker-wrapper {
1740
+ background-color: #f0f0f0;
1741
+ width: 100%;
1742
+ border-radius: 2px;
1743
+ border: 1px solid #ddd;
1744
+ }
1745
+ .block-editor-global-styles-background-panel__dropdown-content-wrapper .components-focal-point-picker__media--image {
1746
+ max-height: 180px;
1747
+ }
1748
+
1749
+ .block-editor-global-styles-background-panel__hidden-tools-panel-item {
1750
+ height: 0;
1751
+ width: 0;
1752
+ position: absolute;
1753
+ }
1754
+
1755
+ .modal-open .block-editor-global-styles-background-panel__popover {
1756
+ z-index: 159890;
1757
+ }
1758
+
1759
+ .block-editor-global-styles-background-panel__media-replace-popover .components-popover__content {
1760
+ width: 226px;
1761
+ }
1762
+ .block-editor-global-styles-background-panel__media-replace-popover .components-button {
1763
+ padding: 0 8px;
1764
+ }
1765
+ .block-editor-global-styles-background-panel__media-replace-popover .components-button .components-menu-items__item-icon.has-icon-right {
1766
+ margin-left: 16px;
1767
+ }
1768
+
1674
1769
  .block-editor-grid-visualizer.block-editor-grid-visualizer.block-editor-grid-visualizer {
1675
1770
  z-index: 30;
1676
1771
  }
@@ -1680,28 +1775,56 @@ iframe[name=editor-canvas] {
1680
1775
  .block-editor-grid-visualizer.block-editor-grid-visualizer.block-editor-grid-visualizer.is-dropping-allowed .block-editor-grid-visualizer__drop-zone {
1681
1776
  pointer-events: all;
1682
1777
  }
1778
+ .block-editor-grid-visualizer.block-editor-grid-visualizer.block-editor-grid-visualizer .block-editor-inserter * {
1779
+ pointer-events: auto;
1780
+ }
1683
1781
 
1684
1782
  .block-editor-grid-visualizer__grid {
1685
1783
  display: grid;
1686
1784
  }
1687
1785
 
1688
1786
  .block-editor-grid-visualizer__cell {
1689
- align-items: center;
1690
- display: flex;
1691
- justify-content: center;
1787
+ display: grid;
1788
+ position: relative;
1789
+ }
1790
+ .block-editor-grid-visualizer__cell .block-editor-inserter {
1791
+ color: inherit;
1792
+ z-index: 32;
1793
+ position: absolute;
1794
+ top: 0;
1795
+ bottom: 0;
1796
+ left: 0;
1797
+ right: 0;
1798
+ overflow: hidden;
1799
+ }
1800
+ .block-editor-grid-visualizer__cell .block-editor-inserter .block-editor-grid-visualizer__appender {
1801
+ box-shadow: inset 0 0 0 1px color-mix(in srgb, currentColor 20%, #0000);
1802
+ color: inherit;
1803
+ overflow: hidden;
1804
+ height: 100%;
1805
+ width: 100%;
1806
+ padding: 0 !important;
1807
+ opacity: 0;
1808
+ }
1809
+ .block-editor-grid-visualizer__cell.is-highlighted .block-editor-inserter,
1810
+ .block-editor-grid-visualizer__cell.is-highlighted .block-editor-grid-visualizer__drop-zone {
1811
+ background: var(--wp-admin-theme-color);
1812
+ }
1813
+ .block-editor-grid-visualizer__cell:hover .block-editor-grid-visualizer__appender,
1814
+ .block-editor-grid-visualizer__cell .block-editor-grid-visualizer__appender:focus {
1815
+ opacity: 1;
1816
+ background-color: color-mix(in srgb, currentColor 20%, #0000);
1692
1817
  }
1693
1818
 
1694
1819
  .block-editor-grid-visualizer__drop-zone {
1695
1820
  background: rgba(204, 204, 204, 0.1);
1696
- border: 1px dotted #ddd;
1697
1821
  width: 100%;
1698
1822
  height: 100%;
1823
+ grid-column: 1;
1824
+ grid-row: 1;
1699
1825
  min-width: 8px;
1700
1826
  min-height: 8px;
1701
1827
  }
1702
- .block-editor-grid-visualizer__drop-zone.is-highlighted {
1703
- background: var(--wp-admin-theme-color);
1704
- }
1705
1828
 
1706
1829
  .block-editor-grid-item-resizer.block-editor-grid-item-resizer.block-editor-grid-item-resizer {
1707
1830
  z-index: 30;
@@ -2988,6 +3111,58 @@ iframe[name=editor-canvas] {
2988
3111
  z-index: 100000;
2989
3112
  }
2990
3113
 
3114
+ .block-editor-tabbed-sidebar {
3115
+ height: 100%;
3116
+ display: flex;
3117
+ flex-direction: column;
3118
+ flex-grow: 1;
3119
+ overflow: hidden;
3120
+ }
3121
+ @media (min-width: 782px) {
3122
+ .block-editor-tabbed-sidebar {
3123
+ width: 350px;
3124
+ }
3125
+ }
3126
+
3127
+ .block-editor-tabbed-sidebar__tablist-and-close-button {
3128
+ border-bottom: 1px solid #ddd;
3129
+ display: flex;
3130
+ justify-content: space-between;
3131
+ padding-right: 12px;
3132
+ }
3133
+
3134
+ .block-editor-tabbed-sidebar__close-button {
3135
+ background: #fff;
3136
+ /* stylelint-disable-next-line property-disallowed-list -- This should be removed when https://github.com/WordPress/gutenberg/issues/59013 is fixed. */
3137
+ order: 1;
3138
+ align-self: center;
3139
+ }
3140
+
3141
+ .block-editor-tabbed-sidebar__tablist {
3142
+ box-sizing: border-box;
3143
+ flex-grow: 1;
3144
+ margin-bottom: -1px;
3145
+ width: 100%;
3146
+ }
3147
+
3148
+ .block-editor-tabbed-sidebar__tab {
3149
+ flex-grow: 1;
3150
+ margin-bottom: -1px;
3151
+ }
3152
+ .block-editor-tabbed-sidebar__tab[id$=reusable] {
3153
+ flex-grow: inherit;
3154
+ padding-left: 16px;
3155
+ padding-right: 16px;
3156
+ }
3157
+
3158
+ .block-editor-tabbed-sidebar__tabpanel {
3159
+ display: flex;
3160
+ flex-grow: 1;
3161
+ flex-direction: column;
3162
+ overflow-y: auto;
3163
+ scrollbar-gutter: auto;
3164
+ }
3165
+
2991
3166
  .block-editor-tool-selector__help {
2992
3167
  margin-top: 8px;
2993
3168
  margin-left: -8px;
@@ -3370,20 +3545,6 @@ iframe[name=editor-canvas] {
3370
3545
  margin-bottom: 16px;
3371
3546
  }
3372
3547
 
3373
- .block-editor-hooks__position-selection__select-control .components-custom-select-control__hint {
3374
- display: none;
3375
- }
3376
-
3377
- .block-editor-hooks__position-selection__select-control__option.has-hint {
3378
- grid-template-columns: auto 30px;
3379
- line-height: 1.4;
3380
- margin-bottom: 0;
3381
- }
3382
- .block-editor-hooks__position-selection__select-control__option .components-custom-select-control__item-hint {
3383
- grid-row: 2;
3384
- text-align: left;
3385
- }
3386
-
3387
3548
  .block-editor__spacing-visualizer {
3388
3549
  position: absolute;
3389
3550
  top: 0;
@@ -3427,7 +3588,6 @@ iframe[name=editor-canvas] {
3427
3588
  .block-editor-block-toolbar .components-toolbar-group,
3428
3589
  .block-editor-block-toolbar .components-toolbar {
3429
3590
  background: none;
3430
- line-height: 0;
3431
3591
  margin-top: -1px;
3432
3592
  margin-bottom: -1px;
3433
3593
  border: 0;
@@ -3537,13 +3697,7 @@ iframe[name=editor-canvas] {
3537
3697
  }
3538
3698
 
3539
3699
  .block-editor-block-toolbar__slot {
3540
- display: inline-block;
3541
- line-height: 0;
3542
- }
3543
- @supports (position: sticky) {
3544
- .block-editor-block-toolbar__slot {
3545
- display: inline-flex;
3546
- }
3700
+ display: inline-flex;
3547
3701
  }
3548
3702
 
3549
3703
  .show-icon-labels .block-editor-block-toolbar .components-button.has-icon {
@@ -3644,20 +3798,13 @@ iframe[name=editor-canvas] {
3644
3798
  }
3645
3799
 
3646
3800
  .block-editor-inserter__main-area {
3647
- position: relative;
3648
- display: flex;
3649
- flex-direction: column;
3650
3801
  height: 100%;
3651
3802
  gap: 16px;
3803
+ position: relative;
3652
3804
  }
3653
3805
  .block-editor-inserter__main-area.show-as-tabs {
3654
3806
  gap: 0;
3655
3807
  }
3656
- @media (min-width: 782px) {
3657
- .block-editor-inserter__main-area {
3658
- width: 350px;
3659
- }
3660
- }
3661
3808
 
3662
3809
  .block-editor-inserter__popover.is-quick .components-popover__content {
3663
3810
  border: none;
@@ -3732,42 +3879,6 @@ iframe[name=editor-canvas] {
3732
3879
  padding: 16px 16px 0 16px;
3733
3880
  }
3734
3881
 
3735
- .block-editor-inserter__tabs {
3736
- flex-grow: 1;
3737
- display: flex;
3738
- flex-direction: column;
3739
- overflow: hidden;
3740
- }
3741
- .block-editor-inserter__tabs .block-editor-inserter__tablist-and-close-button {
3742
- border-bottom: 1px solid #ddd;
3743
- padding-right: 12px;
3744
- display: flex;
3745
- justify-content: space-between;
3746
- }
3747
- .block-editor-inserter__tabs .block-editor-inserter__close-button {
3748
- /* stylelint-disable-next-line property-disallowed-list -- This should be refactored to avoid order if possible */
3749
- order: 1;
3750
- align-self: center;
3751
- }
3752
- .block-editor-inserter__tabs .block-editor-inserter__tablist {
3753
- width: 100%;
3754
- margin-bottom: -1px;
3755
- }
3756
- .block-editor-inserter__tabs .block-editor-inserter__tablist button[role=tab] {
3757
- flex-grow: 1;
3758
- }
3759
- .block-editor-inserter__tabs .block-editor-inserter__tablist button[role=tab][id$=reusable] {
3760
- flex-grow: inherit;
3761
- padding-left: 16px;
3762
- padding-right: 16px;
3763
- }
3764
- .block-editor-inserter__tabs .block-editor-inserter__tabpanel {
3765
- display: flex;
3766
- flex-grow: 1;
3767
- flex-direction: column;
3768
- overflow-y: auto;
3769
- }
3770
-
3771
3882
  .block-editor-inserter__no-tab-container {
3772
3883
  overflow-y: auto;
3773
3884
  flex-grow: 1;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/block-editor",
3
- "version": "13.2.0",
3
+ "version": "13.3.0",
4
4
  "description": "Generic block editor.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -36,35 +36,35 @@
36
36
  "@emotion/react": "^11.7.1",
37
37
  "@emotion/styled": "^11.6.0",
38
38
  "@react-spring/web": "^9.4.5",
39
- "@wordpress/a11y": "^4.2.0",
40
- "@wordpress/api-fetch": "^7.2.0",
41
- "@wordpress/blob": "^4.2.0",
42
- "@wordpress/blocks": "^13.2.0",
43
- "@wordpress/commands": "^1.2.0",
44
- "@wordpress/components": "^28.2.0",
45
- "@wordpress/compose": "^7.2.0",
46
- "@wordpress/data": "^10.2.0",
47
- "@wordpress/date": "^5.2.0",
48
- "@wordpress/deprecated": "^4.2.0",
49
- "@wordpress/dom": "^4.2.0",
50
- "@wordpress/element": "^6.2.0",
51
- "@wordpress/escape-html": "^3.2.0",
52
- "@wordpress/hooks": "^4.2.0",
53
- "@wordpress/html-entities": "^4.2.0",
54
- "@wordpress/i18n": "^5.2.0",
55
- "@wordpress/icons": "^10.2.0",
56
- "@wordpress/is-shallow-equal": "^5.2.0",
57
- "@wordpress/keyboard-shortcuts": "^5.2.0",
58
- "@wordpress/keycodes": "^4.2.0",
59
- "@wordpress/notices": "^5.2.0",
60
- "@wordpress/preferences": "^4.2.0",
61
- "@wordpress/private-apis": "^1.2.0",
62
- "@wordpress/rich-text": "^7.2.0",
63
- "@wordpress/style-engine": "^2.2.0",
64
- "@wordpress/token-list": "^3.2.0",
65
- "@wordpress/url": "^4.2.0",
66
- "@wordpress/warning": "^3.2.0",
67
- "@wordpress/wordcount": "^4.2.0",
39
+ "@wordpress/a11y": "^4.3.0",
40
+ "@wordpress/api-fetch": "^7.3.0",
41
+ "@wordpress/blob": "^4.3.0",
42
+ "@wordpress/blocks": "^13.3.0",
43
+ "@wordpress/commands": "^1.3.0",
44
+ "@wordpress/components": "^28.3.0",
45
+ "@wordpress/compose": "^7.3.0",
46
+ "@wordpress/data": "^10.3.0",
47
+ "@wordpress/date": "^5.3.0",
48
+ "@wordpress/deprecated": "^4.3.0",
49
+ "@wordpress/dom": "^4.3.0",
50
+ "@wordpress/element": "^6.3.0",
51
+ "@wordpress/escape-html": "^3.3.0",
52
+ "@wordpress/hooks": "^4.3.0",
53
+ "@wordpress/html-entities": "^4.3.0",
54
+ "@wordpress/i18n": "^5.3.0",
55
+ "@wordpress/icons": "^10.3.0",
56
+ "@wordpress/is-shallow-equal": "^5.3.0",
57
+ "@wordpress/keyboard-shortcuts": "^5.3.0",
58
+ "@wordpress/keycodes": "^4.3.0",
59
+ "@wordpress/notices": "^5.3.0",
60
+ "@wordpress/preferences": "^4.3.0",
61
+ "@wordpress/private-apis": "^1.3.0",
62
+ "@wordpress/rich-text": "^7.3.0",
63
+ "@wordpress/style-engine": "^2.3.0",
64
+ "@wordpress/token-list": "^3.3.0",
65
+ "@wordpress/url": "^4.3.0",
66
+ "@wordpress/warning": "^3.3.0",
67
+ "@wordpress/wordcount": "^4.3.0",
68
68
  "change-case": "^4.1.2",
69
69
  "clsx": "^2.1.1",
70
70
  "colord": "^2.7.0",
@@ -74,7 +74,7 @@
74
74
  "memize": "^2.1.0",
75
75
  "postcss": "^8.4.21",
76
76
  "postcss-prefixwrap": "^1.41.0",
77
- "postcss-urlrebase": "^1.0.0",
77
+ "postcss-urlrebase": "^1.4.0",
78
78
  "react-autosize-textarea": "^7.1.0",
79
79
  "react-easy-crop": "^5.0.6",
80
80
  "remove-accents": "^0.5.0"
@@ -86,5 +86,5 @@
86
86
  "publishConfig": {
87
87
  "access": "public"
88
88
  },
89
- "gitHead": "aa5b14bb5bdbb8d8a02914e154c3bc1c2f18ace6"
89
+ "gitHead": "122867d355ca4edc63d3a3bbd9411d3a2e1458df"
90
90
  }
@@ -12,6 +12,8 @@ import { chevronRightSmall, Icon } from '@wordpress/icons';
12
12
  import BlockTitle from '../block-title';
13
13
  import { store as blockEditorStore } from '../../store';
14
14
  import { unlock } from '../../lock-unlock';
15
+ import { __unstableUseBlockRef as useBlockRef } from '../block-list/use-block-props/use-block-refs';
16
+ import getEditorRegion from '../../utils/get-editor-region';
15
17
 
16
18
  /**
17
19
  * Block breadcrumb component, displaying the hierarchy of the current block selection as a breadcrumb.
@@ -37,6 +39,10 @@ function BlockBreadcrumb( { rootLabelText } ) {
37
39
  }, [] );
38
40
  const rootLabel = rootLabelText || __( 'Document' );
39
41
 
42
+ // We don't care about this specific ref, but this is a way
43
+ // to get a ref within the editor canvas so we can focus it later.
44
+ const blockRef = useBlockRef( clientId );
45
+
40
46
  /*
41
47
  * Disable reason: The `list` ARIA role is redundant but
42
48
  * Safari+VoiceOver won't announce the list otherwise.
@@ -60,7 +66,16 @@ function BlockBreadcrumb( { rootLabelText } ) {
60
66
  <Button
61
67
  className="block-editor-block-breadcrumb__button"
62
68
  variant="tertiary"
63
- onClick={ clearSelectedBlock }
69
+ onClick={ () => {
70
+ // Find the block editor wrapper for the selected block
71
+ const blockEditor = blockRef.current?.closest(
72
+ '.editor-styles-wrapper'
73
+ );
74
+
75
+ clearSelectedBlock();
76
+
77
+ getEditorRegion( blockEditor )?.focus();
78
+ } }
64
79
  >
65
80
  { rootLabel }
66
81
  </Button>
@@ -47,7 +47,6 @@ export default function BlockLockToolbar( { clientId } ) {
47
47
  <>
48
48
  <ToolbarGroup className="block-editor-block-lock-toolbar">
49
49
  <ToolbarButton
50
- accessibleWhenDisabled
51
50
  disabled={ ! canLock }
52
51
  icon={ isLocked ? lock : unlock }
53
52
  label={ label }
@@ -143,7 +143,7 @@ const BlockMoverButton = forwardRef(
143
143
  { ...props }
144
144
  onClick={ isDisabled ? null : onClick }
145
145
  disabled={ isDisabled }
146
- __experimentalIsFocusable
146
+ accessibleWhenDisabled
147
147
  />
148
148
  <VisuallyHidden id={ descriptionId }>
149
149
  { getBlockMoverDescription(
@@ -62,7 +62,7 @@ function BlockMover( {
62
62
  orientation: getBlockListSettings( _rootClientId )?.orientation,
63
63
  isManualGrid:
64
64
  layout.type === 'grid' &&
65
- !! layout.columnCount &&
65
+ layout.isManualPlacement &&
66
66
  window.__experimentalEnableGridInteractivity,
67
67
  };
68
68
  },
@@ -35,14 +35,14 @@ const CarouselNavigation = ( {
35
35
  label={ __( 'Previous pattern' ) }
36
36
  onClick={ handlePrevious }
37
37
  disabled={ activeSlide === 0 }
38
- __experimentalIsFocusable
38
+ accessibleWhenDisabled
39
39
  />
40
40
  <Button
41
41
  icon={ chevronRight }
42
42
  label={ __( 'Next pattern' ) }
43
43
  onClick={ handleNext }
44
44
  disabled={ activeSlide === totalSlides - 1 }
45
- __experimentalIsFocusable
45
+ accessibleWhenDisabled
46
46
  />
47
47
  </div>
48
48
  );
@@ -18,14 +18,11 @@ export default function Pagination( {
18
18
  return (
19
19
  <VStack className="block-editor-patterns__grid-pagination-wrapper">
20
20
  <Text variant="muted">
21
- {
21
+ { sprintf(
22
22
  // translators: %s: Total number of patterns.
23
- sprintf(
24
- // translators: %s: Total number of patterns.
25
- _n( '%s item', '%s items', totalItems ),
26
- totalItems
27
- )
28
- }
23
+ _n( '%s item', '%s items', totalItems ),
24
+ totalItems
25
+ ) }
29
26
  </Text>
30
27
 
31
28
  { numPages > 1 && (
@@ -45,7 +42,7 @@ export default function Pagination( {
45
42
  onClick={ () => changePage( 1 ) }
46
43
  disabled={ currentPage === 1 }
47
44
  aria-label={ __( 'First page' ) }
48
- __experimentalIsFocusable
45
+ accessibleWhenDisabled
49
46
  >
50
47
  <span>«</span>
51
48
  </Button>
@@ -54,7 +51,7 @@ export default function Pagination( {
54
51
  onClick={ () => changePage( currentPage - 1 ) }
55
52
  disabled={ currentPage === 1 }
56
53
  aria-label={ __( 'Previous page' ) }
57
- __experimentalIsFocusable
54
+ accessibleWhenDisabled
58
55
  >
59
56
  <span>‹</span>
60
57
  </Button>
@@ -77,7 +74,7 @@ export default function Pagination( {
77
74
  onClick={ () => changePage( currentPage + 1 ) }
78
75
  disabled={ currentPage === numPages }
79
76
  aria-label={ __( 'Next page' ) }
80
- __experimentalIsFocusable
77
+ accessibleWhenDisabled
81
78
  >
82
79
  <span>›</span>
83
80
  </Button>
@@ -87,7 +84,7 @@ export default function Pagination( {
87
84
  disabled={ currentPage === numPages }
88
85
  aria-label={ __( 'Last page' ) }
89
86
  size="default"
90
- __experimentalIsFocusable
87
+ accessibleWhenDisabled
91
88
  >
92
89
  <span>»</span>
93
90
  </Button>
@@ -42,4 +42,22 @@
42
42
  }
43
43
  }
44
44
  }
45
+
46
+ @media screen and (min-width: $break-large) {
47
+ .block-editor-patterns__grid-pagination {
48
+ flex-direction: row;
49
+ .block-editor-patterns__grid-pagination-previous,
50
+ .block-editor-patterns__grid-pagination-next {
51
+ flex-direction: row;
52
+ }
53
+ }
54
+ }
55
+ }
56
+
57
+ .block-editor-block-patterns-list .block-editor-patterns__grid-pagination {
58
+ flex-direction: column;
59
+ .block-editor-patterns__grid-pagination-previous,
60
+ .block-editor-patterns__grid-pagination-next {
61
+ flex-direction: column;
62
+ }
45
63
  }