@wordpress/block-editor 16.0.1-next.v.202607070741.0 → 16.1.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 (679) hide show
  1. package/CHANGELOG.md +27 -1
  2. package/README.md +8 -0
  3. package/build/components/alignment-control/ui.cjs +2 -4
  4. package/build/components/alignment-control/ui.cjs.map +2 -2
  5. package/build/components/background-image-control/index.cjs +40 -10
  6. package/build/components/background-image-control/index.cjs.map +2 -2
  7. package/build/components/block-alignment-control/ui.cjs +5 -3
  8. package/build/components/block-alignment-control/ui.cjs.map +2 -2
  9. package/build/components/block-canvas/index.cjs +6 -1
  10. package/build/components/block-canvas/index.cjs.map +2 -2
  11. package/build/components/block-controls/groups.cjs +3 -1
  12. package/build/components/block-controls/groups.cjs.map +2 -2
  13. package/build/components/block-edit/edit.cjs +10 -18
  14. package/build/components/block-edit/edit.cjs.map +2 -2
  15. package/build/components/block-inspector/index.cjs +73 -46
  16. package/build/components/block-inspector/index.cjs.map +2 -2
  17. package/build/components/block-list/block-html.cjs +4 -1
  18. package/build/components/block-list/block-html.cjs.map +2 -2
  19. package/build/components/block-list/block.cjs +9 -3
  20. package/build/components/block-list/block.cjs.map +3 -3
  21. package/build/components/block-list/index.cjs +1 -3
  22. package/build/components/block-list/index.cjs.map +2 -2
  23. package/build/components/block-list/use-block-props/index.cjs +7 -2
  24. package/build/components/block-list/use-block-props/index.cjs.map +2 -2
  25. package/build/components/block-list/use-block-props/use-focus-first-element.cjs +9 -4
  26. package/build/components/block-list/use-block-props/use-focus-first-element.cjs.map +2 -2
  27. package/build/components/block-list/use-block-props/use-focus-handler.cjs +11 -4
  28. package/build/components/block-list/use-block-props/use-focus-handler.cjs.map +2 -2
  29. package/build/components/block-list/use-block-props/use-register-block-event-handlers.cjs +48 -0
  30. package/build/components/block-list/use-block-props/use-register-block-event-handlers.cjs.map +7 -0
  31. package/build/components/block-parent-selector/index.cjs +2 -2
  32. package/build/components/block-parent-selector/index.cjs.map +2 -2
  33. package/build/components/block-toolbar/index.cjs +43 -24
  34. package/build/components/block-toolbar/index.cjs.map +2 -2
  35. package/build/components/block-toolbar/switch-section-style.cjs +4 -2
  36. package/build/components/block-toolbar/switch-section-style.cjs.map +3 -3
  37. package/build/components/block-tools/empty-block-inserter.cjs +2 -7
  38. package/build/components/block-tools/empty-block-inserter.cjs.map +2 -2
  39. package/build/components/block-tools/index.cjs +7 -2
  40. package/build/components/block-tools/index.cjs.map +2 -2
  41. package/build/components/block-vertical-alignment-control/ui.cjs +3 -5
  42. package/build/components/block-vertical-alignment-control/ui.cjs.map +2 -2
  43. package/build/components/block-visibility/modal.cjs +20 -6
  44. package/build/components/block-visibility/modal.cjs.map +2 -2
  45. package/build/components/block-visibility/use-block-visibility.cjs +16 -6
  46. package/build/components/block-visibility/use-block-visibility.cjs.map +3 -3
  47. package/build/components/block-visibility/utils.cjs +15 -2
  48. package/build/components/block-visibility/utils.cjs.map +3 -3
  49. package/build/components/block-visibility/viewport-menu-item.cjs +7 -1
  50. package/build/components/block-visibility/viewport-menu-item.cjs.map +2 -2
  51. package/build/components/block-visibility/viewport-toolbar.cjs +5 -0
  52. package/build/components/block-visibility/viewport-toolbar.cjs.map +2 -2
  53. package/build/components/block-visibility/viewport-visibility-info.cjs +5 -1
  54. package/build/components/block-visibility/viewport-visibility-info.cjs.map +2 -2
  55. package/build/components/border-radius-control/utils.cjs +8 -58
  56. package/build/components/border-radius-control/utils.cjs.map +2 -2
  57. package/build/components/child-layout-control/index.cjs +0 -4
  58. package/build/components/child-layout-control/index.cjs.map +2 -2
  59. package/build/components/colors-gradients/control.cjs +5 -3
  60. package/build/components/colors-gradients/control.cjs.map +2 -2
  61. package/build/components/dimension-control/index.cjs +30 -20
  62. package/build/components/dimension-control/index.cjs.map +3 -3
  63. package/build/components/dimensions-tool/aspect-ratio-tool.cjs +9 -2
  64. package/build/components/dimensions-tool/aspect-ratio-tool.cjs.map +3 -3
  65. package/build/components/editor-styles/index.cjs +9 -1
  66. package/build/components/editor-styles/index.cjs.map +2 -2
  67. package/build/components/global-styles/background-panel.cjs +66 -25
  68. package/build/components/global-styles/background-panel.cjs.map +3 -3
  69. package/build/components/global-styles/border-panel.cjs +153 -55
  70. package/build/components/global-styles/border-panel.cjs.map +3 -3
  71. package/build/components/global-styles/color-gradient-dropdown-item.cjs +46 -14
  72. package/build/components/global-styles/color-gradient-dropdown-item.cjs.map +3 -3
  73. package/build/components/global-styles/color-panel.cjs +63 -17
  74. package/build/components/global-styles/color-panel.cjs.map +2 -2
  75. package/build/components/global-styles/dimensions-panel.cjs +242 -64
  76. package/build/components/global-styles/dimensions-panel.cjs.map +3 -3
  77. package/build/components/global-styles/filters-panel.cjs +59 -20
  78. package/build/components/global-styles/filters-panel.cjs.map +3 -3
  79. package/build/components/global-styles/hooks.cjs +4 -1
  80. package/build/components/global-styles/hooks.cjs.map +2 -2
  81. package/build/components/global-styles/inheritance/index.cjs +142 -0
  82. package/build/components/global-styles/inheritance/index.cjs.map +7 -0
  83. package/build/components/global-styles/inherited-value-context.cjs +173 -0
  84. package/build/components/global-styles/inherited-value-context.cjs.map +7 -0
  85. package/build/components/global-styles/shadow-panel-components.cjs +38 -20
  86. package/build/components/global-styles/shadow-panel-components.cjs.map +2 -2
  87. package/build/components/global-styles/state-control-badges.cjs +39 -3
  88. package/build/components/global-styles/state-control-badges.cjs.map +2 -2
  89. package/build/components/global-styles/state-control.cjs +1 -1
  90. package/build/components/global-styles/state-control.cjs.map +2 -2
  91. package/build/components/global-styles/typography-panel.cjs +271 -79
  92. package/build/components/global-styles/typography-panel.cjs.map +3 -3
  93. package/build/components/image-size-control/index.cjs +2 -4
  94. package/build/components/image-size-control/index.cjs.map +2 -2
  95. package/build/components/inserter/media-tab/hooks.cjs +33 -6
  96. package/build/components/inserter/media-tab/hooks.cjs.map +2 -2
  97. package/build/components/inserter/media-tab/media-panel.cjs +78 -16
  98. package/build/components/inserter/media-tab/media-panel.cjs.map +3 -3
  99. package/build/components/inspector-controls-tabs/styles-tab.cjs +10 -1
  100. package/build/components/inspector-controls-tabs/styles-tab.cjs.map +2 -2
  101. package/build/components/keyboard-shortcuts/index.cjs +19 -11
  102. package/build/components/keyboard-shortcuts/index.cjs.map +2 -2
  103. package/build/components/line-height-control/index.cjs +1 -2
  104. package/build/components/line-height-control/index.cjs.map +2 -2
  105. package/build/components/link-control/index.cjs +3 -1
  106. package/build/components/link-control/index.cjs.map +2 -2
  107. package/build/components/list-view/block.cjs +13 -4
  108. package/build/components/list-view/block.cjs.map +2 -2
  109. package/build/components/media-placeholder/index.cjs +0 -1
  110. package/build/components/media-placeholder/index.cjs.map +2 -2
  111. package/build/components/preset-input-control/index.cjs +2 -1
  112. package/build/components/preset-input-control/index.cjs.map +2 -2
  113. package/build/components/provider/block-refs-provider.cjs +8 -2
  114. package/build/components/provider/block-refs-provider.cjs.map +2 -2
  115. package/build/components/provider/index.cjs +1 -1
  116. package/build/components/provider/index.cjs.map +2 -2
  117. package/build/components/provider/use-block-sync.cjs +18 -6
  118. package/build/components/provider/use-block-sync.cjs.map +2 -2
  119. package/build/components/provider/use-media-upload-settings.cjs +3 -1
  120. package/build/components/provider/use-media-upload-settings.cjs.map +2 -2
  121. package/build/components/rich-text/event-listeners/before-input-rules.cjs +3 -4
  122. package/build/components/rich-text/event-listeners/before-input-rules.cjs.map +3 -3
  123. package/build/components/rich-text/event-listeners/delete.cjs +2 -3
  124. package/build/components/rich-text/event-listeners/delete.cjs.map +3 -3
  125. package/build/components/rich-text/event-listeners/enter.cjs +3 -2
  126. package/build/components/rich-text/event-listeners/enter.cjs.map +3 -3
  127. package/build/components/rich-text/event-listeners/input-events.cjs +3 -3
  128. package/build/components/rich-text/event-listeners/input-events.cjs.map +3 -3
  129. package/build/components/rich-text/event-listeners/input-rules.cjs +3 -4
  130. package/build/components/rich-text/event-listeners/input-rules.cjs.map +3 -3
  131. package/build/components/rich-text/event-listeners/insert-replacement-text.cjs +3 -3
  132. package/build/components/rich-text/event-listeners/insert-replacement-text.cjs.map +3 -3
  133. package/build/components/rich-text/event-listeners/paste-handler.cjs +2 -1
  134. package/build/components/rich-text/event-listeners/paste-handler.cjs.map +3 -3
  135. package/build/components/rich-text/event-listeners/remove-browser-shortcuts.cjs +3 -3
  136. package/build/components/rich-text/event-listeners/remove-browser-shortcuts.cjs.map +3 -3
  137. package/build/components/rich-text/event-listeners/shortcuts.cjs +3 -3
  138. package/build/components/rich-text/event-listeners/shortcuts.cjs.map +3 -3
  139. package/build/components/rich-text/event-listeners/undo-automatic-change.cjs +3 -3
  140. package/build/components/rich-text/event-listeners/undo-automatic-change.cjs.map +3 -3
  141. package/build/components/rich-text/index.cjs +76 -17
  142. package/build/components/rich-text/index.cjs.map +2 -2
  143. package/build/components/spacing-sizes-control/utils.cjs +6 -19
  144. package/build/components/spacing-sizes-control/utils.cjs.map +2 -2
  145. package/build/components/text-indent-control/index.cjs +8 -2
  146. package/build/components/text-indent-control/index.cjs.map +2 -2
  147. package/build/components/typewriter/index.cjs +129 -136
  148. package/build/components/typewriter/index.cjs.map +3 -3
  149. package/build/components/url-input/index.cjs +303 -344
  150. package/build/components/url-input/index.cjs.map +3 -3
  151. package/build/components/use-block-commands/index.cjs +21 -17
  152. package/build/components/use-block-commands/index.cjs.map +2 -2
  153. package/build/components/use-on-block-drop/index.cjs +1 -1
  154. package/build/components/use-on-block-drop/index.cjs.map +2 -2
  155. package/build/components/writing-flow/index.cjs +14 -1
  156. package/build/components/writing-flow/index.cjs.map +3 -3
  157. package/build/components/writing-flow/use-arrow-nav.cjs +42 -6
  158. package/build/components/writing-flow/use-arrow-nav.cjs.map +2 -2
  159. package/build/components/writing-flow/use-click-selection.cjs +29 -3
  160. package/build/components/writing-flow/use-click-selection.cjs.map +2 -2
  161. package/build/components/writing-flow/use-clipboard-handler.cjs +4 -1
  162. package/build/components/writing-flow/use-clipboard-handler.cjs.map +2 -2
  163. package/build/components/writing-flow/use-drag-selection.cjs +3 -8
  164. package/build/components/writing-flow/use-drag-selection.cjs.map +2 -2
  165. package/build/components/writing-flow/use-editable-root-event-handlers.cjs +179 -0
  166. package/build/components/writing-flow/use-editable-root-event-handlers.cjs.map +7 -0
  167. package/build/components/writing-flow/use-editable-root.cjs +75 -0
  168. package/build/components/writing-flow/use-editable-root.cjs.map +7 -0
  169. package/build/components/writing-flow/use-home-end.cjs +64 -0
  170. package/build/components/writing-flow/use-home-end.cjs.map +7 -0
  171. package/build/components/writing-flow/use-input.cjs +15 -5
  172. package/build/components/writing-flow/use-input.cjs.map +2 -2
  173. package/build/components/writing-flow/use-multi-selection.cjs +2 -2
  174. package/build/components/writing-flow/use-multi-selection.cjs.map +2 -2
  175. package/build/components/writing-flow/use-select-all.cjs +14 -2
  176. package/build/components/writing-flow/use-select-all.cjs.map +2 -2
  177. package/build/components/writing-flow/use-selection-observer.cjs +132 -22
  178. package/build/components/writing-flow/use-selection-observer.cjs.map +3 -3
  179. package/build/components/writing-flow/utils.cjs +28 -2
  180. package/build/components/writing-flow/utils.cjs.map +2 -2
  181. package/build/hooks/background.cjs +14 -10
  182. package/build/hooks/background.cjs.map +2 -2
  183. package/build/hooks/block-fields/rich-text/index.cjs +2 -3
  184. package/build/hooks/block-fields/rich-text/index.cjs.map +3 -3
  185. package/build/hooks/block-style-variation.cjs +4 -45
  186. package/build/hooks/block-style-variation.cjs.map +3 -3
  187. package/build/hooks/border.cjs +19 -4
  188. package/build/hooks/border.cjs.map +2 -2
  189. package/build/hooks/custom-css.cjs +6 -2
  190. package/build/hooks/custom-css.cjs.map +2 -2
  191. package/build/hooks/dimensions.cjs +15 -4
  192. package/build/hooks/dimensions.cjs.map +2 -2
  193. package/build/hooks/duotone.cjs +26 -14
  194. package/build/hooks/duotone.cjs.map +3 -3
  195. package/build/hooks/elements.cjs +15 -5
  196. package/build/hooks/elements.cjs.map +2 -2
  197. package/build/hooks/grid-visualizer.cjs +5 -3
  198. package/build/hooks/grid-visualizer.cjs.map +2 -2
  199. package/build/hooks/layout-child.cjs +22 -12
  200. package/build/hooks/layout-child.cjs.map +3 -3
  201. package/build/hooks/layout.cjs +28 -13
  202. package/build/hooks/layout.cjs.map +3 -3
  203. package/build/hooks/line-height.cjs +1 -2
  204. package/build/hooks/line-height.cjs.map +2 -2
  205. package/build/hooks/states.cjs +27 -7
  206. package/build/hooks/states.cjs.map +3 -3
  207. package/build/hooks/style.cjs +31 -9
  208. package/build/hooks/style.cjs.map +3 -3
  209. package/build/hooks/text-align.cjs +36 -6
  210. package/build/hooks/text-align.cjs.map +3 -3
  211. package/build/hooks/typography.cjs +14 -5
  212. package/build/hooks/typography.cjs.map +2 -2
  213. package/build/layouts/constrained.cjs +14 -6
  214. package/build/layouts/constrained.cjs.map +2 -2
  215. package/build/layouts/flex.cjs +27 -19
  216. package/build/layouts/flex.cjs.map +2 -2
  217. package/build/layouts/grid.cjs +0 -2
  218. package/build/layouts/grid.cjs.map +2 -2
  219. package/build/private-apis.cjs +9 -5
  220. package/build/private-apis.cjs.map +3 -3
  221. package/build/store/actions.cjs +11 -6
  222. package/build/store/actions.cjs.map +2 -2
  223. package/build/store/private-selectors.cjs +41 -3
  224. package/build/store/private-selectors.cjs.map +3 -3
  225. package/build/store/reducer.cjs +6 -6
  226. package/build/store/reducer.cjs.map +2 -2
  227. package/build/store/selectors.cjs +23 -0
  228. package/build/store/selectors.cjs.map +2 -2
  229. package/build/utils/block-bindings.cjs +29 -0
  230. package/build/utils/block-bindings.cjs.map +2 -2
  231. package/build/utils/dom.cjs +14 -0
  232. package/build/utils/dom.cjs.map +2 -2
  233. package/build/{components/rich-text/input-event.cjs → utils/native-undo.cjs} +29 -24
  234. package/build/utils/native-undo.cjs.map +7 -0
  235. package/build-module/components/alignment-control/ui.mjs +2 -4
  236. package/build-module/components/alignment-control/ui.mjs.map +2 -2
  237. package/build-module/components/background-image-control/index.mjs +43 -10
  238. package/build-module/components/background-image-control/index.mjs.map +2 -2
  239. package/build-module/components/block-alignment-control/ui.mjs +5 -3
  240. package/build-module/components/block-alignment-control/ui.mjs.map +2 -2
  241. package/build-module/components/block-canvas/index.mjs +7 -2
  242. package/build-module/components/block-canvas/index.mjs.map +2 -2
  243. package/build-module/components/block-controls/groups.mjs +3 -1
  244. package/build-module/components/block-controls/groups.mjs.map +2 -2
  245. package/build-module/components/block-edit/edit.mjs +11 -18
  246. package/build-module/components/block-edit/edit.mjs.map +2 -2
  247. package/build-module/components/block-inspector/index.mjs +74 -46
  248. package/build-module/components/block-inspector/index.mjs.map +2 -2
  249. package/build-module/components/block-list/block-html.mjs +4 -1
  250. package/build-module/components/block-list/block-html.mjs.map +2 -2
  251. package/build-module/components/block-list/block.mjs +9 -3
  252. package/build-module/components/block-list/block.mjs.map +3 -3
  253. package/build-module/components/block-list/index.mjs +1 -3
  254. package/build-module/components/block-list/index.mjs.map +2 -2
  255. package/build-module/components/block-list/use-block-props/index.mjs +7 -2
  256. package/build-module/components/block-list/use-block-props/index.mjs.map +2 -2
  257. package/build-module/components/block-list/use-block-props/use-focus-first-element.mjs +9 -4
  258. package/build-module/components/block-list/use-block-props/use-focus-first-element.mjs.map +2 -2
  259. package/build-module/components/block-list/use-block-props/use-focus-handler.mjs +11 -4
  260. package/build-module/components/block-list/use-block-props/use-focus-handler.mjs.map +2 -2
  261. package/build-module/components/block-list/use-block-props/use-register-block-event-handlers.mjs +28 -0
  262. package/build-module/components/block-list/use-block-props/use-register-block-event-handlers.mjs.map +7 -0
  263. package/build-module/components/block-parent-selector/index.mjs +2 -2
  264. package/build-module/components/block-parent-selector/index.mjs.map +2 -2
  265. package/build-module/components/block-toolbar/index.mjs +43 -24
  266. package/build-module/components/block-toolbar/index.mjs.map +2 -2
  267. package/build-module/components/block-toolbar/switch-section-style.mjs +4 -2
  268. package/build-module/components/block-toolbar/switch-section-style.mjs.map +2 -2
  269. package/build-module/components/block-tools/empty-block-inserter.mjs +2 -7
  270. package/build-module/components/block-tools/empty-block-inserter.mjs.map +2 -2
  271. package/build-module/components/block-tools/index.mjs +7 -2
  272. package/build-module/components/block-tools/index.mjs.map +2 -2
  273. package/build-module/components/block-vertical-alignment-control/ui.mjs +4 -6
  274. package/build-module/components/block-vertical-alignment-control/ui.mjs.map +2 -2
  275. package/build-module/components/block-visibility/modal.mjs +22 -10
  276. package/build-module/components/block-visibility/modal.mjs.map +2 -2
  277. package/build-module/components/block-visibility/use-block-visibility.mjs +17 -7
  278. package/build-module/components/block-visibility/use-block-visibility.mjs.map +2 -2
  279. package/build-module/components/block-visibility/utils.mjs +18 -3
  280. package/build-module/components/block-visibility/utils.mjs.map +2 -2
  281. package/build-module/components/block-visibility/viewport-menu-item.mjs +7 -1
  282. package/build-module/components/block-visibility/viewport-menu-item.mjs.map +2 -2
  283. package/build-module/components/block-visibility/viewport-toolbar.mjs +5 -0
  284. package/build-module/components/block-visibility/viewport-toolbar.mjs.map +2 -2
  285. package/build-module/components/block-visibility/viewport-visibility-info.mjs +5 -1
  286. package/build-module/components/block-visibility/viewport-visibility-info.mjs.map +2 -2
  287. package/build-module/components/border-radius-control/utils.mjs +11 -53
  288. package/build-module/components/border-radius-control/utils.mjs.map +2 -2
  289. package/build-module/components/child-layout-control/index.mjs +0 -4
  290. package/build-module/components/child-layout-control/index.mjs.map +2 -2
  291. package/build-module/components/colors-gradients/control.mjs +5 -3
  292. package/build-module/components/colors-gradients/control.mjs.map +2 -2
  293. package/build-module/components/dimension-control/index.mjs +30 -20
  294. package/build-module/components/dimension-control/index.mjs.map +2 -2
  295. package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs +10 -6
  296. package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs.map +2 -2
  297. package/build-module/components/editor-styles/index.mjs +9 -1
  298. package/build-module/components/editor-styles/index.mjs.map +2 -2
  299. package/build-module/components/global-styles/background-panel.mjs +71 -29
  300. package/build-module/components/global-styles/background-panel.mjs.map +2 -2
  301. package/build-module/components/global-styles/border-panel.mjs +157 -56
  302. package/build-module/components/global-styles/border-panel.mjs.map +2 -2
  303. package/build-module/components/global-styles/color-gradient-dropdown-item.mjs +51 -15
  304. package/build-module/components/global-styles/color-gradient-dropdown-item.mjs.map +2 -2
  305. package/build-module/components/global-styles/color-panel.mjs +63 -17
  306. package/build-module/components/global-styles/color-panel.mjs.map +2 -2
  307. package/build-module/components/global-styles/dimensions-panel.mjs +248 -66
  308. package/build-module/components/global-styles/dimensions-panel.mjs.map +2 -2
  309. package/build-module/components/global-styles/filters-panel.mjs +64 -21
  310. package/build-module/components/global-styles/filters-panel.mjs.map +2 -2
  311. package/build-module/components/global-styles/hooks.mjs +4 -1
  312. package/build-module/components/global-styles/hooks.mjs.map +2 -2
  313. package/build-module/components/global-styles/inheritance/index.mjs +108 -0
  314. package/build-module/components/global-styles/inheritance/index.mjs.map +7 -0
  315. package/build-module/components/global-styles/inherited-value-context.mjs +141 -0
  316. package/build-module/components/global-styles/inherited-value-context.mjs.map +7 -0
  317. package/build-module/components/global-styles/shadow-panel-components.mjs +38 -20
  318. package/build-module/components/global-styles/shadow-panel-components.mjs.map +2 -2
  319. package/build-module/components/global-styles/state-control-badges.mjs +41 -5
  320. package/build-module/components/global-styles/state-control-badges.mjs.map +2 -2
  321. package/build-module/components/global-styles/state-control.mjs +1 -1
  322. package/build-module/components/global-styles/state-control.mjs.map +2 -2
  323. package/build-module/components/global-styles/typography-panel.mjs +276 -80
  324. package/build-module/components/global-styles/typography-panel.mjs.map +2 -2
  325. package/build-module/components/image-size-control/index.mjs +2 -4
  326. package/build-module/components/image-size-control/index.mjs.map +2 -2
  327. package/build-module/components/inserter/media-tab/hooks.mjs +33 -6
  328. package/build-module/components/inserter/media-tab/hooks.mjs.map +2 -2
  329. package/build-module/components/inserter/media-tab/media-panel.mjs +86 -18
  330. package/build-module/components/inserter/media-tab/media-panel.mjs.map +2 -2
  331. package/build-module/components/inspector-controls-tabs/styles-tab.mjs +6 -1
  332. package/build-module/components/inspector-controls-tabs/styles-tab.mjs.map +2 -2
  333. package/build-module/components/keyboard-shortcuts/index.mjs +19 -11
  334. package/build-module/components/keyboard-shortcuts/index.mjs.map +2 -2
  335. package/build-module/components/line-height-control/index.mjs +1 -2
  336. package/build-module/components/line-height-control/index.mjs.map +2 -2
  337. package/build-module/components/link-control/index.mjs +4 -2
  338. package/build-module/components/link-control/index.mjs.map +2 -2
  339. package/build-module/components/list-view/block.mjs +13 -4
  340. package/build-module/components/list-view/block.mjs.map +2 -2
  341. package/build-module/components/media-placeholder/index.mjs +0 -1
  342. package/build-module/components/media-placeholder/index.mjs.map +2 -2
  343. package/build-module/components/preset-input-control/index.mjs +2 -1
  344. package/build-module/components/preset-input-control/index.mjs.map +2 -2
  345. package/build-module/components/provider/block-refs-provider.mjs +8 -2
  346. package/build-module/components/provider/block-refs-provider.mjs.map +2 -2
  347. package/build-module/components/provider/index.mjs +1 -1
  348. package/build-module/components/provider/index.mjs.map +2 -2
  349. package/build-module/components/provider/use-block-sync.mjs +18 -6
  350. package/build-module/components/provider/use-block-sync.mjs.map +2 -2
  351. package/build-module/components/provider/use-media-upload-settings.mjs +3 -1
  352. package/build-module/components/provider/use-media-upload-settings.mjs.map +2 -2
  353. package/build-module/components/rich-text/event-listeners/before-input-rules.mjs +8 -5
  354. package/build-module/components/rich-text/event-listeners/before-input-rules.mjs.map +2 -2
  355. package/build-module/components/rich-text/event-listeners/delete.mjs +7 -4
  356. package/build-module/components/rich-text/event-listeners/delete.mjs.map +2 -2
  357. package/build-module/components/rich-text/event-listeners/enter.mjs +8 -3
  358. package/build-module/components/rich-text/event-listeners/enter.mjs.map +2 -2
  359. package/build-module/components/rich-text/event-listeners/input-events.mjs +3 -3
  360. package/build-module/components/rich-text/event-listeners/input-events.mjs.map +2 -2
  361. package/build-module/components/rich-text/event-listeners/input-rules.mjs +8 -5
  362. package/build-module/components/rich-text/event-listeners/input-rules.mjs.map +2 -2
  363. package/build-module/components/rich-text/event-listeners/insert-replacement-text.mjs +3 -3
  364. package/build-module/components/rich-text/event-listeners/insert-replacement-text.mjs.map +2 -2
  365. package/build-module/components/rich-text/event-listeners/paste-handler.mjs +8 -2
  366. package/build-module/components/rich-text/event-listeners/paste-handler.mjs.map +2 -2
  367. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.mjs +3 -3
  368. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.mjs.map +2 -2
  369. package/build-module/components/rich-text/event-listeners/shortcuts.mjs +3 -3
  370. package/build-module/components/rich-text/event-listeners/shortcuts.mjs.map +2 -2
  371. package/build-module/components/rich-text/event-listeners/undo-automatic-change.mjs +3 -3
  372. package/build-module/components/rich-text/event-listeners/undo-automatic-change.mjs.map +2 -2
  373. package/build-module/components/rich-text/index.mjs +79 -14
  374. package/build-module/components/rich-text/index.mjs.map +2 -2
  375. package/build-module/components/spacing-sizes-control/utils.mjs +6 -18
  376. package/build-module/components/spacing-sizes-control/utils.mjs.map +2 -2
  377. package/build-module/components/text-indent-control/index.mjs +8 -2
  378. package/build-module/components/text-indent-control/index.mjs.map +2 -2
  379. package/build-module/components/typewriter/index.mjs +129 -136
  380. package/build-module/components/typewriter/index.mjs.map +2 -2
  381. package/build-module/components/url-input/index.mjs +306 -353
  382. package/build-module/components/url-input/index.mjs.map +2 -2
  383. package/build-module/components/use-block-commands/index.mjs +21 -17
  384. package/build-module/components/use-block-commands/index.mjs.map +2 -2
  385. package/build-module/components/use-on-block-drop/index.mjs +2 -2
  386. package/build-module/components/use-on-block-drop/index.mjs.map +2 -2
  387. package/build-module/components/writing-flow/index.mjs +14 -1
  388. package/build-module/components/writing-flow/index.mjs.map +2 -2
  389. package/build-module/components/writing-flow/use-arrow-nav.mjs +43 -7
  390. package/build-module/components/writing-flow/use-arrow-nav.mjs.map +2 -2
  391. package/build-module/components/writing-flow/use-click-selection.mjs +29 -3
  392. package/build-module/components/writing-flow/use-click-selection.mjs.map +2 -2
  393. package/build-module/components/writing-flow/use-clipboard-handler.mjs +5 -2
  394. package/build-module/components/writing-flow/use-clipboard-handler.mjs.map +2 -2
  395. package/build-module/components/writing-flow/use-drag-selection.mjs +1 -6
  396. package/build-module/components/writing-flow/use-drag-selection.mjs.map +2 -2
  397. package/build-module/components/writing-flow/use-editable-root-event-handlers.mjs +154 -0
  398. package/build-module/components/writing-flow/use-editable-root-event-handlers.mjs.map +7 -0
  399. package/build-module/components/writing-flow/use-editable-root.mjs +54 -0
  400. package/build-module/components/writing-flow/use-editable-root.mjs.map +7 -0
  401. package/build-module/components/writing-flow/use-home-end.mjs +43 -0
  402. package/build-module/components/writing-flow/use-home-end.mjs.map +7 -0
  403. package/build-module/components/writing-flow/use-input.mjs +15 -5
  404. package/build-module/components/writing-flow/use-input.mjs.map +2 -2
  405. package/build-module/components/writing-flow/use-multi-selection.mjs +2 -2
  406. package/build-module/components/writing-flow/use-multi-selection.mjs.map +2 -2
  407. package/build-module/components/writing-flow/use-select-all.mjs +19 -3
  408. package/build-module/components/writing-flow/use-select-all.mjs.map +2 -2
  409. package/build-module/components/writing-flow/use-selection-observer.mjs +134 -21
  410. package/build-module/components/writing-flow/use-selection-observer.mjs.map +2 -2
  411. package/build-module/components/writing-flow/utils.mjs +26 -1
  412. package/build-module/components/writing-flow/utils.mjs.map +2 -2
  413. package/build-module/hooks/background.mjs +14 -10
  414. package/build-module/hooks/background.mjs.map +2 -2
  415. package/build-module/hooks/block-fields/rich-text/index.mjs +2 -6
  416. package/build-module/hooks/block-fields/rich-text/index.mjs.map +2 -2
  417. package/build-module/hooks/block-style-variation.mjs +8 -44
  418. package/build-module/hooks/block-style-variation.mjs.map +2 -2
  419. package/build-module/hooks/border.mjs +19 -4
  420. package/build-module/hooks/border.mjs.map +2 -2
  421. package/build-module/hooks/custom-css.mjs +7 -3
  422. package/build-module/hooks/custom-css.mjs.map +2 -2
  423. package/build-module/hooks/dimensions.mjs +15 -4
  424. package/build-module/hooks/dimensions.mjs.map +2 -2
  425. package/build-module/hooks/duotone.mjs +20 -9
  426. package/build-module/hooks/duotone.mjs.map +2 -2
  427. package/build-module/hooks/elements.mjs +15 -5
  428. package/build-module/hooks/elements.mjs.map +2 -2
  429. package/build-module/hooks/grid-visualizer.mjs +5 -3
  430. package/build-module/hooks/grid-visualizer.mjs.map +2 -2
  431. package/build-module/hooks/layout-child.mjs +22 -12
  432. package/build-module/hooks/layout-child.mjs.map +2 -2
  433. package/build-module/hooks/layout.mjs +28 -13
  434. package/build-module/hooks/layout.mjs.map +2 -2
  435. package/build-module/hooks/line-height.mjs +1 -2
  436. package/build-module/hooks/line-height.mjs.map +2 -2
  437. package/build-module/hooks/states.mjs +27 -7
  438. package/build-module/hooks/states.mjs.map +2 -2
  439. package/build-module/hooks/style.mjs +40 -11
  440. package/build-module/hooks/style.mjs.map +2 -2
  441. package/build-module/hooks/text-align.mjs +39 -10
  442. package/build-module/hooks/text-align.mjs.map +2 -2
  443. package/build-module/hooks/typography.mjs +14 -5
  444. package/build-module/hooks/typography.mjs.map +2 -2
  445. package/build-module/layouts/constrained.mjs +14 -6
  446. package/build-module/layouts/constrained.mjs.map +2 -2
  447. package/build-module/layouts/flex.mjs +27 -19
  448. package/build-module/layouts/flex.mjs.map +2 -2
  449. package/build-module/layouts/grid.mjs +0 -2
  450. package/build-module/layouts/grid.mjs.map +2 -2
  451. package/build-module/private-apis.mjs +7 -3
  452. package/build-module/private-apis.mjs.map +2 -2
  453. package/build-module/store/actions.mjs +12 -7
  454. package/build-module/store/actions.mjs.map +2 -2
  455. package/build-module/store/private-selectors.mjs +42 -3
  456. package/build-module/store/private-selectors.mjs.map +2 -2
  457. package/build-module/store/reducer.mjs +6 -6
  458. package/build-module/store/reducer.mjs.map +2 -2
  459. package/build-module/store/selectors.mjs +23 -0
  460. package/build-module/store/selectors.mjs.map +2 -2
  461. package/build-module/utils/block-bindings.mjs +28 -0
  462. package/build-module/utils/block-bindings.mjs.map +2 -2
  463. package/build-module/utils/dom.mjs +13 -0
  464. package/build-module/utils/dom.mjs.map +2 -2
  465. package/build-module/utils/native-undo.mjs +29 -0
  466. package/build-module/utils/native-undo.mjs.map +7 -0
  467. package/build-style/content-rtl.css +14 -27
  468. package/build-style/content.css +14 -27
  469. package/build-style/default-editor-styles-rtl.css +1 -1
  470. package/build-style/default-editor-styles.css +1 -1
  471. package/build-style/style-rtl.css +191 -61
  472. package/build-style/style.css +191 -61
  473. package/build-types/components/block-context/index.d.ts +7 -0
  474. package/build-types/components/block-context/index.d.ts.map +1 -1
  475. package/build-types/utils/block-bindings.d.ts +19 -0
  476. package/build-types/utils/block-bindings.d.ts.map +1 -1
  477. package/build-types/utils/dom.d.ts +11 -0
  478. package/build-types/utils/dom.d.ts.map +1 -1
  479. package/build-types/utils/get-px-from-css-unit.d.ts +2 -2
  480. package/build-types/utils/get-px-from-css-unit.d.ts.map +1 -1
  481. package/build-types/utils/pasting.d.ts +1 -1
  482. package/build-types/utils/pasting.d.ts.map +1 -1
  483. package/package.json +43 -44
  484. package/src/components/alignment-control/test/__snapshots__/index.js.snap +1 -1
  485. package/src/components/alignment-control/ui.js +2 -4
  486. package/src/components/background-image-control/index.js +74 -37
  487. package/src/components/background-image-control/style.scss +13 -4
  488. package/src/components/block-alignment-control/test/__snapshots__/index.js.snap +3 -3
  489. package/src/components/block-alignment-control/test/index.js +1 -1
  490. package/src/components/block-alignment-control/ui.js +4 -2
  491. package/src/components/block-breadcrumb/test/__snapshots__/index.js.snap +1 -1
  492. package/src/components/block-canvas/index.js +9 -2
  493. package/src/components/block-card/style.scss +1 -1
  494. package/src/components/block-compare/test/__snapshots__/block-view.js.snap +1 -1
  495. package/src/components/block-controls/groups.js +2 -0
  496. package/src/components/block-edit/edit.js +13 -31
  497. package/src/components/block-icon/test/__snapshots__/index.js.snap +1 -1
  498. package/src/components/block-inspector/index.js +60 -31
  499. package/src/components/block-list/block-html.js +5 -0
  500. package/src/components/block-list/block.js +6 -0
  501. package/src/components/block-list/content.scss +1 -11
  502. package/src/components/block-list/index.js +0 -2
  503. package/src/components/block-list/use-block-props/index.js +7 -1
  504. package/src/components/block-list/use-block-props/use-focus-first-element.js +23 -4
  505. package/src/components/block-list/use-block-props/use-focus-handler.js +35 -9
  506. package/src/components/block-list/use-block-props/use-register-block-event-handlers.js +45 -0
  507. package/src/components/block-lock/style.scss +1 -1
  508. package/src/components/block-manager/style.scss +1 -1
  509. package/src/components/block-navigation/style.scss +1 -1
  510. package/src/components/block-parent-selector/index.js +5 -2
  511. package/src/components/block-quick-navigation/style.scss +1 -3
  512. package/src/components/block-styles/style.scss +2 -2
  513. package/src/components/block-toolbar/index.js +41 -18
  514. package/src/components/block-toolbar/switch-section-style.js +5 -2
  515. package/src/components/block-tools/empty-block-inserter.js +3 -7
  516. package/src/components/block-tools/index.js +7 -0
  517. package/src/components/block-types-list/style.scss +0 -1
  518. package/src/components/block-vertical-alignment-control/test/__snapshots__/index.js.snap +3 -3
  519. package/src/components/block-vertical-alignment-control/test/index.js +18 -2
  520. package/src/components/block-vertical-alignment-control/ui.js +3 -5
  521. package/src/components/block-visibility/modal.js +24 -10
  522. package/src/components/block-visibility/style.scss +1 -1
  523. package/src/components/block-visibility/test/use-block-visibility.js +128 -35
  524. package/src/components/block-visibility/test/utils.js +11 -0
  525. package/src/components/block-visibility/use-block-visibility.js +33 -11
  526. package/src/components/block-visibility/utils.js +31 -6
  527. package/src/components/block-visibility/viewport-menu-item.js +10 -1
  528. package/src/components/block-visibility/viewport-toolbar.js +6 -0
  529. package/src/components/block-visibility/viewport-visibility-info.js +5 -1
  530. package/src/components/border-radius-control/test/utils.js +0 -41
  531. package/src/components/border-radius-control/utils.js +16 -107
  532. package/src/components/button-block-appender/content.scss +7 -9
  533. package/src/components/child-layout-control/index.js +0 -4
  534. package/src/components/color-palette/test/__snapshots__/control.js.snap +3 -3
  535. package/src/components/colors-gradients/control.js +6 -3
  536. package/src/components/default-block-appender/test/__snapshots__/index.js.snap +1 -1
  537. package/src/components/dimension-control/index.js +13 -1
  538. package/src/components/dimensions-tool/aspect-ratio-tool.js +13 -6
  539. package/src/components/editor-styles/index.js +16 -1
  540. package/src/components/font-family/stories/index.story.jsx +1 -1
  541. package/src/components/global-styles/background-panel.js +107 -34
  542. package/src/components/global-styles/border-panel.js +219 -48
  543. package/src/components/global-styles/color-gradient-dropdown-item.js +93 -28
  544. package/src/components/global-styles/color-panel.js +92 -11
  545. package/src/components/global-styles/dimensions-panel.js +422 -71
  546. package/src/components/global-styles/filters-panel.js +88 -28
  547. package/src/components/global-styles/hooks.js +8 -1
  548. package/src/components/global-styles/inheritance/index.js +204 -0
  549. package/src/components/global-styles/inheritance/style.scss +184 -0
  550. package/src/components/global-styles/inheritance/test/index.js +281 -0
  551. package/src/components/global-styles/inherited-value-context.js +271 -0
  552. package/src/components/global-styles/shadow-panel-components.js +48 -26
  553. package/src/components/global-styles/state-control-badges.js +45 -6
  554. package/src/components/global-styles/state-control.js +2 -2
  555. package/src/components/global-styles/style.scss +5 -0
  556. package/src/components/global-styles/test/background-panel.js +338 -1
  557. package/src/components/global-styles/test/border-panel.js +441 -0
  558. package/src/components/global-styles/test/color-panel.js +182 -2
  559. package/src/components/global-styles/test/dimensions-panel.js +753 -0
  560. package/src/components/global-styles/test/filters-panel.js +194 -0
  561. package/src/components/global-styles/test/inherited-value-context-core.js +98 -0
  562. package/src/components/global-styles/test/inherited-value-context.js +454 -0
  563. package/src/components/global-styles/test/state-control-badges.js +65 -0
  564. package/src/components/global-styles/test/typography-panel-core.js +185 -0
  565. package/src/components/global-styles/test/typography-panel.js +849 -12
  566. package/src/components/global-styles/typography-panel.js +449 -101
  567. package/src/components/image-editor/style.scss +33 -0
  568. package/src/components/image-size-control/index.js +0 -2
  569. package/src/components/inner-blocks/test/__snapshots__/index.js.snap +1 -1
  570. package/src/components/inserter/media-tab/hooks.js +55 -7
  571. package/src/components/inserter/media-tab/media-panel.js +117 -21
  572. package/src/components/inserter/media-tab/test/hooks.js +63 -0
  573. package/src/components/inserter/media-tab/test/media-panel.js +127 -0
  574. package/src/components/inserter/style.scss +19 -16
  575. package/src/components/inserter-list-item/style.scss +0 -15
  576. package/src/components/inspector-controls-tabs/styles-tab.js +5 -1
  577. package/src/components/keyboard-shortcuts/index.js +28 -11
  578. package/src/components/line-height-control/index.js +1 -2
  579. package/src/components/link-control/index.js +7 -2
  580. package/src/components/link-control/style.scss +2 -2
  581. package/src/components/link-control/test/index.js +6 -6
  582. package/src/components/link-picker/style.scss +1 -2
  583. package/src/components/list-view/block.js +13 -4
  584. package/src/components/list-view/style.scss +4 -5
  585. package/src/components/media-placeholder/index.js +0 -1
  586. package/src/components/multi-selection-inspector/style.scss +1 -1
  587. package/src/components/preset-input-control/index.js +4 -1
  588. package/src/components/provider/block-refs-provider.js +12 -2
  589. package/src/components/provider/index.js +2 -2
  590. package/src/components/provider/use-block-sync.js +18 -6
  591. package/src/components/provider/use-media-upload-settings.js +2 -0
  592. package/src/components/responsive-block-control/style.scss +1 -1
  593. package/src/components/rich-text/event-listeners/before-input-rules.js +8 -5
  594. package/src/components/rich-text/event-listeners/delete.js +7 -4
  595. package/src/components/rich-text/event-listeners/enter.js +10 -4
  596. package/src/components/rich-text/event-listeners/input-events.js +4 -3
  597. package/src/components/rich-text/event-listeners/input-rules.js +8 -5
  598. package/src/components/rich-text/event-listeners/insert-replacement-text.js +4 -3
  599. package/src/components/rich-text/event-listeners/paste-handler.js +15 -3
  600. package/src/components/rich-text/event-listeners/remove-browser-shortcuts.js +4 -3
  601. package/src/components/rich-text/event-listeners/shortcuts.js +4 -3
  602. package/src/components/rich-text/event-listeners/undo-automatic-change.js +4 -3
  603. package/src/components/rich-text/index.js +116 -26
  604. package/src/components/skip-to-selected-block/style.scss +1 -1
  605. package/src/components/spacing-sizes-control/test/utils.js +16 -5
  606. package/src/components/spacing-sizes-control/utils.js +11 -28
  607. package/src/components/text-indent-control/index.js +8 -0
  608. package/src/components/typewriter/index.js +228 -224
  609. package/src/components/url-input/index.js +363 -431
  610. package/src/components/url-input/test/index.js +592 -0
  611. package/src/components/use-block-commands/index.js +27 -17
  612. package/src/components/use-on-block-drop/index.js +2 -2
  613. package/src/components/warning/test/__snapshots__/index.js.snap +1 -1
  614. package/src/components/writing-flow/index.js +17 -1
  615. package/src/components/writing-flow/use-arrow-nav.js +90 -13
  616. package/src/components/writing-flow/use-click-selection.js +55 -5
  617. package/src/components/writing-flow/use-clipboard-handler.js +5 -2
  618. package/src/components/writing-flow/use-drag-selection.js +1 -14
  619. package/src/components/writing-flow/use-editable-root-event-handlers.js +266 -0
  620. package/src/components/writing-flow/use-editable-root.js +112 -0
  621. package/src/components/writing-flow/use-home-end.js +71 -0
  622. package/src/components/writing-flow/use-input.js +25 -8
  623. package/src/components/writing-flow/use-multi-selection.js +2 -3
  624. package/src/components/writing-flow/use-select-all.js +33 -3
  625. package/src/components/writing-flow/use-selection-observer.js +218 -42
  626. package/src/components/writing-flow/utils.js +62 -0
  627. package/src/hooks/background.js +27 -24
  628. package/src/hooks/block-fields/link/styles.scss +1 -6
  629. package/src/hooks/block-fields/media/styles.scss +1 -6
  630. package/src/hooks/block-fields/rich-text/index.js +6 -9
  631. package/src/hooks/block-fields/rich-text/styles.scss +1 -1
  632. package/src/hooks/block-style-variation.js +8 -74
  633. package/src/hooks/border.js +19 -4
  634. package/src/hooks/custom-css.js +15 -6
  635. package/src/hooks/dimensions.js +17 -4
  636. package/src/hooks/duotone.js +26 -8
  637. package/src/hooks/elements.js +14 -4
  638. package/src/hooks/grid-visualizer.js +40 -36
  639. package/src/hooks/layout-child.js +19 -9
  640. package/src/hooks/layout.js +48 -31
  641. package/src/hooks/line-height.js +0 -1
  642. package/src/hooks/states.js +38 -9
  643. package/src/hooks/style.js +67 -17
  644. package/src/hooks/test/inherited-value-wiring.js +411 -0
  645. package/src/hooks/test/preset-round-trip.js +456 -0
  646. package/src/hooks/test/style.js +29 -0
  647. package/src/hooks/test/text-align.js +34 -1
  648. package/src/hooks/text-align.js +41 -10
  649. package/src/hooks/typography.js +35 -24
  650. package/src/layouts/constrained.js +5 -1
  651. package/src/layouts/flex.js +5 -1
  652. package/src/layouts/grid.js +0 -2
  653. package/src/private-apis.js +11 -2
  654. package/src/store/actions.js +53 -19
  655. package/src/store/private-selectors.js +82 -6
  656. package/src/store/reducer.js +9 -9
  657. package/src/store/selectors.js +56 -8
  658. package/src/store/test/actions.js +1 -1
  659. package/src/store/test/private-selectors.js +271 -1
  660. package/src/style.scss +2 -0
  661. package/src/utils/block-bindings.ts +50 -0
  662. package/src/utils/dom.ts +33 -0
  663. package/src/utils/native-undo.js +56 -0
  664. package/src/utils/test/block-bindings.js +181 -0
  665. package/build/components/duotone/utils.cjs +0 -87
  666. package/build/components/duotone/utils.cjs.map +0 -7
  667. package/build/components/rich-text/input-event.cjs.map +0 -7
  668. package/build/components/rich-text/shortcut.cjs +0 -51
  669. package/build/components/rich-text/shortcut.cjs.map +0 -7
  670. package/build-module/components/duotone/utils.mjs +0 -59
  671. package/build-module/components/duotone/utils.mjs.map +0 -7
  672. package/build-module/components/rich-text/input-event.mjs +0 -25
  673. package/build-module/components/rich-text/input-event.mjs.map +0 -7
  674. package/build-module/components/rich-text/shortcut.mjs +0 -26
  675. package/build-module/components/rich-text/shortcut.mjs.map +0 -7
  676. package/src/components/duotone/utils.js +0 -90
  677. package/src/components/rich-text/input-event.js +0 -31
  678. package/src/components/rich-text/shortcut.js +0 -32
  679. package/src/hooks/test/get-variation-styles-with-ref-values.js +0 -91
@@ -29,7 +29,11 @@ import { BackgroundToolsPanel } from '../global-styles/background-panel';
29
29
  // - Typography: text color only (font controls disabled).
30
30
  // - Background: color + gradient only (image controls disabled).
31
31
  // - Elements: link/heading/button/caption colors (unchanged).
32
- function SectionStyleControls( { blockName, clientId, contentClientIds } ) {
32
+ export function SectionStyleControls( {
33
+ blockName,
34
+ clientId,
35
+ contentClientIds,
36
+ } ) {
33
37
  const settings = useBlockSettings( blockName );
34
38
  const { updateBlockAttributes } = useDispatch( blockEditorStore );
35
39
 
@@ -6,13 +6,21 @@ import { useDispatch } from '@wordpress/data';
6
6
  import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
7
7
  import { __ } from '@wordpress/i18n';
8
8
 
9
+ /**
10
+ * Internal dependencies
11
+ */
12
+ import { useSettings } from '../use-settings';
13
+
9
14
  function KeyboardShortcuts() {
10
15
  return null;
11
16
  }
12
17
 
13
18
  function KeyboardShortcutsRegister() {
14
19
  // Registering the shortcuts.
15
- const { registerShortcut } = useDispatch( keyboardShortcutsStore );
20
+ const { registerShortcut, unregisterShortcut } = useDispatch(
21
+ keyboardShortcutsStore
22
+ );
23
+ const [ blockVisibility ] = useSettings( 'blockVisibility.allowEditing' );
16
24
  useEffect( () => {
17
25
  registerShortcut( {
18
26
  name: 'core/block-editor/copy',
@@ -208,15 +216,24 @@ function KeyboardShortcutsRegister() {
208
216
  },
209
217
  } );
210
218
 
211
- registerShortcut( {
212
- name: 'core/block-editor/toggle-block-visibility',
213
- category: 'block',
214
- description: __( 'Show or hide the selected block(s).' ),
215
- keyCombination: {
216
- modifier: 'primaryShift',
217
- character: 'h',
218
- },
219
- } );
219
+ // Keep the block visibility shortcut in sync with the theme.json
220
+ // setting. The setting resolves asynchronously, so the shortcut may be
221
+ // registered before its value arrives; it must be removed once the
222
+ // value is known to be `false`, otherwise it lingers in the keyboard
223
+ // shortcut help list while doing nothing.
224
+ if ( blockVisibility === false ) {
225
+ unregisterShortcut( 'core/block-editor/toggle-block-visibility' );
226
+ } else {
227
+ registerShortcut( {
228
+ name: 'core/block-editor/toggle-block-visibility',
229
+ category: 'block',
230
+ description: __( 'Show or hide the selected block(s).' ),
231
+ keyCombination: {
232
+ modifier: 'primaryShift',
233
+ character: 'h',
234
+ },
235
+ } );
236
+ }
220
237
 
221
238
  registerShortcut( {
222
239
  name: 'core/block-editor/rename',
@@ -227,7 +244,7 @@ function KeyboardShortcutsRegister() {
227
244
  character: 'r',
228
245
  },
229
246
  } );
230
- }, [ registerShortcut ] );
247
+ }, [ registerShortcut, unregisterShortcut, blockVisibility ] );
231
248
 
232
249
  return null;
233
250
  }
@@ -96,13 +96,12 @@ const LineHeightControl = ( {
96
96
  return (
97
97
  <div className="block-editor-line-height-control">
98
98
  <NumberControl
99
+ placeholder={ BASE_DEFAULT_VALUE }
99
100
  { ...otherProps }
100
- __next40pxDefaultSize
101
101
  __unstableInputWidth={ __unstableInputWidth }
102
102
  __unstableStateReducer={ stateReducer }
103
103
  onChange={ handleOnChange }
104
104
  label={ __( 'Line height' ) }
105
- placeholder={ BASE_DEFAULT_VALUE }
106
105
  step={ STEP }
107
106
  spinFactor={ SPIN_FACTOR }
108
107
  value={ value }
@@ -16,7 +16,7 @@ import {
16
16
  } from '@wordpress/components';
17
17
  import { __, sprintf } from '@wordpress/i18n';
18
18
  import { useRef, useState, useEffect, useMemo } from '@wordpress/element';
19
- import { useInstanceId } from '@wordpress/compose';
19
+ import { useInstanceId, useMergeRefs } from '@wordpress/compose';
20
20
  import { focus } from '@wordpress/dom';
21
21
  import { ENTER } from '@wordpress/keycodes';
22
22
  import { isShallowEqualObjects } from '@wordpress/is-shallow-equal';
@@ -29,6 +29,7 @@ import { isURL, prependHTTPS } from '@wordpress/url';
29
29
  /**
30
30
  * Internal dependencies
31
31
  */
32
+ import { useNativeUndo } from '../../utils/native-undo';
32
33
  import LinkControlSettingsDrawer from './settings-drawer';
33
34
  import LinkControlSearchInput from './search-input';
34
35
  import LinkPreview from './link-preview';
@@ -227,6 +228,7 @@ function LinkControl( {
227
228
 
228
229
  const isMountingRef = useRef( true );
229
230
  const wrapperNode = useRef();
231
+ const wrapperRef = useMergeRefs( [ wrapperNode, useNativeUndo() ] );
230
232
  const textInputRef = useRef();
231
233
  const searchInputRef = useRef();
232
234
  // TODO: Remove entityUrlFallbackRef and previewValue in favor of value prop after taxonomy entity binding
@@ -651,7 +653,10 @@ function LinkControl( {
651
653
  return (
652
654
  <div
653
655
  tabIndex={ -1 }
654
- ref={ wrapperNode }
656
+ // The dialog holds local state that is only committed when the
657
+ // link is applied, so undo and redo within it must remain the
658
+ // browser's own.
659
+ ref={ wrapperRef }
655
660
  className="block-editor-link-control"
656
661
  >
657
662
  { isCreatingPage && (
@@ -151,7 +151,7 @@ $block-editor-link-control-number-of-actions: 1;
151
151
  width: 100%;
152
152
 
153
153
  mark {
154
- font-weight: 600;
154
+ font-weight: var(--wpds-typography-font-weight-emphasis);
155
155
  color: inherit;
156
156
  background-color: transparent;
157
157
  }
@@ -227,7 +227,7 @@ $block-editor-link-control-number-of-actions: 1;
227
227
  }
228
228
 
229
229
  mark {
230
- font-weight: 600;
230
+ font-weight: var(--wpds-typography-font-weight-emphasis);
231
231
  color: inherit;
232
232
  background-color: transparent;
233
233
  }
@@ -3278,7 +3278,7 @@ describe( 'URL validation', () => {
3278
3278
  ] )(
3279
3279
  'should prevent submission for $description',
3280
3280
  async ( { inputUrl } ) => {
3281
- render(
3281
+ const { container } = render(
3282
3282
  <LinkControl
3283
3283
  value={ { url: '' } }
3284
3284
  forceIsEditingLink
@@ -3295,7 +3295,7 @@ describe( 'URL validation', () => {
3295
3295
  // Wait for validation error to appear
3296
3296
  await waitFor( () => {
3297
3297
  expect(
3298
- screen.getByText( 'Please enter a valid URL.' )
3298
+ within( container ).getByText( 'Please enter a valid URL.' )
3299
3299
  ).toBeInTheDocument();
3300
3300
  } );
3301
3301
 
@@ -3407,7 +3407,7 @@ describe( 'URL validation', () => {
3407
3407
  it( 'should show validation error when clicking Apply button with invalid URL', async () => {
3408
3408
  // When editing an existing link, use Apply button
3409
3409
  const existingLink = { url: 'https://example.com', title: 'Example' };
3410
- render(
3410
+ const { container } = render(
3411
3411
  <LinkControl
3412
3412
  value={ existingLink }
3413
3413
  forceIsEditingLink
@@ -3428,7 +3428,7 @@ describe( 'URL validation', () => {
3428
3428
  await waitFor(
3429
3429
  () => {
3430
3430
  expect(
3431
- screen.getByText( 'Please enter a valid URL.' )
3431
+ within( container ).getByText( 'Please enter a valid URL.' )
3432
3432
  ).toBeVisible();
3433
3433
  },
3434
3434
  { timeout: 100 }
@@ -3441,7 +3441,7 @@ describe( 'URL validation', () => {
3441
3441
  it( 'should show validation error when pressing Enter to submit with an invalid URL', async () => {
3442
3442
  // When editing an existing link, use Apply button
3443
3443
  const existingLink = { url: 'https://example.com', title: 'Example' };
3444
- render(
3444
+ const { container } = render(
3445
3445
  <LinkControl
3446
3446
  value={ existingLink }
3447
3447
  forceIsEditingLink
@@ -3460,7 +3460,7 @@ describe( 'URL validation', () => {
3460
3460
  await waitFor(
3461
3461
  () => {
3462
3462
  expect(
3463
- screen.getByText( 'Please enter a valid URL.' )
3463
+ within( container ).getByText( 'Please enter a valid URL.' )
3464
3464
  ).toBeVisible();
3465
3465
  },
3466
3466
  { timeout: 100 }
@@ -10,7 +10,6 @@
10
10
  width: 100%;
11
11
  height: auto;
12
12
  padding: $grid-unit-15;
13
- box-shadow: inset 0 0 0 1px $gray-600;
14
13
  border-color: $gray-600;
15
14
  }
16
15
 
@@ -51,7 +50,7 @@
51
50
 
52
51
  .link-preview-button__title {
53
52
  margin-top: $grid-unit-05;
54
- font-weight: 500;
53
+ font-weight: var(--wpds-typography-font-weight-emphasis);
55
54
  color: $gray-900;
56
55
  display: block;
57
56
  }
@@ -132,6 +132,8 @@ function ListViewBlock( {
132
132
  blockEditingMode,
133
133
  allowRightClickOverrides,
134
134
  editedSection,
135
+ viewportSettings,
136
+ blockVisibilitySetting,
135
137
  } = useSelect(
136
138
  ( select ) => {
137
139
  const {
@@ -141,21 +143,24 @@ function ListViewBlock( {
141
143
  getSettings,
142
144
  getEditedContentOnlySection,
143
145
  } = unlock( select( blockEditorStore ) );
146
+ const settings = getSettings();
144
147
 
145
148
  return {
146
149
  block: getBlock( clientId ),
147
150
  blockName: getBlockName( clientId ),
148
151
  blockEditingMode: getBlockEditingModeForClientId( clientId ),
149
- allowRightClickOverrides:
150
- getSettings().allowRightClickOverrides,
152
+ allowRightClickOverrides: settings.allowRightClickOverrides,
151
153
  editedSection: getEditedContentOnlySection(),
154
+ viewportSettings: settings.__experimentalFeatures?.viewport,
155
+ blockVisibilitySetting:
156
+ settings.__experimentalFeatures?.blockVisibility
157
+ ?.allowEditing,
152
158
  };
153
159
  },
154
160
  [ clientId ]
155
161
  );
156
162
 
157
163
  const isDisabled = blockEditingMode === 'disabled';
158
-
159
164
  const { canRename } = useBlockRename( blockName );
160
165
 
161
166
  const showBlockActions =
@@ -393,6 +398,9 @@ function ListViewBlock( {
393
398
  } else if (
394
399
  isMatch( 'core/block-editor/toggle-block-visibility', event )
395
400
  ) {
401
+ if ( blockVisibilitySetting === false ) {
402
+ return;
403
+ }
396
404
  event.preventDefault();
397
405
  const { blocksToUpdate } = getBlocksToUpdate();
398
406
  const blocks = getBlocksByClientId( blocksToUpdate );
@@ -558,7 +566,8 @@ function ListViewBlock( {
558
566
 
559
567
  // Determine label based on where block is hidden (not when/current viewport)
560
568
  const blockVisibilityDescription = getBlockVisibilityLabel(
561
- block?.attributes?.metadata?.blockVisibility
569
+ block?.attributes?.metadata?.blockVisibility,
570
+ viewportSettings
562
571
  );
563
572
 
564
573
  const hasSiblings = siblingBlockCount > 0;
@@ -95,7 +95,7 @@
95
95
  box-shadow:
96
96
  inset 0 0 0 1px $white,
97
97
  0 0 0 var(--wp-admin-border-width-focus)
98
- var(--wp-admin-theme-color);
98
+ var(--wpds-color-stroke-focus);
99
99
  }
100
100
  }
101
101
  &.is-selected.is-synced .block-editor-list-view-block-contents:focus {
@@ -272,7 +272,7 @@
272
272
  border-radius: inherit;
273
273
  box-shadow:
274
274
  inset 0 0 0 var(--wp-admin-border-width-focus)
275
- var(--wp-admin-theme-color);
275
+ var(--wpds-color-stroke-focus);
276
276
  z-index: 2;
277
277
  pointer-events: none;
278
278
  }
@@ -283,11 +283,10 @@
283
283
  right: 0;
284
284
  }
285
285
 
286
- &.is-nesting .block-editor-list-view__menu,
287
- .block-editor-list-view-block__menu:focus {
286
+ &.is-nesting .block-editor-list-view__menu {
288
287
  box-shadow:
289
288
  inset 0 0 0 var(--wp-admin-border-width-focus)
290
- var(--wp-admin-theme-color);
289
+ var(--wpds-color-stroke-focus);
291
290
  z-index: 1;
292
291
  }
293
292
 
@@ -46,7 +46,6 @@ const InsertFromURLPopover = ( {
46
46
  onSubmit={ onSubmit }
47
47
  >
48
48
  <InputControl
49
- __next40pxDefaultSize
50
49
  label={ __( 'URL' ) }
51
50
  type="text" // Use text instead of URL to allow relative paths (e.g., /image/image.jpg)
52
51
  hideLabelFromVision
@@ -5,7 +5,7 @@
5
5
  }
6
6
 
7
7
  .block-editor-multi-selection-inspector__card-title {
8
- font-weight: $font-weight-medium;
8
+ font-weight: var(--wpds-typography-font-weight-emphasis);
9
9
  }
10
10
 
11
11
  .block-editor-multi-selection-inspector__card .block-editor-block-icon {
@@ -50,6 +50,8 @@ import CustomValueControls from './custom-value-controls';
50
50
  * @param {Function} props.onMouseOut Callback for mouse out events.
51
51
  * @param {Function} props.onMouseOver Callback for mouse over events.
52
52
  * @param {Function} props.onUnitChange Callback when unit changes.
53
+ * @param {string} props.placeholder Placeholder text forwarded to the inner UnitControl when
54
+ * rendered in custom-value mode.
53
55
  * @param {Array} props.presets Array of preset objects with name, slug, and size.
54
56
  * @param {string} props.presetType Type of preset (e.g., 'spacing', 'border-radius').
55
57
  * @param {string} props.selectedUnit Currently selected unit (e.g., 'px', 'em').
@@ -73,6 +75,7 @@ export default function PresetInputControl( {
73
75
  onMouseOut,
74
76
  onMouseOver,
75
77
  onUnitChange,
78
+ placeholder,
76
79
  presets = [],
77
80
  presetType,
78
81
  selectedUnit,
@@ -95,7 +98,7 @@ export default function PresetInputControl( {
95
98
  const hasPresets = marks.length > 0;
96
99
  const showRangeControl = presets.length <= RANGE_CONTROL_MAX_SIZE;
97
100
 
98
- const allPlaceholder = isMixed ? __( 'Mixed' ) : null;
101
+ const allPlaceholder = isMixed ? __( 'Mixed' ) : placeholder ?? null;
99
102
 
100
103
  const [ minValue, setMinValue ] = useState( minimumCustomValue );
101
104
  const [ showCustomValueControl, setShowCustomValueControl ] = useState(
@@ -4,11 +4,21 @@
4
4
  import { createContext, useMemo } from '@wordpress/element';
5
5
  import { observableMap } from '@wordpress/compose';
6
6
 
7
- export const BlockRefs = createContext( { refsMap: observableMap() } );
7
+ // `eventHandlers` maps a block's client ID to a ref holding its `wrapperProps`
8
+ // event handlers, so the writing flow host can call them for a block that
9
+ // supports `editableRoot` (see `useEditableRootEventHandlers`). It rides in this
10
+ // context, next to `refsMap`, as another per-block registry keyed by client ID.
11
+ export const BlockRefs = createContext( {
12
+ refsMap: observableMap(),
13
+ eventHandlers: new Map(),
14
+ } );
8
15
  BlockRefs.displayName = 'BlockRefsContext';
9
16
 
10
17
  export function BlockRefsProvider( { children } ) {
11
- const value = useMemo( () => ( { refsMap: observableMap() } ), [] );
18
+ const value = useMemo(
19
+ () => ( { refsMap: observableMap(), eventHandlers: new Map() } ),
20
+ []
21
+ );
12
22
  return (
13
23
  <BlockRefs.Provider value={ value }>{ children }</BlockRefs.Provider>
14
24
  );
@@ -102,7 +102,7 @@ function shouldEnableClientSideMediaProcessing() {
102
102
  *
103
103
  * Returns true when:
104
104
  * 1. Full client-side processing is NOT available (otherwise it handles HEIC already)
105
- * 2. The server has set the __heicUploadSupport flag
105
+ * 2. The server has set the __clientSideMediaProcessing flag
106
106
  * 3. The browser supports createImageBitmap + OffscreenCanvas (e.g. Safari)
107
107
  *
108
108
  * @return {boolean} Whether HEIC-only canvas processing should be enabled.
@@ -118,7 +118,7 @@ function shouldEnableHeicCanvasProcessing() {
118
118
  return false;
119
119
  }
120
120
 
121
- if ( ! window.__heicUploadSupport ) {
121
+ if ( ! window.__clientSideMediaProcessing ) {
122
122
  isHeicCanvasEnabledCache = false;
123
123
  return false;
124
124
  }
@@ -252,13 +252,17 @@ export default function useBlockSync( {
252
252
  cloneBlockWithMapping( block, idMappingRef.current )
253
253
  );
254
254
 
255
- __unstableMarkNextChangeAsNotPersistent();
255
+ __unstableMarkNextChangeAsNotPersistent( {
256
+ history: 'ignore',
257
+ } );
256
258
  setHasControlledInnerBlocks( clientId, true );
257
259
 
258
260
  if ( subscribedRef.current ) {
259
261
  pendingChangesRef.current.incoming = storeBlocks;
260
262
  }
261
- __unstableMarkNextChangeAsNotPersistent();
263
+ __unstableMarkNextChangeAsNotPersistent( {
264
+ history: 'ignore',
265
+ } );
262
266
  replaceInnerBlocks( clientId, storeBlocks );
263
267
 
264
268
  // Invalidate the applied-selection ref so that
@@ -271,7 +275,9 @@ export default function useBlockSync( {
271
275
  if ( subscribedRef.current ) {
272
276
  pendingChangesRef.current.incoming = controlledBlocks;
273
277
  }
274
- __unstableMarkNextChangeAsNotPersistent();
278
+ __unstableMarkNextChangeAsNotPersistent( {
279
+ history: 'ignore',
280
+ } );
275
281
  resetBlocks( controlledBlocks );
276
282
  }
277
283
  };
@@ -280,12 +286,18 @@ export default function useBlockSync( {
280
286
  // containing useBlockSync() unmounts.
281
287
  const unsetControlledBlocks = () => {
282
288
  if ( clientId ) {
283
- __unstableMarkNextChangeAsNotPersistent();
289
+ __unstableMarkNextChangeAsNotPersistent( {
290
+ history: 'ignore',
291
+ } );
284
292
  setHasControlledInnerBlocks( clientId, false );
285
- __unstableMarkNextChangeAsNotPersistent();
293
+ __unstableMarkNextChangeAsNotPersistent( {
294
+ history: 'ignore',
295
+ } );
286
296
  replaceInnerBlocks( clientId, [] );
287
297
  } else {
288
- __unstableMarkNextChangeAsNotPersistent();
298
+ __unstableMarkNextChangeAsNotPersistent( {
299
+ history: 'ignore',
300
+ } );
289
301
  resetBlocks( [] );
290
302
  }
291
303
  };
@@ -21,6 +21,8 @@ function useMediaUploadSettings( settings = {} ) {
21
21
  allowedMimeTypes: settings.allowedMimeTypes,
22
22
  allImageSizes: settings.allImageSizes,
23
23
  bigImageSizeThreshold: settings.bigImageSizeThreshold,
24
+ imageStripMeta: settings.imageStripMeta,
25
+ imageMaxBitDepth: settings.imageMaxBitDepth,
24
26
  } ),
25
27
  [ settings ]
26
28
  );
@@ -32,7 +32,7 @@
32
32
  }
33
33
 
34
34
  .block-editor-responsive-block-control__label {
35
- font-weight: 600;
35
+ font-weight: var(--wpds-typography-font-weight-emphasis);
36
36
  margin-bottom: 0.6em;
37
37
  margin-left: -3px; // visual compensation
38
38
  }
@@ -1,9 +1,12 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { insert, isCollapsed } from '@wordpress/rich-text';
4
+ import {
5
+ insert,
6
+ isCollapsed,
7
+ privateApis as richTextPrivateApis,
8
+ } from '@wordpress/rich-text';
5
9
  import { applyFilters } from '@wordpress/hooks';
6
- import { privateApis as composePrivateApis } from '@wordpress/compose';
7
10
 
8
11
  /**
9
12
  * Internal dependencies
@@ -11,7 +14,7 @@ import { privateApis as composePrivateApis } from '@wordpress/compose';
11
14
  import { store as blockEditorStore } from '../../../store';
12
15
  import { unlock } from '../../../lock-unlock';
13
16
 
14
- const { subscribeDelegatedListener } = unlock( composePrivateApis );
17
+ const { subscribeOwnedListener } = unlock( richTextPrivateApis );
15
18
 
16
19
  /**
17
20
  * When typing over a selection, the selection will we wrapped by a matching
@@ -84,10 +87,10 @@ export default ( props ) => ( element ) => {
84
87
  // call few lines above has fully updated the data store state and rerendered
85
88
  // all affected components.
86
89
  window.queueMicrotask( () => {
87
- event.target.dispatchEvent( newEvent );
90
+ element.dispatchEvent( newEvent );
88
91
  } );
89
92
  event.preventDefault();
90
93
  }
91
94
 
92
- return subscribeDelegatedListener( element, 'beforeinput', onInput, true );
95
+ return subscribeOwnedListener( element, 'beforeinput', onInput, true );
93
96
  };
@@ -2,15 +2,18 @@
2
2
  * WordPress dependencies
3
3
  */
4
4
  import { DELETE, BACKSPACE } from '@wordpress/keycodes';
5
- import { isCollapsed, isEmpty } from '@wordpress/rich-text';
6
- import { privateApis as composePrivateApis } from '@wordpress/compose';
5
+ import {
6
+ isCollapsed,
7
+ isEmpty,
8
+ privateApis as richTextPrivateApis,
9
+ } from '@wordpress/rich-text';
7
10
 
8
11
  /**
9
12
  * Internal dependencies
10
13
  */
11
14
  import { unlock } from '../../../lock-unlock';
12
15
 
13
- const { subscribeDelegatedListener } = unlock( composePrivateApis );
16
+ const { subscribeOwnedListener } = unlock( richTextPrivateApis );
14
17
 
15
18
  export default ( props ) => ( element ) => {
16
19
  function onKeyDown( event ) {
@@ -54,5 +57,5 @@ export default ( props ) => ( element ) => {
54
57
  }
55
58
  }
56
59
 
57
- return subscribeDelegatedListener( element, 'keydown', onKeyDown );
60
+ return subscribeOwnedListener( element, 'keydown', onKeyDown );
58
61
  };
@@ -2,7 +2,11 @@
2
2
  * WordPress dependencies
3
3
  */
4
4
  import { ENTER } from '@wordpress/keycodes';
5
- import { insert, remove } from '@wordpress/rich-text';
5
+ import {
6
+ insert,
7
+ remove,
8
+ privateApis as richTextPrivateApis,
9
+ } from '@wordpress/rich-text';
6
10
  import { privateApis as composePrivateApis } from '@wordpress/compose';
7
11
 
8
12
  /**
@@ -10,6 +14,7 @@ import { privateApis as composePrivateApis } from '@wordpress/compose';
10
14
  */
11
15
  import { unlock } from '../../../lock-unlock';
12
16
 
17
+ const { subscribeOwnedListener, ownsSelection } = unlock( richTextPrivateApis );
13
18
  const { subscribeDelegatedListener } = unlock( composePrivateApis );
14
19
 
15
20
  export default ( props ) => ( element ) => {
@@ -31,8 +36,9 @@ export default ( props ) => ( element ) => {
31
36
  }
32
37
 
33
38
  // The event listener is attached to the window, so we need to check if
34
- // the target is the element.
35
- if ( event.target !== element ) {
39
+ // the target is the element, or whether the element owns the
40
+ // selection through a focused editing host.
41
+ if ( event.target !== element && ! ownsSelection( element ) ) {
36
42
  return;
37
43
  }
38
44
 
@@ -90,7 +96,7 @@ export default ( props ) => ( element ) => {
90
96
  );
91
97
  // Capture phase so this runs before ancestor (writing flow) bubble
92
98
  // handlers, matching the timing of the previous raw element listener.
93
- const unsubscribeKeyDownDeprecated = subscribeDelegatedListener(
99
+ const unsubscribeKeyDownDeprecated = subscribeOwnedListener(
94
100
  element,
95
101
  'keydown',
96
102
  onKeyDownDeprecated,
@@ -1,14 +1,15 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { privateApis as composePrivateApis } from '@wordpress/compose';
4
+
5
+ import { privateApis as richTextPrivateApis } from '@wordpress/rich-text';
5
6
 
6
7
  /**
7
8
  * Internal dependencies
8
9
  */
9
10
  import { unlock } from '../../../lock-unlock';
10
11
 
11
- const { subscribeDelegatedListener } = unlock( composePrivateApis );
12
+ const { subscribeOwnedListener } = unlock( richTextPrivateApis );
12
13
 
13
14
  export default ( props ) => ( element ) => {
14
15
  const { inputEvents } = props.current;
@@ -18,5 +19,5 @@ export default ( props ) => ( element ) => {
18
19
  }
19
20
  }
20
21
 
21
- return subscribeDelegatedListener( element, 'input', onInput );
22
+ return subscribeOwnedListener( element, 'input', onInput );
22
23
  };
@@ -1,9 +1,12 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { insert, toHTMLString } from '@wordpress/rich-text';
4
+ import {
5
+ insert,
6
+ toHTMLString,
7
+ privateApis as richTextPrivateApis,
8
+ } from '@wordpress/rich-text';
5
9
  import { getBlockTransforms, findTransform } from '@wordpress/blocks';
6
- import { privateApis as composePrivateApis } from '@wordpress/compose';
7
10
 
8
11
  /**
9
12
  * Internal dependencies
@@ -16,7 +19,7 @@ import {
16
19
  } from '../../../utils/selection';
17
20
  import { unlock } from '../../../lock-unlock';
18
21
 
19
- const { subscribeDelegatedListener } = unlock( composePrivateApis );
22
+ const { subscribeOwnedListener } = unlock( richTextPrivateApis );
20
23
 
21
24
  export function findSelection( blocks ) {
22
25
  let i = blocks.length;
@@ -160,13 +163,13 @@ export default ( props ) => ( element ) => {
160
163
 
161
164
  // Capture phase so these run before ancestor (writing flow) bubble
162
165
  // handlers, matching the timing of the previous raw element listeners.
163
- const unsubscribeInput = subscribeDelegatedListener(
166
+ const unsubscribeInput = subscribeOwnedListener(
164
167
  element,
165
168
  'input',
166
169
  onInput,
167
170
  true
168
171
  );
169
- const unsubscribeCompositionEnd = subscribeDelegatedListener(
172
+ const unsubscribeCompositionEnd = subscribeOwnedListener(
170
173
  element,
171
174
  'compositionend',
172
175
  onInput,