@wordpress/block-editor 10.3.0 → 10.5.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 (460) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +0 -1
  3. package/build/components/alignment-control/ui.js +1 -1
  4. package/build/components/alignment-control/ui.js.map +1 -1
  5. package/build/components/block-alignment-control/constants.js +1 -1
  6. package/build/components/block-alignment-control/constants.js.map +1 -1
  7. package/build/components/block-alignment-matrix-control/index.js +1 -1
  8. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  9. package/build/components/block-compare/index.js +1 -3
  10. package/build/components/block-compare/index.js.map +1 -1
  11. package/build/components/block-edit/index.js +4 -2
  12. package/build/components/block-edit/index.js.map +1 -1
  13. package/build/components/block-list/block.js +3 -1
  14. package/build/components/block-list/block.js.map +1 -1
  15. package/build/components/block-lock/menu-item.js +1 -1
  16. package/build/components/block-lock/menu-item.js.map +1 -1
  17. package/build/components/block-lock/modal.js +16 -9
  18. package/build/components/block-lock/modal.js.map +1 -1
  19. package/build/components/block-popover/inbetween.js +2 -1
  20. package/build/components/block-popover/inbetween.js.map +1 -1
  21. package/build/components/block-popover/index.js +2 -1
  22. package/build/components/block-popover/index.js.map +1 -1
  23. package/build/components/block-preview/index.js +2 -4
  24. package/build/components/block-preview/index.js.map +1 -1
  25. package/build/components/block-settings-menu/block-settings-dropdown.js +2 -8
  26. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  27. package/build/components/block-styles/utils.js +3 -3
  28. package/build/components/block-styles/utils.js.map +1 -1
  29. package/build/components/block-switcher/index.js +21 -12
  30. package/build/components/block-switcher/index.js.map +1 -1
  31. package/build/components/block-switcher/preview-block-popover.js +1 -1
  32. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  33. package/build/components/block-tools/insertion-point.js +12 -2
  34. package/build/components/block-tools/insertion-point.js.map +1 -1
  35. package/build/components/block-tools/selected-block-popover.js +27 -4
  36. package/build/components/block-tools/selected-block-popover.js.map +1 -1
  37. package/build/components/block-vertical-alignment-control/ui.js +1 -1
  38. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  39. package/build/components/border-radius-control/all-input-control.js +2 -1
  40. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  41. package/build/components/border-radius-control/index.js +2 -1
  42. package/build/components/border-radius-control/index.js.map +1 -1
  43. package/build/components/border-radius-control/input-controls.js +2 -1
  44. package/build/components/border-radius-control/input-controls.js.map +1 -1
  45. package/build/components/colors/with-colors.js +4 -3
  46. package/build/components/colors/with-colors.js.map +1 -1
  47. package/build/components/duotone-control/index.js +1 -1
  48. package/build/components/duotone-control/index.js.map +1 -1
  49. package/build/components/font-sizes/fluid-utils.js +24 -40
  50. package/build/components/font-sizes/fluid-utils.js.map +1 -1
  51. package/build/components/font-sizes/with-font-sizes.js +8 -6
  52. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  53. package/build/components/iframe/index.js +1 -1
  54. package/build/components/iframe/index.js.map +1 -1
  55. package/build/components/image-editor/constants.js +1 -1
  56. package/build/components/image-editor/constants.js.map +1 -1
  57. package/build/components/index.js +9 -0
  58. package/build/components/index.js.map +1 -1
  59. package/build/components/inner-blocks/index.js +10 -4
  60. package/build/components/inner-blocks/index.js.map +1 -1
  61. package/build/components/inserter/hooks/use-insertion-point.js +2 -7
  62. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  63. package/build/components/inserter/reusable-blocks-tab.js +4 -1
  64. package/build/components/inserter/reusable-blocks-tab.js.map +1 -1
  65. package/build/components/inserter/search-items.js +23 -2
  66. package/build/components/inserter/search-items.js.map +1 -1
  67. package/build/components/line-height-control/index.js +2 -1
  68. package/build/components/line-height-control/index.js.map +1 -1
  69. package/build/components/link-control/index.js +18 -34
  70. package/build/components/link-control/index.js.map +1 -1
  71. package/build/components/link-control/search-input.js +1 -1
  72. package/build/components/link-control/search-input.js.map +1 -1
  73. package/build/components/link-control/use-internal-input-value.js +26 -0
  74. package/build/components/link-control/use-internal-input-value.js.map +1 -0
  75. package/build/components/list-view/block.js +5 -3
  76. package/build/components/list-view/block.js.map +1 -1
  77. package/build/components/list-view/branch.js +9 -3
  78. package/build/components/list-view/branch.js.map +1 -1
  79. package/build/components/list-view/drop-indicator.js +2 -1
  80. package/build/components/list-view/drop-indicator.js.map +1 -1
  81. package/build/components/media-replace-flow/index.js +1 -1
  82. package/build/components/media-replace-flow/index.js.map +1 -1
  83. package/build/components/off-canvas-editor/block-contents.js +100 -0
  84. package/build/components/off-canvas-editor/block-contents.js.map +1 -0
  85. package/build/components/off-canvas-editor/block-select-button.js +119 -0
  86. package/build/components/off-canvas-editor/block-select-button.js.map +1 -0
  87. package/build/components/off-canvas-editor/block.js +292 -0
  88. package/build/components/off-canvas-editor/block.js.map +1 -0
  89. package/build/components/off-canvas-editor/branch.js +181 -0
  90. package/build/components/off-canvas-editor/branch.js.map +1 -0
  91. package/build/components/off-canvas-editor/context.js +19 -0
  92. package/build/components/off-canvas-editor/context.js.map +1 -0
  93. package/build/components/off-canvas-editor/drop-indicator.js +118 -0
  94. package/build/components/off-canvas-editor/drop-indicator.js.map +1 -0
  95. package/build/components/off-canvas-editor/expander.js +41 -0
  96. package/build/components/off-canvas-editor/expander.js.map +1 -0
  97. package/build/components/off-canvas-editor/index.js +204 -0
  98. package/build/components/off-canvas-editor/index.js.map +1 -0
  99. package/build/components/off-canvas-editor/leaf.js +60 -0
  100. package/build/components/off-canvas-editor/leaf.js.map +1 -0
  101. package/build/components/off-canvas-editor/use-block-selection.js +139 -0
  102. package/build/components/off-canvas-editor/use-block-selection.js.map +1 -0
  103. package/build/components/off-canvas-editor/use-list-view-client-ids.js +33 -0
  104. package/build/components/off-canvas-editor/use-list-view-client-ids.js.map +1 -0
  105. package/build/components/off-canvas-editor/use-list-view-drop-zone.js +235 -0
  106. package/build/components/off-canvas-editor/use-list-view-drop-zone.js.map +1 -0
  107. package/build/components/off-canvas-editor/use-list-view-expand-selected-item.js +60 -0
  108. package/build/components/off-canvas-editor/use-list-view-expand-selected-item.js.map +1 -0
  109. package/build/components/off-canvas-editor/utils.js +60 -0
  110. package/build/components/off-canvas-editor/utils.js.map +1 -0
  111. package/build/components/rich-text/format-toolbar/index.js +1 -1
  112. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  113. package/build/components/rich-text/format-toolbar-container.js +1 -1
  114. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  115. package/build/components/rich-text/use-paste-handler.js +1 -1
  116. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  117. package/build/components/spacing-sizes-control/all-input-control.js +6 -2
  118. package/build/components/spacing-sizes-control/all-input-control.js.map +1 -1
  119. package/build/components/spacing-sizes-control/axial-input-controls.js +6 -2
  120. package/build/components/spacing-sizes-control/axial-input-controls.js.map +1 -1
  121. package/build/components/spacing-sizes-control/index.js +6 -2
  122. package/build/components/spacing-sizes-control/index.js.map +1 -1
  123. package/build/components/spacing-sizes-control/input-controls.js +6 -2
  124. package/build/components/spacing-sizes-control/input-controls.js.map +1 -1
  125. package/build/components/spacing-sizes-control/spacing-input-control.js +12 -5
  126. package/build/components/spacing-sizes-control/spacing-input-control.js.map +1 -1
  127. package/build/components/url-input/index.js +1 -1
  128. package/build/components/url-input/index.js.map +1 -1
  129. package/build/components/url-popover/index.js +31 -2
  130. package/build/components/url-popover/index.js.map +1 -1
  131. package/build/components/use-setting/index.js +1 -1
  132. package/build/components/use-setting/index.js.map +1 -1
  133. package/build/hooks/border.js +1 -0
  134. package/build/hooks/border.js.map +1 -1
  135. package/build/hooks/color-panel.js +17 -1
  136. package/build/hooks/color-panel.js.map +1 -1
  137. package/build/hooks/color.js +1 -1
  138. package/build/hooks/color.js.map +1 -1
  139. package/build/hooks/content-lock-ui.js +13 -6
  140. package/build/hooks/content-lock-ui.js.map +1 -1
  141. package/build/hooks/dimensions.js +72 -13
  142. package/build/hooks/dimensions.js.map +1 -1
  143. package/build/hooks/font-size.js +1 -0
  144. package/build/hooks/font-size.js.map +1 -1
  145. package/build/hooks/layout.js +5 -4
  146. package/build/hooks/layout.js.map +1 -1
  147. package/build/hooks/margin.js +26 -18
  148. package/build/hooks/margin.js.map +1 -1
  149. package/build/hooks/min-height.js +145 -0
  150. package/build/hooks/min-height.js.map +1 -0
  151. package/build/hooks/padding.js +22 -13
  152. package/build/hooks/padding.js.map +1 -1
  153. package/build/hooks/style.js +3 -2
  154. package/build/hooks/style.js.map +1 -1
  155. package/build/hooks/utils.js +7 -6
  156. package/build/hooks/utils.js.map +1 -1
  157. package/build/layouts/constrained.js +0 -1
  158. package/build/layouts/constrained.js.map +1 -1
  159. package/build/layouts/flex.js +23 -22
  160. package/build/layouts/flex.js.map +1 -1
  161. package/build/store/actions.js +30 -0
  162. package/build/store/actions.js.map +1 -1
  163. package/build/store/array.js +1 -7
  164. package/build/store/array.js.map +1 -1
  165. package/build/store/reducer.js +46 -14
  166. package/build/store/reducer.js.map +1 -1
  167. package/build/store/selectors.js +62 -31
  168. package/build/store/selectors.js.map +1 -1
  169. package/build-module/components/alignment-control/ui.js +1 -1
  170. package/build-module/components/alignment-control/ui.js.map +1 -1
  171. package/build-module/components/block-alignment-control/constants.js +1 -1
  172. package/build-module/components/block-alignment-control/constants.js.map +1 -1
  173. package/build-module/components/block-alignment-matrix-control/index.js +1 -1
  174. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  175. package/build-module/components/block-compare/index.js +2 -3
  176. package/build-module/components/block-compare/index.js.map +1 -1
  177. package/build-module/components/block-edit/index.js +4 -2
  178. package/build-module/components/block-edit/index.js.map +1 -1
  179. package/build-module/components/block-list/block.js +3 -1
  180. package/build-module/components/block-list/block.js.map +1 -1
  181. package/build-module/components/block-lock/menu-item.js +2 -2
  182. package/build-module/components/block-lock/menu-item.js.map +1 -1
  183. package/build-module/components/block-lock/modal.js +17 -10
  184. package/build-module/components/block-lock/modal.js.map +1 -1
  185. package/build-module/components/block-popover/inbetween.js +2 -1
  186. package/build-module/components/block-popover/inbetween.js.map +1 -1
  187. package/build-module/components/block-popover/index.js +2 -1
  188. package/build-module/components/block-popover/index.js.map +1 -1
  189. package/build-module/components/block-preview/index.js +2 -3
  190. package/build-module/components/block-preview/index.js.map +1 -1
  191. package/build-module/components/block-settings-menu/block-settings-dropdown.js +2 -7
  192. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  193. package/build-module/components/block-styles/utils.js +3 -3
  194. package/build-module/components/block-styles/utils.js.map +1 -1
  195. package/build-module/components/block-switcher/index.js +21 -11
  196. package/build-module/components/block-switcher/index.js.map +1 -1
  197. package/build-module/components/block-switcher/preview-block-popover.js +1 -1
  198. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  199. package/build-module/components/block-tools/insertion-point.js +12 -2
  200. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  201. package/build-module/components/block-tools/selected-block-popover.js +27 -5
  202. package/build-module/components/block-tools/selected-block-popover.js.map +1 -1
  203. package/build-module/components/block-vertical-alignment-control/ui.js +1 -1
  204. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  205. package/build-module/components/border-radius-control/all-input-control.js +2 -1
  206. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  207. package/build-module/components/border-radius-control/index.js +2 -1
  208. package/build-module/components/border-radius-control/index.js.map +1 -1
  209. package/build-module/components/border-radius-control/input-controls.js +2 -1
  210. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  211. package/build-module/components/colors/with-colors.js +5 -4
  212. package/build-module/components/colors/with-colors.js.map +1 -1
  213. package/build-module/components/duotone-control/index.js +1 -1
  214. package/build-module/components/duotone-control/index.js.map +1 -1
  215. package/build-module/components/font-sizes/fluid-utils.js +24 -40
  216. package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
  217. package/build-module/components/font-sizes/with-font-sizes.js +9 -7
  218. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  219. package/build-module/components/iframe/index.js +1 -1
  220. package/build-module/components/iframe/index.js.map +1 -1
  221. package/build-module/components/image-editor/constants.js +1 -1
  222. package/build-module/components/image-editor/constants.js.map +1 -1
  223. package/build-module/components/index.js +1 -0
  224. package/build-module/components/index.js.map +1 -1
  225. package/build-module/components/inner-blocks/index.js +10 -4
  226. package/build-module/components/inner-blocks/index.js.map +1 -1
  227. package/build-module/components/inserter/hooks/use-insertion-point.js +2 -6
  228. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  229. package/build-module/components/inserter/reusable-blocks-tab.js +3 -1
  230. package/build-module/components/inserter/reusable-blocks-tab.js.map +1 -1
  231. package/build-module/components/inserter/search-items.js +23 -3
  232. package/build-module/components/inserter/search-items.js.map +1 -1
  233. package/build-module/components/line-height-control/index.js +2 -1
  234. package/build-module/components/line-height-control/index.js.map +1 -1
  235. package/build-module/components/link-control/index.js +17 -34
  236. package/build-module/components/link-control/index.js.map +1 -1
  237. package/build-module/components/link-control/search-input.js +1 -1
  238. package/build-module/components/link-control/search-input.js.map +1 -1
  239. package/build-module/components/link-control/use-internal-input-value.js +18 -0
  240. package/build-module/components/link-control/use-internal-input-value.js.map +1 -0
  241. package/build-module/components/list-view/block.js +5 -3
  242. package/build-module/components/list-view/block.js.map +1 -1
  243. package/build-module/components/list-view/branch.js +9 -3
  244. package/build-module/components/list-view/branch.js.map +1 -1
  245. package/build-module/components/list-view/drop-indicator.js +2 -1
  246. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  247. package/build-module/components/media-replace-flow/index.js +1 -1
  248. package/build-module/components/media-replace-flow/index.js.map +1 -1
  249. package/build-module/components/off-canvas-editor/block-contents.js +85 -0
  250. package/build-module/components/off-canvas-editor/block-contents.js.map +1 -0
  251. package/build-module/components/off-canvas-editor/block-select-button.js +101 -0
  252. package/build-module/components/off-canvas-editor/block-select-button.js.map +1 -0
  253. package/build-module/components/off-canvas-editor/block.js +268 -0
  254. package/build-module/components/off-canvas-editor/block.js.map +1 -0
  255. package/build-module/components/off-canvas-editor/branch.js +165 -0
  256. package/build-module/components/off-canvas-editor/branch.js.map +1 -0
  257. package/build-module/components/off-canvas-editor/context.js +7 -0
  258. package/build-module/components/off-canvas-editor/context.js.map +1 -0
  259. package/build-module/components/off-canvas-editor/drop-indicator.js +111 -0
  260. package/build-module/components/off-canvas-editor/drop-indicator.js.map +1 -0
  261. package/build-module/components/off-canvas-editor/expander.js +32 -0
  262. package/build-module/components/off-canvas-editor/expander.js.map +1 -0
  263. package/build-module/components/off-canvas-editor/index.js +181 -0
  264. package/build-module/components/off-canvas-editor/index.js.map +1 -0
  265. package/build-module/components/off-canvas-editor/leaf.js +45 -0
  266. package/build-module/components/off-canvas-editor/leaf.js.map +1 -0
  267. package/build-module/components/off-canvas-editor/use-block-selection.js +124 -0
  268. package/build-module/components/off-canvas-editor/use-block-selection.js.map +1 -0
  269. package/build-module/components/off-canvas-editor/use-list-view-client-ids.js +24 -0
  270. package/build-module/components/off-canvas-editor/use-list-view-client-ids.js.map +1 -0
  271. package/build-module/components/off-canvas-editor/use-list-view-drop-zone.js +220 -0
  272. package/build-module/components/off-canvas-editor/use-list-view-drop-zone.js.map +1 -0
  273. package/build-module/components/off-canvas-editor/use-list-view-expand-selected-item.js +50 -0
  274. package/build-module/components/off-canvas-editor/use-list-view-expand-selected-item.js.map +1 -0
  275. package/build-module/components/off-canvas-editor/utils.js +44 -0
  276. package/build-module/components/off-canvas-editor/utils.js.map +1 -0
  277. package/build-module/components/rich-text/format-toolbar/index.js +1 -1
  278. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  279. package/build-module/components/rich-text/format-toolbar-container.js +1 -1
  280. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  281. package/build-module/components/rich-text/use-paste-handler.js +1 -1
  282. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  283. package/build-module/components/spacing-sizes-control/all-input-control.js +6 -2
  284. package/build-module/components/spacing-sizes-control/all-input-control.js.map +1 -1
  285. package/build-module/components/spacing-sizes-control/axial-input-controls.js +6 -2
  286. package/build-module/components/spacing-sizes-control/axial-input-controls.js.map +1 -1
  287. package/build-module/components/spacing-sizes-control/index.js +6 -2
  288. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  289. package/build-module/components/spacing-sizes-control/input-controls.js +6 -2
  290. package/build-module/components/spacing-sizes-control/input-controls.js.map +1 -1
  291. package/build-module/components/spacing-sizes-control/spacing-input-control.js +12 -5
  292. package/build-module/components/spacing-sizes-control/spacing-input-control.js.map +1 -1
  293. package/build-module/components/url-input/index.js +1 -1
  294. package/build-module/components/url-input/index.js.map +1 -1
  295. package/build-module/components/url-popover/index.js +30 -3
  296. package/build-module/components/url-popover/index.js.map +1 -1
  297. package/build-module/components/use-setting/index.js +1 -1
  298. package/build-module/components/use-setting/index.js.map +1 -1
  299. package/build-module/hooks/border.js +1 -0
  300. package/build-module/hooks/border.js.map +1 -1
  301. package/build-module/hooks/color-panel.js +17 -1
  302. package/build-module/hooks/color-panel.js.map +1 -1
  303. package/build-module/hooks/color.js +1 -1
  304. package/build-module/hooks/color.js.map +1 -1
  305. package/build-module/hooks/content-lock-ui.js +15 -8
  306. package/build-module/hooks/content-lock-ui.js.map +1 -1
  307. package/build-module/hooks/dimensions.js +67 -12
  308. package/build-module/hooks/dimensions.js.map +1 -1
  309. package/build-module/hooks/font-size.js +1 -0
  310. package/build-module/hooks/font-size.js.map +1 -1
  311. package/build-module/hooks/layout.js +6 -5
  312. package/build-module/hooks/layout.js.map +1 -1
  313. package/build-module/hooks/margin.js +27 -19
  314. package/build-module/hooks/margin.js.map +1 -1
  315. package/build-module/hooks/min-height.js +122 -0
  316. package/build-module/hooks/min-height.js.map +1 -0
  317. package/build-module/hooks/padding.js +23 -14
  318. package/build-module/hooks/padding.js.map +1 -1
  319. package/build-module/hooks/style.js +4 -3
  320. package/build-module/hooks/style.js.map +1 -1
  321. package/build-module/hooks/utils.js +7 -7
  322. package/build-module/hooks/utils.js.map +1 -1
  323. package/build-module/layouts/constrained.js +0 -1
  324. package/build-module/layouts/constrained.js.map +1 -1
  325. package/build-module/layouts/flex.js +24 -23
  326. package/build-module/layouts/flex.js.map +1 -1
  327. package/build-module/store/actions.js +26 -0
  328. package/build-module/store/actions.js.map +1 -1
  329. package/build-module/store/array.js +1 -6
  330. package/build-module/store/array.js.map +1 -1
  331. package/build-module/store/reducer.js +44 -14
  332. package/build-module/store/reducer.js.map +1 -1
  333. package/build-module/store/selectors.js +59 -31
  334. package/build-module/store/selectors.js.map +1 -1
  335. package/build-style/style-rtl.css +88 -88
  336. package/build-style/style.css +84 -84
  337. package/package.json +29 -28
  338. package/src/components/alignment-control/README.md +1 -1
  339. package/src/components/alignment-control/ui.js +1 -1
  340. package/src/components/block-alignment-control/constants.js +1 -1
  341. package/src/components/block-alignment-control/test/index.native.js +4 -4
  342. package/src/components/block-alignment-matrix-control/index.js +1 -1
  343. package/src/components/block-breadcrumb/test/__snapshots__/index.js.snap +13 -11
  344. package/src/components/block-breadcrumb/test/index.js +1 -1
  345. package/src/components/block-compare/index.js +3 -2
  346. package/src/components/block-draggable/test/helpers.native.js +3 -3
  347. package/src/components/block-draggable/test/index.native.js +27 -27
  348. package/src/components/block-edit/index.js +2 -1
  349. package/src/components/block-list/block.js +2 -0
  350. package/src/components/block-list/style.scss +11 -6
  351. package/src/components/block-lock/menu-item.js +5 -2
  352. package/src/components/block-lock/modal.js +19 -36
  353. package/src/components/block-lock/style.scss +8 -17
  354. package/src/components/block-mover/stories/index.js +1 -1
  355. package/src/components/block-mover/style.scss +35 -1
  356. package/src/components/block-popover/inbetween.js +1 -0
  357. package/src/components/block-popover/index.js +1 -0
  358. package/src/components/block-popover/style.scss +1 -5
  359. package/src/components/block-preview/index.js +8 -3
  360. package/src/components/block-settings-menu/block-settings-dropdown.js +4 -7
  361. package/src/components/block-styles/utils.js +3 -3
  362. package/src/components/block-switcher/index.js +21 -11
  363. package/src/components/block-switcher/preview-block-popover.js +1 -1
  364. package/src/components/block-tools/insertion-point.js +10 -1
  365. package/src/components/block-tools/selected-block-popover.js +80 -34
  366. package/src/components/block-tools/style.scss +15 -0
  367. package/src/components/block-variation-picker/README.md +1 -1
  368. package/src/components/block-vertical-alignment-control/ui.js +1 -1
  369. package/src/components/border-radius-control/all-input-control.js +1 -0
  370. package/src/components/border-radius-control/index.js +1 -0
  371. package/src/components/border-radius-control/input-controls.js +1 -0
  372. package/src/components/border-radius-control/style.scss +15 -24
  373. package/src/components/color-palette/test/__snapshots__/control.js.snap +85 -83
  374. package/src/components/color-palette/test/control.js +1 -1
  375. package/src/components/colors/with-colors.js +13 -23
  376. package/src/components/default-block-appender/style.scss +1 -0
  377. package/src/components/duotone-control/index.js +1 -1
  378. package/src/components/font-sizes/fluid-utils.js +37 -64
  379. package/src/components/font-sizes/test/fluid-utils.js +5 -5
  380. package/src/components/font-sizes/with-font-sizes.js +15 -13
  381. package/src/components/iframe/index.js +1 -1
  382. package/src/components/image-editor/constants.js +1 -1
  383. package/src/components/index.js +1 -0
  384. package/src/components/inner-blocks/index.js +11 -4
  385. package/src/components/inner-blocks/test/index.js +4 -0
  386. package/src/components/inserter/hooks/use-insertion-point.js +3 -11
  387. package/src/components/inserter/reusable-blocks-tab.js +4 -2
  388. package/src/components/inserter/search-items.js +23 -3
  389. package/src/components/inserter/style.scss +8 -7
  390. package/src/components/inserter/test/reusable-blocks-tab.js +14 -57
  391. package/src/components/inserter/test/search-items.js +6 -0
  392. package/src/components/inserter-list-item/style.scss +2 -0
  393. package/src/components/letter-spacing-control/README.md +55 -0
  394. package/src/components/line-height-control/index.js +1 -0
  395. package/src/components/link-control/README.md +3 -3
  396. package/src/components/link-control/index.js +23 -39
  397. package/src/components/link-control/search-input.js +1 -1
  398. package/src/components/link-control/test/index.js +272 -241
  399. package/src/components/link-control/use-internal-input-value.js +22 -0
  400. package/src/components/list-view/block.js +4 -3
  401. package/src/components/list-view/branch.js +11 -6
  402. package/src/components/list-view/drop-indicator.js +1 -0
  403. package/src/components/list-view/style.scss +1 -36
  404. package/src/components/media-replace-flow/index.js +1 -1
  405. package/src/components/media-replace-flow/test/index.js +69 -51
  406. package/src/components/off-canvas-editor/README.md +5 -0
  407. package/src/components/off-canvas-editor/block-contents.js +89 -0
  408. package/src/components/off-canvas-editor/block-select-button.js +113 -0
  409. package/src/components/off-canvas-editor/block.js +335 -0
  410. package/src/components/off-canvas-editor/branch.js +210 -0
  411. package/src/components/off-canvas-editor/context.js +8 -0
  412. package/src/components/off-canvas-editor/drop-indicator.js +126 -0
  413. package/src/components/off-canvas-editor/expander.js +26 -0
  414. package/src/components/off-canvas-editor/index.js +216 -0
  415. package/src/components/off-canvas-editor/leaf.js +48 -0
  416. package/src/components/off-canvas-editor/style.scss +397 -0
  417. package/src/components/off-canvas-editor/test/utils.js +50 -0
  418. package/src/components/off-canvas-editor/use-block-selection.js +169 -0
  419. package/src/components/off-canvas-editor/use-list-view-client-ids.js +29 -0
  420. package/src/components/off-canvas-editor/use-list-view-drop-zone.js +260 -0
  421. package/src/components/off-canvas-editor/use-list-view-expand-selected-item.js +58 -0
  422. package/src/components/off-canvas-editor/utils.js +58 -0
  423. package/src/components/responsive-block-control/test/index.js +69 -92
  424. package/src/components/rich-text/format-toolbar/index.js +1 -1
  425. package/src/components/rich-text/format-toolbar-container.js +1 -1
  426. package/src/components/rich-text/use-paste-handler.js +1 -1
  427. package/src/components/spacing-sizes-control/all-input-control.js +4 -0
  428. package/src/components/spacing-sizes-control/axial-input-controls.js +4 -0
  429. package/src/components/spacing-sizes-control/index.js +4 -0
  430. package/src/components/spacing-sizes-control/input-controls.js +4 -0
  431. package/src/components/spacing-sizes-control/spacing-input-control.js +10 -1
  432. package/src/components/spacing-sizes-control/style.scss +1 -0
  433. package/src/components/url-input/index.js +1 -1
  434. package/src/components/url-popover/README.md +12 -3
  435. package/src/components/url-popover/index.js +33 -3
  436. package/src/components/use-setting/index.js +7 -1
  437. package/src/hooks/border.js +1 -0
  438. package/src/hooks/color-panel.js +13 -1
  439. package/src/hooks/color.js +2 -0
  440. package/src/hooks/content-lock-ui.js +46 -34
  441. package/src/hooks/dimensions.js +106 -19
  442. package/src/hooks/font-size.js +1 -0
  443. package/src/hooks/layout.js +8 -11
  444. package/src/hooks/margin.js +23 -17
  445. package/src/hooks/min-height.js +121 -0
  446. package/src/hooks/padding.js +23 -19
  447. package/src/hooks/style.js +10 -2
  448. package/src/hooks/test/align.js +96 -72
  449. package/src/hooks/test/style.js +4 -0
  450. package/src/hooks/test/use-typography-props.js +1 -1
  451. package/src/hooks/utils.js +5 -6
  452. package/src/layouts/constrained.js +0 -1
  453. package/src/layouts/flex.js +44 -39
  454. package/src/store/actions.js +26 -0
  455. package/src/store/array.js +1 -6
  456. package/src/store/reducer.js +50 -40
  457. package/src/store/selectors.js +43 -29
  458. package/src/store/test/actions.js +18 -0
  459. package/src/store/test/reducer.js +40 -0
  460. package/src/store/test/selectors.js +20 -1
@@ -15,7 +15,6 @@
15
15
  // Focus style.
16
16
  &::before {
17
17
  height: calc(100% - 4px);
18
- width: calc(100% - 4px);
19
18
  }
20
19
  }
21
20
 
@@ -61,3 +60,38 @@
61
60
  overflow: hidden;
62
61
  }
63
62
  }
63
+
64
+ // Specificity is necessary to override block toolbar button styles.
65
+ .components-button.block-editor-block-mover-button {
66
+ // Focus and toggle pseudo elements.
67
+ &::before {
68
+ content: "";
69
+ position: absolute;
70
+ display: block;
71
+ border-radius: $radius-block-ui;
72
+ height: $grid-unit-40;
73
+
74
+ // Position the focus rectangle.
75
+ left: $grid-unit-10;
76
+ right: $grid-unit-10;
77
+ z-index: -1;
78
+
79
+ // Animate in.
80
+ animation: components-button__appear-animation 0.1s ease;
81
+ animation-fill-mode: forwards;
82
+ @include reduce-motion("animation");
83
+ }
84
+
85
+ // Don't show the focus inherited by the Button component.
86
+ &:focus,
87
+ &:focus:enabled,
88
+ // Override focus styles from the block toolbar
89
+ &:focus::before {
90
+ box-shadow: none;
91
+ outline: none;
92
+ }
93
+
94
+ &:focus-visible::before {
95
+ @include block-toolbar-button-style__focus();
96
+ }
97
+ }
@@ -268,6 +268,7 @@ function BlockPopoverInbetween( {
268
268
  resize={ false }
269
269
  flip={ false }
270
270
  placement="bottom-start"
271
+ variant="unstyled"
271
272
  >
272
273
  <div
273
274
  className="block-editor-block-popover__inbetween-container"
@@ -173,6 +173,7 @@ function BlockPopover(
173
173
  'block-editor-block-popover',
174
174
  props.className
175
175
  ) }
176
+ variant="unstyled"
176
177
  >
177
178
  { __unstableCoverTarget && <div style={ style }>{ children }</div> }
178
179
  { ! __unstableCoverTarget && children }
@@ -13,15 +13,11 @@
13
13
  margin: 0 !important;
14
14
  min-width: auto;
15
15
  width: max-content;
16
- background: none;
17
- border: none;
18
- outline: none;
19
- box-shadow: none;
20
16
  overflow-y: visible;
21
17
  }
22
18
 
23
19
  // Enable pointer events for the toolbar's content.
24
- &:not(.block-editor-block-popover__inbetween, .block-editor-block-popover__drop-zone) .components-popover__content {
20
+ &:not(.block-editor-block-popover__inbetween, .block-editor-block-popover__drop-zone, .block-editor-block-list__block-side-inserter-popover) .components-popover__content {
25
21
  * {
26
22
  pointer-events: all;
27
23
  }
@@ -1,7 +1,6 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import { castArray } from 'lodash';
5
4
  import classnames from 'classnames';
6
5
 
7
6
  /**
@@ -36,7 +35,10 @@ export function BlockPreview( {
36
35
  () => ( { ...originalSettings, __unstableIsPreviewMode: true } ),
37
36
  [ originalSettings ]
38
37
  );
39
- const renderedBlocks = useMemo( () => castArray( blocks ), [ blocks ] );
38
+ const renderedBlocks = useMemo(
39
+ () => ( Array.isArray( blocks ) ? blocks : [ blocks ] ),
40
+ [ blocks ]
41
+ );
40
42
  if ( ! blocks || blocks.length === 0 ) {
41
43
  return null;
42
44
  }
@@ -99,7 +101,10 @@ export function useBlockPreview( {
99
101
  );
100
102
  const disabledRef = useDisabled();
101
103
  const ref = useMergeRefs( [ props.ref, disabledRef ] );
102
- const renderedBlocks = useMemo( () => castArray( blocks ), [ blocks ] );
104
+ const renderedBlocks = useMemo(
105
+ () => ( Array.isArray( blocks ) ? blocks : [ blocks ] ),
106
+ [ blocks ]
107
+ );
103
108
 
104
109
  const children = (
105
110
  <BlockEditorProvider value={ renderedBlocks } settings={ settings }>
@@ -1,8 +1,3 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { castArray } from 'lodash';
5
-
6
1
  /**
7
2
  * WordPress dependencies
8
3
  */
@@ -41,7 +36,7 @@ const noop = () => {};
41
36
  const POPOVER_PROPS = {
42
37
  className: 'block-editor-block-settings-menu__popover',
43
38
  position: 'bottom right',
44
- isAlternate: true,
39
+ variant: 'toolbar',
45
40
  };
46
41
 
47
42
  function CopyMenuItem( { blocks, onCopy } ) {
@@ -58,7 +53,9 @@ export function BlockSettingsDropdown( {
58
53
  __unstableDisplayLocation,
59
54
  ...props
60
55
  } ) {
61
- const blockClientIds = castArray( clientIds );
56
+ const blockClientIds = Array.isArray( clientIds )
57
+ ? clientIds
58
+ : [ clientIds ];
62
59
  const count = blockClientIds.length;
63
60
  const firstBlockClientId = blockClientIds[ 0 ];
64
61
  const {
@@ -11,7 +11,7 @@ import { _x } from '@wordpress/i18n';
11
11
  /**
12
12
  * Returns the active style from the given className.
13
13
  *
14
- * @param {Array} styles Block style variations.
14
+ * @param {Array} styles Block styles.
15
15
  * @param {string} className Class name
16
16
  *
17
17
  * @return {Object?} The active style.
@@ -59,7 +59,7 @@ export function replaceActiveStyle( className, activeStyle, newStyle ) {
59
59
  * act as a fallback for when there is no active style applied to a block. The default item also serves
60
60
  * as a switch on the frontend to deactivate non-default styles.
61
61
  *
62
- * @param {Array} styles Block style variations.
62
+ * @param {Array} styles Block styles.
63
63
  *
64
64
  * @return {Array<Object?>} The style collection.
65
65
  */
@@ -83,7 +83,7 @@ export function getRenderedStyles( styles ) {
83
83
  /**
84
84
  * Returns a style object from a collection of styles where that style object is the default block style.
85
85
  *
86
- * @param {Array} styles Block style variations.
86
+ * @param {Array} styles Block styles.
87
87
  *
88
88
  * @return {Object?} The default style object, if found.
89
89
  */
@@ -1,8 +1,3 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { castArray } from 'lodash';
5
-
6
1
  /**
7
2
  * WordPress dependencies
8
3
  */
@@ -34,7 +29,7 @@ import PatternTransformationsMenu from './pattern-transformations-menu';
34
29
  import useBlockDisplayTitle from '../block-title/use-block-display-title';
35
30
 
36
31
  export const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {
37
- const { replaceBlocks } = useDispatch( blockEditorStore );
32
+ const { replaceBlocks, multiSelect } = useDispatch( blockEditorStore );
38
33
  const blockInformation = useBlockDisplayInformation( blocks[ 0 ].clientId );
39
34
  const {
40
35
  possibleBlockTransformations,
@@ -52,7 +47,7 @@ export const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {
52
47
  const { getBlockStyles, getBlockType } = select( blocksStore );
53
48
  const { canRemoveBlocks } = select( blockEditorStore );
54
49
  const rootClientId = getBlockRootClientId(
55
- castArray( clientIds )[ 0 ]
50
+ Array.isArray( clientIds ) ? clientIds[ 0 ] : clientIds
56
51
  );
57
52
  const [ { name: firstBlockName } ] = blocks;
58
53
  const _isSingleBlockSelected = blocks.length === 1;
@@ -94,12 +89,27 @@ export const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {
94
89
  const isReusable = blocks.length === 1 && isReusableBlock( blocks[ 0 ] );
95
90
  const isTemplate = blocks.length === 1 && isTemplatePart( blocks[ 0 ] );
96
91
 
92
+ function selectForMultipleBlocks( insertedBlocks ) {
93
+ if ( insertedBlocks.length > 1 ) {
94
+ multiSelect(
95
+ insertedBlocks[ 0 ].clientId,
96
+ insertedBlocks[ insertedBlocks.length - 1 ].clientId
97
+ );
98
+ }
99
+ }
100
+
97
101
  // Simple block tranformation based on the `Block Transforms` API.
98
- const onBlockTransform = ( name ) =>
99
- replaceBlocks( clientIds, switchToBlockType( blocks, name ) );
102
+ function onBlockTransform( name ) {
103
+ const newBlocks = switchToBlockType( blocks, name );
104
+ replaceBlocks( clientIds, newBlocks );
105
+ selectForMultipleBlocks( newBlocks );
106
+ }
107
+
100
108
  // Pattern transformation through the `Patterns` API.
101
- const onPatternTransform = ( transformedBlocks ) =>
109
+ function onPatternTransform( transformedBlocks ) {
102
110
  replaceBlocks( clientIds, transformedBlocks );
111
+ selectForMultipleBlocks( transformedBlocks );
112
+ }
103
113
 
104
114
  /**
105
115
  * The `isTemplate` check is a stopgap solution here.
@@ -163,7 +173,7 @@ export const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {
163
173
  label={ blockSwitcherLabel }
164
174
  popoverProps={ {
165
175
  position: 'bottom right',
166
- isAlternate: true,
176
+ variant: 'toolbar',
167
177
  className: 'block-editor-block-switcher__popover',
168
178
  } }
169
179
  icon={
@@ -15,7 +15,7 @@ export default function PreviewBlockPopover( { blocks } ) {
15
15
  <div className="block-editor-block-switcher__popover__preview__container">
16
16
  <Popover
17
17
  className="block-editor-block-switcher__preview__popover"
18
- position="bottom right"
18
+ placement="bottom-start"
19
19
  focusOnMount={ false }
20
20
  >
21
21
  <div className="block-editor-block-switcher__preview">
@@ -25,7 +25,7 @@ function InbetweenInsertionPointPopover( {
25
25
  __unstablePopoverSlot,
26
26
  __unstableContentRef,
27
27
  } ) {
28
- const { selectBlock } = useDispatch( blockEditorStore );
28
+ const { selectBlock, hideInsertionPoint } = useDispatch( blockEditorStore );
29
29
  const openRef = useContext( InsertionPointOpenRef );
30
30
  const ref = useRef();
31
31
  const {
@@ -89,6 +89,14 @@ function InbetweenInsertionPointPopover( {
89
89
  }
90
90
  }
91
91
 
92
+ function maybeHideInserterPoint( event ) {
93
+ // Only hide the inserter if it's triggered on the wrapper,
94
+ // and the inserter is not open.
95
+ if ( event.target === ref.current && ! openRef.current ) {
96
+ hideInsertionPoint();
97
+ }
98
+ }
99
+
92
100
  function onFocus( event ) {
93
101
  // Only handle click on the wrapper specifically, and not an event
94
102
  // bubbled from the inserter itself.
@@ -200,6 +208,7 @@ function InbetweenInsertionPointPopover( {
200
208
  className={ classnames( className, {
201
209
  'is-with-inserter': isInserterShown,
202
210
  } ) }
211
+ onHoverEnd={ maybeHideInserterPoint }
203
212
  >
204
213
  <motion.div
205
214
  variants={ lineVariants }
@@ -21,6 +21,7 @@ import BlockContextualToolbar from './block-contextual-toolbar';
21
21
  import { store as blockEditorStore } from '../../store';
22
22
  import BlockPopover from '../block-popover';
23
23
  import useBlockToolbarPopoverProps from './use-block-toolbar-popover-props';
24
+ import Inserter from '../inserter';
24
25
 
25
26
  function selector( select ) {
26
27
  const {
@@ -28,13 +29,16 @@ function selector( select ) {
28
29
  isMultiSelecting,
29
30
  hasMultiSelection,
30
31
  isTyping,
32
+ __experimentalIsBlockInterfaceHidden: isBlockInterfaceHidden,
31
33
  getSettings,
32
34
  getLastMultiSelectedBlockClientId,
33
35
  } = select( blockEditorStore );
36
+
34
37
  return {
35
38
  editorMode: __unstableGetEditorMode(),
36
39
  isMultiSelecting: isMultiSelecting(),
37
40
  isTyping: isTyping(),
41
+ isBlockInterfaceHidden: isBlockInterfaceHidden(),
38
42
  hasFixedToolbar: getSettings().hasFixedToolbar,
39
43
  isDistractionFree: getSettings().isDistractionFree,
40
44
  lastClientId: hasMultiSelection()
@@ -56,6 +60,7 @@ function SelectedBlockPopover( {
56
60
  editorMode,
57
61
  isMultiSelecting,
58
62
  isTyping,
63
+ isBlockInterfaceHidden,
59
64
  hasFixedToolbar,
60
65
  isDistractionFree,
61
66
  lastClientId,
@@ -92,7 +97,8 @@ function SelectedBlockPopover( {
92
97
  isLargeViewport &&
93
98
  ! isMultiSelecting &&
94
99
  ! showEmptyBlockSideInserter &&
95
- ! isTyping;
100
+ ! isTyping &&
101
+ ! isBlockInterfaceHidden;
96
102
  const canFocusHiddenToolbar =
97
103
  editorMode === 'edit' &&
98
104
  ! shouldShowContextualToolbar &&
@@ -124,45 +130,85 @@ function SelectedBlockPopover( {
124
130
  clientId,
125
131
  } );
126
132
 
127
- if ( ! shouldShowBreadcrumb && ! shouldShowContextualToolbar ) {
133
+ if (
134
+ ! shouldShowBreadcrumb &&
135
+ ! shouldShowContextualToolbar &&
136
+ ! showEmptyBlockSideInserter
137
+ ) {
128
138
  return null;
129
139
  }
130
140
 
131
141
  return (
132
- <BlockPopover
133
- clientId={ capturingClientId || clientId }
134
- bottomClientId={ lastClientId }
135
- className={ classnames( 'block-editor-block-list__block-popover', {
136
- 'is-insertion-point-visible': isInsertionPointVisible,
137
- } ) }
138
- __unstablePopoverSlot={ __unstablePopoverSlot }
139
- __unstableContentRef={ __unstableContentRef }
140
- resize={ false }
141
- { ...popoverProps }
142
- >
143
- { shouldShowContextualToolbar && showContents && (
144
- <BlockContextualToolbar
145
- // If the toolbar is being shown because of being forced
146
- // it should focus the toolbar right after the mount.
147
- focusOnMount={ isToolbarForced.current }
148
- __experimentalInitialIndex={
149
- initialToolbarItemIndexRef.current
150
- }
151
- __experimentalOnIndexChange={ ( index ) => {
152
- initialToolbarItemIndexRef.current = index;
153
- } }
154
- // Resets the index whenever the active block changes so
155
- // this is not persisted. See https://github.com/WordPress/gutenberg/pull/25760#issuecomment-717906169
156
- key={ clientId }
157
- />
142
+ <>
143
+ { showEmptyBlockSideInserter && (
144
+ <BlockPopover
145
+ clientId={ capturingClientId || clientId }
146
+ __unstableCoverTarget
147
+ bottomClientId={ lastClientId }
148
+ className={ classnames(
149
+ 'block-editor-block-list__block-side-inserter-popover',
150
+ {
151
+ 'is-insertion-point-visible':
152
+ isInsertionPointVisible,
153
+ }
154
+ ) }
155
+ __unstablePopoverSlot={ __unstablePopoverSlot }
156
+ __unstableContentRef={ __unstableContentRef }
157
+ resize={ false }
158
+ shift={ false }
159
+ { ...popoverProps }
160
+ >
161
+ <div className="block-editor-block-list__empty-block-inserter">
162
+ <Inserter
163
+ position="bottom right"
164
+ rootClientId={ rootClientId }
165
+ clientId={ clientId }
166
+ __experimentalIsQuick
167
+ />
168
+ </div>
169
+ </BlockPopover>
158
170
  ) }
159
- { shouldShowBreadcrumb && (
160
- <BlockSelectionButton
161
- clientId={ clientId }
162
- rootClientId={ rootClientId }
163
- />
171
+ { ( shouldShowBreadcrumb || shouldShowContextualToolbar ) && (
172
+ <BlockPopover
173
+ clientId={ capturingClientId || clientId }
174
+ bottomClientId={ lastClientId }
175
+ className={ classnames(
176
+ 'block-editor-block-list__block-popover',
177
+ {
178
+ 'is-insertion-point-visible':
179
+ isInsertionPointVisible,
180
+ }
181
+ ) }
182
+ __unstablePopoverSlot={ __unstablePopoverSlot }
183
+ __unstableContentRef={ __unstableContentRef }
184
+ resize={ false }
185
+ { ...popoverProps }
186
+ >
187
+ { shouldShowContextualToolbar && showContents && (
188
+ <BlockContextualToolbar
189
+ // If the toolbar is being shown because of being forced
190
+ // it should focus the toolbar right after the mount.
191
+ focusOnMount={ isToolbarForced.current }
192
+ __experimentalInitialIndex={
193
+ initialToolbarItemIndexRef.current
194
+ }
195
+ __experimentalOnIndexChange={ ( index ) => {
196
+ initialToolbarItemIndexRef.current = index;
197
+ } }
198
+ // Resets the index whenever the active block changes so
199
+ // this is not persisted. See https://github.com/WordPress/gutenberg/pull/25760#issuecomment-717906169
200
+ key={ clientId }
201
+ />
202
+ ) }
203
+ { shouldShowBreadcrumb && (
204
+ <BlockSelectionButton
205
+ clientId={ clientId }
206
+ rootClientId={ rootClientId }
207
+ />
208
+ ) }
209
+ </BlockPopover>
164
210
  ) }
165
- </BlockPopover>
211
+ </>
166
212
  );
167
213
  }
168
214
 
@@ -42,7 +42,16 @@
42
42
  left: calc(50% - #{$button-size-small * 0.5});
43
43
  }
44
44
 
45
+ .block-editor-block-list__block-side-inserter-popover .components-popover__content > div {
46
+ pointer-events: none;
47
+
48
+ > * {
49
+ pointer-events: all;
50
+ }
51
+ }
52
+
45
53
  // Sibling inserter / "inbetweenserter".
54
+ .block-editor-block-list__empty-block-inserter,
46
55
  .block-editor-default-block-appender,
47
56
  .block-editor-block-list__insertion-point-inserter {
48
57
  .block-editor-inserter__toggle.components-button.has-icon {
@@ -166,6 +175,12 @@
166
175
  &:active {
167
176
  color: $white;
168
177
  }
178
+
179
+ // Make sure the button has no hover style when it's disabled.
180
+ &[aria-disabled="true"]:hover {
181
+ color: $white;
182
+ }
183
+
169
184
  display: flex;
170
185
  }
171
186
  .block-selection-button_select-button.components-button {
@@ -68,7 +68,7 @@ The different variations of the block.
68
68
 
69
69
  - Type: `Function`
70
70
 
71
- Callback called when a block variation is selected. It recieves the selected variation as a parameter.
71
+ Callback called when a block variation is selected. It receives the selected variation as a parameter.
72
72
 
73
73
  #### `icon`
74
74
 
@@ -28,7 +28,7 @@ const DEFAULT_CONTROLS = [ 'top', 'center', 'bottom' ];
28
28
  const DEFAULT_CONTROL = 'top';
29
29
 
30
30
  const POPOVER_PROPS = {
31
- isAlternate: true,
31
+ variant: 'toolbar',
32
32
  };
33
33
 
34
34
  function BlockVerticalAlignmentUI( {
@@ -61,6 +61,7 @@ export default function AllInputControl( {
61
61
  onChange={ handleOnChange }
62
62
  onUnitChange={ handleOnUnitChange }
63
63
  placeholder={ allPlaceholder }
64
+ size={ '__unstable-large' }
64
65
  />
65
66
  );
66
67
  }
@@ -113,6 +113,7 @@ export default function BorderRadiusControl( { onChange, values } ) {
113
113
  withInputField={ false }
114
114
  onChange={ handleSliderChange }
115
115
  step={ step }
116
+ __nextHasNoMarginBottom
116
117
  />
117
118
  </>
118
119
  ) : (
@@ -80,6 +80,7 @@ export default function BoxInputControls( {
80
80
  onUnitChange={ createHandleOnUnitChange(
81
81
  corner
82
82
  ) }
83
+ size={ '__unstable-large' }
83
84
  />
84
85
  </div>
85
86
  </Tooltip>
@@ -10,24 +10,21 @@
10
10
  justify-content: space-between;
11
11
  align-items: flex-start;
12
12
 
13
- > .components-unit-control-wrapper {
14
- width: 110px;
13
+ .components-border-radius-control__unit-control {
14
+ width: calc((100% - #{$grid-unit-20}) / 2);
15
15
  margin-bottom: 0;
16
- margin-right: #{ $grid-unit-15 };
16
+ margin-right: $grid-unit-20;
17
17
  flex-shrink: 0;
18
18
  }
19
19
 
20
- .components-range-control {
20
+ .components-border-radius-control__range-control {
21
21
  flex: 1;
22
- margin-bottom: 0;
23
-
24
- .components-base-control__field {
25
- margin-bottom: 0;
26
- height: 30px;
27
- }
22
+ margin-right: $grid-unit-15;
28
23
 
29
- .components-range-control__wrapper {
30
- margin-right: 10px;
24
+ > div {
25
+ height: 40px;
26
+ display: flex;
27
+ align-items: center;
31
28
  }
32
29
  }
33
30
 
@@ -37,22 +34,16 @@
37
34
  }
38
35
 
39
36
  .components-border-radius-control__input-controls-wrapper {
40
- display: flex;
41
- width: 70%;
42
- flex-wrap: wrap;
43
-
44
- .components-border-radius-control__tooltip-wrapper {
45
- width: calc(50% - #{ $grid-unit-10 });
46
- margin-bottom: $grid-unit-10;
47
- margin-right: $grid-unit-10;
48
- }
37
+ display: grid;
38
+ gap: $grid-unit-20;
39
+ grid-template-columns: repeat(2, minmax(0, 1fr));
40
+ margin-right: $grid-unit-15;
49
41
  }
50
42
 
51
- .component-border-radius-control__linked-button.has-icon {
43
+ .component-border-radius-control__linked-button {
52
44
  display: flex;
53
45
  justify-content: center;
54
- margin-left: 2px;
55
- margin-top: 3px;
46
+ margin-top: $grid-unit-10;
56
47
 
57
48
  svg {
58
49
  margin-right: 0;