@wordpress/block-editor 15.23.0 → 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 (684) hide show
  1. package/CHANGELOG.md +33 -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 +2 -3
  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/writing-flow/index.cjs +12 -1
  173. package/build/components/writing-flow/index.cjs.map +3 -3
  174. package/build/components/writing-flow/use-arrow-nav.cjs +18 -5
  175. package/build/components/writing-flow/use-arrow-nav.cjs.map +2 -2
  176. package/build/components/writing-flow/use-click-selection.cjs +2 -2
  177. package/build/components/writing-flow/use-click-selection.cjs.map +2 -2
  178. package/build/components/writing-flow/use-clipboard-handler.cjs +4 -1
  179. package/build/components/writing-flow/use-clipboard-handler.cjs.map +2 -2
  180. package/build/components/writing-flow/use-drag-selection.cjs +3 -8
  181. package/build/components/writing-flow/use-drag-selection.cjs.map +2 -2
  182. package/build/components/writing-flow/use-editable-root.cjs +112 -0
  183. package/build/components/writing-flow/use-editable-root.cjs.map +7 -0
  184. package/build/components/writing-flow/use-home-end.cjs +64 -0
  185. package/build/components/writing-flow/use-home-end.cjs.map +7 -0
  186. package/build/components/writing-flow/use-input.cjs +15 -5
  187. package/build/components/writing-flow/use-input.cjs.map +2 -2
  188. package/build/components/writing-flow/use-multi-selection.cjs +2 -2
  189. package/build/components/writing-flow/use-multi-selection.cjs.map +2 -2
  190. package/build/components/writing-flow/use-select-all.cjs +14 -2
  191. package/build/components/writing-flow/use-select-all.cjs.map +2 -2
  192. package/build/components/writing-flow/use-selection-observer.cjs +126 -20
  193. package/build/components/writing-flow/use-selection-observer.cjs.map +3 -3
  194. package/build/components/writing-flow/utils.cjs +39 -2
  195. package/build/components/writing-flow/utils.cjs.map +2 -2
  196. package/build/components/writing-mode-control/index.cjs +0 -1
  197. package/build/components/writing-mode-control/index.cjs.map +2 -2
  198. package/build/hooks/background.cjs +3 -2
  199. package/build/hooks/background.cjs.map +2 -2
  200. package/build/hooks/block-fields/rich-text/index.cjs +2 -3
  201. package/build/hooks/block-fields/rich-text/index.cjs.map +3 -3
  202. package/build/hooks/elements.cjs +1 -1
  203. package/build/hooks/elements.cjs.map +2 -2
  204. package/build/hooks/font-size.cjs +1 -2
  205. package/build/hooks/font-size.cjs.map +2 -2
  206. package/build/hooks/grid-visualizer.cjs +5 -3
  207. package/build/hooks/grid-visualizer.cjs.map +2 -2
  208. package/build/hooks/layout-child.cjs +22 -12
  209. package/build/hooks/layout-child.cjs.map +3 -3
  210. package/build/hooks/layout.cjs +33 -16
  211. package/build/hooks/layout.cjs.map +3 -3
  212. package/build/hooks/position.cjs +36 -16
  213. package/build/hooks/position.cjs.map +2 -2
  214. package/build/hooks/states.cjs +29 -12
  215. package/build/hooks/states.cjs.map +3 -3
  216. package/build/hooks/style.cjs +31 -9
  217. package/build/hooks/style.cjs.map +3 -3
  218. package/build/hooks/text-align.cjs +36 -6
  219. package/build/hooks/text-align.cjs.map +3 -3
  220. package/build/hooks/typography.cjs +1 -1
  221. package/build/hooks/typography.cjs.map +2 -2
  222. package/build/layouts/constrained.cjs +35 -27
  223. package/build/layouts/constrained.cjs.map +2 -2
  224. package/build/layouts/flex.cjs +27 -22
  225. package/build/layouts/flex.cjs.map +2 -2
  226. package/build/layouts/grid.cjs +51 -11
  227. package/build/layouts/grid.cjs.map +2 -2
  228. package/build/private-apis.cjs +4 -1
  229. package/build/private-apis.cjs.map +3 -3
  230. package/build/store/actions.cjs +2 -2
  231. package/build/store/actions.cjs.map +2 -2
  232. package/build/store/private-keys.cjs +3 -0
  233. package/build/store/private-keys.cjs.map +2 -2
  234. package/build/store/private-selectors.cjs +85 -6
  235. package/build/store/private-selectors.cjs.map +3 -3
  236. package/build/store/selectors.cjs +13 -0
  237. package/build/store/selectors.cjs.map +2 -2
  238. package/build/utils/block-bindings.cjs +29 -0
  239. package/build/utils/block-bindings.cjs.map +2 -2
  240. package/build/utils/dom.cjs +14 -0
  241. package/build/utils/dom.cjs.map +2 -2
  242. package/build-module/autocompleters/block.mjs +10 -2
  243. package/build-module/autocompleters/block.mjs.map +2 -2
  244. package/build-module/components/background-image-control/index.mjs +0 -2
  245. package/build-module/components/background-image-control/index.mjs.map +2 -2
  246. package/build-module/components/block-canvas/index.mjs +7 -2
  247. package/build-module/components/block-canvas/index.mjs.map +2 -2
  248. package/build-module/components/block-controls/groups.mjs +3 -1
  249. package/build-module/components/block-controls/groups.mjs.map +2 -2
  250. package/build-module/components/block-edit/edit.mjs +11 -18
  251. package/build-module/components/block-edit/edit.mjs.map +2 -2
  252. package/build-module/components/block-inspector/edit-contents.mjs +4 -1
  253. package/build-module/components/block-inspector/edit-contents.mjs.map +2 -2
  254. package/build-module/components/block-inspector/index.mjs +2 -3
  255. package/build-module/components/block-inspector/index.mjs.map +2 -2
  256. package/build-module/components/block-list/block-invalid-warning.mjs +8 -19
  257. package/build-module/components/block-list/block-invalid-warning.mjs.map +2 -2
  258. package/build-module/components/block-list/block.mjs +9 -3
  259. package/build-module/components/block-list/block.mjs.map +3 -3
  260. package/build-module/components/block-list/index.mjs +1 -3
  261. package/build-module/components/block-list/index.mjs.map +2 -2
  262. package/build-module/components/block-list/use-block-props/index.mjs +3 -1
  263. package/build-module/components/block-list/use-block-props/index.mjs.map +2 -2
  264. package/build-module/components/block-list/use-block-props/use-focus-first-element.mjs +9 -4
  265. package/build-module/components/block-list/use-block-props/use-focus-first-element.mjs.map +2 -2
  266. package/build-module/components/block-list/use-block-props/use-focus-handler.mjs +12 -4
  267. package/build-module/components/block-list/use-block-props/use-focus-handler.mjs.map +2 -2
  268. package/build-module/components/block-styles/use-styles-for-block.mjs +2 -1
  269. package/build-module/components/block-styles/use-styles-for-block.mjs.map +2 -2
  270. package/build-module/components/block-title/use-block-display-title.mjs +7 -2
  271. package/build-module/components/block-title/use-block-display-title.mjs.map +2 -2
  272. package/build-module/components/block-toolbar/block-toolbar-icon.mjs +10 -14
  273. package/build-module/components/block-toolbar/block-toolbar-icon.mjs.map +2 -2
  274. package/build-module/components/block-toolbar/index.mjs +43 -24
  275. package/build-module/components/block-toolbar/index.mjs.map +2 -2
  276. package/build-module/components/block-tools/index.mjs +7 -2
  277. package/build-module/components/block-tools/index.mjs.map +2 -2
  278. package/build-module/components/block-variation-transforms/index.mjs +0 -1
  279. package/build-module/components/block-variation-transforms/index.mjs.map +2 -2
  280. package/build-module/components/block-visibility/modal.mjs +22 -10
  281. package/build-module/components/block-visibility/modal.mjs.map +2 -2
  282. package/build-module/components/block-visibility/use-block-visibility.mjs +17 -7
  283. package/build-module/components/block-visibility/use-block-visibility.mjs.map +2 -2
  284. package/build-module/components/block-visibility/utils.mjs +18 -3
  285. package/build-module/components/block-visibility/utils.mjs.map +2 -2
  286. package/build-module/components/block-visibility/viewport-menu-item.mjs +7 -1
  287. package/build-module/components/block-visibility/viewport-menu-item.mjs.map +2 -2
  288. package/build-module/components/block-visibility/viewport-toolbar.mjs +5 -0
  289. package/build-module/components/block-visibility/viewport-toolbar.mjs.map +2 -2
  290. package/build-module/components/block-visibility/viewport-visibility-info.mjs +5 -1
  291. package/build-module/components/block-visibility/viewport-visibility-info.mjs.map +2 -2
  292. package/build-module/components/child-layout-control/index.mjs +0 -6
  293. package/build-module/components/child-layout-control/index.mjs.map +2 -2
  294. package/build-module/components/colors-gradients/control.mjs +5 -5
  295. package/build-module/components/colors-gradients/control.mjs.map +2 -2
  296. package/build-module/components/date-format-picker/index.mjs +0 -1
  297. package/build-module/components/date-format-picker/index.mjs.map +2 -2
  298. package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs +1 -2
  299. package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs.map +2 -2
  300. package/build-module/components/dimensions-tool/scale-tool.mjs +0 -1
  301. package/build-module/components/dimensions-tool/scale-tool.mjs.map +2 -2
  302. package/build-module/components/dimensions-tool/width-height-tool.mjs +2 -4
  303. package/build-module/components/dimensions-tool/width-height-tool.mjs.map +2 -2
  304. package/build-module/components/font-appearance-control/index.mjs +6 -15
  305. package/build-module/components/font-appearance-control/index.mjs.map +2 -2
  306. package/build-module/components/font-family/index.mjs +6 -15
  307. package/build-module/components/font-family/index.mjs.map +2 -2
  308. package/build-module/components/font-sizes/font-size-picker.mjs +1 -2
  309. package/build-module/components/font-sizes/font-size-picker.mjs.map +2 -2
  310. package/build-module/components/global-styles/border-panel.mjs +0 -1
  311. package/build-module/components/global-styles/border-panel.mjs.map +2 -2
  312. package/build-module/components/global-styles/dimensions-panel.mjs +0 -3
  313. package/build-module/components/global-styles/dimensions-panel.mjs.map +2 -2
  314. package/build-module/components/global-styles/state-control-badges.mjs +41 -5
  315. package/build-module/components/global-styles/state-control-badges.mjs.map +2 -2
  316. package/build-module/components/global-styles/typography-panel.mjs +4 -11
  317. package/build-module/components/global-styles/typography-panel.mjs.map +2 -2
  318. package/build-module/components/height-control/index.mjs +0 -2
  319. package/build-module/components/height-control/index.mjs.map +2 -2
  320. package/build-module/components/html-element-control/index.mjs +0 -1
  321. package/build-module/components/html-element-control/index.mjs.map +2 -2
  322. package/build-module/components/image-editor/index.mjs +5 -0
  323. package/build-module/components/image-editor/index.mjs.map +2 -2
  324. package/build-module/components/image-editor/zoom-dropdown.mjs +0 -1
  325. package/build-module/components/image-editor/zoom-dropdown.mjs.map +2 -2
  326. package/build-module/components/image-size-control/index.mjs +3 -7
  327. package/build-module/components/image-size-control/index.mjs.map +2 -2
  328. package/build-module/components/inner-content/index.mjs +82 -0
  329. package/build-module/components/inner-content/index.mjs.map +7 -0
  330. package/build-module/components/inserter/hooks/use-block-types-state.mjs +10 -2
  331. package/build-module/components/inserter/hooks/use-block-types-state.mjs.map +2 -2
  332. package/build-module/components/inserter/media-tab/hooks.mjs +66 -12
  333. package/build-module/components/inserter/media-tab/hooks.mjs.map +2 -2
  334. package/build-module/components/inserter/media-tab/media-list.mjs +3 -1
  335. package/build-module/components/inserter/media-tab/media-list.mjs.map +2 -2
  336. package/build-module/components/inserter/media-tab/media-panel.mjs +297 -32
  337. package/build-module/components/inserter/media-tab/media-panel.mjs.map +2 -2
  338. package/build-module/components/inserter/media-tab/media-preview.mjs +33 -18
  339. package/build-module/components/inserter/media-tab/media-preview.mjs.map +2 -2
  340. package/build-module/components/inserter/media-tab/media-tab.mjs +27 -7
  341. package/build-module/components/inserter/media-tab/media-tab.mjs.map +2 -2
  342. package/build-module/components/inserter/mobile-tab-navigation.mjs +6 -1
  343. package/build-module/components/inserter/mobile-tab-navigation.mjs.map +2 -2
  344. package/build-module/components/inserter/no-results.mjs +2 -2
  345. package/build-module/components/inserter/no-results.mjs.map +2 -2
  346. package/build-module/components/inserter/preview-panel.mjs +2 -1
  347. package/build-module/components/inserter/preview-panel.mjs.map +2 -2
  348. package/build-module/components/inserter-list-item/index.mjs +8 -2
  349. package/build-module/components/inserter-list-item/index.mjs.map +2 -2
  350. package/build-module/components/keyboard-shortcuts/index.mjs +19 -11
  351. package/build-module/components/keyboard-shortcuts/index.mjs.map +2 -2
  352. package/build-module/components/letter-spacing-control/index.mjs +0 -14
  353. package/build-module/components/letter-spacing-control/index.mjs.map +2 -2
  354. package/build-module/components/line-height-control/index.mjs +6 -12
  355. package/build-module/components/line-height-control/index.mjs.map +2 -2
  356. package/build-module/components/list-view/block-select-button.mjs +90 -84
  357. package/build-module/components/list-view/block-select-button.mjs.map +2 -2
  358. package/build-module/components/list-view/block.mjs +61 -21
  359. package/build-module/components/list-view/block.mjs.map +2 -2
  360. package/build-module/components/list-view/expander.mjs +1 -1
  361. package/build-module/components/list-view/expander.mjs.map +2 -2
  362. package/build-module/components/list-view/use-list-view-client-ids.mjs +2 -2
  363. package/build-module/components/list-view/use-list-view-client-ids.mjs.map +2 -2
  364. package/build-module/components/media-placeholder/index.mjs +0 -1
  365. package/build-module/components/media-placeholder/index.mjs.map +2 -2
  366. package/build-module/components/observe-typing/index.mjs +4 -3
  367. package/build-module/components/observe-typing/index.mjs.map +2 -2
  368. package/build-module/components/preset-input-control/custom-value-controls.mjs +1 -3
  369. package/build-module/components/preset-input-control/custom-value-controls.mjs.map +2 -2
  370. package/build-module/components/preset-input-control/index.mjs +1 -3
  371. package/build-module/components/preset-input-control/index.mjs.map +2 -2
  372. package/build-module/components/resolution-tool/index.mjs +1 -2
  373. package/build-module/components/resolution-tool/index.mjs.map +2 -2
  374. package/build-module/components/rich-text/event-listeners/before-input-rules.mjs +8 -5
  375. package/build-module/components/rich-text/event-listeners/before-input-rules.mjs.map +2 -2
  376. package/build-module/components/rich-text/event-listeners/delete.mjs +7 -4
  377. package/build-module/components/rich-text/event-listeners/delete.mjs.map +2 -2
  378. package/build-module/components/rich-text/event-listeners/enter.mjs +8 -3
  379. package/build-module/components/rich-text/event-listeners/enter.mjs.map +2 -2
  380. package/build-module/components/rich-text/event-listeners/input-events.mjs +3 -3
  381. package/build-module/components/rich-text/event-listeners/input-events.mjs.map +2 -2
  382. package/build-module/components/rich-text/event-listeners/input-rules.mjs +8 -5
  383. package/build-module/components/rich-text/event-listeners/input-rules.mjs.map +2 -2
  384. package/build-module/components/rich-text/event-listeners/insert-replacement-text.mjs +3 -3
  385. package/build-module/components/rich-text/event-listeners/insert-replacement-text.mjs.map +2 -2
  386. package/build-module/components/rich-text/event-listeners/paste-handler.mjs +8 -2
  387. package/build-module/components/rich-text/event-listeners/paste-handler.mjs.map +2 -2
  388. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.mjs +3 -3
  389. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.mjs.map +2 -2
  390. package/build-module/components/rich-text/event-listeners/shortcuts.mjs +3 -3
  391. package/build-module/components/rich-text/event-listeners/shortcuts.mjs.map +2 -2
  392. package/build-module/components/rich-text/event-listeners/undo-automatic-change.mjs +3 -3
  393. package/build-module/components/rich-text/event-listeners/undo-automatic-change.mjs.map +2 -2
  394. package/build-module/components/rich-text/index.mjs +64 -13
  395. package/build-module/components/rich-text/index.mjs.map +2 -2
  396. package/build-module/components/text-alignment-control/index.mjs +0 -1
  397. package/build-module/components/text-alignment-control/index.mjs.map +2 -2
  398. package/build-module/components/text-decoration-control/index.mjs +0 -1
  399. package/build-module/components/text-decoration-control/index.mjs.map +2 -2
  400. package/build-module/components/text-indent-control/index.mjs +0 -8
  401. package/build-module/components/text-indent-control/index.mjs.map +2 -2
  402. package/build-module/components/text-transform-control/index.mjs +0 -1
  403. package/build-module/components/text-transform-control/index.mjs.map +2 -2
  404. package/build-module/components/typewriter/index.mjs +129 -136
  405. package/build-module/components/typewriter/index.mjs.map +2 -2
  406. package/build-module/components/use-block-commands/index.mjs +21 -17
  407. package/build-module/components/use-block-commands/index.mjs.map +2 -2
  408. package/build-module/components/use-block-display-information/index.mjs +10 -8
  409. package/build-module/components/use-block-display-information/index.mjs.map +2 -2
  410. package/build-module/components/use-on-block-drop/index.mjs +4 -7
  411. package/build-module/components/use-on-block-drop/index.mjs.map +2 -2
  412. package/build-module/components/writing-flow/index.mjs +12 -1
  413. package/build-module/components/writing-flow/index.mjs.map +2 -2
  414. package/build-module/components/writing-flow/use-arrow-nav.mjs +19 -6
  415. package/build-module/components/writing-flow/use-arrow-nav.mjs.map +2 -2
  416. package/build-module/components/writing-flow/use-click-selection.mjs +2 -2
  417. package/build-module/components/writing-flow/use-click-selection.mjs.map +2 -2
  418. package/build-module/components/writing-flow/use-clipboard-handler.mjs +5 -2
  419. package/build-module/components/writing-flow/use-clipboard-handler.mjs.map +2 -2
  420. package/build-module/components/writing-flow/use-drag-selection.mjs +1 -6
  421. package/build-module/components/writing-flow/use-drag-selection.mjs.map +2 -2
  422. package/build-module/components/writing-flow/use-editable-root.mjs +86 -0
  423. package/build-module/components/writing-flow/use-editable-root.mjs.map +7 -0
  424. package/build-module/components/writing-flow/use-home-end.mjs +43 -0
  425. package/build-module/components/writing-flow/use-home-end.mjs.map +7 -0
  426. package/build-module/components/writing-flow/use-input.mjs +15 -5
  427. package/build-module/components/writing-flow/use-input.mjs.map +2 -2
  428. package/build-module/components/writing-flow/use-multi-selection.mjs +2 -2
  429. package/build-module/components/writing-flow/use-multi-selection.mjs.map +2 -2
  430. package/build-module/components/writing-flow/use-select-all.mjs +19 -3
  431. package/build-module/components/writing-flow/use-select-all.mjs.map +2 -2
  432. package/build-module/components/writing-flow/use-selection-observer.mjs +128 -19
  433. package/build-module/components/writing-flow/use-selection-observer.mjs.map +2 -2
  434. package/build-module/components/writing-flow/utils.mjs +35 -1
  435. package/build-module/components/writing-flow/utils.mjs.map +2 -2
  436. package/build-module/components/writing-mode-control/index.mjs +0 -1
  437. package/build-module/components/writing-mode-control/index.mjs.map +2 -2
  438. package/build-module/hooks/background.mjs +3 -2
  439. package/build-module/hooks/background.mjs.map +2 -2
  440. package/build-module/hooks/block-fields/rich-text/index.mjs +2 -6
  441. package/build-module/hooks/block-fields/rich-text/index.mjs.map +2 -2
  442. package/build-module/hooks/elements.mjs +1 -1
  443. package/build-module/hooks/elements.mjs.map +2 -2
  444. package/build-module/hooks/font-size.mjs +1 -2
  445. package/build-module/hooks/font-size.mjs.map +2 -2
  446. package/build-module/hooks/grid-visualizer.mjs +5 -3
  447. package/build-module/hooks/grid-visualizer.mjs.map +2 -2
  448. package/build-module/hooks/layout-child.mjs +22 -12
  449. package/build-module/hooks/layout-child.mjs.map +2 -2
  450. package/build-module/hooks/layout.mjs +32 -16
  451. package/build-module/hooks/layout.mjs.map +2 -2
  452. package/build-module/hooks/position.mjs +38 -18
  453. package/build-module/hooks/position.mjs.map +2 -2
  454. package/build-module/hooks/states.mjs +29 -12
  455. package/build-module/hooks/states.mjs.map +2 -2
  456. package/build-module/hooks/style.mjs +40 -11
  457. package/build-module/hooks/style.mjs.map +2 -2
  458. package/build-module/hooks/text-align.mjs +39 -10
  459. package/build-module/hooks/text-align.mjs.map +2 -2
  460. package/build-module/hooks/typography.mjs +1 -1
  461. package/build-module/hooks/typography.mjs.map +2 -2
  462. package/build-module/layouts/constrained.mjs +35 -27
  463. package/build-module/layouts/constrained.mjs.map +2 -2
  464. package/build-module/layouts/flex.mjs +27 -22
  465. package/build-module/layouts/flex.mjs.map +2 -2
  466. package/build-module/layouts/grid.mjs +52 -11
  467. package/build-module/layouts/grid.mjs.map +2 -2
  468. package/build-module/private-apis.mjs +5 -1
  469. package/build-module/private-apis.mjs.map +2 -2
  470. package/build-module/store/actions.mjs +3 -3
  471. package/build-module/store/actions.mjs.map +2 -2
  472. package/build-module/store/private-keys.mjs +2 -0
  473. package/build-module/store/private-keys.mjs.map +2 -2
  474. package/build-module/store/private-selectors.mjs +84 -6
  475. package/build-module/store/private-selectors.mjs.map +2 -2
  476. package/build-module/store/selectors.mjs +13 -0
  477. package/build-module/store/selectors.mjs.map +2 -2
  478. package/build-module/utils/block-bindings.mjs +28 -0
  479. package/build-module/utils/block-bindings.mjs.map +2 -2
  480. package/build-module/utils/dom.mjs +13 -0
  481. package/build-module/utils/dom.mjs.map +2 -2
  482. package/build-style/content-rtl.css +15 -14
  483. package/build-style/content.css +15 -14
  484. package/build-style/default-editor-styles-rtl.css +1 -1
  485. package/build-style/default-editor-styles.css +1 -1
  486. package/build-style/style-rtl.css +144 -47
  487. package/build-style/style.css +144 -47
  488. package/build-types/components/block-context/index.d.ts +7 -0
  489. package/build-types/components/block-context/index.d.ts.map +1 -1
  490. package/build-types/utils/block-bindings.d.ts +19 -0
  491. package/build-types/utils/block-bindings.d.ts.map +1 -1
  492. package/build-types/utils/dom.d.ts +11 -0
  493. package/build-types/utils/dom.d.ts.map +1 -1
  494. package/build-types/utils/get-px-from-css-unit.d.ts +2 -2
  495. package/build-types/utils/get-px-from-css-unit.d.ts.map +1 -1
  496. package/build-types/utils/pasting.d.ts +1 -1
  497. package/build-types/utils/pasting.d.ts.map +1 -1
  498. package/package.json +46 -44
  499. package/src/autocompleters/block.js +10 -3
  500. package/src/autocompleters/test/block.js +53 -0
  501. package/src/components/background-image-control/index.js +0 -2
  502. package/src/components/block-canvas/index.js +9 -2
  503. package/src/components/block-card/style.scss +1 -1
  504. package/src/components/block-controls/groups.js +2 -0
  505. package/src/components/block-edit/edit.js +13 -31
  506. package/src/components/block-inspector/edit-contents.js +5 -1
  507. package/src/components/block-inspector/index.js +3 -2
  508. package/src/components/block-list/block-invalid-warning.js +8 -19
  509. package/src/components/block-list/block.js +6 -0
  510. package/src/components/block-list/index.js +0 -2
  511. package/src/components/block-list/use-block-props/index.js +2 -0
  512. package/src/components/block-list/use-block-props/use-focus-first-element.js +23 -4
  513. package/src/components/block-list/use-block-props/use-focus-handler.js +34 -9
  514. package/src/components/block-lock/style.scss +1 -1
  515. package/src/components/block-manager/style.scss +1 -1
  516. package/src/components/block-navigation/style.scss +1 -1
  517. package/src/components/block-patterns-list/stories/index.story.jsx +1 -1
  518. package/src/components/block-quick-navigation/style.scss +1 -3
  519. package/src/components/block-styles/style.scss +2 -2
  520. package/src/components/block-styles/use-styles-for-block.js +1 -0
  521. package/src/components/block-title/use-block-display-title.js +7 -2
  522. package/src/components/block-toolbar/block-toolbar-icon.js +11 -16
  523. package/src/components/block-toolbar/index.js +41 -18
  524. package/src/components/block-toolbar/test/block-toolbar-icon.js +32 -9
  525. package/src/components/block-tools/index.js +7 -0
  526. package/src/components/block-types-list/style.scss +0 -1
  527. package/src/components/block-variation-transforms/index.js +0 -1
  528. package/src/components/block-visibility/modal.js +24 -10
  529. package/src/components/block-visibility/style.scss +1 -1
  530. package/src/components/block-visibility/test/use-block-visibility.js +128 -35
  531. package/src/components/block-visibility/test/utils.js +11 -0
  532. package/src/components/block-visibility/use-block-visibility.js +33 -11
  533. package/src/components/block-visibility/utils.js +31 -6
  534. package/src/components/block-visibility/viewport-menu-item.js +10 -1
  535. package/src/components/block-visibility/viewport-toolbar.js +6 -0
  536. package/src/components/block-visibility/viewport-visibility-info.js +5 -1
  537. package/src/components/button-block-appender/content.scss +1 -7
  538. package/src/components/child-layout-control/index.js +0 -6
  539. package/src/components/color-palette/test/__snapshots__/control.js.snap +13 -108
  540. package/src/components/colors-gradients/control.js +4 -4
  541. package/src/components/colors-gradients/style.scss +2 -2
  542. package/src/components/date-format-picker/index.js +0 -1
  543. package/src/components/dimensions-tool/aspect-ratio-tool.js +0 -1
  544. package/src/components/dimensions-tool/scale-tool.js +0 -1
  545. package/src/components/dimensions-tool/width-height-tool.js +0 -2
  546. package/src/components/font-appearance-control/index.js +6 -19
  547. package/src/components/font-family/README.md +0 -9
  548. package/src/components/font-family/index.js +6 -19
  549. package/src/components/font-family/stories/index.story.jsx +1 -2
  550. package/src/components/font-sizes/font-size-picker.js +0 -1
  551. package/src/components/global-styles/border-panel.js +0 -1
  552. package/src/components/global-styles/dimensions-panel.js +0 -3
  553. package/src/components/global-styles/state-control-badges.js +45 -6
  554. package/src/components/global-styles/style.scss +5 -0
  555. package/src/components/global-styles/test/state-control-badges.js +65 -0
  556. package/src/components/global-styles/typography-panel.js +0 -7
  557. package/src/components/height-control/index.js +0 -2
  558. package/src/components/html-element-control/index.js +0 -1
  559. package/src/components/iframe/content.scss +3 -3
  560. package/src/components/image-editor/index.js +22 -0
  561. package/src/components/image-editor/zoom-dropdown.js +0 -1
  562. package/src/components/image-size-control/index.js +0 -4
  563. package/src/components/inner-content/index.js +119 -0
  564. package/src/components/inner-content/test/index.js +81 -0
  565. package/src/components/inserter/hooks/use-block-types-state.js +10 -2
  566. package/src/components/inserter/media-tab/hooks.js +114 -16
  567. package/src/components/inserter/media-tab/media-list.js +2 -0
  568. package/src/components/inserter/media-tab/media-panel.js +354 -19
  569. package/src/components/inserter/media-tab/media-preview.js +34 -17
  570. package/src/components/inserter/media-tab/media-tab.js +20 -2
  571. package/src/components/inserter/media-tab/test/hooks.js +267 -0
  572. package/src/components/inserter/media-tab/test/media-panel.js +127 -0
  573. package/src/components/inserter/mobile-tab-navigation.js +6 -1
  574. package/src/components/inserter/no-results.js +2 -2
  575. package/src/components/inserter/preview-panel.js +1 -0
  576. package/src/components/inserter/style.scss +115 -3
  577. package/src/components/inserter-list-item/index.js +8 -2
  578. package/src/components/inserter-list-item/style.scss +0 -15
  579. package/src/components/keyboard-shortcuts/index.js +28 -11
  580. package/src/components/letter-spacing-control/README.md +0 -8
  581. package/src/components/letter-spacing-control/index.js +5 -23
  582. package/src/components/letter-spacing-control/stories/index.story.jsx +0 -12
  583. package/src/components/line-height-control/README.md +0 -8
  584. package/src/components/line-height-control/index.js +6 -16
  585. package/src/components/line-height-control/stories/index.story.jsx +0 -1
  586. package/src/components/line-height-control/test/index.js +1 -7
  587. package/src/components/link-control/style.scss +2 -2
  588. package/src/components/link-control/test/index.js +6 -6
  589. package/src/components/link-picker/style.scss +1 -2
  590. package/src/components/link-picker/test/index.js +3 -1
  591. package/src/components/list-view/block-select-button.js +5 -1
  592. package/src/components/list-view/block.js +69 -23
  593. package/src/components/list-view/expander.js +5 -1
  594. package/src/components/list-view/style.scss +23 -5
  595. package/src/components/list-view/use-list-view-client-ids.js +2 -2
  596. package/src/components/media-placeholder/index.js +0 -1
  597. package/src/components/multi-selection-inspector/style.scss +1 -1
  598. package/src/components/observe-typing/index.js +9 -4
  599. package/src/components/preset-input-control/custom-value-controls.js +0 -2
  600. package/src/components/preset-input-control/index.js +0 -2
  601. package/src/components/resolution-tool/index.js +0 -1
  602. package/src/components/responsive-block-control/style.scss +1 -1
  603. package/src/components/responsive-block-control/test/index.js +1 -5
  604. package/src/components/rich-text/event-listeners/before-input-rules.js +8 -5
  605. package/src/components/rich-text/event-listeners/delete.js +7 -4
  606. package/src/components/rich-text/event-listeners/enter.js +10 -4
  607. package/src/components/rich-text/event-listeners/input-events.js +4 -3
  608. package/src/components/rich-text/event-listeners/input-rules.js +8 -5
  609. package/src/components/rich-text/event-listeners/insert-replacement-text.js +4 -3
  610. package/src/components/rich-text/event-listeners/paste-handler.js +15 -3
  611. package/src/components/rich-text/event-listeners/remove-browser-shortcuts.js +4 -3
  612. package/src/components/rich-text/event-listeners/shortcuts.js +4 -3
  613. package/src/components/rich-text/event-listeners/undo-automatic-change.js +4 -3
  614. package/src/components/rich-text/index.js +94 -25
  615. package/src/components/skip-to-selected-block/style.scss +1 -1
  616. package/src/components/text-alignment-control/index.js +0 -1
  617. package/src/components/text-decoration-control/index.js +0 -1
  618. package/src/components/text-indent-control/index.js +7 -16
  619. package/src/components/text-transform-control/index.js +0 -1
  620. package/src/components/typewriter/index.js +228 -224
  621. package/src/components/use-block-commands/index.js +27 -17
  622. package/src/components/use-block-display-information/index.js +9 -13
  623. package/src/components/use-block-display-information/test/index.js +47 -9
  624. package/src/components/use-on-block-drop/index.js +4 -7
  625. package/src/components/writing-flow/index.js +15 -1
  626. package/src/components/writing-flow/use-arrow-nav.js +39 -12
  627. package/src/components/writing-flow/use-click-selection.js +2 -3
  628. package/src/components/writing-flow/use-clipboard-handler.js +5 -2
  629. package/src/components/writing-flow/use-drag-selection.js +1 -14
  630. package/src/components/writing-flow/use-editable-root.js +182 -0
  631. package/src/components/writing-flow/use-home-end.js +63 -0
  632. package/src/components/writing-flow/use-input.js +25 -8
  633. package/src/components/writing-flow/use-multi-selection.js +2 -3
  634. package/src/components/writing-flow/use-select-all.js +33 -3
  635. package/src/components/writing-flow/use-selection-observer.js +197 -38
  636. package/src/components/writing-flow/utils.js +83 -0
  637. package/src/components/writing-mode-control/index.js +0 -1
  638. package/src/hooks/background.js +7 -9
  639. package/src/hooks/block-fields/link/styles.scss +1 -6
  640. package/src/hooks/block-fields/media/styles.scss +1 -6
  641. package/src/hooks/block-fields/rich-text/index.js +6 -9
  642. package/src/hooks/block-hooks.scss +15 -0
  643. package/src/hooks/elements.js +0 -1
  644. package/src/hooks/font-size.js +0 -1
  645. package/src/hooks/grid-visualizer.js +40 -36
  646. package/src/hooks/layout-child.js +19 -9
  647. package/src/hooks/layout.js +53 -35
  648. package/src/hooks/position.js +44 -23
  649. package/src/hooks/states.js +36 -13
  650. package/src/hooks/style.js +67 -17
  651. package/src/hooks/test/cross-origin-isolation.js +0 -4
  652. package/src/hooks/test/layout.js +75 -1
  653. package/src/hooks/test/style.js +29 -0
  654. package/src/hooks/test/text-align.js +34 -1
  655. package/src/hooks/text-align.js +41 -10
  656. package/src/hooks/typography.js +0 -1
  657. package/src/layouts/constrained.js +56 -29
  658. package/src/layouts/flex.js +5 -4
  659. package/src/layouts/grid.js +59 -9
  660. package/src/layouts/test/constrained.js +91 -0
  661. package/src/layouts/test/grid.js +71 -0
  662. package/src/private-apis.js +4 -0
  663. package/src/store/actions.js +43 -14
  664. package/src/store/private-keys.js +1 -0
  665. package/src/store/private-selectors.js +166 -9
  666. package/src/store/selectors.js +41 -0
  667. package/src/store/test/actions.js +1 -1
  668. package/src/store/test/private-selectors.js +533 -0
  669. package/src/store/test/reducer.js +11 -11
  670. package/src/store/test/selectors.js +133 -0
  671. package/src/style.scss +1 -0
  672. package/src/utils/block-bindings.ts +50 -0
  673. package/src/utils/dom.ts +33 -0
  674. package/src/utils/test/block-bindings.js +181 -0
  675. package/build/components/rich-text/input-event.cjs +0 -50
  676. package/build/components/rich-text/input-event.cjs.map +0 -7
  677. package/build/components/rich-text/shortcut.cjs +0 -51
  678. package/build/components/rich-text/shortcut.cjs.map +0 -7
  679. package/build-module/components/rich-text/input-event.mjs +0 -25
  680. package/build-module/components/rich-text/input-event.mjs.map +0 -7
  681. package/build-module/components/rich-text/shortcut.mjs +0 -26
  682. package/build-module/components/rich-text/shortcut.mjs.map +0 -7
  683. package/src/components/rich-text/input-event.js +0 -31
  684. package/src/components/rich-text/shortcut.js +0 -32
@@ -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
  }
@@ -19,7 +19,6 @@ const MyLetterSpacingControl = () => (
19
19
  value={ value }
20
20
  onChange={ onChange }
21
21
  __unstableInputWidth="auto"
22
- __next40pxDefaultSize
23
22
  />
24
23
  );
25
24
  ```
@@ -46,13 +45,6 @@ A callback function invoked when the value is changed.
46
45
 
47
46
  Input width to pass through to inner UnitControl. Should be a valid CSS value.
48
47
 
49
- #### `__next40pxDefaultSize`
50
-
51
- - **Type:** `boolean`
52
- - **Default:** `false`
53
-
54
- Start opting into the larger default height that will become the default size in a future version.
55
-
56
48
  ## Related components
57
49
 
58
50
  Block Editor components are components that can be used to compose the UI of your block editor. Thus, they can only be used under a [`BlockEditorProvider`](https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/provider/README.md) in the components tree.
@@ -5,7 +5,6 @@ import {
5
5
  __experimentalUnitControl as UnitControl,
6
6
  __experimentalUseCustomUnits as useCustomUnits,
7
7
  } from '@wordpress/components';
8
- import deprecated from '@wordpress/deprecated';
9
8
  import { __ } from '@wordpress/i18n';
10
9
 
11
10
  /**
@@ -16,16 +15,15 @@ import { useSettings } from '../../components/use-settings';
16
15
  /**
17
16
  * Control for letter-spacing.
18
17
  *
19
- * @param {Object} props Component props.
20
- * @param {boolean} props.__next40pxDefaultSize Start opting into the larger default height that will become the default size in a future version.
21
- * @param {string} props.value Currently selected letter-spacing.
22
- * @param {Function} props.onChange Handles change in letter-spacing selection.
23
- * @param {string|number|undefined} props.__unstableInputWidth Input width to pass through to inner UnitControl. Should be a valid CSS value.
18
+ * @param {Object} props Component props.
19
+ * @param {boolean} [props.__next40pxDefaultSize] Start opting into the larger default height that will become the default size in a future version.
20
+ * @param {string} props.value Currently selected letter-spacing.
21
+ * @param {Function} props.onChange Handles change in letter-spacing selection.
22
+ * @param {string|number|undefined} props.__unstableInputWidth Input width to pass through to inner UnitControl. Should be a valid CSS value.
24
23
  *
25
24
  * @return {Element} Letter-spacing control.
26
25
  */
27
26
  export default function LetterSpacingControl( {
28
- __next40pxDefaultSize = false,
29
27
  value,
30
28
  onChange,
31
29
  __unstableInputWidth = '60px',
@@ -37,24 +35,8 @@ export default function LetterSpacingControl( {
37
35
  defaultValues: { px: 2, em: 0.2, rem: 0.2 },
38
36
  } );
39
37
 
40
- if (
41
- ! __next40pxDefaultSize &&
42
- ( otherProps.size === undefined || otherProps.size === 'default' )
43
- ) {
44
- deprecated(
45
- `36px default size for wp.blockEditor.__experimentalLetterSpacingControl`,
46
- {
47
- since: '6.8',
48
- version: '7.1',
49
- hint: 'Set the `__next40pxDefaultSize` prop to true to start opting into the new default size, which will become the default in a future version.',
50
- }
51
- );
52
- }
53
-
54
38
  return (
55
39
  <UnitControl
56
- __next40pxDefaultSize={ __next40pxDefaultSize }
57
- __shouldNotWarnDeprecated36pxSize
58
40
  { ...otherProps }
59
41
  label={ __( 'Letter spacing' ) }
60
42
  value={ value }
@@ -46,24 +46,12 @@ const meta = {
46
46
  defaultValue: { summary: '60px' },
47
47
  },
48
48
  },
49
- __next40pxDefaultSize: {
50
- control: 'boolean',
51
- description:
52
- 'Start opting into the larger default height that will become the default size in a future version.',
53
- table: {
54
- type: { summary: 'boolean' },
55
- defaultValue: { summary: 'false' },
56
- },
57
- },
58
49
  },
59
50
  };
60
51
 
61
52
  export default meta;
62
53
 
63
54
  export const Default = {
64
- args: {
65
- __next40pxDefaultSize: true,
66
- },
67
55
  render: function Template( { onChange, ...args } ) {
68
56
  const [ value, setValue ] = useState( '' );
69
57
  return (
@@ -18,7 +18,6 @@ const MyLineHeightControl = () => (
18
18
  <LineHeightControl
19
19
  value={ lineHeight }
20
20
  onChange={ onChange }
21
- __next40pxDefaultSize
22
21
  />
23
22
  );
24
23
  ```
@@ -37,13 +36,6 @@ The value of the line height.
37
36
 
38
37
  A callback function that handles the application of the line height value.
39
38
 
40
- #### `__next40pxDefaultSize`
41
-
42
- - **Type:** `boolean`
43
- - **Default:** `false`
44
-
45
- Start opting into the larger default height that will become the default size in a future version.
46
-
47
39
  ## Related components
48
40
 
49
41
  Block Editor components are components that can be used to compose the UI of your block editor. Thus, they can only be used under a [`BlockEditorProvider`](https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/provider/README.md) in the components tree.
@@ -3,7 +3,6 @@
3
3
  */
4
4
  import { __ } from '@wordpress/i18n';
5
5
  import { __experimentalNumberControl as NumberControl } from '@wordpress/components';
6
- import deprecated from '@wordpress/deprecated';
7
6
 
8
7
  /**
9
8
  * Internal dependencies
@@ -17,8 +16,12 @@ import {
17
16
  } from './utils';
18
17
 
19
18
  const LineHeightControl = ( {
20
- /** Start opting into the larger default height that will become the default size in a future version. */
21
- __next40pxDefaultSize = false,
19
+ /**
20
+ * Start opting into the larger default height that will become the default size in a future version.
21
+ *
22
+ * @deprecated Default behavior since WordPress 7.1. Prop can be safely removed.
23
+ */
24
+ __next40pxDefaultSize: _next40pxDefaultSize,
22
25
  value: lineHeight,
23
26
  onChange,
24
27
  __unstableInputWidth = '60px',
@@ -90,23 +93,10 @@ const LineHeightControl = ( {
90
93
  onChange( `${ nextValue }` );
91
94
  };
92
95
 
93
- if (
94
- ! __next40pxDefaultSize &&
95
- ( otherProps.size === undefined || otherProps.size === 'default' )
96
- ) {
97
- deprecated( `36px default size for wp.blockEditor.LineHeightControl`, {
98
- since: '6.8',
99
- version: '7.1',
100
- hint: 'Set the `__next40pxDefaultSize` prop to true to start opting into the new default size, which will become the default in a future version.',
101
- } );
102
- }
103
-
104
96
  return (
105
97
  <div className="block-editor-line-height-control">
106
98
  <NumberControl
107
99
  { ...otherProps }
108
- __shouldNotWarnDeprecated36pxSize
109
- __next40pxDefaultSize={ __next40pxDefaultSize }
110
100
  __unstableInputWidth={ __unstableInputWidth }
111
101
  __unstableStateReducer={ stateReducer }
112
102
  onChange={ handleOnChange }
@@ -22,7 +22,6 @@ const Template = ( props ) => {
22
22
 
23
23
  export const Default = Template.bind( {} );
24
24
  Default.args = {
25
- __next40pxDefaultSize: true,
26
25
  __unstableInputWidth: '100px',
27
26
  };
28
27
 
@@ -19,13 +19,7 @@ const SPIN = STEP * SPIN_FACTOR;
19
19
 
20
20
  const ControlledLineHeightControl = () => {
21
21
  const [ value, setValue ] = useState();
22
- return (
23
- <LineHeightControl
24
- value={ value }
25
- onChange={ setValue }
26
- __next40pxDefaultSize
27
- />
28
- );
22
+ return <LineHeightControl value={ value } onChange={ setValue } />;
29
23
  };
30
24
 
31
25
  describe( 'LineHeightControl', () => {
@@ -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
  }
@@ -141,7 +141,9 @@ describe( 'LinkPicker', () => {
141
141
  );
142
142
 
143
143
  const button = screen.getByRole( 'button' );
144
- const image = within( button ).getByRole( 'img', { hidden: true } );
144
+ const image = within( button ).getByRole( 'presentation', {
145
+ hidden: true,
146
+ } );
145
147
 
146
148
  expect( image ).toHaveAttribute(
147
149
  'src',
@@ -46,6 +46,7 @@ function ListViewBlockSelectButton(
46
46
  isExpanded,
47
47
  ariaDescribedBy,
48
48
  visibilityLabel,
49
+ isDisabled = false,
49
50
  },
50
51
  ref
51
52
  ) {
@@ -79,6 +80,8 @@ function ListViewBlockSelectButton(
79
80
  }
80
81
 
81
82
  return (
83
+ // Disabled list view items intentionally omit href so TreeGrid skips them.
84
+ // eslint-disable-next-line jsx-a11y/anchor-is-valid
82
85
  <a
83
86
  className={ clsx(
84
87
  'block-editor-list-view-block-select-button',
@@ -94,7 +97,8 @@ function ListViewBlockSelectButton(
94
97
  onDragStart={ onDragStartHandler }
95
98
  onDragEnd={ onDragEnd }
96
99
  draggable={ draggable }
97
- href={ `#block-${ clientId }` }
100
+ href={ isDisabled ? undefined : `#block-${ clientId }` }
101
+ aria-disabled={ isDisabled ? true : undefined }
98
102
  aria-describedby={ ariaDescribedBy }
99
103
  aria-expanded={ isExpanded }
100
104
  >
@@ -98,6 +98,7 @@ function ListViewBlock( {
98
98
  insertAfterBlock,
99
99
  insertBeforeBlock,
100
100
  showViewportModal,
101
+ stopEditingContentOnlySection,
101
102
  } = unlock( useDispatch( blockEditorStore ) );
102
103
 
103
104
  const debouncedToggleBlockHighlight = useDebounce(
@@ -125,21 +126,41 @@ function ListViewBlock( {
125
126
 
126
127
  const pasteStyles = usePasteStyles();
127
128
 
128
- const { block, blockName, allowRightClickOverrides } = useSelect(
129
+ const {
130
+ block,
131
+ blockName,
132
+ blockEditingMode,
133
+ allowRightClickOverrides,
134
+ editedSection,
135
+ viewportSettings,
136
+ blockVisibilitySetting,
137
+ } = useSelect(
129
138
  ( select ) => {
130
- const { getBlock, getBlockName, getSettings } = unlock(
131
- select( blockEditorStore )
132
- );
139
+ const {
140
+ getBlock,
141
+ getBlockName,
142
+ getBlockEditingMode: getBlockEditingModeForClientId,
143
+ getSettings,
144
+ getEditedContentOnlySection,
145
+ } = unlock( select( blockEditorStore ) );
146
+ const settings = getSettings();
133
147
 
134
148
  return {
135
149
  block: getBlock( clientId ),
136
150
  blockName: getBlockName( clientId ),
137
- allowRightClickOverrides:
138
- getSettings().allowRightClickOverrides,
151
+ blockEditingMode: getBlockEditingModeForClientId( clientId ),
152
+ allowRightClickOverrides: settings.allowRightClickOverrides,
153
+ editedSection: getEditedContentOnlySection(),
154
+ viewportSettings: settings.__experimentalFeatures?.viewport,
155
+ blockVisibilitySetting:
156
+ settings.__experimentalFeatures?.blockVisibility
157
+ ?.allowEditing,
139
158
  };
140
159
  },
141
160
  [ clientId ]
142
161
  );
162
+
163
+ const isDisabled = blockEditingMode === 'disabled';
143
164
  const { canRename } = useBlockRename( blockName );
144
165
 
145
166
  const showBlockActions =
@@ -202,6 +223,13 @@ function ListViewBlock( {
202
223
  return;
203
224
  }
204
225
 
226
+ if ( editedSection && isMatch( 'core/block-editor/unselect', event ) ) {
227
+ event.stopPropagation();
228
+ event.preventDefault();
229
+ stopEditingContentOnlySection();
230
+ return;
231
+ }
232
+
205
233
  const isDeleteKey = [ BACKSPACE, DELETE ].includes( event.keyCode );
206
234
 
207
235
  // If multiple blocks are selected, deselect all blocks when the user
@@ -370,6 +398,9 @@ function ListViewBlock( {
370
398
  } else if (
371
399
  isMatch( 'core/block-editor/toggle-block-visibility', event )
372
400
  ) {
401
+ if ( blockVisibilitySetting === false ) {
402
+ return;
403
+ }
373
404
  event.preventDefault();
374
405
  const { blocksToUpdate } = getBlocksToUpdate();
375
406
  const blocks = getBlocksByClientId( blocksToUpdate );
@@ -535,11 +566,13 @@ function ListViewBlock( {
535
566
 
536
567
  // Determine label based on where block is hidden (not when/current viewport)
537
568
  const blockVisibilityDescription = getBlockVisibilityLabel(
538
- block?.attributes?.metadata?.blockVisibility
569
+ block?.attributes?.metadata?.blockVisibility,
570
+ viewportSettings
539
571
  );
540
572
 
541
573
  const hasSiblings = siblingBlockCount > 0;
542
- const hasRenderedMovers = showBlockMovers && hasSiblings;
574
+ const canShowBlockActions = showBlockActions && ! isDisabled;
575
+ const hasRenderedMovers = showBlockMovers && hasSiblings && ! isDisabled;
543
576
  const moverCellClassName = clsx(
544
577
  'block-editor-list-view-block__mover-cell',
545
578
  { 'is-visible': isHovered || isSelected }
@@ -553,7 +586,7 @@ function ListViewBlock( {
553
586
  let colSpan;
554
587
  if ( hasRenderedMovers ) {
555
588
  colSpan = 2;
556
- } else if ( ! showBlockActions ) {
589
+ } else if ( ! canShowBlockActions ) {
557
590
  colSpan = 3;
558
591
  }
559
592
 
@@ -566,12 +599,13 @@ function ListViewBlock( {
566
599
  'is-dragging': isDragged,
567
600
  'has-single-cell': ! showBlockActions,
568
601
  'is-synced': blockInformation?.isSynced,
569
- 'is-draggable': canMoveBlock,
602
+ 'is-draggable': canMoveBlock && ! isDisabled,
570
603
  'is-displacement-normal': displacement === 'normal',
571
604
  'is-displacement-up': displacement === 'up',
572
605
  'is-displacement-down': displacement === 'down',
573
606
  'is-after-dragged-blocks': isAfterDraggedBlocks,
574
607
  'is-nesting': isNesting,
608
+ 'is-disabled': isDisabled,
575
609
  } );
576
610
 
577
611
  // Only include all selected blocks if the currently clicked on block
@@ -582,19 +616,28 @@ function ListViewBlock( {
582
616
  ? selectedClientIds
583
617
  : [ clientId ];
584
618
 
585
- // Detect if there is a block in the canvas currently being edited and multi-selection is not happening.
586
- const currentlyEditingBlockInCanvas =
587
- isSelected && selectedClientIds.length === 1;
619
+ const getListViewBlockTabIndex = ( rovingTabIndex ) => {
620
+ if ( isDisabled ) {
621
+ return -1;
622
+ }
623
+
624
+ // Detect if there is a block in the canvas currently being edited and multi-selection is not happening.
625
+ if ( isSelected && selectedClientIds.length === 1 ) {
626
+ return 0;
627
+ }
628
+
629
+ return rovingTabIndex;
630
+ };
588
631
 
589
632
  return (
590
633
  <ListViewLeaf
591
634
  className={ classes }
592
635
  isDragged={ isDragged }
593
636
  onKeyDown={ onKeyDown }
594
- onMouseEnter={ onMouseEnter }
595
- onMouseLeave={ onMouseLeave }
596
- onFocus={ onMouseEnter }
597
- onBlur={ onMouseLeave }
637
+ onMouseEnter={ isDisabled ? undefined : onMouseEnter }
638
+ onMouseLeave={ isDisabled ? undefined : onMouseLeave }
639
+ onFocus={ isDisabled ? undefined : onMouseEnter }
640
+ onBlur={ isDisabled ? undefined : onMouseLeave }
598
641
  level={ level }
599
642
  position={ position }
600
643
  rowCount={ rowCount }
@@ -615,22 +658,25 @@ function ListViewBlock( {
615
658
  <ListViewBlockContents
616
659
  block={ block }
617
660
  onClick={ selectEditorBlock }
618
- onContextMenu={ onContextMenu }
661
+ onContextMenu={
662
+ isDisabled ? undefined : onContextMenu
663
+ }
619
664
  onMouseDown={ onMouseDown }
620
- onToggleExpanded={ toggleExpanded }
665
+ onToggleExpanded={
666
+ isDisabled ? undefined : toggleExpanded
667
+ }
621
668
  isSelected={ isSelected }
622
669
  position={ position }
623
670
  siblingBlockCount={ siblingBlockCount }
624
671
  level={ level }
625
672
  ref={ ref }
626
- tabIndex={
627
- currentlyEditingBlockInCanvas ? 0 : tabIndex
628
- }
673
+ tabIndex={ getListViewBlockTabIndex( tabIndex ) }
629
674
  onFocus={ onFocus }
630
675
  isExpanded={ canEditBlock ? isExpanded : undefined }
631
676
  selectedClientIds={ selectedClientIds }
632
677
  ariaDescribedBy={ descriptionId }
633
678
  visibilityLabel={ blockVisibilityDescription }
679
+ isDisabled={ isDisabled }
634
680
  />
635
681
  <AriaReferencedText id={ descriptionId }>
636
682
  { [
@@ -676,7 +722,7 @@ function ListViewBlock( {
676
722
  </>
677
723
  ) }
678
724
 
679
- { showBlockActions && BlockSettingsMenu && (
725
+ { canShowBlockActions && BlockSettingsMenu && (
680
726
  <TreeGridCell
681
727
  className={ listViewBlockSettingsClassName }
682
728
  aria-selected={ !! isSelected }
@@ -15,7 +15,11 @@ export default function ListViewExpander( { onClick } ) {
15
15
  // For the current tree grid implementation, please do not try to make this a button.
16
16
  <span
17
17
  className="block-editor-list-view__expander"
18
- onClick={ ( event ) => onClick( event, { forceToggle: true } ) }
18
+ onClick={
19
+ onClick
20
+ ? ( event ) => onClick( event, { forceToggle: true } )
21
+ : undefined
22
+ }
19
23
  aria-hidden="true"
20
24
  data-testid="list-view-expander"
21
25
  >
@@ -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
 
@@ -447,6 +446,25 @@
447
446
  box-shadow: 0 0 0 $radius-small var(--wp-admin-theme-color);
448
447
  }
449
448
  }
449
+
450
+ &.is-disabled {
451
+ opacity: 0.2;
452
+ @media not ( prefers-reduced-motion ) {
453
+ transition: opacity 0.1s linear;
454
+ }
455
+
456
+ &:hover {
457
+ opacity: 0.2;
458
+ }
459
+
460
+ .block-editor-list-view__expander {
461
+ cursor: default;
462
+ }
463
+
464
+ .block-editor-list-view-block-select-button:hover {
465
+ color: inherit;
466
+ }
467
+ }
450
468
  }
451
469
 
452
470
  // First level of indentation is aria-level 2, max indent is 8.
@@ -16,14 +16,14 @@ export default function useListViewClientIds( { blocks, rootClientId } ) {
16
16
  const {
17
17
  getDraggedBlockClientIds,
18
18
  getSelectedBlockClientIds,
19
- getEnabledClientIdsTree,
19
+ getListViewClientIdsTree,
20
20
  } = unlock( select( blockEditorStore ) );
21
21
 
22
22
  return {
23
23
  selectedClientIds: getSelectedBlockClientIds(),
24
24
  draggedClientIds: getDraggedBlockClientIds(),
25
25
  clientIdsTree:
26
- blocks ?? getEnabledClientIdsTree( rootClientId ),
26
+ blocks ?? getListViewClientIdsTree( rootClientId ),
27
27
  };
28
28
  },
29
29
  [ blocks, rootClientId ]