@wordpress/block-editor 15.22.1 → 16.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (700) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/build/autocompleters/block.cjs +10 -2
  3. package/build/autocompleters/block.cjs.map +2 -2
  4. package/build/components/background-image-control/index.cjs +0 -2
  5. package/build/components/background-image-control/index.cjs.map +2 -2
  6. package/build/components/block-canvas/index.cjs +6 -1
  7. package/build/components/block-canvas/index.cjs.map +2 -2
  8. package/build/components/block-controls/groups.cjs +3 -1
  9. package/build/components/block-controls/groups.cjs.map +2 -2
  10. package/build/components/block-edit/edit.cjs +10 -18
  11. package/build/components/block-edit/edit.cjs.map +2 -2
  12. package/build/components/block-inspector/edit-contents.cjs +3 -0
  13. package/build/components/block-inspector/edit-contents.cjs.map +3 -3
  14. package/build/components/block-inspector/index.cjs +18 -36
  15. package/build/components/block-inspector/index.cjs.map +2 -2
  16. package/build/components/block-list/block-invalid-warning.cjs +8 -19
  17. package/build/components/block-list/block-invalid-warning.cjs.map +2 -2
  18. package/build/components/block-list/block.cjs +9 -3
  19. package/build/components/block-list/block.cjs.map +3 -3
  20. package/build/components/block-list/index.cjs +1 -3
  21. package/build/components/block-list/index.cjs.map +2 -2
  22. package/build/components/block-list/use-block-props/index.cjs +3 -1
  23. package/build/components/block-list/use-block-props/index.cjs.map +2 -2
  24. package/build/components/block-list/use-block-props/use-focus-first-element.cjs +9 -4
  25. package/build/components/block-list/use-block-props/use-focus-first-element.cjs.map +2 -2
  26. package/build/components/block-list/use-block-props/use-focus-handler.cjs +12 -4
  27. package/build/components/block-list/use-block-props/use-focus-handler.cjs.map +2 -2
  28. package/build/components/block-styles/use-styles-for-block.cjs +2 -1
  29. package/build/components/block-styles/use-styles-for-block.cjs.map +2 -2
  30. package/build/components/block-title/use-block-display-title.cjs +7 -2
  31. package/build/components/block-title/use-block-display-title.cjs.map +2 -2
  32. package/build/components/block-toolbar/block-toolbar-icon.cjs +10 -14
  33. package/build/components/block-toolbar/block-toolbar-icon.cjs.map +2 -2
  34. package/build/components/block-toolbar/index.cjs +43 -24
  35. package/build/components/block-toolbar/index.cjs.map +2 -2
  36. package/build/components/block-tools/index.cjs +7 -2
  37. package/build/components/block-tools/index.cjs.map +2 -2
  38. package/build/components/block-variation-transforms/index.cjs +0 -1
  39. package/build/components/block-variation-transforms/index.cjs.map +2 -2
  40. package/build/components/block-visibility/modal.cjs +20 -6
  41. package/build/components/block-visibility/modal.cjs.map +2 -2
  42. package/build/components/block-visibility/use-block-visibility.cjs +16 -6
  43. package/build/components/block-visibility/use-block-visibility.cjs.map +3 -3
  44. package/build/components/block-visibility/utils.cjs +15 -2
  45. package/build/components/block-visibility/utils.cjs.map +3 -3
  46. package/build/components/block-visibility/viewport-menu-item.cjs +7 -1
  47. package/build/components/block-visibility/viewport-menu-item.cjs.map +2 -2
  48. package/build/components/block-visibility/viewport-toolbar.cjs +5 -0
  49. package/build/components/block-visibility/viewport-toolbar.cjs.map +2 -2
  50. package/build/components/block-visibility/viewport-visibility-info.cjs +5 -1
  51. package/build/components/block-visibility/viewport-visibility-info.cjs.map +2 -2
  52. package/build/components/child-layout-control/index.cjs +0 -6
  53. package/build/components/child-layout-control/index.cjs.map +2 -2
  54. package/build/components/colors-gradients/control.cjs +5 -5
  55. package/build/components/colors-gradients/control.cjs.map +2 -2
  56. package/build/components/date-format-picker/index.cjs +0 -1
  57. package/build/components/date-format-picker/index.cjs.map +2 -2
  58. package/build/components/dimensions-tool/aspect-ratio-tool.cjs +1 -2
  59. package/build/components/dimensions-tool/aspect-ratio-tool.cjs.map +2 -2
  60. package/build/components/dimensions-tool/scale-tool.cjs +0 -1
  61. package/build/components/dimensions-tool/scale-tool.cjs.map +2 -2
  62. package/build/components/dimensions-tool/width-height-tool.cjs +2 -4
  63. package/build/components/dimensions-tool/width-height-tool.cjs.map +2 -2
  64. package/build/components/font-appearance-control/index.cjs +6 -25
  65. package/build/components/font-appearance-control/index.cjs.map +3 -3
  66. package/build/components/font-family/index.cjs +6 -15
  67. package/build/components/font-family/index.cjs.map +3 -3
  68. package/build/components/font-sizes/font-size-picker.cjs +1 -2
  69. package/build/components/font-sizes/font-size-picker.cjs.map +2 -2
  70. package/build/components/global-styles/border-panel.cjs +0 -1
  71. package/build/components/global-styles/border-panel.cjs.map +2 -2
  72. package/build/components/global-styles/dimensions-panel.cjs +0 -3
  73. package/build/components/global-styles/dimensions-panel.cjs.map +2 -2
  74. package/build/components/global-styles/state-control-badges.cjs +39 -3
  75. package/build/components/global-styles/state-control-badges.cjs.map +2 -2
  76. package/build/components/global-styles/typography-panel.cjs +4 -11
  77. package/build/components/global-styles/typography-panel.cjs.map +2 -2
  78. package/build/components/height-control/index.cjs +0 -2
  79. package/build/components/height-control/index.cjs.map +2 -2
  80. package/build/components/html-element-control/index.cjs +0 -1
  81. package/build/components/html-element-control/index.cjs.map +2 -2
  82. package/build/components/image-editor/index.cjs +5 -0
  83. package/build/components/image-editor/index.cjs.map +3 -3
  84. package/build/components/image-editor/zoom-dropdown.cjs +0 -1
  85. package/build/components/image-editor/zoom-dropdown.cjs.map +2 -2
  86. package/build/components/image-size-control/index.cjs +3 -7
  87. package/build/components/image-size-control/index.cjs.map +2 -2
  88. package/build/components/inner-content/index.cjs +107 -0
  89. package/build/components/inner-content/index.cjs.map +7 -0
  90. package/build/components/inserter/hooks/use-block-types-state.cjs +10 -2
  91. package/build/components/inserter/hooks/use-block-types-state.cjs.map +2 -2
  92. package/build/components/inserter/media-tab/hooks.cjs +67 -12
  93. package/build/components/inserter/media-tab/hooks.cjs.map +2 -2
  94. package/build/components/inserter/media-tab/media-list.cjs +3 -1
  95. package/build/components/inserter/media-tab/media-list.cjs.map +2 -2
  96. package/build/components/inserter/media-tab/media-panel.cjs +287 -28
  97. package/build/components/inserter/media-tab/media-panel.cjs.map +3 -3
  98. package/build/components/inserter/media-tab/media-preview.cjs +32 -17
  99. package/build/components/inserter/media-tab/media-preview.cjs.map +2 -2
  100. package/build/components/inserter/media-tab/media-tab.cjs +26 -6
  101. package/build/components/inserter/media-tab/media-tab.cjs.map +2 -2
  102. package/build/components/inserter/mobile-tab-navigation.cjs +6 -1
  103. package/build/components/inserter/mobile-tab-navigation.cjs.map +2 -2
  104. package/build/components/inserter/no-results.cjs +2 -2
  105. package/build/components/inserter/no-results.cjs.map +2 -2
  106. package/build/components/inserter/preview-panel.cjs +2 -1
  107. package/build/components/inserter/preview-panel.cjs.map +2 -2
  108. package/build/components/inserter-list-item/index.cjs +8 -2
  109. package/build/components/inserter-list-item/index.cjs.map +2 -2
  110. package/build/components/keyboard-shortcuts/index.cjs +19 -11
  111. package/build/components/keyboard-shortcuts/index.cjs.map +2 -2
  112. package/build/components/letter-spacing-control/index.cjs +0 -24
  113. package/build/components/letter-spacing-control/index.cjs.map +3 -3
  114. package/build/components/line-height-control/index.cjs +6 -22
  115. package/build/components/line-height-control/index.cjs.map +3 -3
  116. package/build/components/list-view/block-select-button.cjs +90 -84
  117. package/build/components/list-view/block-select-button.cjs.map +2 -2
  118. package/build/components/list-view/block.cjs +61 -21
  119. package/build/components/list-view/block.cjs.map +2 -2
  120. package/build/components/list-view/expander.cjs +1 -1
  121. package/build/components/list-view/expander.cjs.map +2 -2
  122. package/build/components/list-view/use-list-view-client-ids.cjs +2 -2
  123. package/build/components/list-view/use-list-view-client-ids.cjs.map +2 -2
  124. package/build/components/media-placeholder/index.cjs +0 -1
  125. package/build/components/media-placeholder/index.cjs.map +2 -2
  126. package/build/components/observe-typing/index.cjs +4 -3
  127. package/build/components/observe-typing/index.cjs.map +2 -2
  128. package/build/components/preset-input-control/custom-value-controls.cjs +1 -3
  129. package/build/components/preset-input-control/custom-value-controls.cjs.map +2 -2
  130. package/build/components/preset-input-control/index.cjs +1 -3
  131. package/build/components/preset-input-control/index.cjs.map +2 -2
  132. package/build/components/resolution-tool/index.cjs +1 -2
  133. package/build/components/resolution-tool/index.cjs.map +2 -2
  134. package/build/components/rich-text/event-listeners/before-input-rules.cjs +3 -4
  135. package/build/components/rich-text/event-listeners/before-input-rules.cjs.map +3 -3
  136. package/build/components/rich-text/event-listeners/delete.cjs +2 -3
  137. package/build/components/rich-text/event-listeners/delete.cjs.map +3 -3
  138. package/build/components/rich-text/event-listeners/enter.cjs +3 -2
  139. package/build/components/rich-text/event-listeners/enter.cjs.map +3 -3
  140. package/build/components/rich-text/event-listeners/input-events.cjs +3 -3
  141. package/build/components/rich-text/event-listeners/input-events.cjs.map +3 -3
  142. package/build/components/rich-text/event-listeners/input-rules.cjs +3 -4
  143. package/build/components/rich-text/event-listeners/input-rules.cjs.map +3 -3
  144. package/build/components/rich-text/event-listeners/insert-replacement-text.cjs +3 -3
  145. package/build/components/rich-text/event-listeners/insert-replacement-text.cjs.map +3 -3
  146. package/build/components/rich-text/event-listeners/paste-handler.cjs +2 -1
  147. package/build/components/rich-text/event-listeners/paste-handler.cjs.map +3 -3
  148. package/build/components/rich-text/event-listeners/remove-browser-shortcuts.cjs +3 -3
  149. package/build/components/rich-text/event-listeners/remove-browser-shortcuts.cjs.map +3 -3
  150. package/build/components/rich-text/event-listeners/shortcuts.cjs +3 -3
  151. package/build/components/rich-text/event-listeners/shortcuts.cjs.map +3 -3
  152. package/build/components/rich-text/event-listeners/undo-automatic-change.cjs +3 -3
  153. package/build/components/rich-text/event-listeners/undo-automatic-change.cjs.map +3 -3
  154. package/build/components/rich-text/index.cjs +66 -17
  155. package/build/components/rich-text/index.cjs.map +2 -2
  156. package/build/components/text-alignment-control/index.cjs +0 -1
  157. package/build/components/text-alignment-control/index.cjs.map +2 -2
  158. package/build/components/text-decoration-control/index.cjs +0 -1
  159. package/build/components/text-decoration-control/index.cjs.map +2 -2
  160. package/build/components/text-indent-control/index.cjs +0 -8
  161. package/build/components/text-indent-control/index.cjs.map +2 -2
  162. package/build/components/text-transform-control/index.cjs +0 -1
  163. package/build/components/text-transform-control/index.cjs.map +2 -2
  164. package/build/components/typewriter/index.cjs +129 -136
  165. package/build/components/typewriter/index.cjs.map +3 -3
  166. package/build/components/use-block-commands/index.cjs +21 -17
  167. package/build/components/use-block-commands/index.cjs.map +2 -2
  168. package/build/components/use-block-display-information/index.cjs +10 -8
  169. package/build/components/use-block-display-information/index.cjs.map +2 -2
  170. package/build/components/use-on-block-drop/index.cjs +3 -7
  171. package/build/components/use-on-block-drop/index.cjs.map +2 -2
  172. package/build/components/use-resize-canvas/index.cjs +16 -53
  173. package/build/components/use-resize-canvas/index.cjs.map +3 -3
  174. package/build/components/writing-flow/index.cjs +12 -1
  175. package/build/components/writing-flow/index.cjs.map +3 -3
  176. package/build/components/writing-flow/use-arrow-nav.cjs +18 -5
  177. package/build/components/writing-flow/use-arrow-nav.cjs.map +2 -2
  178. package/build/components/writing-flow/use-click-selection.cjs +2 -2
  179. package/build/components/writing-flow/use-click-selection.cjs.map +2 -2
  180. package/build/components/writing-flow/use-clipboard-handler.cjs +4 -1
  181. package/build/components/writing-flow/use-clipboard-handler.cjs.map +2 -2
  182. package/build/components/writing-flow/use-drag-selection.cjs +3 -8
  183. package/build/components/writing-flow/use-drag-selection.cjs.map +2 -2
  184. package/build/components/writing-flow/use-editable-root.cjs +112 -0
  185. package/build/components/writing-flow/use-editable-root.cjs.map +7 -0
  186. package/build/components/writing-flow/use-home-end.cjs +64 -0
  187. package/build/components/writing-flow/use-home-end.cjs.map +7 -0
  188. package/build/components/writing-flow/use-input.cjs +15 -5
  189. package/build/components/writing-flow/use-input.cjs.map +2 -2
  190. package/build/components/writing-flow/use-multi-selection.cjs +2 -2
  191. package/build/components/writing-flow/use-multi-selection.cjs.map +2 -2
  192. package/build/components/writing-flow/use-select-all.cjs +14 -2
  193. package/build/components/writing-flow/use-select-all.cjs.map +2 -2
  194. package/build/components/writing-flow/use-selection-observer.cjs +126 -20
  195. package/build/components/writing-flow/use-selection-observer.cjs.map +3 -3
  196. package/build/components/writing-flow/utils.cjs +39 -2
  197. package/build/components/writing-flow/utils.cjs.map +2 -2
  198. package/build/components/writing-mode-control/index.cjs +0 -1
  199. package/build/components/writing-mode-control/index.cjs.map +2 -2
  200. package/build/hooks/background.cjs +3 -2
  201. package/build/hooks/background.cjs.map +2 -2
  202. package/build/hooks/block-fields/rich-text/index.cjs +2 -3
  203. package/build/hooks/block-fields/rich-text/index.cjs.map +3 -3
  204. package/build/hooks/elements.cjs +1 -1
  205. package/build/hooks/elements.cjs.map +2 -2
  206. package/build/hooks/font-size.cjs +1 -2
  207. package/build/hooks/font-size.cjs.map +2 -2
  208. package/build/hooks/grid-visualizer.cjs +5 -3
  209. package/build/hooks/grid-visualizer.cjs.map +2 -2
  210. package/build/hooks/layout-child.cjs +22 -12
  211. package/build/hooks/layout-child.cjs.map +3 -3
  212. package/build/hooks/layout.cjs +33 -16
  213. package/build/hooks/layout.cjs.map +3 -3
  214. package/build/hooks/position.cjs +36 -16
  215. package/build/hooks/position.cjs.map +2 -2
  216. package/build/hooks/states.cjs +32 -23
  217. package/build/hooks/states.cjs.map +3 -3
  218. package/build/hooks/style.cjs +31 -9
  219. package/build/hooks/style.cjs.map +3 -3
  220. package/build/hooks/text-align.cjs +36 -6
  221. package/build/hooks/text-align.cjs.map +3 -3
  222. package/build/hooks/typography.cjs +1 -1
  223. package/build/hooks/typography.cjs.map +2 -2
  224. package/build/layouts/constrained.cjs +35 -27
  225. package/build/layouts/constrained.cjs.map +2 -2
  226. package/build/layouts/flex.cjs +27 -22
  227. package/build/layouts/flex.cjs.map +2 -2
  228. package/build/layouts/grid.cjs +51 -11
  229. package/build/layouts/grid.cjs.map +2 -2
  230. package/build/private-apis.cjs +4 -2
  231. package/build/private-apis.cjs.map +3 -3
  232. package/build/store/actions.cjs +2 -2
  233. package/build/store/actions.cjs.map +2 -2
  234. package/build/store/private-actions.cjs +16 -0
  235. package/build/store/private-actions.cjs.map +2 -2
  236. package/build/store/private-keys.cjs +3 -3
  237. package/build/store/private-keys.cjs.map +2 -2
  238. package/build/store/private-selectors.cjs +109 -12
  239. package/build/store/private-selectors.cjs.map +3 -3
  240. package/build/store/reducer.cjs +19 -3
  241. package/build/store/reducer.cjs.map +2 -2
  242. package/build/store/selectors.cjs +13 -0
  243. package/build/store/selectors.cjs.map +2 -2
  244. package/build/utils/block-bindings.cjs +29 -0
  245. package/build/utils/block-bindings.cjs.map +2 -2
  246. package/build/utils/dom.cjs +14 -0
  247. package/build/utils/dom.cjs.map +2 -2
  248. package/build-module/autocompleters/block.mjs +10 -2
  249. package/build-module/autocompleters/block.mjs.map +2 -2
  250. package/build-module/components/background-image-control/index.mjs +0 -2
  251. package/build-module/components/background-image-control/index.mjs.map +2 -2
  252. package/build-module/components/block-canvas/index.mjs +7 -2
  253. package/build-module/components/block-canvas/index.mjs.map +2 -2
  254. package/build-module/components/block-controls/groups.mjs +3 -1
  255. package/build-module/components/block-controls/groups.mjs.map +2 -2
  256. package/build-module/components/block-edit/edit.mjs +11 -18
  257. package/build-module/components/block-edit/edit.mjs.map +2 -2
  258. package/build-module/components/block-inspector/edit-contents.mjs +4 -1
  259. package/build-module/components/block-inspector/edit-contents.mjs.map +2 -2
  260. package/build-module/components/block-inspector/index.mjs +18 -36
  261. package/build-module/components/block-inspector/index.mjs.map +2 -2
  262. package/build-module/components/block-list/block-invalid-warning.mjs +8 -19
  263. package/build-module/components/block-list/block-invalid-warning.mjs.map +2 -2
  264. package/build-module/components/block-list/block.mjs +9 -3
  265. package/build-module/components/block-list/block.mjs.map +3 -3
  266. package/build-module/components/block-list/index.mjs +1 -3
  267. package/build-module/components/block-list/index.mjs.map +2 -2
  268. package/build-module/components/block-list/use-block-props/index.mjs +3 -1
  269. package/build-module/components/block-list/use-block-props/index.mjs.map +2 -2
  270. package/build-module/components/block-list/use-block-props/use-focus-first-element.mjs +9 -4
  271. package/build-module/components/block-list/use-block-props/use-focus-first-element.mjs.map +2 -2
  272. package/build-module/components/block-list/use-block-props/use-focus-handler.mjs +12 -4
  273. package/build-module/components/block-list/use-block-props/use-focus-handler.mjs.map +2 -2
  274. package/build-module/components/block-styles/use-styles-for-block.mjs +2 -1
  275. package/build-module/components/block-styles/use-styles-for-block.mjs.map +2 -2
  276. package/build-module/components/block-title/use-block-display-title.mjs +7 -2
  277. package/build-module/components/block-title/use-block-display-title.mjs.map +2 -2
  278. package/build-module/components/block-toolbar/block-toolbar-icon.mjs +10 -14
  279. package/build-module/components/block-toolbar/block-toolbar-icon.mjs.map +2 -2
  280. package/build-module/components/block-toolbar/index.mjs +43 -24
  281. package/build-module/components/block-toolbar/index.mjs.map +2 -2
  282. package/build-module/components/block-tools/index.mjs +7 -2
  283. package/build-module/components/block-tools/index.mjs.map +2 -2
  284. package/build-module/components/block-variation-transforms/index.mjs +0 -1
  285. package/build-module/components/block-variation-transforms/index.mjs.map +2 -2
  286. package/build-module/components/block-visibility/modal.mjs +22 -10
  287. package/build-module/components/block-visibility/modal.mjs.map +2 -2
  288. package/build-module/components/block-visibility/use-block-visibility.mjs +17 -7
  289. package/build-module/components/block-visibility/use-block-visibility.mjs.map +2 -2
  290. package/build-module/components/block-visibility/utils.mjs +18 -3
  291. package/build-module/components/block-visibility/utils.mjs.map +2 -2
  292. package/build-module/components/block-visibility/viewport-menu-item.mjs +7 -1
  293. package/build-module/components/block-visibility/viewport-menu-item.mjs.map +2 -2
  294. package/build-module/components/block-visibility/viewport-toolbar.mjs +5 -0
  295. package/build-module/components/block-visibility/viewport-toolbar.mjs.map +2 -2
  296. package/build-module/components/block-visibility/viewport-visibility-info.mjs +5 -1
  297. package/build-module/components/block-visibility/viewport-visibility-info.mjs.map +2 -2
  298. package/build-module/components/child-layout-control/index.mjs +0 -6
  299. package/build-module/components/child-layout-control/index.mjs.map +2 -2
  300. package/build-module/components/colors-gradients/control.mjs +5 -5
  301. package/build-module/components/colors-gradients/control.mjs.map +2 -2
  302. package/build-module/components/date-format-picker/index.mjs +0 -1
  303. package/build-module/components/date-format-picker/index.mjs.map +2 -2
  304. package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs +1 -2
  305. package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs.map +2 -2
  306. package/build-module/components/dimensions-tool/scale-tool.mjs +0 -1
  307. package/build-module/components/dimensions-tool/scale-tool.mjs.map +2 -2
  308. package/build-module/components/dimensions-tool/width-height-tool.mjs +2 -4
  309. package/build-module/components/dimensions-tool/width-height-tool.mjs.map +2 -2
  310. package/build-module/components/font-appearance-control/index.mjs +6 -15
  311. package/build-module/components/font-appearance-control/index.mjs.map +2 -2
  312. package/build-module/components/font-family/index.mjs +6 -15
  313. package/build-module/components/font-family/index.mjs.map +2 -2
  314. package/build-module/components/font-sizes/font-size-picker.mjs +1 -2
  315. package/build-module/components/font-sizes/font-size-picker.mjs.map +2 -2
  316. package/build-module/components/global-styles/border-panel.mjs +0 -1
  317. package/build-module/components/global-styles/border-panel.mjs.map +2 -2
  318. package/build-module/components/global-styles/dimensions-panel.mjs +0 -3
  319. package/build-module/components/global-styles/dimensions-panel.mjs.map +2 -2
  320. package/build-module/components/global-styles/state-control-badges.mjs +41 -5
  321. package/build-module/components/global-styles/state-control-badges.mjs.map +2 -2
  322. package/build-module/components/global-styles/typography-panel.mjs +4 -11
  323. package/build-module/components/global-styles/typography-panel.mjs.map +2 -2
  324. package/build-module/components/height-control/index.mjs +0 -2
  325. package/build-module/components/height-control/index.mjs.map +2 -2
  326. package/build-module/components/html-element-control/index.mjs +0 -1
  327. package/build-module/components/html-element-control/index.mjs.map +2 -2
  328. package/build-module/components/image-editor/index.mjs +5 -0
  329. package/build-module/components/image-editor/index.mjs.map +2 -2
  330. package/build-module/components/image-editor/zoom-dropdown.mjs +0 -1
  331. package/build-module/components/image-editor/zoom-dropdown.mjs.map +2 -2
  332. package/build-module/components/image-size-control/index.mjs +3 -7
  333. package/build-module/components/image-size-control/index.mjs.map +2 -2
  334. package/build-module/components/inner-content/index.mjs +82 -0
  335. package/build-module/components/inner-content/index.mjs.map +7 -0
  336. package/build-module/components/inserter/hooks/use-block-types-state.mjs +10 -2
  337. package/build-module/components/inserter/hooks/use-block-types-state.mjs.map +2 -2
  338. package/build-module/components/inserter/media-tab/hooks.mjs +66 -12
  339. package/build-module/components/inserter/media-tab/hooks.mjs.map +2 -2
  340. package/build-module/components/inserter/media-tab/media-list.mjs +3 -1
  341. package/build-module/components/inserter/media-tab/media-list.mjs.map +2 -2
  342. package/build-module/components/inserter/media-tab/media-panel.mjs +297 -32
  343. package/build-module/components/inserter/media-tab/media-panel.mjs.map +2 -2
  344. package/build-module/components/inserter/media-tab/media-preview.mjs +33 -18
  345. package/build-module/components/inserter/media-tab/media-preview.mjs.map +2 -2
  346. package/build-module/components/inserter/media-tab/media-tab.mjs +27 -7
  347. package/build-module/components/inserter/media-tab/media-tab.mjs.map +2 -2
  348. package/build-module/components/inserter/mobile-tab-navigation.mjs +6 -1
  349. package/build-module/components/inserter/mobile-tab-navigation.mjs.map +2 -2
  350. package/build-module/components/inserter/no-results.mjs +2 -2
  351. package/build-module/components/inserter/no-results.mjs.map +2 -2
  352. package/build-module/components/inserter/preview-panel.mjs +2 -1
  353. package/build-module/components/inserter/preview-panel.mjs.map +2 -2
  354. package/build-module/components/inserter-list-item/index.mjs +8 -2
  355. package/build-module/components/inserter-list-item/index.mjs.map +2 -2
  356. package/build-module/components/keyboard-shortcuts/index.mjs +19 -11
  357. package/build-module/components/keyboard-shortcuts/index.mjs.map +2 -2
  358. package/build-module/components/letter-spacing-control/index.mjs +0 -14
  359. package/build-module/components/letter-spacing-control/index.mjs.map +2 -2
  360. package/build-module/components/line-height-control/index.mjs +6 -12
  361. package/build-module/components/line-height-control/index.mjs.map +2 -2
  362. package/build-module/components/list-view/block-select-button.mjs +90 -84
  363. package/build-module/components/list-view/block-select-button.mjs.map +2 -2
  364. package/build-module/components/list-view/block.mjs +61 -21
  365. package/build-module/components/list-view/block.mjs.map +2 -2
  366. package/build-module/components/list-view/expander.mjs +1 -1
  367. package/build-module/components/list-view/expander.mjs.map +2 -2
  368. package/build-module/components/list-view/use-list-view-client-ids.mjs +2 -2
  369. package/build-module/components/list-view/use-list-view-client-ids.mjs.map +2 -2
  370. package/build-module/components/media-placeholder/index.mjs +0 -1
  371. package/build-module/components/media-placeholder/index.mjs.map +2 -2
  372. package/build-module/components/observe-typing/index.mjs +4 -3
  373. package/build-module/components/observe-typing/index.mjs.map +2 -2
  374. package/build-module/components/preset-input-control/custom-value-controls.mjs +1 -3
  375. package/build-module/components/preset-input-control/custom-value-controls.mjs.map +2 -2
  376. package/build-module/components/preset-input-control/index.mjs +1 -3
  377. package/build-module/components/preset-input-control/index.mjs.map +2 -2
  378. package/build-module/components/resolution-tool/index.mjs +1 -2
  379. package/build-module/components/resolution-tool/index.mjs.map +2 -2
  380. package/build-module/components/rich-text/event-listeners/before-input-rules.mjs +8 -5
  381. package/build-module/components/rich-text/event-listeners/before-input-rules.mjs.map +2 -2
  382. package/build-module/components/rich-text/event-listeners/delete.mjs +7 -4
  383. package/build-module/components/rich-text/event-listeners/delete.mjs.map +2 -2
  384. package/build-module/components/rich-text/event-listeners/enter.mjs +8 -3
  385. package/build-module/components/rich-text/event-listeners/enter.mjs.map +2 -2
  386. package/build-module/components/rich-text/event-listeners/input-events.mjs +3 -3
  387. package/build-module/components/rich-text/event-listeners/input-events.mjs.map +2 -2
  388. package/build-module/components/rich-text/event-listeners/input-rules.mjs +8 -5
  389. package/build-module/components/rich-text/event-listeners/input-rules.mjs.map +2 -2
  390. package/build-module/components/rich-text/event-listeners/insert-replacement-text.mjs +3 -3
  391. package/build-module/components/rich-text/event-listeners/insert-replacement-text.mjs.map +2 -2
  392. package/build-module/components/rich-text/event-listeners/paste-handler.mjs +8 -2
  393. package/build-module/components/rich-text/event-listeners/paste-handler.mjs.map +2 -2
  394. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.mjs +3 -3
  395. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.mjs.map +2 -2
  396. package/build-module/components/rich-text/event-listeners/shortcuts.mjs +3 -3
  397. package/build-module/components/rich-text/event-listeners/shortcuts.mjs.map +2 -2
  398. package/build-module/components/rich-text/event-listeners/undo-automatic-change.mjs +3 -3
  399. package/build-module/components/rich-text/event-listeners/undo-automatic-change.mjs.map +2 -2
  400. package/build-module/components/rich-text/index.mjs +64 -13
  401. package/build-module/components/rich-text/index.mjs.map +2 -2
  402. package/build-module/components/text-alignment-control/index.mjs +0 -1
  403. package/build-module/components/text-alignment-control/index.mjs.map +2 -2
  404. package/build-module/components/text-decoration-control/index.mjs +0 -1
  405. package/build-module/components/text-decoration-control/index.mjs.map +2 -2
  406. package/build-module/components/text-indent-control/index.mjs +0 -8
  407. package/build-module/components/text-indent-control/index.mjs.map +2 -2
  408. package/build-module/components/text-transform-control/index.mjs +0 -1
  409. package/build-module/components/text-transform-control/index.mjs.map +2 -2
  410. package/build-module/components/typewriter/index.mjs +129 -136
  411. package/build-module/components/typewriter/index.mjs.map +2 -2
  412. package/build-module/components/use-block-commands/index.mjs +21 -17
  413. package/build-module/components/use-block-commands/index.mjs.map +2 -2
  414. package/build-module/components/use-block-display-information/index.mjs +10 -8
  415. package/build-module/components/use-block-display-information/index.mjs.map +2 -2
  416. package/build-module/components/use-on-block-drop/index.mjs +4 -7
  417. package/build-module/components/use-on-block-drop/index.mjs.map +2 -2
  418. package/build-module/components/use-resize-canvas/index.mjs +6 -53
  419. package/build-module/components/use-resize-canvas/index.mjs.map +2 -2
  420. package/build-module/components/writing-flow/index.mjs +12 -1
  421. package/build-module/components/writing-flow/index.mjs.map +2 -2
  422. package/build-module/components/writing-flow/use-arrow-nav.mjs +19 -6
  423. package/build-module/components/writing-flow/use-arrow-nav.mjs.map +2 -2
  424. package/build-module/components/writing-flow/use-click-selection.mjs +2 -2
  425. package/build-module/components/writing-flow/use-click-selection.mjs.map +2 -2
  426. package/build-module/components/writing-flow/use-clipboard-handler.mjs +5 -2
  427. package/build-module/components/writing-flow/use-clipboard-handler.mjs.map +2 -2
  428. package/build-module/components/writing-flow/use-drag-selection.mjs +1 -6
  429. package/build-module/components/writing-flow/use-drag-selection.mjs.map +2 -2
  430. package/build-module/components/writing-flow/use-editable-root.mjs +86 -0
  431. package/build-module/components/writing-flow/use-editable-root.mjs.map +7 -0
  432. package/build-module/components/writing-flow/use-home-end.mjs +43 -0
  433. package/build-module/components/writing-flow/use-home-end.mjs.map +7 -0
  434. package/build-module/components/writing-flow/use-input.mjs +15 -5
  435. package/build-module/components/writing-flow/use-input.mjs.map +2 -2
  436. package/build-module/components/writing-flow/use-multi-selection.mjs +2 -2
  437. package/build-module/components/writing-flow/use-multi-selection.mjs.map +2 -2
  438. package/build-module/components/writing-flow/use-select-all.mjs +19 -3
  439. package/build-module/components/writing-flow/use-select-all.mjs.map +2 -2
  440. package/build-module/components/writing-flow/use-selection-observer.mjs +128 -19
  441. package/build-module/components/writing-flow/use-selection-observer.mjs.map +2 -2
  442. package/build-module/components/writing-flow/utils.mjs +35 -1
  443. package/build-module/components/writing-flow/utils.mjs.map +2 -2
  444. package/build-module/components/writing-mode-control/index.mjs +0 -1
  445. package/build-module/components/writing-mode-control/index.mjs.map +2 -2
  446. package/build-module/hooks/background.mjs +3 -2
  447. package/build-module/hooks/background.mjs.map +2 -2
  448. package/build-module/hooks/block-fields/rich-text/index.mjs +2 -6
  449. package/build-module/hooks/block-fields/rich-text/index.mjs.map +2 -2
  450. package/build-module/hooks/elements.mjs +1 -1
  451. package/build-module/hooks/elements.mjs.map +2 -2
  452. package/build-module/hooks/font-size.mjs +1 -2
  453. package/build-module/hooks/font-size.mjs.map +2 -2
  454. package/build-module/hooks/grid-visualizer.mjs +5 -3
  455. package/build-module/hooks/grid-visualizer.mjs.map +2 -2
  456. package/build-module/hooks/layout-child.mjs +22 -12
  457. package/build-module/hooks/layout-child.mjs.map +2 -2
  458. package/build-module/hooks/layout.mjs +32 -16
  459. package/build-module/hooks/layout.mjs.map +2 -2
  460. package/build-module/hooks/position.mjs +38 -18
  461. package/build-module/hooks/position.mjs.map +2 -2
  462. package/build-module/hooks/states.mjs +32 -23
  463. package/build-module/hooks/states.mjs.map +2 -2
  464. package/build-module/hooks/style.mjs +40 -11
  465. package/build-module/hooks/style.mjs.map +2 -2
  466. package/build-module/hooks/text-align.mjs +39 -10
  467. package/build-module/hooks/text-align.mjs.map +2 -2
  468. package/build-module/hooks/typography.mjs +1 -1
  469. package/build-module/hooks/typography.mjs.map +2 -2
  470. package/build-module/layouts/constrained.mjs +35 -27
  471. package/build-module/layouts/constrained.mjs.map +2 -2
  472. package/build-module/layouts/flex.mjs +27 -22
  473. package/build-module/layouts/flex.mjs.map +2 -2
  474. package/build-module/layouts/grid.mjs +52 -11
  475. package/build-module/layouts/grid.mjs.map +2 -2
  476. package/build-module/private-apis.mjs +5 -3
  477. package/build-module/private-apis.mjs.map +2 -2
  478. package/build-module/store/actions.mjs +3 -3
  479. package/build-module/store/actions.mjs.map +2 -2
  480. package/build-module/store/private-actions.mjs +14 -0
  481. package/build-module/store/private-actions.mjs.map +2 -2
  482. package/build-module/store/private-keys.mjs +2 -2
  483. package/build-module/store/private-keys.mjs.map +2 -2
  484. package/build-module/store/private-selectors.mjs +106 -12
  485. package/build-module/store/private-selectors.mjs.map +2 -2
  486. package/build-module/store/reducer.mjs +17 -3
  487. package/build-module/store/reducer.mjs.map +2 -2
  488. package/build-module/store/selectors.mjs +13 -0
  489. package/build-module/store/selectors.mjs.map +2 -2
  490. package/build-module/utils/block-bindings.mjs +28 -0
  491. package/build-module/utils/block-bindings.mjs.map +2 -2
  492. package/build-module/utils/dom.mjs +13 -0
  493. package/build-module/utils/dom.mjs.map +2 -2
  494. package/build-style/content-rtl.css +15 -14
  495. package/build-style/content.css +15 -14
  496. package/build-style/default-editor-styles-rtl.css +1 -1
  497. package/build-style/default-editor-styles.css +1 -1
  498. package/build-style/style-rtl.css +144 -47
  499. package/build-style/style.css +144 -47
  500. package/build-types/components/block-context/index.d.ts +7 -0
  501. package/build-types/components/block-context/index.d.ts.map +1 -1
  502. package/build-types/utils/block-bindings.d.ts +19 -0
  503. package/build-types/utils/block-bindings.d.ts.map +1 -1
  504. package/build-types/utils/dom.d.ts +11 -0
  505. package/build-types/utils/dom.d.ts.map +1 -1
  506. package/build-types/utils/get-px-from-css-unit.d.ts +2 -2
  507. package/build-types/utils/get-px-from-css-unit.d.ts.map +1 -1
  508. package/build-types/utils/pasting.d.ts +1 -1
  509. package/build-types/utils/pasting.d.ts.map +1 -1
  510. package/package.json +46 -44
  511. package/src/autocompleters/block.js +10 -3
  512. package/src/autocompleters/test/block.js +53 -0
  513. package/src/components/background-image-control/index.js +0 -2
  514. package/src/components/block-canvas/index.js +9 -2
  515. package/src/components/block-card/style.scss +1 -1
  516. package/src/components/block-controls/groups.js +2 -0
  517. package/src/components/block-edit/edit.js +13 -31
  518. package/src/components/block-inspector/edit-contents.js +5 -1
  519. package/src/components/block-inspector/index.js +25 -44
  520. package/src/components/block-list/block-invalid-warning.js +8 -19
  521. package/src/components/block-list/block.js +6 -0
  522. package/src/components/block-list/index.js +0 -2
  523. package/src/components/block-list/use-block-props/index.js +2 -0
  524. package/src/components/block-list/use-block-props/use-focus-first-element.js +23 -4
  525. package/src/components/block-list/use-block-props/use-focus-handler.js +34 -9
  526. package/src/components/block-lock/style.scss +1 -1
  527. package/src/components/block-manager/style.scss +1 -1
  528. package/src/components/block-navigation/style.scss +1 -1
  529. package/src/components/block-patterns-list/stories/index.story.jsx +1 -1
  530. package/src/components/block-quick-navigation/style.scss +1 -3
  531. package/src/components/block-styles/style.scss +2 -2
  532. package/src/components/block-styles/use-styles-for-block.js +1 -0
  533. package/src/components/block-title/use-block-display-title.js +7 -2
  534. package/src/components/block-toolbar/block-toolbar-icon.js +11 -16
  535. package/src/components/block-toolbar/index.js +41 -18
  536. package/src/components/block-toolbar/test/block-toolbar-icon.js +32 -9
  537. package/src/components/block-tools/index.js +7 -0
  538. package/src/components/block-types-list/style.scss +0 -1
  539. package/src/components/block-variation-transforms/index.js +0 -1
  540. package/src/components/block-visibility/modal.js +24 -10
  541. package/src/components/block-visibility/style.scss +1 -1
  542. package/src/components/block-visibility/test/use-block-visibility.js +128 -35
  543. package/src/components/block-visibility/test/utils.js +11 -0
  544. package/src/components/block-visibility/use-block-visibility.js +33 -11
  545. package/src/components/block-visibility/utils.js +31 -6
  546. package/src/components/block-visibility/viewport-menu-item.js +10 -1
  547. package/src/components/block-visibility/viewport-toolbar.js +6 -0
  548. package/src/components/block-visibility/viewport-visibility-info.js +5 -1
  549. package/src/components/button-block-appender/content.scss +1 -7
  550. package/src/components/child-layout-control/index.js +0 -6
  551. package/src/components/color-palette/test/__snapshots__/control.js.snap +13 -108
  552. package/src/components/colors-gradients/control.js +4 -4
  553. package/src/components/colors-gradients/style.scss +2 -2
  554. package/src/components/date-format-picker/index.js +0 -1
  555. package/src/components/dimensions-tool/aspect-ratio-tool.js +0 -1
  556. package/src/components/dimensions-tool/scale-tool.js +0 -1
  557. package/src/components/dimensions-tool/width-height-tool.js +0 -2
  558. package/src/components/font-appearance-control/index.js +6 -19
  559. package/src/components/font-family/README.md +0 -9
  560. package/src/components/font-family/index.js +6 -19
  561. package/src/components/font-family/stories/index.story.jsx +1 -2
  562. package/src/components/font-sizes/font-size-picker.js +0 -1
  563. package/src/components/global-styles/border-panel.js +0 -1
  564. package/src/components/global-styles/dimensions-panel.js +0 -3
  565. package/src/components/global-styles/state-control-badges.js +45 -6
  566. package/src/components/global-styles/style.scss +5 -0
  567. package/src/components/global-styles/test/state-control-badges.js +65 -0
  568. package/src/components/global-styles/typography-panel.js +0 -7
  569. package/src/components/height-control/index.js +0 -2
  570. package/src/components/html-element-control/index.js +0 -1
  571. package/src/components/iframe/content.scss +3 -3
  572. package/src/components/image-editor/index.js +22 -0
  573. package/src/components/image-editor/zoom-dropdown.js +0 -1
  574. package/src/components/image-size-control/index.js +0 -4
  575. package/src/components/inner-content/index.js +119 -0
  576. package/src/components/inner-content/test/index.js +81 -0
  577. package/src/components/inserter/hooks/use-block-types-state.js +10 -2
  578. package/src/components/inserter/media-tab/hooks.js +114 -16
  579. package/src/components/inserter/media-tab/media-list.js +2 -0
  580. package/src/components/inserter/media-tab/media-panel.js +354 -19
  581. package/src/components/inserter/media-tab/media-preview.js +34 -17
  582. package/src/components/inserter/media-tab/media-tab.js +20 -2
  583. package/src/components/inserter/media-tab/test/hooks.js +267 -0
  584. package/src/components/inserter/media-tab/test/media-panel.js +127 -0
  585. package/src/components/inserter/mobile-tab-navigation.js +6 -1
  586. package/src/components/inserter/no-results.js +2 -2
  587. package/src/components/inserter/preview-panel.js +1 -0
  588. package/src/components/inserter/style.scss +115 -3
  589. package/src/components/inserter-list-item/index.js +8 -2
  590. package/src/components/inserter-list-item/style.scss +0 -15
  591. package/src/components/keyboard-shortcuts/index.js +28 -11
  592. package/src/components/letter-spacing-control/README.md +0 -8
  593. package/src/components/letter-spacing-control/index.js +5 -23
  594. package/src/components/letter-spacing-control/stories/index.story.jsx +0 -12
  595. package/src/components/line-height-control/README.md +0 -8
  596. package/src/components/line-height-control/index.js +6 -16
  597. package/src/components/line-height-control/stories/index.story.jsx +0 -1
  598. package/src/components/line-height-control/test/index.js +1 -7
  599. package/src/components/link-control/style.scss +2 -2
  600. package/src/components/link-control/test/index.js +6 -6
  601. package/src/components/link-picker/style.scss +1 -2
  602. package/src/components/link-picker/test/index.js +3 -1
  603. package/src/components/list-view/block-select-button.js +5 -1
  604. package/src/components/list-view/block.js +69 -23
  605. package/src/components/list-view/expander.js +5 -1
  606. package/src/components/list-view/style.scss +23 -5
  607. package/src/components/list-view/use-list-view-client-ids.js +2 -2
  608. package/src/components/media-placeholder/index.js +0 -1
  609. package/src/components/multi-selection-inspector/style.scss +1 -1
  610. package/src/components/observe-typing/index.js +9 -4
  611. package/src/components/preset-input-control/custom-value-controls.js +0 -2
  612. package/src/components/preset-input-control/index.js +0 -2
  613. package/src/components/resolution-tool/index.js +0 -1
  614. package/src/components/responsive-block-control/style.scss +1 -1
  615. package/src/components/responsive-block-control/test/index.js +1 -5
  616. package/src/components/rich-text/event-listeners/before-input-rules.js +8 -5
  617. package/src/components/rich-text/event-listeners/delete.js +7 -4
  618. package/src/components/rich-text/event-listeners/enter.js +10 -4
  619. package/src/components/rich-text/event-listeners/input-events.js +4 -3
  620. package/src/components/rich-text/event-listeners/input-rules.js +8 -5
  621. package/src/components/rich-text/event-listeners/insert-replacement-text.js +4 -3
  622. package/src/components/rich-text/event-listeners/paste-handler.js +15 -3
  623. package/src/components/rich-text/event-listeners/remove-browser-shortcuts.js +4 -3
  624. package/src/components/rich-text/event-listeners/shortcuts.js +4 -3
  625. package/src/components/rich-text/event-listeners/undo-automatic-change.js +4 -3
  626. package/src/components/rich-text/index.js +94 -25
  627. package/src/components/skip-to-selected-block/style.scss +1 -1
  628. package/src/components/text-alignment-control/index.js +0 -1
  629. package/src/components/text-decoration-control/index.js +0 -1
  630. package/src/components/text-indent-control/index.js +7 -16
  631. package/src/components/text-transform-control/index.js +0 -1
  632. package/src/components/typewriter/index.js +228 -224
  633. package/src/components/use-block-commands/index.js +27 -17
  634. package/src/components/use-block-display-information/index.js +9 -13
  635. package/src/components/use-block-display-information/test/index.js +47 -9
  636. package/src/components/use-on-block-drop/index.js +4 -7
  637. package/src/components/use-resize-canvas/index.js +10 -71
  638. package/src/components/writing-flow/index.js +15 -1
  639. package/src/components/writing-flow/use-arrow-nav.js +39 -12
  640. package/src/components/writing-flow/use-click-selection.js +2 -3
  641. package/src/components/writing-flow/use-clipboard-handler.js +5 -2
  642. package/src/components/writing-flow/use-drag-selection.js +1 -14
  643. package/src/components/writing-flow/use-editable-root.js +182 -0
  644. package/src/components/writing-flow/use-home-end.js +63 -0
  645. package/src/components/writing-flow/use-input.js +25 -8
  646. package/src/components/writing-flow/use-multi-selection.js +2 -3
  647. package/src/components/writing-flow/use-select-all.js +33 -3
  648. package/src/components/writing-flow/use-selection-observer.js +197 -38
  649. package/src/components/writing-flow/utils.js +83 -0
  650. package/src/components/writing-mode-control/index.js +0 -1
  651. package/src/hooks/background.js +7 -9
  652. package/src/hooks/block-fields/link/styles.scss +1 -6
  653. package/src/hooks/block-fields/media/styles.scss +1 -6
  654. package/src/hooks/block-fields/rich-text/index.js +6 -9
  655. package/src/hooks/block-hooks.scss +15 -0
  656. package/src/hooks/elements.js +0 -1
  657. package/src/hooks/font-size.js +0 -1
  658. package/src/hooks/grid-visualizer.js +40 -36
  659. package/src/hooks/layout-child.js +19 -9
  660. package/src/hooks/layout.js +53 -35
  661. package/src/hooks/position.js +44 -23
  662. package/src/hooks/states.js +55 -28
  663. package/src/hooks/style.js +67 -17
  664. package/src/hooks/test/cross-origin-isolation.js +0 -4
  665. package/src/hooks/test/layout.js +75 -1
  666. package/src/hooks/test/style.js +29 -0
  667. package/src/hooks/test/text-align.js +34 -1
  668. package/src/hooks/text-align.js +41 -10
  669. package/src/hooks/typography.js +0 -1
  670. package/src/layouts/constrained.js +56 -29
  671. package/src/layouts/flex.js +5 -4
  672. package/src/layouts/grid.js +59 -9
  673. package/src/layouts/test/constrained.js +91 -0
  674. package/src/layouts/test/grid.js +71 -0
  675. package/src/private-apis.js +4 -2
  676. package/src/store/actions.js +43 -14
  677. package/src/store/private-actions.js +31 -0
  678. package/src/store/private-keys.js +1 -1
  679. package/src/store/private-selectors.js +209 -16
  680. package/src/store/reducer.js +37 -2
  681. package/src/store/selectors.js +41 -0
  682. package/src/store/test/actions.js +1 -1
  683. package/src/store/test/private-selectors.js +547 -10
  684. package/src/store/test/reducer.js +41 -13
  685. package/src/store/test/selectors.js +133 -0
  686. package/src/style.scss +1 -0
  687. package/src/utils/block-bindings.ts +50 -0
  688. package/src/utils/dom.ts +33 -0
  689. package/src/utils/test/block-bindings.js +181 -0
  690. package/build/components/rich-text/input-event.cjs +0 -50
  691. package/build/components/rich-text/input-event.cjs.map +0 -7
  692. package/build/components/rich-text/shortcut.cjs +0 -51
  693. package/build/components/rich-text/shortcut.cjs.map +0 -7
  694. package/build-module/components/rich-text/input-event.mjs +0 -25
  695. package/build-module/components/rich-text/input-event.mjs.map +0 -7
  696. package/build-module/components/rich-text/shortcut.mjs +0 -26
  697. package/build-module/components/rich-text/shortcut.mjs.map +0 -7
  698. package/src/components/rich-text/input-event.js +0 -31
  699. package/src/components/rich-text/shortcut.js +0 -32
  700. package/src/components/use-resize-canvas/README.md +0 -37
@@ -22,19 +22,17 @@ import { useSettings } from '../../components/use-settings';
22
22
  /**
23
23
  * Control for line text indent.
24
24
  *
25
- * @param {Object} props Component props.
26
- * @param {boolean} props.__next40pxDefaultSize Start opting into the larger default height that will become the default size in a future version.
27
- * @param {string} props.value Currently selected text indent.
28
- * @param {Function} props.onChange Handles change in text indent selection.
29
- * @param {string|number|undefined} props.__unstableInputWidth Input width to pass through to inner UnitControl. Should be a valid CSS value.
30
- * @param {boolean} props.withSlider Whether to show the slider control.
31
- * @param {boolean} props.hasBottomMargin Whether to add bottom margin below the control.
32
- * @param {string} props.help Help text to display below the control.
25
+ * @param {Object} props Component props.
26
+ * @param {string} props.value Currently selected text indent.
27
+ * @param {Function} props.onChange Handles change in text indent selection.
28
+ * @param {string|number|undefined} props.__unstableInputWidth Input width to pass through to inner UnitControl. Should be a valid CSS value.
29
+ * @param {boolean} props.withSlider Whether to show the slider control.
30
+ * @param {boolean} props.hasBottomMargin Whether to add bottom margin below the control.
31
+ * @param {string} props.help Help text to display below the control.
33
32
  *
34
33
  * @return {Element} Text indent control.
35
34
  */
36
35
  export default function TextIndentControl( {
37
- __next40pxDefaultSize = false,
38
36
  value,
39
37
  onChange,
40
38
  __unstableInputWidth = '60px',
@@ -68,8 +66,6 @@ export default function TextIndentControl( {
68
66
  if ( ! withSlider ) {
69
67
  return (
70
68
  <UnitControl
71
- __next40pxDefaultSize={ __next40pxDefaultSize }
72
- __shouldNotWarnDeprecated36pxSize
73
69
  { ...otherProps }
74
70
  label={ __( 'Line indent' ) }
75
71
  value={ value }
@@ -89,14 +85,11 @@ export default function TextIndentControl( {
89
85
  <Flex>
90
86
  <FlexItem isBlock>
91
87
  <UnitControl
92
- __next40pxDefaultSize={ __next40pxDefaultSize }
93
- __shouldNotWarnDeprecated36pxSize
94
88
  label={ __( 'Line indent' ) }
95
89
  labelPosition="top"
96
90
  hideLabelFromVision
97
91
  value={ value }
98
92
  onChange={ onChange }
99
- size={ otherProps.size }
100
93
  units={ units }
101
94
  __unstableInputWidth={ __unstableInputWidth }
102
95
  min={ 0 }
@@ -106,8 +99,6 @@ export default function TextIndentControl( {
106
99
  <FlexItem isBlock>
107
100
  <Spacer marginX={ 2 } marginBottom={ 0 }>
108
101
  <RangeControl
109
- __next40pxDefaultSize={ __next40pxDefaultSize }
110
- __shouldNotWarnDeprecated36pxSize
111
102
  label={ __( 'Line indent' ) }
112
103
  hideLabelFromVision
113
104
  value={ valueQuantity }
@@ -55,7 +55,6 @@ export default function TextTransformControl( { className, value, onChange } ) {
55
55
  return (
56
56
  <ToggleGroupControl
57
57
  isDeselectable
58
- __next40pxDefaultSize
59
58
  label={ __( 'Letter case' ) }
60
59
  className={ clsx(
61
60
  'block-editor-text-transform-control',
@@ -3,261 +3,265 @@
3
3
  */
4
4
  import { useRefEffect } from '@wordpress/compose';
5
5
  import { computeCaretRect, getScrollContainer } from '@wordpress/dom';
6
- import { useSelect } from '@wordpress/data';
7
6
  import { UP, DOWN, LEFT, RIGHT } from '@wordpress/keycodes';
8
7
 
9
- /**
10
- * Internal dependencies
11
- */
12
- import { store as blockEditorStore } from '../../store';
13
-
14
8
  const isIE = window.navigator.userAgent.indexOf( 'Trident' ) !== -1;
15
9
  const arrowKeyCodes = new Set( [ UP, DOWN, LEFT, RIGHT ] );
16
10
  const initialTriggerPercentage = 0.75;
17
11
 
18
12
  export function useTypewriter() {
19
- const hasSelectedBlock = useSelect(
20
- ( select ) => select( blockEditorStore ).hasSelectedBlock(),
21
- []
22
- );
13
+ return useRefEffect( ( node ) => {
14
+ const { ownerDocument } = node;
15
+ const { defaultView } = ownerDocument;
23
16
 
24
- return useRefEffect(
25
- ( node ) => {
26
- if ( ! hasSelectedBlock ) {
17
+ let scrollResizeRafId;
18
+ let onKeyDownRafId;
19
+
20
+ let caretRect;
21
+
22
+ function onScrollResize() {
23
+ if ( scrollResizeRafId ) {
27
24
  return;
28
25
  }
29
26
 
30
- const { ownerDocument } = node;
31
- const { defaultView } = ownerDocument;
27
+ scrollResizeRafId = defaultView.requestAnimationFrame( () => {
28
+ computeCaretRectangle();
29
+ scrollResizeRafId = null;
30
+ } );
31
+ }
32
32
 
33
- let scrollResizeRafId;
34
- let onKeyDownRafId;
33
+ function onKeyDown( event ) {
34
+ // Ensure the any remaining request is cancelled.
35
+ if ( onKeyDownRafId ) {
36
+ defaultView.cancelAnimationFrame( onKeyDownRafId );
37
+ }
38
+
39
+ // Use an animation frame for a smooth result.
40
+ onKeyDownRafId = defaultView.requestAnimationFrame( () => {
41
+ maintainCaretPosition( event );
42
+ onKeyDownRafId = null;
43
+ } );
44
+ }
45
+
46
+ /**
47
+ * Maintains the scroll position after a selection change caused by a
48
+ * keyboard event.
49
+ *
50
+ * @param {KeyboardEvent} event Keyboard event.
51
+ */
52
+ function maintainCaretPosition( { keyCode } ) {
53
+ if ( ! isSelectionEligibleForScroll() ) {
54
+ return;
55
+ }
35
56
 
36
- let caretRect;
57
+ const currentCaretRect = computeCaretRect( defaultView );
58
+
59
+ if ( ! currentCaretRect ) {
60
+ return;
61
+ }
37
62
 
38
- function onScrollResize() {
39
- if ( scrollResizeRafId ) {
40
- return;
41
- }
63
+ // If for some reason there is no position set to be scrolled to, let
64
+ // this be the position to be scrolled to in the future.
65
+ if ( ! caretRect ) {
66
+ caretRect = currentCaretRect;
67
+ return;
68
+ }
42
69
 
43
- scrollResizeRafId = defaultView.requestAnimationFrame( () => {
44
- computeCaretRectangle();
45
- scrollResizeRafId = null;
46
- } );
70
+ // Even though enabling the typewriter effect for arrow keys results in
71
+ // a pleasant experience, it may not be the case for everyone, so, for
72
+ // now, let's disable it.
73
+ if ( arrowKeyCodes.has( keyCode ) ) {
74
+ // Reset the caret position to maintain.
75
+ caretRect = currentCaretRect;
76
+ return;
47
77
  }
48
78
 
49
- function onKeyDown( event ) {
50
- // Ensure the any remaining request is cancelled.
51
- if ( onKeyDownRafId ) {
52
- defaultView.cancelAnimationFrame( onKeyDownRafId );
53
- }
54
-
55
- // Use an animation frame for a smooth result.
56
- onKeyDownRafId = defaultView.requestAnimationFrame( () => {
57
- maintainCaretPosition( event );
58
- onKeyDownRafId = null;
59
- } );
79
+ const diff = currentCaretRect.top - caretRect.top;
80
+
81
+ if ( diff === 0 ) {
82
+ return;
60
83
  }
61
84
 
62
- /**
63
- * Maintains the scroll position after a selection change caused by a
64
- * keyboard event.
65
- *
66
- * @param {KeyboardEvent} event Keyboard event.
67
- */
68
- function maintainCaretPosition( { keyCode } ) {
69
- if ( ! isSelectionEligibleForScroll() ) {
70
- return;
71
- }
72
-
73
- const currentCaretRect = computeCaretRect( defaultView );
74
-
75
- if ( ! currentCaretRect ) {
76
- return;
77
- }
78
-
79
- // If for some reason there is no position set to be scrolled to, let
80
- // this be the position to be scrolled to in the future.
81
- if ( ! caretRect ) {
82
- caretRect = currentCaretRect;
83
- return;
84
- }
85
-
86
- // Even though enabling the typewriter effect for arrow keys results in
87
- // a pleasant experience, it may not be the case for everyone, so, for
88
- // now, let's disable it.
89
- if ( arrowKeyCodes.has( keyCode ) ) {
90
- // Reset the caret position to maintain.
91
- caretRect = currentCaretRect;
92
- return;
93
- }
94
-
95
- const diff = currentCaretRect.top - caretRect.top;
96
-
97
- if ( diff === 0 ) {
98
- return;
99
- }
100
-
101
- const scrollContainer = getScrollContainer( node );
102
-
103
- // The page must be scrollable.
104
- if ( ! scrollContainer ) {
105
- return;
106
- }
107
-
108
- const windowScroll =
109
- scrollContainer === ownerDocument.body ||
110
- scrollContainer === ownerDocument.documentElement;
111
- const scrollY = windowScroll
112
- ? defaultView.scrollY
113
- : scrollContainer.scrollTop;
114
- const scrollContainerY = windowScroll
115
- ? 0
116
- : scrollContainer.getBoundingClientRect().top;
117
- const relativeScrollPosition = windowScroll
118
- ? caretRect.top / defaultView.innerHeight
119
- : ( caretRect.top - scrollContainerY ) /
120
- ( defaultView.innerHeight - scrollContainerY );
121
-
122
- // If the scroll position is at the start, the active editable element
123
- // is the last one, and the caret is positioned within the initial
124
- // trigger percentage of the page, do not scroll the page.
125
- // The typewriter effect should not kick in until an empty page has been
126
- // filled with the initial trigger percentage or the user scrolls
127
- // intentionally down.
128
- if (
129
- scrollY === 0 &&
130
- relativeScrollPosition < initialTriggerPercentage &&
131
- isLastEditableNode()
132
- ) {
133
- // Reset the caret position to maintain.
134
- caretRect = currentCaretRect;
135
- return;
136
- }
137
-
138
- const scrollContainerHeight = windowScroll
139
- ? defaultView.innerHeight
140
- : scrollContainer.clientHeight;
141
-
142
- // Abort if the target scroll position would scroll the caret out of
143
- // view.
144
- if (
145
- // The caret is under the lower fold.
146
- caretRect.top + caretRect.height >
147
- scrollContainerY + scrollContainerHeight ||
148
- // The caret is above the upper fold.
149
- caretRect.top < scrollContainerY
150
- ) {
151
- // Reset the caret position to maintain.
152
- caretRect = currentCaretRect;
153
- return;
154
- }
155
-
156
- if ( windowScroll ) {
157
- defaultView.scrollBy( 0, diff );
158
- } else {
159
- scrollContainer.scrollTop += diff;
160
- }
85
+ const scrollContainer = getScrollContainer( node );
86
+
87
+ // The page must be scrollable.
88
+ if ( ! scrollContainer ) {
89
+ return;
161
90
  }
162
91
 
163
- /**
164
- * Adds a `selectionchange` listener to reset the scroll position to be
165
- * maintained.
166
- */
167
- function addSelectionChangeListener() {
168
- ownerDocument.addEventListener(
169
- 'selectionchange',
170
- computeCaretRectOnSelectionChange
171
- );
92
+ const windowScroll =
93
+ scrollContainer === ownerDocument.body ||
94
+ scrollContainer === ownerDocument.documentElement;
95
+ const scrollY = windowScroll
96
+ ? defaultView.scrollY
97
+ : scrollContainer.scrollTop;
98
+ const scrollContainerY = windowScroll
99
+ ? 0
100
+ : scrollContainer.getBoundingClientRect().top;
101
+ const relativeScrollPosition = windowScroll
102
+ ? caretRect.top / defaultView.innerHeight
103
+ : ( caretRect.top - scrollContainerY ) /
104
+ ( defaultView.innerHeight - scrollContainerY );
105
+
106
+ // If the scroll position is at the start, the active editable element
107
+ // is the last one, and the caret is positioned within the initial
108
+ // trigger percentage of the page, do not scroll the page.
109
+ // The typewriter effect should not kick in until an empty page has been
110
+ // filled with the initial trigger percentage or the user scrolls
111
+ // intentionally down.
112
+ if (
113
+ scrollY === 0 &&
114
+ relativeScrollPosition < initialTriggerPercentage &&
115
+ isLastEditableNode()
116
+ ) {
117
+ // Reset the caret position to maintain.
118
+ caretRect = currentCaretRect;
119
+ return;
172
120
  }
173
121
 
174
- /**
175
- * Resets the scroll position to be maintained during a `selectionchange`
176
- * event. Also removes the listener, so it acts as a one-time listener.
177
- */
178
- function computeCaretRectOnSelectionChange() {
179
- ownerDocument.removeEventListener(
180
- 'selectionchange',
181
- computeCaretRectOnSelectionChange
182
- );
183
- computeCaretRectangle();
122
+ const scrollContainerHeight = windowScroll
123
+ ? defaultView.innerHeight
124
+ : scrollContainer.clientHeight;
125
+
126
+ // Abort if the target scroll position would scroll the caret out of
127
+ // view.
128
+ if (
129
+ // The caret is under the lower fold.
130
+ caretRect.top + caretRect.height >
131
+ scrollContainerY + scrollContainerHeight ||
132
+ // The caret is above the upper fold.
133
+ caretRect.top < scrollContainerY
134
+ ) {
135
+ // Reset the caret position to maintain.
136
+ caretRect = currentCaretRect;
137
+ return;
184
138
  }
185
139
 
186
- /**
187
- * Resets the scroll position to be maintained.
188
- */
189
- function computeCaretRectangle() {
190
- if ( isSelectionEligibleForScroll() ) {
191
- caretRect = computeCaretRect( defaultView );
192
- }
140
+ if ( windowScroll ) {
141
+ defaultView.scrollBy( 0, diff );
142
+ } else {
143
+ scrollContainer.scrollTop += diff;
144
+ }
145
+ }
146
+
147
+ /**
148
+ * Adds a `selectionchange` listener to reset the scroll position to be
149
+ * maintained.
150
+ */
151
+ function addSelectionChangeListener() {
152
+ ownerDocument.addEventListener(
153
+ 'selectionchange',
154
+ computeCaretRectOnSelectionChange
155
+ );
156
+ }
157
+
158
+ /**
159
+ * Resets the scroll position to be maintained during a `selectionchange`
160
+ * event. Also removes the listener, so it acts as a one-time listener.
161
+ */
162
+ function computeCaretRectOnSelectionChange() {
163
+ ownerDocument.removeEventListener(
164
+ 'selectionchange',
165
+ computeCaretRectOnSelectionChange
166
+ );
167
+ computeCaretRectangle();
168
+ }
169
+
170
+ /**
171
+ * Resets the scroll position to be maintained.
172
+ */
173
+ function computeCaretRectangle() {
174
+ if ( isSelectionEligibleForScroll() ) {
175
+ caretRect = computeCaretRect( defaultView );
176
+ }
177
+ }
178
+
179
+ /**
180
+ * Returns the editable element owning the selection: the active
181
+ * element, or, when a focused editing host contains the node
182
+ * (a selected block supports `editableRoot`), the editable
183
+ * element containing the selection.
184
+ */
185
+ function getActiveEditableElement() {
186
+ const { activeElement } = ownerDocument;
187
+
188
+ if ( ! activeElement ) {
189
+ return null;
193
190
  }
194
191
 
195
- /**
196
- * Checks if the current situation is eligible for scroll:
197
- * - There should be one and only one block selected.
198
- * - The component must contain the selection.
199
- * - The active element must be contenteditable.
200
- */
201
- function isSelectionEligibleForScroll() {
202
- return (
203
- node.contains( ownerDocument.activeElement ) &&
204
- ownerDocument.activeElement.isContentEditable
205
- );
192
+ if (
193
+ ! activeElement.isContentEditable ||
194
+ ! activeElement.contains( node )
195
+ ) {
196
+ return activeElement;
206
197
  }
207
198
 
208
- function isLastEditableNode() {
209
- const editableNodes = node.querySelectorAll(
210
- '[contenteditable="true"]'
211
- );
212
- const lastEditableNode =
213
- editableNodes[ editableNodes.length - 1 ];
214
- return lastEditableNode === ownerDocument.activeElement;
199
+ const { anchorNode } = defaultView.getSelection();
200
+
201
+ if ( ! anchorNode ) {
202
+ return null;
215
203
  }
216
204
 
217
- // When the user scrolls or resizes, the scroll position should be
218
- // reset.
219
- defaultView.addEventListener( 'scroll', onScrollResize, true );
220
- defaultView.addEventListener( 'resize', onScrollResize, true );
221
-
222
- node.addEventListener( 'keydown', onKeyDown );
223
- node.addEventListener( 'keyup', maintainCaretPosition );
224
- node.addEventListener( 'mousedown', addSelectionChangeListener );
225
- node.addEventListener( 'touchstart', addSelectionChangeListener );
226
-
227
- return () => {
228
- defaultView.removeEventListener(
229
- 'scroll',
230
- onScrollResize,
231
- true
232
- );
233
- defaultView.removeEventListener(
234
- 'resize',
235
- onScrollResize,
236
- true
237
- );
238
-
239
- node.removeEventListener( 'keydown', onKeyDown );
240
- node.removeEventListener( 'keyup', maintainCaretPosition );
241
- node.removeEventListener(
242
- 'mousedown',
243
- addSelectionChangeListener
244
- );
245
- node.removeEventListener(
246
- 'touchstart',
247
- addSelectionChangeListener
248
- );
249
-
250
- ownerDocument.removeEventListener(
251
- 'selectionchange',
252
- computeCaretRectOnSelectionChange
253
- );
254
-
255
- defaultView.cancelAnimationFrame( scrollResizeRafId );
256
- defaultView.cancelAnimationFrame( onKeyDownRafId );
257
- };
258
- },
259
- [ hasSelectedBlock ]
260
- );
205
+ const element =
206
+ anchorNode.nodeType === anchorNode.ELEMENT_NODE
207
+ ? anchorNode
208
+ : anchorNode.parentElement;
209
+ return element?.closest( '[contenteditable="true"]' ) ?? null;
210
+ }
211
+
212
+ /**
213
+ * Checks if the current situation is eligible for scroll:
214
+ * - The component must contain the selection.
215
+ * - The active element must be contenteditable.
216
+ */
217
+ function isSelectionEligibleForScroll() {
218
+ const activeEditableElement = getActiveEditableElement();
219
+ return (
220
+ !! activeEditableElement &&
221
+ node.contains( activeEditableElement ) &&
222
+ activeEditableElement.isContentEditable
223
+ );
224
+ }
225
+
226
+ function isLastEditableNode() {
227
+ const editableNodes = node.querySelectorAll(
228
+ '[contenteditable="true"]'
229
+ );
230
+ const lastEditableNode = editableNodes[ editableNodes.length - 1 ];
231
+ return lastEditableNode === getActiveEditableElement();
232
+ }
233
+
234
+ // When the user scrolls or resizes, the scroll position should be
235
+ // reset.
236
+ defaultView.addEventListener( 'scroll', onScrollResize, true );
237
+ defaultView.addEventListener( 'resize', onScrollResize, true );
238
+
239
+ node.addEventListener( 'keydown', onKeyDown );
240
+ node.addEventListener( 'keyup', maintainCaretPosition );
241
+ node.addEventListener( 'mousedown', addSelectionChangeListener );
242
+ node.addEventListener( 'touchstart', addSelectionChangeListener );
243
+
244
+ return () => {
245
+ defaultView.removeEventListener( 'scroll', onScrollResize, true );
246
+ defaultView.removeEventListener( 'resize', onScrollResize, true );
247
+
248
+ node.removeEventListener( 'keydown', onKeyDown );
249
+ node.removeEventListener( 'keyup', maintainCaretPosition );
250
+ node.removeEventListener( 'mousedown', addSelectionChangeListener );
251
+ node.removeEventListener(
252
+ 'touchstart',
253
+ addSelectionChangeListener
254
+ );
255
+
256
+ ownerDocument.removeEventListener(
257
+ 'selectionchange',
258
+ computeCaretRectOnSelectionChange
259
+ );
260
+
261
+ defaultView.cancelAnimationFrame( scrollResizeRafId );
262
+ defaultView.cancelAnimationFrame( onKeyDownRafId );
263
+ };
264
+ }, [] );
261
265
  }
262
266
 
263
267
  function Typewriter( { children } ) {
@@ -150,23 +150,29 @@ const getTransformCommands = () =>
150
150
 
151
151
  const getQuickActionsCommands = () =>
152
152
  function useQuickActionsCommands() {
153
- const { clientIds, isUngroupable, isGroupable } = useSelect(
154
- ( select ) => {
155
- const {
156
- getSelectedBlockClientIds,
157
- isUngroupable: _isUngroupable,
158
- isGroupable: _isGroupable,
159
- } = select( blockEditorStore );
160
- const selectedBlockClientIds = getSelectedBlockClientIds();
153
+ const {
154
+ clientIds,
155
+ isUngroupable,
156
+ isGroupable,
157
+ blockVisibilitySetting,
158
+ } = useSelect( ( select ) => {
159
+ const {
160
+ getSelectedBlockClientIds,
161
+ getSettings,
162
+ isUngroupable: _isUngroupable,
163
+ isGroupable: _isGroupable,
164
+ } = select( blockEditorStore );
165
+ const selectedBlockClientIds = getSelectedBlockClientIds();
161
166
 
162
- return {
163
- clientIds: selectedBlockClientIds,
164
- isUngroupable: _isUngroupable(),
165
- isGroupable: _isGroupable(),
166
- };
167
- },
168
- []
169
- );
167
+ return {
168
+ clientIds: selectedBlockClientIds,
169
+ isUngroupable: _isUngroupable(),
170
+ isGroupable: _isGroupable(),
171
+ blockVisibilitySetting:
172
+ getSettings().__experimentalFeatures?.blockVisibility
173
+ ?.allowEditing,
174
+ };
175
+ }, [] );
170
176
  const {
171
177
  canInsertBlockType,
172
178
  getBlockRootClientId,
@@ -310,7 +316,11 @@ const getQuickActionsCommands = () =>
310
316
  ( id ) => getBlockEditingMode( id ) === 'default'
311
317
  );
312
318
 
313
- if ( supportsVisibility && allBlocksDefaultMode ) {
319
+ if (
320
+ supportsVisibility &&
321
+ allBlocksDefaultMode &&
322
+ blockVisibilitySetting !== false
323
+ ) {
314
324
  const hasHiddenBlock = clientIds.some( ( id ) =>
315
325
  isBlockHiddenAnywhere( id )
316
326
  );
@@ -16,7 +16,6 @@ import { symbol } from '@wordpress/icons';
16
16
  */
17
17
  import { store as blockEditorStore } from '../../store';
18
18
  import { unlock } from '../../lock-unlock';
19
- import { isIsolatedEditorKey } from '../../store/private-keys';
20
19
 
21
20
  /** @typedef {import('@wordpress/blocks').WPIcon} WPIcon */
22
21
 
@@ -78,8 +77,8 @@ export default function useBlockDisplayInformation( clientId ) {
78
77
  const {
79
78
  getBlockName,
80
79
  getBlockAttributes,
80
+ getBlock,
81
81
  __experimentalGetParsedPattern,
82
- getSettings,
83
82
  } = blockEditorSelect;
84
83
  const { getBlockType, getActiveBlockVariation } =
85
84
  select( blocksStore );
@@ -89,20 +88,12 @@ export default function useBlockDisplayInformation( clientId ) {
89
88
  return null;
90
89
  }
91
90
  const attributes = getBlockAttributes( clientId );
92
- const { isWithinEditedContentOnlySection } =
93
- unlock( blockEditorSelect );
94
- const isIsolatedEditor = !! getSettings()?.[ isIsolatedEditorKey ];
91
+ const { isSectionBlock } = unlock( blockEditorSelect );
95
92
 
96
93
  // Check if this block is a pattern
97
94
  const patternName = attributes?.metadata?.patternName;
98
- const isEditedContentOnlySection =
99
- isWithinEditedContentOnlySection( clientId );
100
95
 
101
- if (
102
- patternName &&
103
- ! isEditedContentOnlySection &&
104
- ! isIsolatedEditor
105
- ) {
96
+ if ( patternName && isSectionBlock( clientId ) ) {
106
97
  const pattern = __experimentalGetParsedPattern( patternName );
107
98
  const positionLabel = getPositionTypeLabel( attributes );
108
99
  return {
@@ -118,7 +109,12 @@ export default function useBlockDisplayInformation( clientId ) {
118
109
  };
119
110
  }
120
111
 
121
- const match = getActiveBlockVariation( blockName, attributes );
112
+ const match = getActiveBlockVariation(
113
+ blockName,
114
+ attributes,
115
+ undefined,
116
+ getBlock?.( clientId )?.innerContent
117
+ );
122
118
  const isSynced =
123
119
  isReusableBlock( blockType ) || isTemplatePart( blockType );
124
120
  const syncedTitle = isSynced