@wordpress/block-editor 9.7.0 → 9.7.1-next.d6164808d3.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 (279) hide show
  1. package/build/components/block-alignment-control/use-available-alignments.js +1 -1
  2. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  3. package/build/components/block-edit-visually-button/index.js +46 -0
  4. package/build/components/block-edit-visually-button/index.js.map +1 -0
  5. package/build/components/block-popover/inbetween.js +4 -2
  6. package/build/components/block-popover/inbetween.js.map +1 -1
  7. package/build/components/block-settings-menu/index.js +2 -6
  8. package/build/components/block-settings-menu/index.js.map +1 -1
  9. package/build/components/block-switcher/index.js +10 -16
  10. package/build/components/block-switcher/index.js.map +1 -1
  11. package/build/components/block-toolbar/index.js +5 -1
  12. package/build/components/block-toolbar/index.js.map +1 -1
  13. package/build/components/border-radius-control/all-input-control.js +31 -3
  14. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  15. package/build/components/border-radius-control/index.js +20 -6
  16. package/build/components/border-radius-control/index.js.map +1 -1
  17. package/build/components/border-radius-control/input-controls.js +21 -6
  18. package/build/components/border-radius-control/input-controls.js.map +1 -1
  19. package/build/components/border-radius-control/utils.js +13 -16
  20. package/build/components/border-radius-control/utils.js.map +1 -1
  21. package/build/components/colors/with-colors.js +17 -4
  22. package/build/components/colors/with-colors.js.map +1 -1
  23. package/build/components/copy-handler/index.js +6 -0
  24. package/build/components/copy-handler/index.js.map +1 -1
  25. package/build/components/date-format-picker/index.js +2 -7
  26. package/build/components/date-format-picker/index.js.map +1 -1
  27. package/build/components/duotone/components.js +5 -5
  28. package/build/components/duotone/components.js.map +1 -1
  29. package/build/components/font-family/index.js +1 -1
  30. package/build/components/font-family/index.js.map +1 -1
  31. package/build/components/font-sizes/with-font-sizes.js +17 -4
  32. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  33. package/build/components/index.js +9 -0
  34. package/build/components/index.js.map +1 -1
  35. package/build/components/inserter/search-items.js +22 -4
  36. package/build/components/inserter/search-items.js.map +1 -1
  37. package/build/components/link-control/link-preview.js +0 -1
  38. package/build/components/link-control/link-preview.js.map +1 -1
  39. package/build/components/list-view/block-select-button.js +5 -2
  40. package/build/components/list-view/block-select-button.js.map +1 -1
  41. package/build/components/list-view/use-block-selection.js +1 -7
  42. package/build/components/list-view/use-block-selection.js.map +1 -1
  43. package/build/components/rich-text/use-enter.js +0 -4
  44. package/build/components/rich-text/use-enter.js.map +1 -1
  45. package/build/components/rich-text/use-format-types.js +8 -11
  46. package/build/components/rich-text/use-format-types.js.map +1 -1
  47. package/build/components/spacing-sizes-control/all-input-control.js +53 -0
  48. package/build/components/spacing-sizes-control/all-input-control.js.map +1 -0
  49. package/build/components/spacing-sizes-control/axial-input-controls.js +69 -0
  50. package/build/components/spacing-sizes-control/axial-input-controls.js.map +1 -0
  51. package/build/components/spacing-sizes-control/index.js +100 -0
  52. package/build/components/spacing-sizes-control/index.js.map +1 -0
  53. package/build/components/spacing-sizes-control/input-controls.js +52 -0
  54. package/build/components/spacing-sizes-control/input-controls.js.map +1 -0
  55. package/build/components/spacing-sizes-control/linked-button.js +38 -0
  56. package/build/components/spacing-sizes-control/linked-button.js.map +1 -0
  57. package/build/components/spacing-sizes-control/spacing-input-control.js +208 -0
  58. package/build/components/spacing-sizes-control/spacing-input-control.js.map +1 -0
  59. package/build/components/spacing-sizes-control/utils.js +202 -0
  60. package/build/components/spacing-sizes-control/utils.js.map +1 -0
  61. package/build/components/url-input/index.js +1 -1
  62. package/build/components/url-input/index.js.map +1 -1
  63. package/build/components/writing-flow/use-multi-selection.js +4 -2
  64. package/build/components/writing-flow/use-multi-selection.js.map +1 -1
  65. package/build/components/writing-flow/use-selection-observer.js +10 -2
  66. package/build/components/writing-flow/use-selection-observer.js.map +1 -1
  67. package/build/hooks/border-radius.js +2 -7
  68. package/build/hooks/border-radius.js.map +1 -1
  69. package/build/hooks/border.js +2 -2
  70. package/build/hooks/border.js.map +1 -1
  71. package/build/hooks/color.js +4 -1
  72. package/build/hooks/color.js.map +1 -1
  73. package/build/hooks/dimensions.js +15 -0
  74. package/build/hooks/dimensions.js.map +1 -1
  75. package/build/hooks/duotone.js +4 -4
  76. package/build/hooks/duotone.js.map +1 -1
  77. package/build/hooks/gap.js +6 -4
  78. package/build/hooks/gap.js.map +1 -1
  79. package/build/hooks/generated-class-name.js +1 -7
  80. package/build/hooks/generated-class-name.js.map +1 -1
  81. package/build/hooks/layout.js +20 -12
  82. package/build/hooks/layout.js.map +1 -1
  83. package/build/hooks/margin.js +28 -12
  84. package/build/hooks/margin.js.map +1 -1
  85. package/build/hooks/padding.js +19 -8
  86. package/build/hooks/padding.js.map +1 -1
  87. package/build/hooks/style.js +4 -50
  88. package/build/hooks/style.js.map +1 -1
  89. package/build/layouts/constrained.js +215 -0
  90. package/build/layouts/constrained.js.map +1 -0
  91. package/build/layouts/flex.js +1 -1
  92. package/build/layouts/flex.js.map +1 -1
  93. package/build/layouts/flow.js +7 -169
  94. package/build/layouts/flow.js.map +1 -1
  95. package/build/layouts/index.js +3 -1
  96. package/build/layouts/index.js.map +1 -1
  97. package/build/layouts/utils.js +43 -0
  98. package/build/layouts/utils.js.map +1 -1
  99. package/build/store/actions.js +25 -3
  100. package/build/store/actions.js.map +1 -1
  101. package/build/store/selectors.js +4 -6
  102. package/build/store/selectors.js.map +1 -1
  103. package/build-module/components/block-alignment-control/use-available-alignments.js +1 -1
  104. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  105. package/build-module/components/block-edit-visually-button/index.js +35 -0
  106. package/build-module/components/block-edit-visually-button/index.js.map +1 -0
  107. package/build-module/components/block-popover/inbetween.js +4 -2
  108. package/build-module/components/block-popover/inbetween.js.map +1 -1
  109. package/build-module/components/block-settings-menu/index.js +3 -6
  110. package/build-module/components/block-settings-menu/index.js.map +1 -1
  111. package/build-module/components/block-switcher/index.js +10 -16
  112. package/build-module/components/block-switcher/index.js.map +1 -1
  113. package/build-module/components/block-toolbar/index.js +4 -1
  114. package/build-module/components/block-toolbar/index.js.map +1 -1
  115. package/build-module/components/border-radius-control/all-input-control.js +32 -4
  116. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  117. package/build-module/components/border-radius-control/index.js +20 -6
  118. package/build-module/components/border-radius-control/index.js.map +1 -1
  119. package/build-module/components/border-radius-control/input-controls.js +22 -7
  120. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  121. package/build-module/components/border-radius-control/utils.js +13 -16
  122. package/build-module/components/border-radius-control/utils.js.map +1 -1
  123. package/build-module/components/colors/with-colors.js +16 -3
  124. package/build-module/components/colors/with-colors.js.map +1 -1
  125. package/build-module/components/copy-handler/index.js +7 -1
  126. package/build-module/components/copy-handler/index.js.map +1 -1
  127. package/build-module/components/date-format-picker/index.js +2 -6
  128. package/build-module/components/date-format-picker/index.js.map +1 -1
  129. package/build-module/components/duotone/components.js +5 -5
  130. package/build-module/components/duotone/components.js.map +1 -1
  131. package/build-module/components/font-family/index.js +1 -1
  132. package/build-module/components/font-family/index.js.map +1 -1
  133. package/build-module/components/font-sizes/with-font-sizes.js +16 -3
  134. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  135. package/build-module/components/index.js +1 -0
  136. package/build-module/components/index.js.map +1 -1
  137. package/build-module/components/inserter/search-items.js +19 -5
  138. package/build-module/components/inserter/search-items.js.map +1 -1
  139. package/build-module/components/link-control/link-preview.js +0 -1
  140. package/build-module/components/link-control/link-preview.js.map +1 -1
  141. package/build-module/components/list-view/block-select-button.js +5 -2
  142. package/build-module/components/list-view/block-select-button.js.map +1 -1
  143. package/build-module/components/list-view/use-block-selection.js +1 -6
  144. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  145. package/build-module/components/rich-text/use-enter.js +0 -4
  146. package/build-module/components/rich-text/use-enter.js.map +1 -1
  147. package/build-module/components/rich-text/use-format-types.js +8 -10
  148. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  149. package/build-module/components/spacing-sizes-control/all-input-control.js +41 -0
  150. package/build-module/components/spacing-sizes-control/all-input-control.js.map +1 -0
  151. package/build-module/components/spacing-sizes-control/axial-input-controls.js +57 -0
  152. package/build-module/components/spacing-sizes-control/axial-input-controls.js.map +1 -0
  153. package/build-module/components/spacing-sizes-control/index.js +83 -0
  154. package/build-module/components/spacing-sizes-control/index.js.map +1 -0
  155. package/build-module/components/spacing-sizes-control/input-controls.js +41 -0
  156. package/build-module/components/spacing-sizes-control/input-controls.js.map +1 -0
  157. package/build-module/components/spacing-sizes-control/linked-button.js +28 -0
  158. package/build-module/components/spacing-sizes-control/linked-button.js.map +1 -0
  159. package/build-module/components/spacing-sizes-control/spacing-input-control.js +192 -0
  160. package/build-module/components/spacing-sizes-control/spacing-input-control.js.map +1 -0
  161. package/build-module/components/spacing-sizes-control/utils.js +174 -0
  162. package/build-module/components/spacing-sizes-control/utils.js.map +1 -0
  163. package/build-module/components/url-input/index.js +1 -1
  164. package/build-module/components/url-input/index.js.map +1 -1
  165. package/build-module/components/writing-flow/use-multi-selection.js +4 -2
  166. package/build-module/components/writing-flow/use-multi-selection.js.map +1 -1
  167. package/build-module/components/writing-flow/use-selection-observer.js +10 -2
  168. package/build-module/components/writing-flow/use-selection-observer.js.map +1 -1
  169. package/build-module/hooks/border-radius.js +2 -7
  170. package/build-module/hooks/border-radius.js.map +1 -1
  171. package/build-module/hooks/border.js +2 -2
  172. package/build-module/hooks/border.js.map +1 -1
  173. package/build-module/hooks/color.js +4 -1
  174. package/build-module/hooks/color.js.map +1 -1
  175. package/build-module/hooks/dimensions.js +13 -0
  176. package/build-module/hooks/dimensions.js.map +1 -1
  177. package/build-module/hooks/duotone.js +4 -4
  178. package/build-module/hooks/duotone.js.map +1 -1
  179. package/build-module/hooks/gap.js +3 -2
  180. package/build-module/hooks/gap.js.map +1 -1
  181. package/build-module/hooks/generated-class-name.js +1 -6
  182. package/build-module/hooks/generated-class-name.js.map +1 -1
  183. package/build-module/hooks/layout.js +20 -12
  184. package/build-module/hooks/layout.js.map +1 -1
  185. package/build-module/hooks/margin.js +26 -12
  186. package/build-module/hooks/margin.js.map +1 -1
  187. package/build-module/hooks/padding.js +17 -8
  188. package/build-module/hooks/padding.js.map +1 -1
  189. package/build-module/hooks/style.js +7 -53
  190. package/build-module/hooks/style.js.map +1 -1
  191. package/build-module/layouts/constrained.js +197 -0
  192. package/build-module/layouts/constrained.js.map +1 -0
  193. package/build-module/layouts/flex.js +1 -1
  194. package/build-module/layouts/flex.js.map +1 -1
  195. package/build-module/layouts/flow.js +8 -163
  196. package/build-module/layouts/flow.js.map +1 -1
  197. package/build-module/layouts/index.js +2 -1
  198. package/build-module/layouts/index.js.map +1 -1
  199. package/build-module/layouts/utils.js +40 -0
  200. package/build-module/layouts/utils.js.map +1 -1
  201. package/build-module/store/actions.js +25 -3
  202. package/build-module/store/actions.js.map +1 -1
  203. package/build-module/store/selectors.js +5 -7
  204. package/build-module/store/selectors.js.map +1 -1
  205. package/build-style/style-rtl.css +115 -20
  206. package/build-style/style.css +115 -20
  207. package/package.json +30 -28
  208. package/src/components/block-alignment-control/use-available-alignments.js +1 -1
  209. package/src/components/block-edit-visually-button/index.js +39 -0
  210. package/src/components/block-popover/inbetween.js +4 -1
  211. package/src/components/block-settings-menu/index.js +11 -15
  212. package/src/components/block-switcher/index.js +9 -13
  213. package/src/components/block-switcher/test/index.js +1 -0
  214. package/src/components/block-toolbar/index.js +2 -0
  215. package/src/components/border-radius-control/all-input-control.js +41 -4
  216. package/src/components/border-radius-control/index.js +25 -5
  217. package/src/components/border-radius-control/input-controls.js +40 -13
  218. package/src/components/border-radius-control/test/utils.js +22 -60
  219. package/src/components/border-radius-control/utils.js +12 -16
  220. package/src/components/colors/with-colors.js +11 -1
  221. package/src/components/copy-handler/index.js +18 -0
  222. package/src/components/date-format-picker/index.js +12 -14
  223. package/src/components/date-format-picker/style.scss +0 -4
  224. package/src/components/duotone/components.js +5 -5
  225. package/src/components/duotone-control/style.scss +0 -4
  226. package/src/components/font-appearance-control/style.scss +0 -2
  227. package/src/components/font-family/index.js +1 -1
  228. package/src/components/font-sizes/with-font-sizes.js +11 -1
  229. package/src/components/index.js +1 -0
  230. package/src/components/inserter/search-items.js +17 -5
  231. package/src/components/link-control/link-preview.js +0 -1
  232. package/src/components/link-control/test/index.js +540 -893
  233. package/src/components/list-view/block-select-button.js +7 -2
  234. package/src/components/list-view/style.scss +11 -4
  235. package/src/components/list-view/use-block-selection.js +2 -8
  236. package/src/components/media-replace-flow/style.scss +1 -0
  237. package/src/components/rich-text/use-enter.js +0 -3
  238. package/src/components/rich-text/use-format-types.js +6 -6
  239. package/src/components/spacing-sizes-control/all-input-control.js +40 -0
  240. package/src/components/spacing-sizes-control/axial-input-controls.js +62 -0
  241. package/src/components/spacing-sizes-control/index.js +91 -0
  242. package/src/components/spacing-sizes-control/input-controls.js +46 -0
  243. package/src/components/spacing-sizes-control/linked-button.js +25 -0
  244. package/src/components/spacing-sizes-control/spacing-input-control.js +280 -0
  245. package/src/components/spacing-sizes-control/style.scss +122 -0
  246. package/src/components/spacing-sizes-control/test/utils.js +156 -0
  247. package/src/components/spacing-sizes-control/utils.js +195 -0
  248. package/src/components/url-input/index.js +1 -1
  249. package/src/components/url-input/style.scss +2 -2
  250. package/src/components/url-popover/style.scss +0 -3
  251. package/src/components/writing-flow/use-multi-selection.js +4 -1
  252. package/src/components/writing-flow/use-selection-observer.js +10 -2
  253. package/src/hooks/border-radius.js +2 -6
  254. package/src/hooks/border.js +2 -2
  255. package/src/hooks/color.js +13 -3
  256. package/src/hooks/dimensions.js +15 -0
  257. package/src/hooks/duotone.js +4 -4
  258. package/src/hooks/gap.js +7 -2
  259. package/src/hooks/generated-class-name.js +6 -9
  260. package/src/hooks/layout.js +45 -14
  261. package/src/hooks/margin.js +49 -17
  262. package/src/hooks/padding.js +41 -14
  263. package/src/hooks/style.js +5 -56
  264. package/src/hooks/test/gap.js +22 -0
  265. package/src/hooks/typography.scss +0 -1
  266. package/src/layouts/constrained.js +217 -0
  267. package/src/layouts/flex.js +1 -1
  268. package/src/layouts/flow.js +6 -173
  269. package/src/layouts/index.js +2 -1
  270. package/src/layouts/test/constrained.js +21 -0
  271. package/src/layouts/utils.js +34 -0
  272. package/src/store/actions.js +32 -4
  273. package/src/store/selectors.js +5 -4
  274. package/src/style.scss +1 -0
  275. package/build/components/block-settings-menu/block-edit-visually-button.js +0 -70
  276. package/build/components/block-settings-menu/block-edit-visually-button.js.map +0 -1
  277. package/build-module/components/block-settings-menu/block-edit-visually-button.js +0 -56
  278. package/build-module/components/block-settings-menu/block-edit-visually-button.js.map +0 -1
  279. package/src/components/block-settings-menu/block-edit-visually-button.js +0 -52
@@ -1878,9 +1878,6 @@
1878
1878
  .block-editor-date-format-picker__custom-format-select-control.components-base-control {
1879
1879
  margin-bottom: 0;
1880
1880
  }
1881
- .block-editor-date-format-picker__custom-format-select-control .components-custom-select-control__button {
1882
- width: 100%;
1883
- }
1884
1881
 
1885
1882
  .block-editor-date-format-picker__custom-format-select-control__custom-option {
1886
1883
  border-top: 1px solid #ddd;
@@ -1900,9 +1897,6 @@
1900
1897
  .block-editor-duotone-control__popover .components-menu-group__label {
1901
1898
  padding: 0;
1902
1899
  }
1903
- .block-editor-duotone-control__popover .components-custom-gradient-picker__gradient-bar {
1904
- margin: 16px 0 12px;
1905
- }
1906
1900
  .block-editor-duotone-control__popover .components-circular-option-picker__swatches {
1907
1901
  display: grid;
1908
1902
  grid-template-columns: repeat(6, 28px);
@@ -1919,9 +1913,6 @@
1919
1913
  background: linear-gradient(45deg, transparent 48%, #ddd 48%, #ddd 52%, transparent 52%);
1920
1914
  }
1921
1915
 
1922
- .components-font-appearance-control {
1923
- margin-bottom: 24px;
1924
- }
1925
1916
  .components-font-appearance-control ul li {
1926
1917
  color: #1e1e1e;
1927
1918
  text-transform: capitalize;
@@ -2799,14 +2790,20 @@
2799
2790
  width: 100%;
2800
2791
  transform: translateY(-50%);
2801
2792
  }
2793
+ .block-editor-list-view-leaf .block-editor-list-view-block-select-button__anchor-wrapper {
2794
+ position: relative;
2795
+ max-width: min(110px, 40%);
2796
+ width: 100%;
2797
+ }
2802
2798
  .block-editor-list-view-leaf .block-editor-list-view-block-select-button__anchor {
2799
+ position: absolute;
2800
+ left: 0;
2801
+ transform: translateY(-50%);
2803
2802
  background: rgba(0, 0, 0, 0.1);
2804
2803
  border-radius: 2px;
2805
- display: inline-block;
2806
2804
  padding: 2px 6px;
2807
- max-width: min(100px, 40%);
2808
- overflow: hidden;
2809
- text-overflow: ellipsis;
2805
+ max-width: 100%;
2806
+ box-sizing: border-box;
2810
2807
  }
2811
2808
  .block-editor-list-view-leaf.is-selected .block-editor-list-view-block-select-button__anchor {
2812
2809
  background: rgba(0, 0, 0, 0.3);
@@ -2952,6 +2949,7 @@
2952
2949
  }
2953
2950
  .block-editor-media-flow__url-input .block-editor-link-control .block-editor-url-input {
2954
2951
  padding: 0;
2952
+ margin: 0;
2955
2953
  }
2956
2954
  .block-editor-media-flow__url-input .block-editor-link-control .components-base-control .components-base-control__field {
2957
2955
  margin-bottom: 0;
@@ -3301,9 +3299,9 @@ figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]::before
3301
3299
  .components-popover .block-editor-url-input .components-spinner,
3302
3300
  .block-editor-url-input .components-spinner {
3303
3301
  position: absolute;
3304
- left: 8px 8px 8px 12px;
3305
- bottom: 8px 8px 8px 12px8px1;
3306
3302
  margin: 0;
3303
+ top: calc(50% - 16px / 2);
3304
+ left: 8px;
3307
3305
  }
3308
3306
 
3309
3307
  .block-editor-url-input__input[type=text] {
@@ -3499,10 +3497,6 @@ figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]::before
3499
3497
  .block-editor-url-popover__link-viewer .block-editor-url-input .components-base-control__field {
3500
3498
  margin-bottom: 0;
3501
3499
  }
3502
- .block-editor-url-popover__link-editor .block-editor-url-input .components-spinner,
3503
- .block-editor-url-popover__link-viewer .block-editor-url-input .components-spinner {
3504
- bottom: 8px 8px 8px 12px1;
3505
- }
3506
3500
 
3507
3501
  .block-editor-url-popover__link-viewer-url {
3508
3502
  margin: 7px;
@@ -3606,7 +3600,6 @@ figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]::before
3606
3600
  grid-column: span 1;
3607
3601
  }
3608
3602
 
3609
- .typography-block-support-panel .components-font-appearance-control,
3610
3603
  .typography-block-support-panel .components-font-size-picker__controls,
3611
3604
  .typography-block-support-panel .block-editor-text-decoration-control__buttons,
3612
3605
  .typography-block-support-panel .block-editor-text-transform-control__buttons {
@@ -4226,6 +4219,108 @@ figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]::before
4226
4219
  }
4227
4220
  }
4228
4221
 
4222
+ .tools-panel-item-spacing {
4223
+ display: grid;
4224
+ grid-template-columns: auto 1fr auto;
4225
+ grid-row-gap: 4px;
4226
+ }
4227
+
4228
+ .component-spacing-sizes-control {
4229
+ box-sizing: border-box;
4230
+ padding-bottom: 12px;
4231
+ width: 100%;
4232
+ display: contents;
4233
+ }
4234
+ .component-spacing-sizes-control legend {
4235
+ padding: 0;
4236
+ grid-column: 1/1;
4237
+ grid-row: 1/1;
4238
+ align-self: center;
4239
+ }
4240
+ .component-spacing-sizes-control .components-spacing-sizes-control__side-labels {
4241
+ grid-column: 1/1;
4242
+ min-height: 30px;
4243
+ justify-content: left;
4244
+ }
4245
+ .component-spacing-sizes-control .components-spacing-sizes-control__hint-single {
4246
+ margin-top: 0;
4247
+ margin-right: 0;
4248
+ }
4249
+ .component-spacing-sizes-control .components-spacing-sizes-control__hint-single,
4250
+ .component-spacing-sizes-control .components-spacing-sizes-control__hint-all {
4251
+ color: #757575;
4252
+ font-size: 12px;
4253
+ }
4254
+ .component-spacing-sizes-control .components-spacing-sizes-control__hint-all {
4255
+ grid-column: 2/2;
4256
+ justify-self: left;
4257
+ grid-row: 1/1;
4258
+ align-self: center;
4259
+ margin-right: 4px;
4260
+ }
4261
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-toggle-all {
4262
+ grid-column: 2/2;
4263
+ grid-row: 1/1;
4264
+ justify-self: end;
4265
+ margin-left: 4px;
4266
+ padding: 0;
4267
+ }
4268
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-toggle-single {
4269
+ grid-column: 3/3;
4270
+ justify-self: end;
4271
+ }
4272
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-toggle-all.is-small.has-icon,
4273
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-toggle-single.is-small.has-icon {
4274
+ padding: 0;
4275
+ min-width: 24px;
4276
+ }
4277
+ .component-spacing-sizes-control .component-spacing-sizes-control__linked-button {
4278
+ grid-column: 3/3;
4279
+ grid-row: 1/1;
4280
+ justify-self: end;
4281
+ }
4282
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-value-range {
4283
+ grid-column: span 2;
4284
+ margin-right: 8px;
4285
+ padding-left: 8px;
4286
+ height: 30px;
4287
+ }
4288
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-value-input {
4289
+ width: 124px;
4290
+ }
4291
+ .component-spacing-sizes-control .components-spacing-sizes-control__range-control {
4292
+ grid-column: span 3;
4293
+ padding-left: 8px;
4294
+ height: 30px;
4295
+ }
4296
+ .component-spacing-sizes-control .components-range-control__wrapper {
4297
+ margin-bottom: 0;
4298
+ }
4299
+ .component-spacing-sizes-control .components-range-control__mark {
4300
+ height: 4px;
4301
+ width: 3px;
4302
+ background-color: #fff;
4303
+ z-index: 1;
4304
+ }
4305
+ .component-spacing-sizes-control .components-range-control__marks {
4306
+ margin-top: 17px;
4307
+ }
4308
+ .component-spacing-sizes-control .components-range-control__marks :first-child {
4309
+ display: none;
4310
+ }
4311
+ .component-spacing-sizes-control [class*=ThumbWrapper-thumbColor] {
4312
+ z-index: 3;
4313
+ }
4314
+ .component-spacing-sizes-control .components-spacing-sizes-control__side-label {
4315
+ margin-left: 4px;
4316
+ grid-column: 1/1;
4317
+ justify-self: left;
4318
+ font-size: 12px;
4319
+ }
4320
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-select-control {
4321
+ grid-column: span 3;
4322
+ }
4323
+
4229
4324
  body.admin-color-light {
4230
4325
  --wp-admin-theme-color: #0085ba;
4231
4326
  --wp-admin-theme-color--rgb: 0, 133, 186;
@@ -1878,9 +1878,6 @@
1878
1878
  .block-editor-date-format-picker__custom-format-select-control.components-base-control {
1879
1879
  margin-bottom: 0;
1880
1880
  }
1881
- .block-editor-date-format-picker__custom-format-select-control .components-custom-select-control__button {
1882
- width: 100%;
1883
- }
1884
1881
 
1885
1882
  .block-editor-date-format-picker__custom-format-select-control__custom-option {
1886
1883
  border-top: 1px solid #ddd;
@@ -1900,9 +1897,6 @@
1900
1897
  .block-editor-duotone-control__popover .components-menu-group__label {
1901
1898
  padding: 0;
1902
1899
  }
1903
- .block-editor-duotone-control__popover .components-custom-gradient-picker__gradient-bar {
1904
- margin: 16px 0 12px;
1905
- }
1906
1900
  .block-editor-duotone-control__popover .components-circular-option-picker__swatches {
1907
1901
  display: grid;
1908
1902
  grid-template-columns: repeat(6, 28px);
@@ -1919,9 +1913,6 @@
1919
1913
  background: linear-gradient(-45deg, transparent 48%, #ddd 48%, #ddd 52%, transparent 52%);
1920
1914
  }
1921
1915
 
1922
- .components-font-appearance-control {
1923
- margin-bottom: 24px;
1924
- }
1925
1916
  .components-font-appearance-control ul li {
1926
1917
  color: #1e1e1e;
1927
1918
  text-transform: capitalize;
@@ -2799,14 +2790,20 @@
2799
2790
  width: 100%;
2800
2791
  transform: translateY(-50%);
2801
2792
  }
2793
+ .block-editor-list-view-leaf .block-editor-list-view-block-select-button__anchor-wrapper {
2794
+ position: relative;
2795
+ max-width: min(110px, 40%);
2796
+ width: 100%;
2797
+ }
2802
2798
  .block-editor-list-view-leaf .block-editor-list-view-block-select-button__anchor {
2799
+ position: absolute;
2800
+ right: 0;
2801
+ transform: translateY(-50%);
2803
2802
  background: rgba(0, 0, 0, 0.1);
2804
2803
  border-radius: 2px;
2805
- display: inline-block;
2806
2804
  padding: 2px 6px;
2807
- max-width: min(100px, 40%);
2808
- overflow: hidden;
2809
- text-overflow: ellipsis;
2805
+ max-width: 100%;
2806
+ box-sizing: border-box;
2810
2807
  }
2811
2808
  .block-editor-list-view-leaf.is-selected .block-editor-list-view-block-select-button__anchor {
2812
2809
  background: rgba(0, 0, 0, 0.3);
@@ -2952,6 +2949,7 @@
2952
2949
  }
2953
2950
  .block-editor-media-flow__url-input .block-editor-link-control .block-editor-url-input {
2954
2951
  padding: 0;
2952
+ margin: 0;
2955
2953
  }
2956
2954
  .block-editor-media-flow__url-input .block-editor-link-control .components-base-control .components-base-control__field {
2957
2955
  margin-bottom: 0;
@@ -3301,9 +3299,9 @@ figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]::before
3301
3299
  .components-popover .block-editor-url-input .components-spinner,
3302
3300
  .block-editor-url-input .components-spinner {
3303
3301
  position: absolute;
3304
- right: 8px 8px 8px 12px;
3305
- bottom: 8px 8px 8px 12px8px1;
3306
3302
  margin: 0;
3303
+ top: calc(50% - 16px / 2);
3304
+ right: 8px;
3307
3305
  }
3308
3306
 
3309
3307
  .block-editor-url-input__input[type=text] {
@@ -3499,10 +3497,6 @@ figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]::before
3499
3497
  .block-editor-url-popover__link-viewer .block-editor-url-input .components-base-control__field {
3500
3498
  margin-bottom: 0;
3501
3499
  }
3502
- .block-editor-url-popover__link-editor .block-editor-url-input .components-spinner,
3503
- .block-editor-url-popover__link-viewer .block-editor-url-input .components-spinner {
3504
- bottom: 8px 8px 8px 12px1;
3505
- }
3506
3500
 
3507
3501
  .block-editor-url-popover__link-viewer-url {
3508
3502
  margin: 7px;
@@ -3606,7 +3600,6 @@ figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]::before
3606
3600
  grid-column: span 1;
3607
3601
  }
3608
3602
 
3609
- .typography-block-support-panel .components-font-appearance-control,
3610
3603
  .typography-block-support-panel .components-font-size-picker__controls,
3611
3604
  .typography-block-support-panel .block-editor-text-decoration-control__buttons,
3612
3605
  .typography-block-support-panel .block-editor-text-transform-control__buttons {
@@ -4226,6 +4219,108 @@ figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]::before
4226
4219
  }
4227
4220
  }
4228
4221
 
4222
+ .tools-panel-item-spacing {
4223
+ display: grid;
4224
+ grid-template-columns: auto 1fr auto;
4225
+ grid-row-gap: 4px;
4226
+ }
4227
+
4228
+ .component-spacing-sizes-control {
4229
+ box-sizing: border-box;
4230
+ padding-bottom: 12px;
4231
+ width: 100%;
4232
+ display: contents;
4233
+ }
4234
+ .component-spacing-sizes-control legend {
4235
+ padding: 0;
4236
+ grid-column: 1/1;
4237
+ grid-row: 1/1;
4238
+ align-self: center;
4239
+ }
4240
+ .component-spacing-sizes-control .components-spacing-sizes-control__side-labels {
4241
+ grid-column: 1/1;
4242
+ min-height: 30px;
4243
+ justify-content: left;
4244
+ }
4245
+ .component-spacing-sizes-control .components-spacing-sizes-control__hint-single {
4246
+ margin-top: 0;
4247
+ margin-left: 0;
4248
+ }
4249
+ .component-spacing-sizes-control .components-spacing-sizes-control__hint-single,
4250
+ .component-spacing-sizes-control .components-spacing-sizes-control__hint-all {
4251
+ color: #757575;
4252
+ font-size: 12px;
4253
+ }
4254
+ .component-spacing-sizes-control .components-spacing-sizes-control__hint-all {
4255
+ grid-column: 2/2;
4256
+ justify-self: left;
4257
+ grid-row: 1/1;
4258
+ align-self: center;
4259
+ margin-left: 4px;
4260
+ }
4261
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-toggle-all {
4262
+ grid-column: 2/2;
4263
+ grid-row: 1/1;
4264
+ justify-self: end;
4265
+ margin-right: 4px;
4266
+ padding: 0;
4267
+ }
4268
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-toggle-single {
4269
+ grid-column: 3/3;
4270
+ justify-self: end;
4271
+ }
4272
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-toggle-all.is-small.has-icon,
4273
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-toggle-single.is-small.has-icon {
4274
+ padding: 0;
4275
+ min-width: 24px;
4276
+ }
4277
+ .component-spacing-sizes-control .component-spacing-sizes-control__linked-button {
4278
+ grid-column: 3/3;
4279
+ grid-row: 1/1;
4280
+ justify-self: end;
4281
+ }
4282
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-value-range {
4283
+ grid-column: span 2;
4284
+ margin-left: 8px;
4285
+ padding-right: 8px;
4286
+ height: 30px;
4287
+ }
4288
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-value-input {
4289
+ width: 124px;
4290
+ }
4291
+ .component-spacing-sizes-control .components-spacing-sizes-control__range-control {
4292
+ grid-column: span 3;
4293
+ padding-right: 8px;
4294
+ height: 30px;
4295
+ }
4296
+ .component-spacing-sizes-control .components-range-control__wrapper {
4297
+ margin-bottom: 0;
4298
+ }
4299
+ .component-spacing-sizes-control .components-range-control__mark {
4300
+ height: 4px;
4301
+ width: 3px;
4302
+ background-color: #fff;
4303
+ z-index: 1;
4304
+ }
4305
+ .component-spacing-sizes-control .components-range-control__marks {
4306
+ margin-top: 17px;
4307
+ }
4308
+ .component-spacing-sizes-control .components-range-control__marks :first-child {
4309
+ display: none;
4310
+ }
4311
+ .component-spacing-sizes-control [class*=ThumbWrapper-thumbColor] {
4312
+ z-index: 3;
4313
+ }
4314
+ .component-spacing-sizes-control .components-spacing-sizes-control__side-label {
4315
+ margin-right: 4px;
4316
+ grid-column: 1/1;
4317
+ justify-self: left;
4318
+ font-size: 12px;
4319
+ }
4320
+ .component-spacing-sizes-control .components-spacing-sizes-control__custom-select-control {
4321
+ grid-column: span 3;
4322
+ }
4323
+
4229
4324
  body.admin-color-light {
4230
4325
  --wp-admin-theme-color: #0085ba;
4231
4326
  --wp-admin-theme-color--rgb: 0, 133, 186;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/block-editor",
3
- "version": "9.7.0",
3
+ "version": "9.7.1-next.d6164808d3.0",
4
4
  "description": "Generic block editor.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -33,32 +33,33 @@
33
33
  "dependencies": {
34
34
  "@babel/runtime": "^7.16.0",
35
35
  "@react-spring/web": "^9.4.5",
36
- "@wordpress/a11y": "^3.15.0",
37
- "@wordpress/api-fetch": "^6.12.0",
38
- "@wordpress/blob": "^3.15.0",
39
- "@wordpress/blocks": "^11.14.0",
40
- "@wordpress/components": "^19.17.0",
41
- "@wordpress/compose": "^5.13.0",
42
- "@wordpress/data": "^6.15.0",
43
- "@wordpress/date": "^4.15.0",
44
- "@wordpress/deprecated": "^3.15.0",
45
- "@wordpress/dom": "^3.15.0",
46
- "@wordpress/element": "^4.13.0",
47
- "@wordpress/hooks": "^3.15.0",
48
- "@wordpress/html-entities": "^3.15.0",
49
- "@wordpress/i18n": "^4.15.0",
50
- "@wordpress/icons": "^9.6.0",
51
- "@wordpress/is-shallow-equal": "^4.15.0",
52
- "@wordpress/keyboard-shortcuts": "^3.13.0",
53
- "@wordpress/keycodes": "^3.15.0",
54
- "@wordpress/notices": "^3.15.0",
55
- "@wordpress/rich-text": "^5.13.0",
56
- "@wordpress/shortcode": "^3.15.0",
57
- "@wordpress/style-engine": "^0.14.0",
58
- "@wordpress/token-list": "^2.15.0",
59
- "@wordpress/url": "^3.16.0",
60
- "@wordpress/warning": "^2.15.0",
61
- "@wordpress/wordcount": "^3.15.0",
36
+ "@wordpress/a11y": "^3.15.1-next.d6164808d3.0",
37
+ "@wordpress/api-fetch": "^6.12.1-next.d6164808d3.0",
38
+ "@wordpress/blob": "^3.15.1-next.d6164808d3.0",
39
+ "@wordpress/blocks": "^11.14.1-next.d6164808d3.0",
40
+ "@wordpress/components": "^20.0.1-next.d6164808d3.0",
41
+ "@wordpress/compose": "^5.13.1-next.d6164808d3.0",
42
+ "@wordpress/data": "^7.0.1-next.d6164808d3.0",
43
+ "@wordpress/date": "^4.15.1-next.d6164808d3.0",
44
+ "@wordpress/deprecated": "^3.15.1-next.d6164808d3.0",
45
+ "@wordpress/dom": "^3.15.1-next.d6164808d3.0",
46
+ "@wordpress/element": "^4.13.1-next.d6164808d3.0",
47
+ "@wordpress/hooks": "^3.15.1-next.d6164808d3.0",
48
+ "@wordpress/html-entities": "^3.15.1-next.d6164808d3.0",
49
+ "@wordpress/i18n": "^4.15.1-next.d6164808d3.0",
50
+ "@wordpress/icons": "^9.6.1-next.d6164808d3.0",
51
+ "@wordpress/is-shallow-equal": "^4.15.1-next.d6164808d3.0",
52
+ "@wordpress/keyboard-shortcuts": "^3.13.1-next.d6164808d3.0",
53
+ "@wordpress/keycodes": "^3.15.1-next.d6164808d3.0",
54
+ "@wordpress/notices": "^3.15.1-next.d6164808d3.0",
55
+ "@wordpress/rich-text": "^5.13.1-next.d6164808d3.0",
56
+ "@wordpress/shortcode": "^3.15.1-next.d6164808d3.0",
57
+ "@wordpress/style-engine": "^0.14.1-next.d6164808d3.0",
58
+ "@wordpress/token-list": "^2.15.1-next.d6164808d3.0",
59
+ "@wordpress/url": "^3.16.1-next.d6164808d3.0",
60
+ "@wordpress/warning": "^2.15.1-next.d6164808d3.0",
61
+ "@wordpress/wordcount": "^3.15.1-next.d6164808d3.0",
62
+ "change-case": "^4.1.2",
62
63
  "classnames": "^2.3.1",
63
64
  "colord": "^2.7.0",
64
65
  "diff": "^4.0.2",
@@ -68,6 +69,7 @@
68
69
  "react-autosize-textarea": "^7.1.0",
69
70
  "react-easy-crop": "^3.0.0",
70
71
  "rememo": "^4.0.0",
72
+ "remove-accents": "^0.4.2",
71
73
  "traverse": "^0.6.6"
72
74
  },
73
75
  "peerDependencies": {
@@ -77,5 +79,5 @@
77
79
  "publishConfig": {
78
80
  "access": "public"
79
81
  },
80
- "gitHead": "08358f53b627a15148c3a3e433cdf58cf8714aa4"
82
+ "gitHead": "ba8a396d2f418e53a6c4c50575582f3f3eb11ff7"
81
83
  }
@@ -46,7 +46,7 @@ export default function useAvailableAlignments( controls = DEFAULT_CONTROLS ) {
46
46
  }
47
47
 
48
48
  // Starting here, it's the fallback for themes not supporting the layout config.
49
- if ( layoutType.name !== 'default' ) {
49
+ if ( layoutType.name !== 'default' && layoutType.name !== 'constrained' ) {
50
50
  return [];
51
51
  }
52
52
  const { alignments: availableAlignments = DEFAULT_CONTROLS } = layout;
@@ -0,0 +1,39 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { ToolbarButton, ToolbarGroup } from '@wordpress/components';
5
+ import { __ } from '@wordpress/i18n';
6
+ import { useSelect, useDispatch } from '@wordpress/data';
7
+
8
+ /**
9
+ * Internal dependencies
10
+ */
11
+ import { store as blockEditorStore } from '../../store';
12
+
13
+ export default function BlockEditVisuallyButton( { clientIds } ) {
14
+ // Edit visually only works for single block selection.
15
+ const clientId = clientIds.length === 1 ? clientIds[ 0 ] : undefined;
16
+ const canEditVisually = useSelect(
17
+ ( select ) =>
18
+ !! clientId &&
19
+ select( blockEditorStore ).getBlockMode( clientId ) === 'html',
20
+ [ clientId ]
21
+ );
22
+ const { toggleBlockMode } = useDispatch( blockEditorStore );
23
+
24
+ if ( ! canEditVisually ) {
25
+ return null;
26
+ }
27
+
28
+ return (
29
+ <ToolbarGroup>
30
+ <ToolbarButton
31
+ onClick={ () => {
32
+ toggleBlockMode( clientId );
33
+ } }
34
+ >
35
+ { __( 'Edit visually' ) }
36
+ </ToolbarButton>
37
+ </ToolbarGroup>
38
+ );
39
+ }
@@ -154,7 +154,10 @@ function BlockPopoverInbetween( {
154
154
 
155
155
  const popoverScrollRef = usePopoverScroll( __unstableContentRef );
156
156
 
157
- if ( ! previousElement || ! nextElement || ! isVisible ) {
157
+ // If there's either a previous or a next element, show the inbetween popover.
158
+ // Note that drag and drop uses the inbetween popover to show the drop indicator
159
+ // before the first block and after the last block.
160
+ if ( ( ! previousElement && ! nextElement ) || ! isVisible ) {
158
161
  return null;
159
162
  }
160
163
 
@@ -7,24 +7,20 @@ import { ToolbarGroup, ToolbarItem } from '@wordpress/components';
7
7
  * Internal dependencies
8
8
  */
9
9
  import BlockSettingsDropdown from './block-settings-dropdown';
10
- import BlockEditVisuallyButton from './block-edit-visually-button';
11
10
 
12
11
  export function BlockSettingsMenu( { clientIds, ...props } ) {
13
12
  return (
14
- <>
15
- <BlockEditVisuallyButton clientIds={ clientIds } { ...props } />
16
- <ToolbarGroup>
17
- <ToolbarItem>
18
- { ( toggleProps ) => (
19
- <BlockSettingsDropdown
20
- clientIds={ clientIds }
21
- toggleProps={ toggleProps }
22
- { ...props }
23
- />
24
- ) }
25
- </ToolbarItem>
26
- </ToolbarGroup>
27
- </>
13
+ <ToolbarGroup>
14
+ <ToolbarItem>
15
+ { ( toggleProps ) => (
16
+ <BlockSettingsDropdown
17
+ clientIds={ clientIds }
18
+ toggleProps={ toggleProps }
19
+ { ...props }
20
+ />
21
+ ) }
22
+ </ToolbarItem>
23
+ </ToolbarGroup>
28
24
  );
29
25
  }
30
26
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import { castArray, uniq } from 'lodash';
4
+ import { castArray } from 'lodash';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -28,10 +28,10 @@ import { copy } from '@wordpress/icons';
28
28
  import { store as blockEditorStore } from '../../store';
29
29
  import useBlockDisplayInformation from '../use-block-display-information';
30
30
  import BlockIcon from '../block-icon';
31
- import BlockTitle from '../block-title';
32
31
  import BlockTransformationsMenu from './block-transformations-menu';
33
32
  import BlockStylesMenu from './block-styles-menu';
34
33
  import PatternTransformationsMenu from './pattern-transformations-menu';
34
+ import useBlockDisplayTitle from '../block-title/use-block-display-title';
35
35
 
36
36
  export const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {
37
37
  const { replaceBlocks } = useDispatch( blockEditorStore );
@@ -41,7 +41,6 @@ export const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {
41
41
  canRemove,
42
42
  hasBlockStyles,
43
43
  icon,
44
- blockTitle,
45
44
  patterns,
46
45
  } = useSelect(
47
46
  ( select ) => {
@@ -64,7 +63,7 @@ export const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {
64
63
  _icon = blockInformation?.icon; // Take into account active block variations.
65
64
  } else {
66
65
  const isSelectionOfSameType =
67
- uniq( blocks.map( ( { name } ) => name ) ).length === 1;
66
+ new Set( blocks.map( ( { name } ) => name ) ).size === 1;
68
67
  // When selection consists of blocks of multiple types, display an
69
68
  // appropriate icon to communicate the non-uniformity.
70
69
  _icon = isSelectionOfSameType
@@ -79,7 +78,6 @@ export const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {
79
78
  canRemove: canRemoveBlocks( clientIds, rootClientId ),
80
79
  hasBlockStyles: !! styles?.length,
81
80
  icon: _icon,
82
- blockTitle: getBlockType( firstBlockName )?.title,
83
81
  patterns: __experimentalGetPatternTransformItems(
84
82
  blocks,
85
83
  rootClientId
@@ -89,6 +87,10 @@ export const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {
89
87
  [ clientIds, blocks, blockInformation?.icon ]
90
88
  );
91
89
 
90
+ const blockTitle = useBlockDisplayTitle( {
91
+ clientId: Array.isArray( clientIds ) ? clientIds[ 0 ] : clientIds,
92
+ maximumLength: 35,
93
+ } );
92
94
  const isReusable = blocks.length === 1 && isReusableBlock( blocks[ 0 ] );
93
95
  const isTemplate = blocks.length === 1 && isTemplatePart( blocks[ 0 ] );
94
96
 
@@ -119,10 +121,7 @@ export const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {
119
121
  <BlockIcon icon={ icon } showColors />
120
122
  { ( isReusable || isTemplate ) && (
121
123
  <span className="block-editor-block-switcher__toggle-text">
122
- <BlockTitle
123
- clientId={ clientIds }
124
- maximumLength={ 35 }
125
- />
124
+ { blockTitle }
126
125
  </span>
127
126
  ) }
128
127
  </>
@@ -176,10 +175,7 @@ export const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {
176
175
  />
177
176
  { ( isReusable || isTemplate ) && (
178
177
  <span className="block-editor-block-switcher__toggle-text">
179
- <BlockTitle
180
- clientId={ clientIds }
181
- maximumLength={ 35 }
182
- />
178
+ { blockTitle }
183
179
  </span>
184
180
  ) }
185
181
  </>
@@ -18,6 +18,7 @@ import { copy } from '@wordpress/icons';
18
18
  import { BlockSwitcher, BlockSwitcherDropdownMenu } from '../';
19
19
 
20
20
  jest.mock( '@wordpress/data/src/components/use-select', () => jest.fn() );
21
+ jest.mock( '../../block-title/use-block-display-title', () => jest.fn() );
21
22
 
22
23
  describe( 'BlockSwitcher', () => {
23
24
  test( 'should not render block switcher without blocks', () => {
@@ -23,6 +23,7 @@ import __unstableBlockToolbarLastItem from './block-toolbar-last-item';
23
23
  import BlockSettingsMenu from '../block-settings-menu';
24
24
  import { BlockLockToolbar } from '../block-lock';
25
25
  import { BlockGroupToolbar } from '../convert-to-group-buttons';
26
+ import BlockEditVisuallyButton from '../block-edit-visually-button';
26
27
  import { useShowMoversGestures } from './utils';
27
28
  import { store as blockEditorStore } from '../../store';
28
29
  import __unstableBlockNameContext from './block-name-context';
@@ -159,6 +160,7 @@ const BlockToolbar = ( { hideDragHandle } ) => {
159
160
  </__unstableBlockNameContext.Provider>
160
161
  </>
161
162
  ) }
163
+ <BlockEditVisuallyButton clientIds={ blockClientIds } />
162
164
  <BlockSettingsMenu clientIds={ blockClientIds } />
163
165
  </div>
164
166
  );