@wordpress/block-editor 12.10.2 → 12.11.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 (1275) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +13 -11
  3. package/build/autocompleters/block.js +3 -2
  4. package/build/autocompleters/block.js.map +1 -1
  5. package/build/autocompleters/link.js +3 -3
  6. package/build/autocompleters/link.js.map +1 -1
  7. package/build/components/alignment-control/index.js +3 -3
  8. package/build/components/alignment-control/index.js.map +1 -1
  9. package/build/components/alignment-control/ui.js +2 -2
  10. package/build/components/alignment-control/ui.js.map +1 -1
  11. package/build/components/autocomplete/index.js +3 -2
  12. package/build/components/autocomplete/index.js.map +1 -1
  13. package/build/components/block-actions/index.js +2 -2
  14. package/build/components/block-actions/index.js.map +1 -1
  15. package/build/components/block-alignment-control/index.js +3 -3
  16. package/build/components/block-alignment-control/index.js.map +1 -1
  17. package/build/components/block-alignment-control/ui.js +4 -4
  18. package/build/components/block-alignment-control/ui.js.map +1 -1
  19. package/build/components/block-alignment-control/ui.native.js +2 -2
  20. package/build/components/block-alignment-control/ui.native.js.map +1 -1
  21. package/build/components/block-alignment-matrix-control/index.js +5 -5
  22. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  23. package/build/components/block-breadcrumb/index.js +12 -12
  24. package/build/components/block-breadcrumb/index.js.map +1 -1
  25. package/build/components/block-canvas/index.js +13 -15
  26. package/build/components/block-canvas/index.js.map +1 -1
  27. package/build/components/block-caption/index.native.js +3 -3
  28. package/build/components/block-caption/index.native.js.map +1 -1
  29. package/build/components/block-card/index.js +7 -7
  30. package/build/components/block-card/index.js.map +1 -1
  31. package/build/components/block-compare/block-view.js +9 -8
  32. package/build/components/block-compare/block-view.js.map +1 -1
  33. package/build/components/block-compare/index.js +5 -5
  34. package/build/components/block-compare/index.js.map +1 -1
  35. package/build/components/block-context/index.js +2 -1
  36. package/build/components/block-context/index.js.map +1 -1
  37. package/build/components/block-controls/fill.js +5 -5
  38. package/build/components/block-controls/fill.js.map +1 -1
  39. package/build/components/block-controls/index.js +3 -3
  40. package/build/components/block-controls/index.js.map +1 -1
  41. package/build/components/block-controls/slot.js +3 -2
  42. package/build/components/block-controls/slot.js.map +1 -1
  43. package/build/components/block-controls/slot.native.js +4 -4
  44. package/build/components/block-controls/slot.native.js.map +1 -1
  45. package/build/components/block-draggable/draggable-chip.js +6 -6
  46. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  47. package/build/components/block-draggable/draggable-chip.native.js +4 -4
  48. package/build/components/block-draggable/draggable-chip.native.js.map +1 -1
  49. package/build/components/block-draggable/dropping-insertion-point.native.js +2 -2
  50. package/build/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  51. package/build/components/block-draggable/index.js +4 -3
  52. package/build/components/block-draggable/index.js.map +1 -1
  53. package/build/components/block-draggable/index.native.js +9 -8
  54. package/build/components/block-draggable/index.native.js.map +1 -1
  55. package/build/components/block-edit/edit.js +5 -4
  56. package/build/components/block-edit/edit.js.map +1 -1
  57. package/build/components/block-edit/edit.native.js +3 -2
  58. package/build/components/block-edit/edit.native.js.map +1 -1
  59. package/build/components/block-edit/index.js +3 -2
  60. package/build/components/block-edit/index.js.map +1 -1
  61. package/build/components/block-edit-visually-button/index.js +2 -2
  62. package/build/components/block-edit-visually-button/index.js.map +1 -1
  63. package/build/components/block-full-height-alignment-control/index.js +2 -2
  64. package/build/components/block-full-height-alignment-control/index.js.map +1 -1
  65. package/build/components/block-heading-level-dropdown/heading-level-icon.js +4 -4
  66. package/build/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  67. package/build/components/block-heading-level-dropdown/index.js +6 -6
  68. package/build/components/block-heading-level-dropdown/index.js.map +1 -1
  69. package/build/components/block-heading-level-dropdown/index.native.js +6 -6
  70. package/build/components/block-heading-level-dropdown/index.native.js.map +1 -1
  71. package/build/components/block-icon/index.js +4 -3
  72. package/build/components/block-icon/index.js.map +1 -1
  73. package/build/components/block-icon/index.native.js +3 -3
  74. package/build/components/block-icon/index.native.js.map +1 -1
  75. package/build/components/block-info-slot-fill/index.js +3 -3
  76. package/build/components/block-info-slot-fill/index.js.map +1 -1
  77. package/build/components/block-inspector/index.js +34 -34
  78. package/build/components/block-inspector/index.js.map +1 -1
  79. package/build/components/block-list/block-crash-warning.js +2 -2
  80. package/build/components/block-list/block-crash-warning.js.map +1 -1
  81. package/build/components/block-list/block-html.js +3 -2
  82. package/build/components/block-list/block-html.js.map +1 -1
  83. package/build/components/block-list/block-invalid-warning.js +6 -5
  84. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  85. package/build/components/block-list/block-invalid-warning.native.js +3 -3
  86. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  87. package/build/components/block-list/block-list-item-cell.native.js +3 -2
  88. package/build/components/block-list/block-list-item-cell.native.js.map +1 -1
  89. package/build/components/block-list/block-list-item.native.js +10 -10
  90. package/build/components/block-list/block-list-item.native.js.map +1 -1
  91. package/build/components/block-list/block-outline.native.js +2 -2
  92. package/build/components/block-list/block-outline.native.js.map +1 -1
  93. package/build/components/block-list/block-selection-button.native.js +9 -9
  94. package/build/components/block-list/block-selection-button.native.js.map +1 -1
  95. package/build/components/block-list/block.js +16 -15
  96. package/build/components/block-list/block.js.map +1 -1
  97. package/build/components/block-list/block.native.js +10 -9
  98. package/build/components/block-list/block.native.js.map +1 -1
  99. package/build/components/block-list/grid-item.native.js +2 -2
  100. package/build/components/block-list/grid-item.native.js.map +1 -1
  101. package/build/components/block-list/index.js +14 -13
  102. package/build/components/block-list/index.js.map +1 -1
  103. package/build/components/block-list/index.native.js +21 -20
  104. package/build/components/block-list/index.native.js.map +1 -1
  105. package/build/components/block-list/insertion-point.native.js +5 -5
  106. package/build/components/block-list/insertion-point.native.js.map +1 -1
  107. package/build/components/block-list/layout.js +3 -2
  108. package/build/components/block-list/layout.js.map +1 -1
  109. package/build/components/block-list/subdirectory-icon.js +3 -3
  110. package/build/components/block-list/subdirectory-icon.js.map +1 -1
  111. package/build/components/block-list-appender/index.js +5 -5
  112. package/build/components/block-list-appender/index.js.map +1 -1
  113. package/build/components/block-list-appender/index.native.js +4 -4
  114. package/build/components/block-list-appender/index.native.js.map +1 -1
  115. package/build/components/block-lock/menu-item.js +4 -3
  116. package/build/components/block-lock/menu-item.js.map +1 -1
  117. package/build/components/block-lock/modal.js +21 -20
  118. package/build/components/block-lock/modal.js.map +1 -1
  119. package/build/components/block-lock/toolbar.js +5 -4
  120. package/build/components/block-lock/toolbar.js.map +1 -1
  121. package/build/components/block-media-update-progress/index.native.js +5 -4
  122. package/build/components/block-media-update-progress/index.native.js.map +1 -1
  123. package/build/components/block-mover/button.js +6 -5
  124. package/build/components/block-mover/button.js.map +1 -1
  125. package/build/components/block-mover/index.js +7 -7
  126. package/build/components/block-mover/index.js.map +1 -1
  127. package/build/components/block-mover/index.native.js +5 -4
  128. package/build/components/block-mover/index.native.js.map +1 -1
  129. package/build/components/block-navigation/dropdown.js +8 -7
  130. package/build/components/block-navigation/dropdown.js.map +1 -1
  131. package/build/components/block-parent-selector/index.js +6 -5
  132. package/build/components/block-parent-selector/index.js.map +1 -1
  133. package/build/components/block-pattern-setup/index.js +20 -19
  134. package/build/components/block-pattern-setup/index.js.map +1 -1
  135. package/build/components/block-pattern-setup/setup-toolbar.js +12 -12
  136. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  137. package/build/components/block-patterns-list/index.js +19 -18
  138. package/build/components/block-patterns-list/index.js.map +1 -1
  139. package/build/components/block-patterns-paging/index.js +12 -12
  140. package/build/components/block-patterns-paging/index.js.map +1 -1
  141. package/build/components/block-popover/drop-zone.js +3 -3
  142. package/build/components/block-popover/drop-zone.js.map +1 -1
  143. package/build/components/block-popover/inbetween.js +4 -3
  144. package/build/components/block-popover/inbetween.js.map +1 -1
  145. package/build/components/block-popover/index.js +4 -3
  146. package/build/components/block-popover/index.js.map +1 -1
  147. package/build/components/block-preview/auto.js +9 -8
  148. package/build/components/block-preview/auto.js.map +1 -1
  149. package/build/components/block-preview/index.js +7 -6
  150. package/build/components/block-preview/index.js.map +1 -1
  151. package/build/components/block-quick-navigation/index.js +7 -7
  152. package/build/components/block-quick-navigation/index.js.map +1 -1
  153. package/build/components/block-removal-warning-modal/index.js +7 -6
  154. package/build/components/block-removal-warning-modal/index.js.map +1 -1
  155. package/build/components/block-selection-clearer/index.js +2 -2
  156. package/build/components/block-selection-clearer/index.js.map +1 -1
  157. package/build/components/block-settings/button.native.js +3 -3
  158. package/build/components/block-settings/button.native.js.map +1 -1
  159. package/build/components/block-settings/container.native.js +12 -12
  160. package/build/components/block-settings/container.native.js.map +1 -1
  161. package/build/components/block-settings-menu/block-html-convert-button.js +21 -17
  162. package/build/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  163. package/build/components/block-settings-menu/block-mode-toggle.js +2 -2
  164. package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  165. package/build/components/block-settings-menu/block-settings-dropdown.js +17 -16
  166. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  167. package/build/components/block-settings-menu/index.js +2 -2
  168. package/build/components/block-settings-menu/index.js.map +1 -1
  169. package/build/components/block-settings-menu-controls/index.js +9 -9
  170. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  171. package/build/components/block-styles/index.js +9 -8
  172. package/build/components/block-styles/index.js.map +1 -1
  173. package/build/components/block-styles/index.native.js +4 -3
  174. package/build/components/block-styles/index.native.js.map +1 -1
  175. package/build/components/block-styles/menu-items.js +4 -4
  176. package/build/components/block-styles/menu-items.js.map +1 -1
  177. package/build/components/block-styles/preview-panel.js +3 -2
  178. package/build/components/block-styles/preview-panel.js.map +1 -1
  179. package/build/components/block-styles/preview.native.js +8 -7
  180. package/build/components/block-styles/preview.native.js.map +1 -1
  181. package/build/components/block-switcher/block-styles-menu.js +3 -3
  182. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  183. package/build/components/block-switcher/block-transformations-menu.js +11 -10
  184. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  185. package/build/components/block-switcher/block-transformations-menu.native.js +2 -2
  186. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  187. package/build/components/block-switcher/block-variation-transformations.js +6 -5
  188. package/build/components/block-switcher/block-variation-transformations.js.map +1 -1
  189. package/build/components/block-switcher/index.js +17 -17
  190. package/build/components/block-switcher/index.js.map +1 -1
  191. package/build/components/block-switcher/pattern-transformations-menu.js +18 -17
  192. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  193. package/build/components/block-switcher/preview-block-popover.js +7 -7
  194. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  195. package/build/components/block-toolbar/block-toolbar-menu.native.js +6 -5
  196. package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  197. package/build/components/block-toolbar/index.js +16 -15
  198. package/build/components/block-toolbar/index.js.map +1 -1
  199. package/build/components/block-toolbar/index.native.js +8 -7
  200. package/build/components/block-toolbar/index.native.js.map +1 -1
  201. package/build/components/block-tools/back-compat.js +3 -2
  202. package/build/components/block-tools/back-compat.js.map +1 -1
  203. package/build/components/block-tools/block-contextual-toolbar.js +6 -5
  204. package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
  205. package/build/components/block-tools/block-selection-button.js +11 -10
  206. package/build/components/block-tools/block-selection-button.js.map +1 -1
  207. package/build/components/block-tools/index.js +10 -9
  208. package/build/components/block-tools/index.js.map +1 -1
  209. package/build/components/block-tools/insertion-point.js +9 -8
  210. package/build/components/block-tools/insertion-point.js.map +1 -1
  211. package/build/components/block-tools/selected-block-popover.js +9 -8
  212. package/build/components/block-tools/selected-block-popover.js.map +1 -1
  213. package/build/components/block-tools/zoom-out-mode-inserters.js +5 -4
  214. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  215. package/build/components/block-types-list/index.js +4 -4
  216. package/build/components/block-types-list/index.js.map +1 -1
  217. package/build/components/block-types-list/index.native.js +11 -10
  218. package/build/components/block-types-list/index.native.js.map +1 -1
  219. package/build/components/block-variation-picker/index.js +8 -8
  220. package/build/components/block-variation-picker/index.js.map +1 -1
  221. package/build/components/block-variation-picker/index.native.js +8 -8
  222. package/build/components/block-variation-picker/index.native.js.map +1 -1
  223. package/build/components/block-variation-transforms/index.js +10 -9
  224. package/build/components/block-variation-transforms/index.js.map +1 -1
  225. package/build/components/block-vertical-alignment-control/icons.js +11 -11
  226. package/build/components/block-vertical-alignment-control/icons.js.map +1 -1
  227. package/build/components/block-vertical-alignment-control/index.js +3 -3
  228. package/build/components/block-vertical-alignment-control/index.js.map +1 -1
  229. package/build/components/block-vertical-alignment-control/ui.js +2 -2
  230. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  231. package/build/components/border-radius-control/all-input-control.js +2 -2
  232. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  233. package/build/components/border-radius-control/index.js +10 -9
  234. package/build/components/border-radius-control/index.js.map +1 -1
  235. package/build/components/border-radius-control/input-controls.js +5 -5
  236. package/build/components/border-radius-control/input-controls.js.map +1 -1
  237. package/build/components/border-radius-control/linked-button.js +3 -3
  238. package/build/components/border-radius-control/linked-button.js.map +1 -1
  239. package/build/components/button-block-appender/index.js +7 -6
  240. package/build/components/button-block-appender/index.js.map +1 -1
  241. package/build/components/button-block-appender/index.native.js +5 -5
  242. package/build/components/button-block-appender/index.native.js.map +1 -1
  243. package/build/components/caption/index.native.js +3 -3
  244. package/build/components/caption/index.native.js.map +1 -1
  245. package/build/components/child-layout-control/index.js +8 -7
  246. package/build/components/child-layout-control/index.js.map +1 -1
  247. package/build/components/color-palette/control.js +2 -2
  248. package/build/components/color-palette/control.js.map +1 -1
  249. package/build/components/color-palette/with-color-context.js +2 -2
  250. package/build/components/color-palette/with-color-context.js.map +1 -1
  251. package/build/components/color-style-selector/index.js +9 -9
  252. package/build/components/color-style-selector/index.js.map +1 -1
  253. package/build/components/colors/with-colors.js +5 -4
  254. package/build/components/colors/with-colors.js.map +1 -1
  255. package/build/components/colors-gradients/control.js +12 -12
  256. package/build/components/colors-gradients/control.js.map +1 -1
  257. package/build/components/colors-gradients/dropdown.js +13 -13
  258. package/build/components/colors-gradients/dropdown.js.map +1 -1
  259. package/build/components/colors-gradients/panel-color-gradient-settings.js +7 -7
  260. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  261. package/build/components/colors-gradients/panel-color-gradient-settings.native.js +5 -4
  262. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  263. package/build/components/contrast-checker/index.js +3 -3
  264. package/build/components/contrast-checker/index.js.map +1 -1
  265. package/build/components/contrast-checker/index.native.js +6 -5
  266. package/build/components/contrast-checker/index.native.js.map +1 -1
  267. package/build/components/convert-to-group-buttons/index.js +3 -3
  268. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  269. package/build/components/convert-to-group-buttons/toolbar.js +4 -4
  270. package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
  271. package/build/components/copy-handler/index.js +29 -209
  272. package/build/components/copy-handler/index.js.map +1 -1
  273. package/build/components/date-format-picker/index.js +9 -8
  274. package/build/components/date-format-picker/index.js.map +1 -1
  275. package/build/components/default-block-appender/index.js +4 -4
  276. package/build/components/default-block-appender/index.js.map +1 -1
  277. package/build/components/default-block-appender/index.native.js +4 -4
  278. package/build/components/default-block-appender/index.native.js.map +1 -1
  279. package/build/components/default-style-picker/index.js +4 -3
  280. package/build/components/default-style-picker/index.js.map +1 -1
  281. package/build/components/dimensions-tool/aspect-ratio-tool.js +3 -3
  282. package/build/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
  283. package/build/components/dimensions-tool/index.js +5 -4
  284. package/build/components/dimensions-tool/index.js.map +1 -1
  285. package/build/components/dimensions-tool/scale-tool.js +6 -5
  286. package/build/components/dimensions-tool/scale-tool.js.map +1 -1
  287. package/build/components/dimensions-tool/width-height-tool.js +7 -7
  288. package/build/components/dimensions-tool/width-height-tool.js.map +1 -1
  289. package/build/components/duotone-control/index.js +18 -10
  290. package/build/components/duotone-control/index.js.map +1 -1
  291. package/build/components/editable-text/index.js +3 -2
  292. package/build/components/editable-text/index.js.map +1 -1
  293. package/build/components/editor-styles/index.js +5 -4
  294. package/build/components/editor-styles/index.js.map +1 -1
  295. package/build/components/floating-toolbar/index.native.js +8 -7
  296. package/build/components/floating-toolbar/index.native.js.map +1 -1
  297. package/build/components/floating-toolbar/nav-up-icon.js +4 -4
  298. package/build/components/floating-toolbar/nav-up-icon.js.map +1 -1
  299. package/build/components/font-appearance-control/index.js +4 -3
  300. package/build/components/font-appearance-control/index.js.map +1 -1
  301. package/build/components/font-family/index.js +2 -2
  302. package/build/components/font-family/index.js.map +1 -1
  303. package/build/components/font-sizes/font-size-picker.js +2 -2
  304. package/build/components/font-sizes/font-size-picker.js.map +1 -1
  305. package/build/components/font-sizes/with-font-sizes.js +4 -3
  306. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  307. package/build/components/global-styles/advanced-panel.js +7 -6
  308. package/build/components/global-styles/advanced-panel.js.map +1 -1
  309. package/build/components/global-styles/border-panel.js +8 -7
  310. package/build/components/global-styles/border-panel.js.map +1 -1
  311. package/build/components/global-styles/color-panel.js +21 -20
  312. package/build/components/global-styles/color-panel.js.map +1 -1
  313. package/build/components/global-styles/color-panel.native.js +4 -3
  314. package/build/components/global-styles/color-panel.native.js.map +1 -1
  315. package/build/components/global-styles/dimensions-panel.js +27 -26
  316. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  317. package/build/components/global-styles/effects-panel.js +23 -22
  318. package/build/components/global-styles/effects-panel.js.map +1 -1
  319. package/build/components/global-styles/filters-panel.js +17 -16
  320. package/build/components/global-styles/filters-panel.js.map +1 -1
  321. package/build/components/global-styles/hooks.js +1 -1
  322. package/build/components/global-styles/hooks.js.map +1 -1
  323. package/build/components/global-styles/image-settings-panel.js +4 -4
  324. package/build/components/global-styles/image-settings-panel.js.map +1 -1
  325. package/build/components/global-styles/typography-panel.js +22 -21
  326. package/build/components/global-styles/typography-panel.js.map +1 -1
  327. package/build/components/global-styles/use-global-styles-output.js +17 -5
  328. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  329. package/build/components/global-styles/utils.js +22 -0
  330. package/build/components/global-styles/utils.js.map +1 -1
  331. package/build/components/gradients/with-gradient.js +2 -2
  332. package/build/components/gradients/with-gradient.js.map +1 -1
  333. package/build/components/height-control/index.js +9 -8
  334. package/build/components/height-control/index.js.map +1 -1
  335. package/build/components/iframe/index.js +6 -5
  336. package/build/components/iframe/index.js.map +1 -1
  337. package/build/components/image-editor/aspect-ratio-dropdown.js +7 -7
  338. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  339. package/build/components/image-editor/context.js +2 -1
  340. package/build/components/image-editor/context.js.map +1 -1
  341. package/build/components/image-editor/cropper.js +4 -4
  342. package/build/components/image-editor/cropper.js.map +1 -1
  343. package/build/components/image-editor/form-controls.js +3 -3
  344. package/build/components/image-editor/form-controls.js.map +1 -1
  345. package/build/components/image-editor/index.js +5 -5
  346. package/build/components/image-editor/index.js.map +1 -1
  347. package/build/components/image-editor/rotation-button.js +2 -2
  348. package/build/components/image-editor/rotation-button.js.map +1 -1
  349. package/build/components/image-editor/zoom-dropdown.js +4 -4
  350. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  351. package/build/components/image-size-control/index.js +9 -9
  352. package/build/components/image-size-control/index.js.map +1 -1
  353. package/build/components/index.js +1 -1
  354. package/build/components/index.js.map +1 -1
  355. package/build/components/inner-blocks/button-block-appender.js +2 -2
  356. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  357. package/build/components/inner-blocks/constants.native.js +13 -0
  358. package/build/components/inner-blocks/constants.native.js.map +1 -0
  359. package/build/components/inner-blocks/default-block-appender.js +2 -2
  360. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  361. package/build/components/inner-blocks/index.js +9 -8
  362. package/build/components/inner-blocks/index.js.map +1 -1
  363. package/build/components/inner-blocks/index.native.js +21 -8
  364. package/build/components/inner-blocks/index.native.js.map +1 -1
  365. package/build/components/inner-blocks/warning-max-depth-exceeded.native.js +95 -0
  366. package/build/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -0
  367. package/build/components/inner-blocks/with-client-id.js +2 -2
  368. package/build/components/inner-blocks/with-client-id.js.map +1 -1
  369. package/build/components/inserter/block-patterns-explorer/explorer.js +7 -6
  370. package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  371. package/build/components/inserter/block-patterns-explorer/patterns-list.js +6 -5
  372. package/build/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  373. package/build/components/inserter/block-patterns-explorer/sidebar.js +8 -8
  374. package/build/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  375. package/build/components/inserter/block-patterns-filter.js +21 -19
  376. package/build/components/inserter/block-patterns-filter.js.map +1 -1
  377. package/build/components/inserter/block-patterns-tab.js +19 -18
  378. package/build/components/inserter/block-patterns-tab.js.map +1 -1
  379. package/build/components/inserter/block-types-tab.js +10 -9
  380. package/build/components/inserter/block-types-tab.js.map +1 -1
  381. package/build/components/inserter/block-types-tab.native.js +2 -1
  382. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  383. package/build/components/inserter/index.js +9 -8
  384. package/build/components/inserter/index.js.map +1 -1
  385. package/build/components/inserter/index.native.js +11 -10
  386. package/build/components/inserter/index.native.js.map +1 -1
  387. package/build/components/inserter/library.js +3 -2
  388. package/build/components/inserter/library.js.map +1 -1
  389. package/build/components/inserter/media-tab/hooks.js +4 -33
  390. package/build/components/inserter/media-tab/hooks.js.map +1 -1
  391. package/build/components/inserter/media-tab/media-list.js +3 -3
  392. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  393. package/build/components/inserter/media-tab/media-panel.js +7 -6
  394. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  395. package/build/components/inserter/media-tab/media-preview.js +18 -17
  396. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  397. package/build/components/inserter/media-tab/media-tab.js +12 -11
  398. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  399. package/build/components/inserter/media-tab/utils.js +2 -2
  400. package/build/components/inserter/media-tab/utils.js.map +1 -1
  401. package/build/components/inserter/menu.js +19 -18
  402. package/build/components/inserter/menu.js.map +1 -1
  403. package/build/components/inserter/menu.native.js +9 -8
  404. package/build/components/inserter/menu.native.js.map +1 -1
  405. package/build/components/inserter/mobile-tab-navigation.js +12 -12
  406. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  407. package/build/components/inserter/no-results.js +4 -4
  408. package/build/components/inserter/no-results.js.map +1 -1
  409. package/build/components/inserter/no-results.native.js +4 -4
  410. package/build/components/inserter/no-results.native.js.map +1 -1
  411. package/build/components/inserter/panel.js +5 -5
  412. package/build/components/inserter/panel.js.map +1 -1
  413. package/build/components/inserter/preview-panel.js +8 -7
  414. package/build/components/inserter/preview-panel.js.map +1 -1
  415. package/build/components/inserter/quick-inserter.js +7 -6
  416. package/build/components/inserter/quick-inserter.js.map +1 -1
  417. package/build/components/inserter/reusable-block-rename-hint.js +5 -4
  418. package/build/components/inserter/reusable-block-rename-hint.js.map +1 -1
  419. package/build/components/inserter/reusable-blocks-tab.native.js +3 -2
  420. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  421. package/build/components/inserter/search-results.js +11 -10
  422. package/build/components/inserter/search-results.js.map +1 -1
  423. package/build/components/inserter/search-results.native.js +4 -3
  424. package/build/components/inserter/search-results.native.js.map +1 -1
  425. package/build/components/inserter/tabs.js +2 -1
  426. package/build/components/inserter/tabs.js.map +1 -1
  427. package/build/components/inserter/tabs.native.js +7 -6
  428. package/build/components/inserter/tabs.native.js.map +1 -1
  429. package/build/components/inserter/tips.js +6 -5
  430. package/build/components/inserter/tips.js.map +1 -1
  431. package/build/components/inserter-draggable-blocks/index.js +3 -3
  432. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  433. package/build/components/inserter-list-item/index.js +9 -8
  434. package/build/components/inserter-list-item/index.js.map +1 -1
  435. package/build/components/inserter-listbox/group.js +2 -1
  436. package/build/components/inserter-listbox/group.js.map +1 -1
  437. package/build/components/inserter-listbox/index.js +2 -2
  438. package/build/components/inserter-listbox/index.js.map +1 -1
  439. package/build/components/inserter-listbox/item.js +5 -4
  440. package/build/components/inserter-listbox/item.js.map +1 -1
  441. package/build/components/inserter-listbox/row.js +2 -1
  442. package/build/components/inserter-listbox/row.js.map +1 -1
  443. package/build/components/inspector-controls/block-support-slot-container.js +3 -2
  444. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  445. package/build/components/inspector-controls/block-support-tools-panel.js +3 -2
  446. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  447. package/build/components/inspector-controls/fill.js +7 -6
  448. package/build/components/inspector-controls/fill.js.map +1 -1
  449. package/build/components/inspector-controls/fill.native.js +4 -3
  450. package/build/components/inspector-controls/fill.native.js.map +1 -1
  451. package/build/components/inspector-controls/index.js +3 -3
  452. package/build/components/inspector-controls/index.js.map +1 -1
  453. package/build/components/inspector-controls/slot.js +5 -4
  454. package/build/components/inspector-controls/slot.js.map +1 -1
  455. package/build/components/inspector-controls/slot.native.js +2 -2
  456. package/build/components/inspector-controls/slot.native.js.map +1 -1
  457. package/build/components/inspector-controls-tabs/advanced-controls-panel.js +3 -3
  458. package/build/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  459. package/build/components/inspector-controls-tabs/index.js +5 -5
  460. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  461. package/build/components/inspector-controls-tabs/position-controls-panel.js +5 -4
  462. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  463. package/build/components/inspector-controls-tabs/settings-tab-hint.js +5 -4
  464. package/build/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  465. package/build/components/inspector-controls-tabs/settings-tab.js +2 -2
  466. package/build/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  467. package/build/components/inspector-controls-tabs/styles-tab.js +11 -11
  468. package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  469. package/build/components/inspector-popover-header/index.js +8 -8
  470. package/build/components/inspector-popover-header/index.js.map +1 -1
  471. package/build/components/justify-content-control/index.js +3 -3
  472. package/build/components/justify-content-control/index.js.map +1 -1
  473. package/build/components/justify-content-control/ui.js +2 -2
  474. package/build/components/justify-content-control/ui.js.map +1 -1
  475. package/build/components/letter-spacing-control/index.js +3 -3
  476. package/build/components/letter-spacing-control/index.js.map +1 -1
  477. package/build/components/line-height-control/index.js +3 -3
  478. package/build/components/line-height-control/index.js.map +1 -1
  479. package/build/components/line-height-control/index.native.js +2 -2
  480. package/build/components/line-height-control/index.native.js.map +1 -1
  481. package/build/components/link-control/index.js +18 -17
  482. package/build/components/link-control/index.js.map +1 -1
  483. package/build/components/link-control/link-preview.js +20 -20
  484. package/build/components/link-control/link-preview.js.map +1 -1
  485. package/build/components/link-control/search-create-button.js +4 -3
  486. package/build/components/link-control/search-create-button.js.map +1 -1
  487. package/build/components/link-control/search-input.js +5 -4
  488. package/build/components/link-control/search-input.js.map +1 -1
  489. package/build/components/link-control/search-item.js +41 -6
  490. package/build/components/link-control/search-item.js.map +1 -1
  491. package/build/components/link-control/search-results.js +7 -7
  492. package/build/components/link-control/search-results.js.map +1 -1
  493. package/build/components/link-control/settings-drawer.js +5 -4
  494. package/build/components/link-control/settings-drawer.js.map +1 -1
  495. package/build/components/link-control/settings.js +4 -4
  496. package/build/components/link-control/settings.js.map +1 -1
  497. package/build/components/list-view/appender.js +5 -4
  498. package/build/components/list-view/appender.js.map +1 -1
  499. package/build/components/list-view/aria-referenced-text.js +2 -1
  500. package/build/components/list-view/aria-referenced-text.js.map +1 -1
  501. package/build/components/list-view/block-contents.js +5 -4
  502. package/build/components/list-view/block-contents.js.map +1 -1
  503. package/build/components/list-view/block-select-button.js +16 -15
  504. package/build/components/list-view/block-select-button.js.map +1 -1
  505. package/build/components/list-view/block.js +15 -45
  506. package/build/components/list-view/block.js.map +1 -1
  507. package/build/components/list-view/branch.js +17 -9
  508. package/build/components/list-view/branch.js.map +1 -1
  509. package/build/components/list-view/drop-indicator.js +4 -3
  510. package/build/components/list-view/drop-indicator.js.map +1 -1
  511. package/build/components/list-view/expander.js +3 -3
  512. package/build/components/list-view/expander.js.map +1 -1
  513. package/build/components/list-view/index.js +16 -10
  514. package/build/components/list-view/index.js.map +1 -1
  515. package/build/components/list-view/leaf.js +3 -2
  516. package/build/components/list-view/leaf.js.map +1 -1
  517. package/build/components/list-view/utils.js +35 -0
  518. package/build/components/list-view/utils.js.map +1 -1
  519. package/build/components/media-placeholder/index.js +22 -21
  520. package/build/components/media-placeholder/index.js.map +1 -1
  521. package/build/components/media-placeholder/index.native.js +13 -12
  522. package/build/components/media-placeholder/index.native.js.map +1 -1
  523. package/build/components/media-replace-flow/index.js +14 -13
  524. package/build/components/media-replace-flow/index.js.map +1 -1
  525. package/build/components/media-replace-flow/index.native.js +2 -2
  526. package/build/components/media-replace-flow/index.native.js.map +1 -1
  527. package/build/components/media-upload/{constants.js → constants.native.js} +2 -4
  528. package/build/components/media-upload/constants.native.js.map +1 -0
  529. package/build/components/media-upload/index.js +1 -1
  530. package/build/components/media-upload/index.js.map +1 -1
  531. package/build/components/media-upload/index.native.js +12 -11
  532. package/build/components/media-upload/index.native.js.map +1 -1
  533. package/build/components/media-upload-progress/index.native.js +5 -4
  534. package/build/components/media-upload-progress/index.native.js.map +1 -1
  535. package/build/components/multi-selection-inspector/index.js +6 -6
  536. package/build/components/multi-selection-inspector/index.js.map +1 -1
  537. package/build/components/navigable-toolbar/index.js +4 -3
  538. package/build/components/navigable-toolbar/index.js.map +1 -1
  539. package/build/components/observe-typing/index.js +2 -2
  540. package/build/components/observe-typing/index.js.map +1 -1
  541. package/build/components/panel-color-settings/index.js +2 -2
  542. package/build/components/panel-color-settings/index.js.map +1 -1
  543. package/build/components/plain-text/index.js +4 -3
  544. package/build/components/plain-text/index.js.map +1 -1
  545. package/build/components/plain-text/index.native.js +4 -3
  546. package/build/components/plain-text/index.native.js.map +1 -1
  547. package/build/components/preview-options/index.js +5 -5
  548. package/build/components/preview-options/index.js.map +1 -1
  549. package/build/components/provider/block-refs-provider.js +2 -1
  550. package/build/components/provider/block-refs-provider.js.map +1 -1
  551. package/build/components/provider/index.js +4 -3
  552. package/build/components/provider/index.js.map +1 -1
  553. package/build/components/provider/index.native.js +3 -2
  554. package/build/components/provider/index.native.js.map +1 -1
  555. package/build/components/provider/use-block-sync.js +1 -1
  556. package/build/components/provider/use-block-sync.js.map +1 -1
  557. package/build/components/provider/with-registry-provider.js +4 -3
  558. package/build/components/provider/with-registry-provider.js.map +1 -1
  559. package/build/components/publish-date-time-picker/index.js +5 -4
  560. package/build/components/publish-date-time-picker/index.js.map +1 -1
  561. package/build/components/recursion-provider/index.js +2 -1
  562. package/build/components/recursion-provider/index.js.map +1 -1
  563. package/build/components/resizable-box-popover/index.js +3 -3
  564. package/build/components/resizable-box-popover/index.js.map +1 -1
  565. package/build/components/resolution-tool/index.js +3 -3
  566. package/build/components/resolution-tool/index.js.map +1 -1
  567. package/build/components/responsive-block-control/index.js +10 -9
  568. package/build/components/responsive-block-control/index.js.map +1 -1
  569. package/build/components/responsive-block-control/label.js +3 -3
  570. package/build/components/responsive-block-control/label.js.map +1 -1
  571. package/build/components/rich-text/content.js +3 -2
  572. package/build/components/rich-text/content.js.map +1 -1
  573. package/build/components/rich-text/embed-handler-picker.native.js +2 -1
  574. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  575. package/build/components/rich-text/format-edit.js +4 -3
  576. package/build/components/rich-text/format-edit.js.map +1 -1
  577. package/build/components/rich-text/format-toolbar/index.js +4 -4
  578. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  579. package/build/components/rich-text/format-toolbar/index.native.js +3 -3
  580. package/build/components/rich-text/format-toolbar/index.native.js.map +1 -1
  581. package/build/components/rich-text/format-toolbar-container.js +9 -9
  582. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  583. package/build/components/rich-text/format-toolbar-container.native.js +3 -3
  584. package/build/components/rich-text/format-toolbar-container.native.js.map +1 -1
  585. package/build/components/rich-text/get-rich-text-values.js +2 -1
  586. package/build/components/rich-text/get-rich-text-values.js.map +1 -1
  587. package/build/components/rich-text/index.js +9 -8
  588. package/build/components/rich-text/index.js.map +1 -1
  589. package/build/components/rich-text/index.native.js +8 -15
  590. package/build/components/rich-text/index.native.js.map +1 -1
  591. package/build/components/rich-text/multiline.js +3 -2
  592. package/build/components/rich-text/multiline.js.map +1 -1
  593. package/build/components/rich-text/toolbar-button.js +3 -3
  594. package/build/components/rich-text/toolbar-button.js.map +1 -1
  595. package/build/components/rich-text/use-paste-handler.js +5 -87
  596. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  597. package/build/components/rich-text/utils.js +2 -5
  598. package/build/components/rich-text/utils.js.map +1 -1
  599. package/build/components/skip-to-selected-block/index.js +2 -2
  600. package/build/components/skip-to-selected-block/index.js.map +1 -1
  601. package/build/components/spacing-sizes-control/index.js +9 -8
  602. package/build/components/spacing-sizes-control/index.js.map +1 -1
  603. package/build/components/spacing-sizes-control/input-controls/axial.js +3 -3
  604. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  605. package/build/components/spacing-sizes-control/input-controls/separated.js +3 -3
  606. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  607. package/build/components/spacing-sizes-control/input-controls/single.js +2 -2
  608. package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  609. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +9 -8
  610. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  611. package/build/components/spacing-sizes-control/sides-dropdown/index.js +6 -6
  612. package/build/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  613. package/build/components/text-decoration-control/index.js +6 -6
  614. package/build/components/text-decoration-control/index.js.map +1 -1
  615. package/build/components/text-transform-control/index.js +6 -6
  616. package/build/components/text-transform-control/index.js.map +1 -1
  617. package/build/components/tool-selector/index.js +13 -11
  618. package/build/components/tool-selector/index.js.map +1 -1
  619. package/build/components/typewriter/index.js +3 -3
  620. package/build/components/typewriter/index.js.map +1 -1
  621. package/build/components/ungroup-button/index.native.js +2 -2
  622. package/build/components/ungroup-button/index.native.js.map +1 -1
  623. package/build/components/unit-control/index.js +2 -2
  624. package/build/components/unit-control/index.js.map +1 -1
  625. package/build/components/unsupported-block-details/index.native.js +127 -0
  626. package/build/components/unsupported-block-details/index.native.js.map +1 -0
  627. package/build/components/url-input/button.js +9 -8
  628. package/build/components/url-input/button.js.map +1 -1
  629. package/build/components/url-input/index.js +9 -8
  630. package/build/components/url-input/index.js.map +1 -1
  631. package/build/components/url-input/index.native.js +2 -2
  632. package/build/components/url-input/index.native.js.map +1 -1
  633. package/build/components/url-popover/image-url-input-ui.js +19 -18
  634. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  635. package/build/components/url-popover/index.js +8 -7
  636. package/build/components/url-popover/index.js.map +1 -1
  637. package/build/components/url-popover/link-editor.js +4 -4
  638. package/build/components/url-popover/link-editor.js.map +1 -1
  639. package/build/components/url-popover/link-viewer-url.js +3 -3
  640. package/build/components/url-popover/link-viewer-url.js.map +1 -1
  641. package/build/components/url-popover/link-viewer.js +4 -4
  642. package/build/components/url-popover/link-viewer.js.map +1 -1
  643. package/build/components/use-on-block-drop/index.js +2 -2
  644. package/build/components/use-on-block-drop/index.js.map +1 -1
  645. package/build/components/use-unsupported-block-editor/index.native.js +57 -0
  646. package/build/components/use-unsupported-block-editor/index.native.js.map +1 -0
  647. package/build/components/video-player/gridicon-play.native.js +3 -3
  648. package/build/components/video-player/gridicon-play.native.js.map +1 -1
  649. package/build/components/video-player/index.native.js +6 -5
  650. package/build/components/video-player/index.native.js.map +1 -1
  651. package/build/components/warning/index.js +10 -9
  652. package/build/components/warning/index.js.map +1 -1
  653. package/build/components/warning/index.native.js +6 -6
  654. package/build/components/warning/index.native.js.map +1 -1
  655. package/build/components/writing-flow/index.js +7 -5
  656. package/build/components/writing-flow/index.js.map +1 -1
  657. package/build/components/writing-flow/use-clipboard-handler.js +179 -0
  658. package/build/components/writing-flow/use-clipboard-handler.js.map +1 -0
  659. package/build/components/writing-flow/use-tab-nav.js +4 -3
  660. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  661. package/build/components/writing-mode-control/index.js +6 -6
  662. package/build/components/writing-mode-control/index.js.map +1 -1
  663. package/build/hooks/align.js +6 -6
  664. package/build/hooks/align.js.map +1 -1
  665. package/build/hooks/anchor.js +10 -9
  666. package/build/hooks/anchor.js.map +1 -1
  667. package/build/hooks/background.js +17 -16
  668. package/build/hooks/background.js.map +1 -1
  669. package/build/hooks/block-hooks.js +11 -10
  670. package/build/hooks/block-hooks.js.map +1 -1
  671. package/build/hooks/block-rename-ui.js +22 -18
  672. package/build/hooks/block-rename-ui.js.map +1 -1
  673. package/build/hooks/border.js +6 -5
  674. package/build/hooks/border.js.map +1 -1
  675. package/build/hooks/color.js +7 -6
  676. package/build/hooks/color.js.map +1 -1
  677. package/build/hooks/content-lock-ui.js +9 -8
  678. package/build/hooks/content-lock-ui.js.map +1 -1
  679. package/build/hooks/contrast-checker.js +2 -1
  680. package/build/hooks/contrast-checker.js.map +1 -1
  681. package/build/hooks/custom-class-name.js +7 -7
  682. package/build/hooks/custom-class-name.js.map +1 -1
  683. package/build/hooks/custom-fields.js +8 -8
  684. package/build/hooks/custom-fields.js.map +1 -1
  685. package/build/hooks/dimensions.js +5 -4
  686. package/build/hooks/dimensions.js.map +1 -1
  687. package/build/hooks/duotone.js +10 -9
  688. package/build/hooks/duotone.js.map +1 -1
  689. package/build/hooks/font-size.js +5 -5
  690. package/build/hooks/font-size.js.map +1 -1
  691. package/build/hooks/layout.js +14 -13
  692. package/build/hooks/layout.js.map +1 -1
  693. package/build/hooks/line-height.js +3 -3
  694. package/build/hooks/line-height.js.map +1 -1
  695. package/build/hooks/margin.js +3 -2
  696. package/build/hooks/margin.js.map +1 -1
  697. package/build/hooks/padding.js +3 -2
  698. package/build/hooks/padding.js.map +1 -1
  699. package/build/hooks/position.js +10 -9
  700. package/build/hooks/position.js.map +1 -1
  701. package/build/hooks/style.js +11 -10
  702. package/build/hooks/style.js.map +1 -1
  703. package/build/hooks/typography.js +4 -3
  704. package/build/hooks/typography.js.map +1 -1
  705. package/build/hooks/typography.native.js +4 -4
  706. package/build/hooks/typography.native.js.map +1 -1
  707. package/build/layouts/constrained.js +11 -11
  708. package/build/layouts/constrained.js.map +1 -1
  709. package/build/layouts/flex.js +18 -18
  710. package/build/layouts/flex.js.map +1 -1
  711. package/build/layouts/grid.js +10 -10
  712. package/build/layouts/grid.js.map +1 -1
  713. package/build/private-apis.js +2 -0
  714. package/build/private-apis.js.map +1 -1
  715. package/build/store/actions.js +8 -12
  716. package/build/store/actions.js.map +1 -1
  717. package/build/store/private-selectors.js +55 -1
  718. package/build/store/private-selectors.js.map +1 -1
  719. package/build/store/reducer.js +19 -1
  720. package/build/store/reducer.js.map +1 -1
  721. package/build/store/selectors.js +1 -1
  722. package/build/store/selectors.js.map +1 -1
  723. package/build/utils/pasting.js +46 -0
  724. package/build/utils/pasting.js.map +1 -1
  725. package/build/utils/transform-styles/transforms/wrap.js +5 -0
  726. package/build/utils/transform-styles/transforms/wrap.js.map +1 -1
  727. package/build/utils/use-notify-copy.js +53 -0
  728. package/build/utils/use-notify-copy.js.map +1 -0
  729. package/build-module/autocompleters/block.js +1 -1
  730. package/build-module/autocompleters/link.js +1 -1
  731. package/build-module/components/alignment-control/index.js +1 -1
  732. package/build-module/components/alignment-control/ui.js +1 -1
  733. package/build-module/components/autocomplete/index.js +1 -1
  734. package/build-module/components/block-actions/index.js +1 -1
  735. package/build-module/components/block-actions/index.js.map +1 -1
  736. package/build-module/components/block-alignment-control/index.js +1 -1
  737. package/build-module/components/block-alignment-control/ui.js +1 -1
  738. package/build-module/components/block-alignment-control/ui.native.js +1 -1
  739. package/build-module/components/block-alignment-matrix-control/index.js +1 -1
  740. package/build-module/components/block-breadcrumb/index.js +2 -2
  741. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  742. package/build-module/components/block-canvas/index.js +7 -9
  743. package/build-module/components/block-canvas/index.js.map +1 -1
  744. package/build-module/components/block-caption/index.native.js +1 -1
  745. package/build-module/components/block-card/index.js +1 -1
  746. package/build-module/components/block-compare/block-view.js +1 -1
  747. package/build-module/components/block-compare/index.js +1 -1
  748. package/build-module/components/block-context/index.js +1 -1
  749. package/build-module/components/block-controls/fill.js +1 -1
  750. package/build-module/components/block-controls/index.js +1 -1
  751. package/build-module/components/block-controls/slot.js +1 -1
  752. package/build-module/components/block-controls/slot.native.js +1 -1
  753. package/build-module/components/block-draggable/draggable-chip.js +1 -1
  754. package/build-module/components/block-draggable/draggable-chip.native.js +1 -1
  755. package/build-module/components/block-draggable/dropping-insertion-point.native.js +1 -1
  756. package/build-module/components/block-draggable/index.js +1 -1
  757. package/build-module/components/block-draggable/index.native.js +1 -1
  758. package/build-module/components/block-edit/edit.js +1 -1
  759. package/build-module/components/block-edit/edit.native.js +1 -1
  760. package/build-module/components/block-edit/index.js +1 -1
  761. package/build-module/components/block-edit-visually-button/index.js +1 -1
  762. package/build-module/components/block-full-height-alignment-control/index.js +1 -1
  763. package/build-module/components/block-heading-level-dropdown/heading-level-icon.js +3 -3
  764. package/build-module/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  765. package/build-module/components/block-heading-level-dropdown/index.js +3 -3
  766. package/build-module/components/block-heading-level-dropdown/index.js.map +1 -1
  767. package/build-module/components/block-heading-level-dropdown/index.native.js +3 -3
  768. package/build-module/components/block-heading-level-dropdown/index.native.js.map +1 -1
  769. package/build-module/components/block-icon/index.js +1 -1
  770. package/build-module/components/block-icon/index.native.js +1 -1
  771. package/build-module/components/block-info-slot-fill/index.js +1 -1
  772. package/build-module/components/block-inspector/index.js +1 -1
  773. package/build-module/components/block-list/block-crash-warning.js +1 -1
  774. package/build-module/components/block-list/block-html.js +1 -1
  775. package/build-module/components/block-list/block-invalid-warning.js +1 -1
  776. package/build-module/components/block-list/block-invalid-warning.native.js +1 -1
  777. package/build-module/components/block-list/block-list-item-cell.native.js +1 -1
  778. package/build-module/components/block-list/block-list-item.native.js +3 -3
  779. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  780. package/build-module/components/block-list/block-outline.native.js +1 -1
  781. package/build-module/components/block-list/block-selection-button.native.js +1 -1
  782. package/build-module/components/block-list/block.js +1 -1
  783. package/build-module/components/block-list/block.native.js +1 -1
  784. package/build-module/components/block-list/grid-item.native.js +1 -1
  785. package/build-module/components/block-list/index.js +1 -1
  786. package/build-module/components/block-list/index.native.js +1 -1
  787. package/build-module/components/block-list/insertion-point.native.js +1 -1
  788. package/build-module/components/block-list/layout.js +1 -1
  789. package/build-module/components/block-list/subdirectory-icon.js +1 -1
  790. package/build-module/components/block-list-appender/index.js +1 -1
  791. package/build-module/components/block-list-appender/index.native.js +1 -1
  792. package/build-module/components/block-lock/menu-item.js +1 -1
  793. package/build-module/components/block-lock/modal.js +1 -1
  794. package/build-module/components/block-lock/toolbar.js +1 -1
  795. package/build-module/components/block-media-update-progress/index.native.js +1 -1
  796. package/build-module/components/block-mover/button.js +1 -1
  797. package/build-module/components/block-mover/index.js +1 -1
  798. package/build-module/components/block-mover/index.native.js +1 -1
  799. package/build-module/components/block-navigation/dropdown.js +1 -1
  800. package/build-module/components/block-parent-selector/index.js +2 -2
  801. package/build-module/components/block-parent-selector/index.js.map +1 -1
  802. package/build-module/components/block-pattern-setup/index.js +1 -1
  803. package/build-module/components/block-pattern-setup/setup-toolbar.js +1 -1
  804. package/build-module/components/block-patterns-list/index.js +1 -1
  805. package/build-module/components/block-patterns-paging/index.js +1 -1
  806. package/build-module/components/block-popover/drop-zone.js +1 -1
  807. package/build-module/components/block-popover/inbetween.js +1 -1
  808. package/build-module/components/block-popover/index.js +1 -1
  809. package/build-module/components/block-preview/auto.js +1 -1
  810. package/build-module/components/block-preview/index.js +2 -2
  811. package/build-module/components/block-preview/index.js.map +1 -1
  812. package/build-module/components/block-quick-navigation/index.js +1 -1
  813. package/build-module/components/block-removal-warning-modal/index.js +1 -1
  814. package/build-module/components/block-selection-clearer/index.js +1 -1
  815. package/build-module/components/block-settings/button.native.js +1 -1
  816. package/build-module/components/block-settings/container.native.js +1 -1
  817. package/build-module/components/block-settings-menu/block-html-convert-button.js +20 -17
  818. package/build-module/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  819. package/build-module/components/block-settings-menu/block-mode-toggle.js +1 -1
  820. package/build-module/components/block-settings-menu/block-settings-dropdown.js +1 -1
  821. package/build-module/components/block-settings-menu/index.js +1 -1
  822. package/build-module/components/block-settings-menu-controls/index.js +2 -2
  823. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  824. package/build-module/components/block-styles/index.js +1 -1
  825. package/build-module/components/block-styles/index.native.js +1 -1
  826. package/build-module/components/block-styles/menu-items.js +1 -1
  827. package/build-module/components/block-styles/preview-panel.js +1 -1
  828. package/build-module/components/block-styles/preview.native.js +1 -1
  829. package/build-module/components/block-switcher/block-styles-menu.js +1 -1
  830. package/build-module/components/block-switcher/block-transformations-menu.js +1 -1
  831. package/build-module/components/block-switcher/block-transformations-menu.native.js +1 -1
  832. package/build-module/components/block-switcher/block-variation-transformations.js +1 -1
  833. package/build-module/components/block-switcher/index.js +6 -6
  834. package/build-module/components/block-switcher/index.js.map +1 -1
  835. package/build-module/components/block-switcher/pattern-transformations-menu.js +1 -1
  836. package/build-module/components/block-switcher/preview-block-popover.js +1 -1
  837. package/build-module/components/block-toolbar/block-toolbar-menu.native.js +1 -1
  838. package/build-module/components/block-toolbar/index.js +1 -1
  839. package/build-module/components/block-toolbar/index.native.js +1 -1
  840. package/build-module/components/block-tools/back-compat.js +1 -1
  841. package/build-module/components/block-tools/block-contextual-toolbar.js +1 -1
  842. package/build-module/components/block-tools/block-selection-button.js +2 -2
  843. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  844. package/build-module/components/block-tools/index.js +1 -1
  845. package/build-module/components/block-tools/insertion-point.js +1 -1
  846. package/build-module/components/block-tools/selected-block-popover.js +1 -1
  847. package/build-module/components/block-tools/zoom-out-mode-inserters.js +1 -1
  848. package/build-module/components/block-types-list/index.js +1 -1
  849. package/build-module/components/block-types-list/index.native.js +1 -1
  850. package/build-module/components/block-variation-picker/index.js +1 -1
  851. package/build-module/components/block-variation-picker/index.native.js +1 -1
  852. package/build-module/components/block-variation-transforms/index.js +1 -1
  853. package/build-module/components/block-vertical-alignment-control/icons.js +1 -1
  854. package/build-module/components/block-vertical-alignment-control/index.js +1 -1
  855. package/build-module/components/block-vertical-alignment-control/ui.js +1 -1
  856. package/build-module/components/border-radius-control/all-input-control.js +1 -1
  857. package/build-module/components/border-radius-control/index.js +2 -2
  858. package/build-module/components/border-radius-control/index.js.map +1 -1
  859. package/build-module/components/border-radius-control/input-controls.js +1 -1
  860. package/build-module/components/border-radius-control/linked-button.js +1 -1
  861. package/build-module/components/button-block-appender/index.js +1 -1
  862. package/build-module/components/button-block-appender/index.native.js +1 -1
  863. package/build-module/components/caption/index.native.js +1 -1
  864. package/build-module/components/child-layout-control/index.js +2 -2
  865. package/build-module/components/child-layout-control/index.js.map +1 -1
  866. package/build-module/components/color-palette/control.js +1 -1
  867. package/build-module/components/color-palette/with-color-context.js +1 -1
  868. package/build-module/components/color-style-selector/index.js +1 -1
  869. package/build-module/components/colors/with-colors.js +2 -2
  870. package/build-module/components/colors/with-colors.js.map +1 -1
  871. package/build-module/components/colors-gradients/control.js +1 -1
  872. package/build-module/components/colors-gradients/dropdown.js +1 -1
  873. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +1 -1
  874. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +1 -1
  875. package/build-module/components/contrast-checker/index.js +1 -1
  876. package/build-module/components/contrast-checker/index.native.js +1 -1
  877. package/build-module/components/convert-to-group-buttons/index.js +1 -1
  878. package/build-module/components/convert-to-group-buttons/toolbar.js +1 -1
  879. package/build-module/components/copy-handler/index.js +25 -205
  880. package/build-module/components/copy-handler/index.js.map +1 -1
  881. package/build-module/components/date-format-picker/index.js +1 -1
  882. package/build-module/components/default-block-appender/index.js +1 -1
  883. package/build-module/components/default-block-appender/index.native.js +1 -1
  884. package/build-module/components/default-style-picker/index.js +1 -1
  885. package/build-module/components/dimensions-tool/aspect-ratio-tool.js +1 -1
  886. package/build-module/components/dimensions-tool/index.js +2 -2
  887. package/build-module/components/dimensions-tool/index.js.map +1 -1
  888. package/build-module/components/dimensions-tool/scale-tool.js +2 -2
  889. package/build-module/components/dimensions-tool/scale-tool.js.map +1 -1
  890. package/build-module/components/dimensions-tool/width-height-tool.js +3 -3
  891. package/build-module/components/dimensions-tool/width-height-tool.js.map +1 -1
  892. package/build-module/components/duotone-control/index.js +10 -2
  893. package/build-module/components/duotone-control/index.js.map +1 -1
  894. package/build-module/components/editable-text/index.js +1 -1
  895. package/build-module/components/editor-styles/index.js +1 -1
  896. package/build-module/components/floating-toolbar/index.native.js +1 -1
  897. package/build-module/components/floating-toolbar/nav-up-icon.js +1 -1
  898. package/build-module/components/font-appearance-control/index.js +2 -2
  899. package/build-module/components/font-appearance-control/index.js.map +1 -1
  900. package/build-module/components/font-family/index.js +1 -1
  901. package/build-module/components/font-sizes/font-size-picker.js +1 -1
  902. package/build-module/components/font-sizes/with-font-sizes.js +1 -1
  903. package/build-module/components/global-styles/advanced-panel.js +1 -1
  904. package/build-module/components/global-styles/border-panel.js +1 -1
  905. package/build-module/components/global-styles/color-panel.js +1 -1
  906. package/build-module/components/global-styles/color-panel.native.js +1 -1
  907. package/build-module/components/global-styles/dimensions-panel.js +1 -1
  908. package/build-module/components/global-styles/effects-panel.js +1 -1
  909. package/build-module/components/global-styles/filters-panel.js +1 -1
  910. package/build-module/components/global-styles/hooks.js +1 -1
  911. package/build-module/components/global-styles/hooks.js.map +1 -1
  912. package/build-module/components/global-styles/image-settings-panel.js +1 -1
  913. package/build-module/components/global-styles/typography-panel.js +1 -1
  914. package/build-module/components/global-styles/use-global-styles-output.js +17 -6
  915. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  916. package/build-module/components/global-styles/utils.js +21 -0
  917. package/build-module/components/global-styles/utils.js.map +1 -1
  918. package/build-module/components/gradients/with-gradient.js +1 -1
  919. package/build-module/components/height-control/index.js +2 -2
  920. package/build-module/components/height-control/index.js.map +1 -1
  921. package/build-module/components/iframe/index.js +1 -1
  922. package/build-module/components/image-editor/aspect-ratio-dropdown.js +1 -1
  923. package/build-module/components/image-editor/context.js +1 -1
  924. package/build-module/components/image-editor/cropper.js +1 -1
  925. package/build-module/components/image-editor/form-controls.js +1 -1
  926. package/build-module/components/image-editor/index.js +1 -1
  927. package/build-module/components/image-editor/rotation-button.js +1 -1
  928. package/build-module/components/image-editor/zoom-dropdown.js +1 -1
  929. package/build-module/components/image-size-control/index.js +1 -1
  930. package/build-module/components/index.js +1 -1
  931. package/build-module/components/index.js.map +1 -1
  932. package/build-module/components/inner-blocks/button-block-appender.js +1 -1
  933. package/build-module/components/inner-blocks/constants.native.js +6 -0
  934. package/build-module/components/inner-blocks/constants.native.js.map +1 -0
  935. package/build-module/components/inner-blocks/default-block-appender.js +1 -1
  936. package/build-module/components/inner-blocks/index.js +1 -1
  937. package/build-module/components/inner-blocks/index.native.js +13 -1
  938. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  939. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js +86 -0
  940. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -0
  941. package/build-module/components/inner-blocks/with-client-id.js +1 -1
  942. package/build-module/components/inserter/block-patterns-explorer/explorer.js +1 -1
  943. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js +1 -1
  944. package/build-module/components/inserter/block-patterns-explorer/sidebar.js +1 -1
  945. package/build-module/components/inserter/block-patterns-filter.js +14 -13
  946. package/build-module/components/inserter/block-patterns-filter.js.map +1 -1
  947. package/build-module/components/inserter/block-patterns-tab.js +2 -2
  948. package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
  949. package/build-module/components/inserter/block-types-tab.js +1 -1
  950. package/build-module/components/inserter/block-types-tab.native.js +1 -1
  951. package/build-module/components/inserter/index.js +3 -3
  952. package/build-module/components/inserter/index.js.map +1 -1
  953. package/build-module/components/inserter/index.native.js +3 -3
  954. package/build-module/components/inserter/index.native.js.map +1 -1
  955. package/build-module/components/inserter/library.js +1 -1
  956. package/build-module/components/inserter/media-tab/hooks.js +5 -34
  957. package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
  958. package/build-module/components/inserter/media-tab/media-list.js +1 -1
  959. package/build-module/components/inserter/media-tab/media-panel.js +1 -1
  960. package/build-module/components/inserter/media-tab/media-preview.js +1 -1
  961. package/build-module/components/inserter/media-tab/media-tab.js +1 -1
  962. package/build-module/components/inserter/media-tab/utils.js +1 -1
  963. package/build-module/components/inserter/menu.js +1 -1
  964. package/build-module/components/inserter/menu.native.js +1 -1
  965. package/build-module/components/inserter/mobile-tab-navigation.js +1 -1
  966. package/build-module/components/inserter/no-results.js +1 -1
  967. package/build-module/components/inserter/no-results.native.js +1 -1
  968. package/build-module/components/inserter/panel.js +1 -1
  969. package/build-module/components/inserter/preview-panel.js +1 -1
  970. package/build-module/components/inserter/quick-inserter.js +1 -1
  971. package/build-module/components/inserter/reusable-block-rename-hint.js +1 -1
  972. package/build-module/components/inserter/reusable-blocks-tab.native.js +1 -1
  973. package/build-module/components/inserter/search-results.js +1 -1
  974. package/build-module/components/inserter/search-results.native.js +1 -1
  975. package/build-module/components/inserter/tabs.js +1 -1
  976. package/build-module/components/inserter/tabs.native.js +1 -1
  977. package/build-module/components/inserter/tips.js +1 -1
  978. package/build-module/components/inserter-draggable-blocks/index.js +1 -1
  979. package/build-module/components/inserter-list-item/index.js +1 -1
  980. package/build-module/components/inserter-listbox/group.js +1 -1
  981. package/build-module/components/inserter-listbox/index.js +1 -1
  982. package/build-module/components/inserter-listbox/item.js +1 -1
  983. package/build-module/components/inserter-listbox/row.js +1 -1
  984. package/build-module/components/inspector-controls/block-support-slot-container.js +1 -1
  985. package/build-module/components/inspector-controls/block-support-tools-panel.js +1 -1
  986. package/build-module/components/inspector-controls/fill.js +1 -1
  987. package/build-module/components/inspector-controls/fill.native.js +1 -1
  988. package/build-module/components/inspector-controls/index.js +1 -1
  989. package/build-module/components/inspector-controls/slot.js +1 -1
  990. package/build-module/components/inspector-controls/slot.native.js +1 -1
  991. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js +1 -1
  992. package/build-module/components/inspector-controls-tabs/index.js +1 -1
  993. package/build-module/components/inspector-controls-tabs/position-controls-panel.js +1 -1
  994. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js +1 -1
  995. package/build-module/components/inspector-controls-tabs/settings-tab.js +1 -1
  996. package/build-module/components/inspector-controls-tabs/styles-tab.js +1 -1
  997. package/build-module/components/inspector-popover-header/index.js +1 -1
  998. package/build-module/components/justify-content-control/index.js +1 -1
  999. package/build-module/components/justify-content-control/ui.js +1 -1
  1000. package/build-module/components/letter-spacing-control/index.js +2 -2
  1001. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  1002. package/build-module/components/line-height-control/index.js +1 -1
  1003. package/build-module/components/line-height-control/index.native.js +1 -1
  1004. package/build-module/components/link-control/index.js +1 -1
  1005. package/build-module/components/link-control/link-preview.js +1 -1
  1006. package/build-module/components/link-control/search-create-button.js +1 -1
  1007. package/build-module/components/link-control/search-input.js +1 -1
  1008. package/build-module/components/link-control/search-item.js +38 -3
  1009. package/build-module/components/link-control/search-item.js.map +1 -1
  1010. package/build-module/components/link-control/search-results.js +1 -1
  1011. package/build-module/components/link-control/settings-drawer.js +1 -1
  1012. package/build-module/components/link-control/settings.js +1 -1
  1013. package/build-module/components/list-view/appender.js +1 -1
  1014. package/build-module/components/list-view/aria-referenced-text.js +1 -1
  1015. package/build-module/components/list-view/block-contents.js +1 -1
  1016. package/build-module/components/list-view/block-select-button.js +1 -1
  1017. package/build-module/components/list-view/block.js +4 -35
  1018. package/build-module/components/list-view/block.js.map +1 -1
  1019. package/build-module/components/list-view/branch.js +9 -2
  1020. package/build-module/components/list-view/branch.js.map +1 -1
  1021. package/build-module/components/list-view/drop-indicator.js +1 -1
  1022. package/build-module/components/list-view/expander.js +1 -1
  1023. package/build-module/components/list-view/index.js +9 -4
  1024. package/build-module/components/list-view/index.js.map +1 -1
  1025. package/build-module/components/list-view/leaf.js +1 -1
  1026. package/build-module/components/list-view/utils.js +34 -0
  1027. package/build-module/components/list-view/utils.js.map +1 -1
  1028. package/build-module/components/media-placeholder/index.js +1 -1
  1029. package/build-module/components/media-placeholder/index.native.js +1 -1
  1030. package/build-module/components/media-replace-flow/index.js +1 -1
  1031. package/build-module/components/media-replace-flow/index.native.js +1 -1
  1032. package/build-module/components/media-upload/{constants.js → constants.native.js} +1 -2
  1033. package/build-module/components/media-upload/constants.native.js.map +1 -0
  1034. package/build-module/components/media-upload/index.js +1 -1
  1035. package/build-module/components/media-upload/index.js.map +1 -1
  1036. package/build-module/components/media-upload/index.native.js +7 -7
  1037. package/build-module/components/media-upload/index.native.js.map +1 -1
  1038. package/build-module/components/media-upload-progress/index.native.js +1 -1
  1039. package/build-module/components/multi-selection-inspector/index.js +1 -1
  1040. package/build-module/components/navigable-toolbar/index.js +1 -1
  1041. package/build-module/components/observe-typing/index.js +1 -1
  1042. package/build-module/components/panel-color-settings/index.js +1 -1
  1043. package/build-module/components/plain-text/index.js +1 -1
  1044. package/build-module/components/plain-text/index.native.js +1 -1
  1045. package/build-module/components/preview-options/index.js +1 -1
  1046. package/build-module/components/provider/block-refs-provider.js +1 -1
  1047. package/build-module/components/provider/index.js +1 -1
  1048. package/build-module/components/provider/index.native.js +1 -1
  1049. package/build-module/components/provider/use-block-sync.js +1 -1
  1050. package/build-module/components/provider/use-block-sync.js.map +1 -1
  1051. package/build-module/components/provider/with-registry-provider.js +1 -1
  1052. package/build-module/components/publish-date-time-picker/index.js +1 -1
  1053. package/build-module/components/recursion-provider/index.js +1 -1
  1054. package/build-module/components/resizable-box-popover/index.js +1 -1
  1055. package/build-module/components/resolution-tool/index.js +1 -1
  1056. package/build-module/components/responsive-block-control/index.js +1 -1
  1057. package/build-module/components/responsive-block-control/label.js +1 -1
  1058. package/build-module/components/rich-text/content.js +1 -1
  1059. package/build-module/components/rich-text/embed-handler-picker.native.js +1 -1
  1060. package/build-module/components/rich-text/format-edit.js +1 -1
  1061. package/build-module/components/rich-text/format-toolbar/index.js +1 -1
  1062. package/build-module/components/rich-text/format-toolbar/index.native.js +1 -1
  1063. package/build-module/components/rich-text/format-toolbar-container.js +1 -1
  1064. package/build-module/components/rich-text/format-toolbar-container.native.js +1 -1
  1065. package/build-module/components/rich-text/get-rich-text-values.js +1 -1
  1066. package/build-module/components/rich-text/index.js +1 -1
  1067. package/build-module/components/rich-text/index.native.js +2 -10
  1068. package/build-module/components/rich-text/index.native.js.map +1 -1
  1069. package/build-module/components/rich-text/multiline.js +1 -1
  1070. package/build-module/components/rich-text/toolbar-button.js +1 -1
  1071. package/build-module/components/rich-text/use-paste-handler.js +7 -89
  1072. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  1073. package/build-module/components/rich-text/utils.js +1 -3
  1074. package/build-module/components/rich-text/utils.js.map +1 -1
  1075. package/build-module/components/skip-to-selected-block/index.js +1 -1
  1076. package/build-module/components/spacing-sizes-control/index.js +1 -1
  1077. package/build-module/components/spacing-sizes-control/input-controls/axial.js +1 -1
  1078. package/build-module/components/spacing-sizes-control/input-controls/separated.js +1 -1
  1079. package/build-module/components/spacing-sizes-control/input-controls/single.js +1 -1
  1080. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -1
  1081. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js +1 -1
  1082. package/build-module/components/text-decoration-control/index.js +2 -2
  1083. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1084. package/build-module/components/text-transform-control/index.js +2 -2
  1085. package/build-module/components/text-transform-control/index.js.map +1 -1
  1086. package/build-module/components/tool-selector/index.js +3 -2
  1087. package/build-module/components/tool-selector/index.js.map +1 -1
  1088. package/build-module/components/typewriter/index.js +2 -2
  1089. package/build-module/components/typewriter/index.js.map +1 -1
  1090. package/build-module/components/ungroup-button/index.native.js +1 -1
  1091. package/build-module/components/unit-control/index.js +1 -1
  1092. package/build-module/components/unsupported-block-details/index.native.js +118 -0
  1093. package/build-module/components/unsupported-block-details/index.native.js.map +1 -0
  1094. package/build-module/components/url-input/button.js +1 -1
  1095. package/build-module/components/url-input/index.js +1 -1
  1096. package/build-module/components/url-input/index.native.js +1 -1
  1097. package/build-module/components/url-popover/image-url-input-ui.js +1 -1
  1098. package/build-module/components/url-popover/index.js +1 -1
  1099. package/build-module/components/url-popover/link-editor.js +1 -1
  1100. package/build-module/components/url-popover/link-viewer-url.js +1 -1
  1101. package/build-module/components/url-popover/link-viewer.js +1 -1
  1102. package/build-module/components/use-on-block-drop/index.js +2 -2
  1103. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  1104. package/build-module/components/use-unsupported-block-editor/index.native.js +51 -0
  1105. package/build-module/components/use-unsupported-block-editor/index.native.js.map +1 -0
  1106. package/build-module/components/video-player/gridicon-play.native.js +1 -1
  1107. package/build-module/components/video-player/index.native.js +1 -1
  1108. package/build-module/components/warning/index.js +1 -1
  1109. package/build-module/components/warning/index.native.js +1 -1
  1110. package/build-module/components/writing-flow/index.js +5 -4
  1111. package/build-module/components/writing-flow/index.js.map +1 -1
  1112. package/build-module/components/writing-flow/use-clipboard-handler.js +172 -0
  1113. package/build-module/components/writing-flow/use-clipboard-handler.js.map +1 -0
  1114. package/build-module/components/writing-flow/use-tab-nav.js +1 -1
  1115. package/build-module/components/writing-mode-control/index.js +2 -2
  1116. package/build-module/components/writing-mode-control/index.js.map +1 -1
  1117. package/build-module/hooks/align.js +1 -1
  1118. package/build-module/hooks/anchor.js +3 -3
  1119. package/build-module/hooks/anchor.js.map +1 -1
  1120. package/build-module/hooks/background.js +1 -1
  1121. package/build-module/hooks/block-hooks.js +1 -1
  1122. package/build-module/hooks/block-rename-ui.js +6 -3
  1123. package/build-module/hooks/block-rename-ui.js.map +1 -1
  1124. package/build-module/hooks/border.js +1 -1
  1125. package/build-module/hooks/color.js +1 -1
  1126. package/build-module/hooks/content-lock-ui.js +1 -1
  1127. package/build-module/hooks/contrast-checker.js +1 -1
  1128. package/build-module/hooks/custom-class-name.js +3 -3
  1129. package/build-module/hooks/custom-class-name.js.map +1 -1
  1130. package/build-module/hooks/custom-fields.js +3 -3
  1131. package/build-module/hooks/custom-fields.js.map +1 -1
  1132. package/build-module/hooks/dimensions.js +1 -1
  1133. package/build-module/hooks/duotone.js +1 -1
  1134. package/build-module/hooks/font-size.js +2 -2
  1135. package/build-module/hooks/font-size.js.map +1 -1
  1136. package/build-module/hooks/layout.js +1 -1
  1137. package/build-module/hooks/line-height.js +2 -2
  1138. package/build-module/hooks/line-height.js.map +1 -1
  1139. package/build-module/hooks/margin.js +1 -1
  1140. package/build-module/hooks/padding.js +1 -1
  1141. package/build-module/hooks/position.js +3 -3
  1142. package/build-module/hooks/position.js.map +1 -1
  1143. package/build-module/hooks/style.js +1 -1
  1144. package/build-module/hooks/typography.js +1 -1
  1145. package/build-module/hooks/typography.native.js +1 -1
  1146. package/build-module/layouts/constrained.js +1 -1
  1147. package/build-module/layouts/flex.js +1 -1
  1148. package/build-module/layouts/grid.js +1 -1
  1149. package/build-module/private-apis.js +2 -0
  1150. package/build-module/private-apis.js.map +1 -1
  1151. package/build-module/store/actions.js +8 -12
  1152. package/build-module/store/actions.js.map +1 -1
  1153. package/build-module/store/private-selectors.js +52 -0
  1154. package/build-module/store/private-selectors.js.map +1 -1
  1155. package/build-module/store/reducer.js +18 -1
  1156. package/build-module/store/reducer.js.map +1 -1
  1157. package/build-module/store/selectors.js +1 -1
  1158. package/build-module/store/selectors.js.map +1 -1
  1159. package/build-module/utils/pasting.js +47 -0
  1160. package/build-module/utils/pasting.js.map +1 -1
  1161. package/build-module/utils/transform-styles/transforms/wrap.js +5 -0
  1162. package/build-module/utils/transform-styles/transforms/wrap.js.map +1 -1
  1163. package/build-module/utils/use-notify-copy.js +46 -0
  1164. package/build-module/utils/use-notify-copy.js.map +1 -0
  1165. package/build-style/content-rtl.css +10 -11
  1166. package/build-style/content.css +10 -11
  1167. package/build-style/default-editor-styles-rtl.css +1 -1
  1168. package/build-style/default-editor-styles.css +1 -1
  1169. package/build-style/style-rtl.css +11 -12
  1170. package/build-style/style.css +11 -12
  1171. package/package.json +31 -32
  1172. package/src/components/block-actions/index.js +1 -1
  1173. package/src/components/block-breadcrumb/index.js +1 -1
  1174. package/src/components/block-canvas/index.js +6 -12
  1175. package/src/components/block-context/README.md +1 -1
  1176. package/src/components/block-heading-level-dropdown/heading-level-icon.js +2 -2
  1177. package/src/components/block-heading-level-dropdown/index.js +2 -2
  1178. package/src/components/block-heading-level-dropdown/index.native.js +2 -2
  1179. package/src/components/block-list/block-list-item.native.js +2 -2
  1180. package/src/components/block-parent-selector/index.js +1 -1
  1181. package/src/components/block-preview/index.js +1 -1
  1182. package/src/components/block-settings-menu/block-html-convert-button.js +28 -19
  1183. package/src/components/block-settings-menu-controls/index.js +1 -1
  1184. package/src/components/block-switcher/index.js +17 -18
  1185. package/src/components/block-switcher/test/__snapshots__/index.js.snap +2 -2
  1186. package/src/components/block-tools/block-selection-button.js +1 -1
  1187. package/src/components/border-radius-control/index.js +1 -1
  1188. package/src/components/child-layout-control/index.js +1 -1
  1189. package/src/components/color-palette/test/__snapshots__/control.js.snap +1 -1
  1190. package/src/components/colors/with-colors.js +1 -1
  1191. package/src/components/copy-handler/README.md +2 -0
  1192. package/src/components/copy-handler/index.js +21 -291
  1193. package/src/components/dimensions-tool/index.js +1 -1
  1194. package/src/components/dimensions-tool/scale-tool.js +1 -1
  1195. package/src/components/dimensions-tool/width-height-tool.js +1 -1
  1196. package/src/components/duotone-control/index.js +14 -2
  1197. package/src/components/editable-text/README.md +2 -2
  1198. package/src/components/font-appearance-control/index.js +1 -1
  1199. package/src/components/font-family/README.md +1 -1
  1200. package/src/components/global-styles/hooks.js +1 -1
  1201. package/src/components/global-styles/test/use-global-styles-output.js +39 -0
  1202. package/src/components/global-styles/use-global-styles-output.js +26 -6
  1203. package/src/components/global-styles/utils.js +21 -0
  1204. package/src/components/height-control/README.md +1 -1
  1205. package/src/components/height-control/index.js +1 -1
  1206. package/src/components/image-size-control/README.md +2 -2
  1207. package/src/components/index.js +1 -1
  1208. package/src/components/inner-blocks/constants.native.js +5 -0
  1209. package/src/components/inner-blocks/index.native.js +15 -0
  1210. package/src/components/inner-blocks/warning-max-depth-exceeded.native.js +100 -0
  1211. package/src/components/inserter/block-patterns-filter.js +22 -10
  1212. package/src/components/inserter/block-patterns-tab.js +0 -3
  1213. package/src/components/inserter/index.js +2 -2
  1214. package/src/components/inserter/index.native.js +2 -2
  1215. package/src/components/inserter/media-tab/hooks.js +10 -44
  1216. package/src/components/inserter/style.scss +1 -1
  1217. package/src/components/letter-spacing-control/index.js +1 -1
  1218. package/src/components/link-control/search-item.js +55 -2
  1219. package/src/components/list-view/block.js +3 -43
  1220. package/src/components/list-view/branch.js +11 -1
  1221. package/src/components/list-view/index.js +8 -4
  1222. package/src/components/list-view/utils.js +37 -0
  1223. package/src/components/media-placeholder/README.md +3 -3
  1224. package/src/components/media-upload/{constants.js → constants.native.js} +0 -1
  1225. package/src/components/media-upload/index.js +1 -1
  1226. package/src/components/media-upload/index.native.js +9 -5
  1227. package/src/components/panel-color-settings/README.md +5 -1
  1228. package/src/components/plain-text/README.md +1 -1
  1229. package/src/components/provider/README.md +1 -1
  1230. package/src/components/provider/use-block-sync.js +1 -1
  1231. package/src/components/publish-date-time-picker/README.md +1 -1
  1232. package/src/components/responsive-block-control/README.md +1 -3
  1233. package/src/components/rich-text/README.md +3 -3
  1234. package/src/components/rich-text/index.native.js +0 -13
  1235. package/src/components/rich-text/use-paste-handler.js +5 -99
  1236. package/src/components/rich-text/utils.js +0 -3
  1237. package/src/components/text-decoration-control/index.js +1 -1
  1238. package/src/components/text-transform-control/index.js +1 -1
  1239. package/src/components/tool-selector/index.js +1 -1
  1240. package/src/components/typewriter/index.js +1 -1
  1241. package/src/components/unit-control/README.md +1 -1
  1242. package/src/components/unsupported-block-details/index.native.js +183 -0
  1243. package/src/components/unsupported-block-details/style.native.scss +56 -0
  1244. package/src/components/url-input/README.md +4 -4
  1245. package/src/components/use-on-block-drop/index.js +2 -2
  1246. package/src/components/use-unsupported-block-editor/index.native.js +59 -0
  1247. package/src/components/writing-flow/index.js +4 -2
  1248. package/src/components/writing-flow/use-clipboard-handler.js +242 -0
  1249. package/src/components/writing-mode-control/index.js +1 -1
  1250. package/src/hooks/anchor.js +2 -2
  1251. package/src/hooks/block-rename-ui.js +14 -10
  1252. package/src/hooks/custom-class-name.js +2 -2
  1253. package/src/hooks/custom-fields.js +2 -2
  1254. package/src/hooks/font-size.js +1 -1
  1255. package/src/hooks/line-height.js +1 -1
  1256. package/src/hooks/position.js +2 -2
  1257. package/src/private-apis.js +2 -0
  1258. package/src/store/actions.js +7 -11
  1259. package/src/store/private-selectors.js +72 -0
  1260. package/src/store/reducer.js +17 -0
  1261. package/src/store/selectors.js +1 -1
  1262. package/src/store/test/actions.js +10 -16
  1263. package/src/utils/pasting.js +51 -0
  1264. package/src/utils/transform-styles/transforms/test/__snapshots__/wrap.js.snap +13 -6
  1265. package/src/utils/transform-styles/transforms/test/wrap.js +9 -0
  1266. package/src/utils/transform-styles/transforms/wrap.js +5 -0
  1267. package/src/utils/use-notify-copy.js +63 -0
  1268. package/tsconfig.tsbuildinfo +1 -1
  1269. package/build/components/block-settings-menu/block-convert-button.js +0 -27
  1270. package/build/components/block-settings-menu/block-convert-button.js.map +0 -1
  1271. package/build/components/media-upload/constants.js.map +0 -1
  1272. package/build-module/components/block-settings-menu/block-convert-button.js +0 -20
  1273. package/build-module/components/block-settings-menu/block-convert-button.js.map +0 -1
  1274. package/build-module/components/media-upload/constants.js.map +0 -1
  1275. package/src/components/block-settings-menu/block-convert-button.js +0 -14
@@ -1,304 +1,34 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { useCallback } from '@wordpress/element';
5
- import {
6
- serialize,
7
- pasteHandler,
8
- store as blocksStore,
9
- createBlock,
10
- findTransform,
11
- getBlockTransforms,
12
- } from '@wordpress/blocks';
13
- import {
14
- documentHasSelection,
15
- documentHasUncollapsedSelection,
16
- __unstableStripHTML as stripHTML,
17
- } from '@wordpress/dom';
18
- import { useDispatch, useSelect } from '@wordpress/data';
19
- import { __, _n, sprintf } from '@wordpress/i18n';
20
- import { store as noticesStore } from '@wordpress/notices';
21
- import { useRefEffect } from '@wordpress/compose';
4
+ import deprecated from '@wordpress/deprecated';
22
5
 
23
6
  /**
24
7
  * Internal dependencies
25
8
  */
26
- import { getPasteEventData } from '../../utils/pasting';
27
- import { store as blockEditorStore } from '../../store';
28
-
29
- export function useNotifyCopy() {
30
- const { getBlockName } = useSelect( blockEditorStore );
31
- const { getBlockType } = useSelect( blocksStore );
32
- const { createSuccessNotice } = useDispatch( noticesStore );
33
-
34
- return useCallback( ( eventType, selectedBlockClientIds ) => {
35
- let notice = '';
36
- if ( selectedBlockClientIds.length === 1 ) {
37
- const clientId = selectedBlockClientIds[ 0 ];
38
- const title = getBlockType( getBlockName( clientId ) )?.title;
39
- notice =
40
- eventType === 'copy'
41
- ? sprintf(
42
- // Translators: Name of the block being copied, e.g. "Paragraph".
43
- __( 'Copied "%s" to clipboard.' ),
44
- title
45
- )
46
- : sprintf(
47
- // Translators: Name of the block being cut, e.g. "Paragraph".
48
- __( 'Moved "%s" to clipboard.' ),
49
- title
50
- );
51
- } else {
52
- notice =
53
- eventType === 'copy'
54
- ? sprintf(
55
- // Translators: %d: Number of blocks being copied.
56
- _n(
57
- 'Copied %d block to clipboard.',
58
- 'Copied %d blocks to clipboard.',
59
- selectedBlockClientIds.length
60
- ),
61
- selectedBlockClientIds.length
62
- )
63
- : sprintf(
64
- // Translators: %d: Number of blocks being cut.
65
- _n(
66
- 'Moved %d block to clipboard.',
67
- 'Moved %d blocks to clipboard.',
68
- selectedBlockClientIds.length
69
- ),
70
- selectedBlockClientIds.length
71
- );
72
- }
73
- createSuccessNotice( notice, {
74
- type: 'snackbar',
75
- } );
76
- }, [] );
77
- }
78
-
79
- export function useClipboardHandler() {
80
- const {
81
- getBlocksByClientId,
82
- getSelectedBlockClientIds,
83
- hasMultiSelection,
84
- getSettings,
85
- __unstableIsFullySelected,
86
- __unstableIsSelectionCollapsed,
87
- __unstableIsSelectionMergeable,
88
- __unstableGetSelectedBlocksWithPartialSelection,
89
- canInsertBlockType,
90
- } = useSelect( blockEditorStore );
91
- const {
92
- flashBlock,
93
- removeBlocks,
94
- replaceBlocks,
95
- __unstableDeleteSelection,
96
- __unstableExpandSelection,
97
- insertBlocks,
98
- } = useDispatch( blockEditorStore );
99
- const notifyCopy = useNotifyCopy();
100
-
101
- return useRefEffect( ( node ) => {
102
- function handler( event ) {
103
- if ( event.defaultPrevented ) {
104
- // This was likely already handled in rich-text/use-paste-handler.js.
105
- return;
106
- }
107
-
108
- const selectedBlockClientIds = getSelectedBlockClientIds();
109
-
110
- if ( selectedBlockClientIds.length === 0 ) {
111
- return;
112
- }
113
-
114
- // Always handle multiple selected blocks.
115
- if ( ! hasMultiSelection() ) {
116
- const { target } = event;
117
- const { ownerDocument } = target;
118
- // If copying, only consider actual text selection as selection.
119
- // Otherwise, any focus on an input field is considered.
120
- const hasSelection =
121
- event.type === 'copy' || event.type === 'cut'
122
- ? documentHasUncollapsedSelection( ownerDocument )
123
- : documentHasSelection( ownerDocument );
124
-
125
- // Let native copy behaviour take over in input fields.
126
- if ( hasSelection ) {
127
- return;
128
- }
129
- }
130
-
131
- if ( ! node.contains( event.target.ownerDocument.activeElement ) ) {
132
- return;
133
- }
134
-
135
- event.preventDefault();
136
-
137
- const isSelectionMergeable = __unstableIsSelectionMergeable();
138
- const shouldHandleWholeBlocks =
139
- __unstableIsSelectionCollapsed() || __unstableIsFullySelected();
140
- const expandSelectionIsNeeded =
141
- ! shouldHandleWholeBlocks && ! isSelectionMergeable;
142
- if ( event.type === 'copy' || event.type === 'cut' ) {
143
- if ( selectedBlockClientIds.length === 1 ) {
144
- flashBlock( selectedBlockClientIds[ 0 ] );
145
- }
146
- // If we have a partial selection that is not mergeable, just
147
- // expand the selection to the whole blocks.
148
- if ( expandSelectionIsNeeded ) {
149
- __unstableExpandSelection();
150
- } else {
151
- notifyCopy( event.type, selectedBlockClientIds );
152
- let blocks;
153
- // Check if we have partial selection.
154
- if ( shouldHandleWholeBlocks ) {
155
- blocks = getBlocksByClientId( selectedBlockClientIds );
156
- } else {
157
- const [ head, tail ] =
158
- __unstableGetSelectedBlocksWithPartialSelection();
159
- const inBetweenBlocks = getBlocksByClientId(
160
- selectedBlockClientIds.slice(
161
- 1,
162
- selectedBlockClientIds.length - 1
163
- )
164
- );
165
- blocks = [ head, ...inBetweenBlocks, tail ];
166
- }
167
-
168
- const wrapperBlockName = event.clipboardData.getData(
169
- '__unstableWrapperBlockName'
170
- );
171
-
172
- if ( wrapperBlockName ) {
173
- blocks = createBlock(
174
- wrapperBlockName,
175
- JSON.parse(
176
- event.clipboardData.getData(
177
- '__unstableWrapperBlockAttributes'
178
- )
179
- ),
180
- blocks
181
- );
182
- }
183
-
184
- const serialized = serialize( blocks );
185
-
186
- event.clipboardData.setData(
187
- 'text/plain',
188
- toPlainText( serialized )
189
- );
190
- event.clipboardData.setData( 'text/html', serialized );
191
- }
192
- }
193
-
194
- if ( event.type === 'cut' ) {
195
- // We need to also check if at the start we needed to
196
- // expand the selection, as in this point we might have
197
- // programmatically fully selected the blocks above.
198
- if ( shouldHandleWholeBlocks && ! expandSelectionIsNeeded ) {
199
- removeBlocks( selectedBlockClientIds );
200
- } else {
201
- event.target.ownerDocument.activeElement.contentEditable = false;
202
- __unstableDeleteSelection();
203
- }
204
- } else if ( event.type === 'paste' ) {
205
- const {
206
- __experimentalCanUserUseUnfilteredHTML:
207
- canUserUseUnfilteredHTML,
208
- } = getSettings();
209
- const { plainText, html, files } = getPasteEventData( event );
210
- let blocks = [];
211
-
212
- if ( files.length ) {
213
- const fromTransforms = getBlockTransforms( 'from' );
214
- blocks = files
215
- .reduce( ( accumulator, file ) => {
216
- const transformation = findTransform(
217
- fromTransforms,
218
- ( transform ) =>
219
- transform.type === 'files' &&
220
- transform.isMatch( [ file ] )
221
- );
222
- if ( transformation ) {
223
- accumulator.push(
224
- transformation.transform( [ file ] )
225
- );
226
- }
227
- return accumulator;
228
- }, [] )
229
- .flat();
230
- } else {
231
- blocks = pasteHandler( {
232
- HTML: html,
233
- plainText,
234
- mode: 'BLOCKS',
235
- canUserUseUnfilteredHTML,
236
- } );
237
- }
238
-
239
- if ( selectedBlockClientIds.length === 1 ) {
240
- const [ selectedBlockClientId ] = selectedBlockClientIds;
241
-
242
- if (
243
- blocks.every( ( block ) =>
244
- canInsertBlockType(
245
- block.name,
246
- selectedBlockClientId
247
- )
248
- )
249
- ) {
250
- insertBlocks(
251
- blocks,
252
- undefined,
253
- selectedBlockClientId
254
- );
255
- return;
256
- }
257
- }
258
-
259
- replaceBlocks(
260
- selectedBlockClientIds,
261
- blocks,
262
- blocks.length - 1,
263
- -1
264
- );
265
- }
266
- }
267
-
268
- node.ownerDocument.addEventListener( 'copy', handler );
269
- node.ownerDocument.addEventListener( 'cut', handler );
270
- node.ownerDocument.addEventListener( 'paste', handler );
271
-
272
- return () => {
273
- node.ownerDocument.removeEventListener( 'copy', handler );
274
- node.ownerDocument.removeEventListener( 'cut', handler );
275
- node.ownerDocument.removeEventListener( 'paste', handler );
276
- };
277
- }, [] );
278
- }
279
-
280
- function CopyHandler( { children } ) {
281
- return <div ref={ useClipboardHandler() }>{ children }</div>;
282
- }
9
+ import useClipboardHandler from '../writing-flow/use-clipboard-handler';
283
10
 
284
11
  /**
285
- * Given a string of HTML representing serialized blocks, returns the plain
286
- * text extracted after stripping the HTML of any tags and fixing line breaks.
287
- *
288
- * @param {string} html Serialized blocks.
289
- * @return {string} The plain-text content with any html removed.
12
+ * @deprecated
290
13
  */
291
- function toPlainText( html ) {
292
- // Manually handle BR tags as line breaks prior to `stripHTML` call
293
- html = html.replace( /<br>/g, '\n' );
294
-
295
- const plainText = stripHTML( html ).trim();
296
-
297
- // Merge any consecutive line breaks
298
- return plainText.replace( /\n\n+/g, '\n\n' );
299
- }
14
+ export const __unstableUseClipboardHandler = () => {
15
+ deprecated( '__unstableUseClipboardHandler', {
16
+ alternative: 'BlockCanvas or WritingFlow',
17
+ since: '6.4',
18
+ version: '6.7',
19
+ } );
20
+ return useClipboardHandler();
21
+ };
300
22
 
301
23
  /**
302
- * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/copy-handler/README.md
24
+ * @deprecated
25
+ * @param {Object} props
303
26
  */
304
- export default CopyHandler;
27
+ export default function CopyHandler( props ) {
28
+ deprecated( 'CopyHandler', {
29
+ alternative: 'BlockCanvas or WritingFlow',
30
+ since: '6.4',
31
+ version: '6.7',
32
+ } );
33
+ return <div { ...props } ref={ useClipboardHandler() } />;
34
+ }
@@ -47,7 +47,7 @@ import WidthHeightTool from './width-height-tool';
47
47
  *
48
48
  * @param {DimensionsControlsProps} props The component props.
49
49
  *
50
- * @return {WPElement} The dimensions controls.
50
+ * @return {Element} The dimensions controls.
51
51
  */
52
52
  function DimensionsTool( {
53
53
  panelId,
@@ -76,7 +76,7 @@ const DEFAULT_SCALE_OPTIONS = [
76
76
  *
77
77
  * @param {ScaleToolProps} props
78
78
  *
79
- * @return {import('@wordpress/element').WPElement} The scale tool.
79
+ * @return {import('react').ReactElement} The scale tool.
80
80
  */
81
81
  export default function ScaleTool( {
82
82
  panelId,
@@ -46,7 +46,7 @@ const SingleColumnToolsPanelItem = styled( ToolsPanelItem )`
46
46
  *
47
47
  * @param {WidthHeightToolProps} props The component props.
48
48
  *
49
- * @return {import('@wordpress/element').WPElement} The width and height tool.
49
+ * @return {import('react').ReactElement} The width and height tool.
50
50
  */
51
51
  export default function WidthHeightTool( {
52
52
  panelId,
@@ -12,8 +12,10 @@ import {
12
12
  import { __ } from '@wordpress/i18n';
13
13
  import { DOWN } from '@wordpress/keycodes';
14
14
  import { Icon, filter } from '@wordpress/icons';
15
+ import { useInstanceId } from '@wordpress/compose';
15
16
 
16
17
  function DuotoneControl( {
18
+ id: idProp,
17
19
  colorPalette,
18
20
  duotonePalette,
19
21
  disableCustomColors,
@@ -31,6 +33,11 @@ function DuotoneControl( {
31
33
  } else {
32
34
  toolbarIcon = <Icon icon={ filter } />;
33
35
  }
36
+
37
+ const actionLabel = __( 'Apply duotone filter' );
38
+ const id = useInstanceId( DuotoneControl, 'duotone-control', idProp );
39
+ const descriptionId = `${ id }__description`;
40
+
34
41
  return (
35
42
  <Dropdown
36
43
  popoverProps={ {
@@ -51,19 +58,24 @@ function DuotoneControl( {
51
58
  aria-haspopup="true"
52
59
  aria-expanded={ isOpen }
53
60
  onKeyDown={ openOnArrowDown }
54
- label={ __( 'Apply duotone filter' ) }
61
+ label={ actionLabel }
55
62
  icon={ toolbarIcon }
56
63
  />
57
64
  );
58
65
  } }
59
66
  renderContent={ () => (
60
67
  <MenuGroup label={ __( 'Duotone' ) }>
61
- <div className="block-editor-duotone-control__description">
68
+ <div
69
+ id={ descriptionId }
70
+ className="block-editor-duotone-control__description"
71
+ >
62
72
  { __(
63
73
  'Create a two-tone color effect without losing your original image.'
64
74
  ) }
65
75
  </div>
66
76
  <DuotonePicker
77
+ aria-label={ actionLabel }
78
+ aria-describedby={ descriptionId }
67
79
  colorPalette={ colorPalette }
68
80
  duotonePalette={ duotonePalette }
69
81
  disableCustomColors={ disableCustomColors }
@@ -62,7 +62,7 @@ wp.blocks.registerBlockType( /* ... */, {
62
62
  },
63
63
 
64
64
  edit: function( props ) {
65
- return wp.element.createElement( wp.editor.EditableText, {
65
+ return React.createElement( wp.editor.EditableText, {
66
66
  className: props.className,
67
67
  value: props.attributes.content,
68
68
  onChange: function( content ) {
@@ -72,7 +72,7 @@ wp.blocks.registerBlockType( /* ... */, {
72
72
  },
73
73
 
74
74
  save: function( props ) {
75
- return wp.element.createElement( wp.editor.EditableText.Content, {
75
+ return React.createElement( wp.editor.EditableText.Content, {
76
76
  value: props.attributes.content
77
77
  } );
78
78
  }
@@ -80,7 +80,7 @@ const getFontAppearanceLabel = ( hasFontStyles, hasFontWeights ) => {
80
80
  *
81
81
  * @param {Object} props Component props.
82
82
  *
83
- * @return {WPElement} Font appearance control.
83
+ * @return {Element} Font appearance control.
84
84
  */
85
85
  export default function FontAppearanceControl( props ) {
86
86
  const {
@@ -9,8 +9,8 @@ Optionally, you can provide a `fontFamilies` prop that overrides the predefined
9
9
  ## Usage
10
10
 
11
11
  ```jsx
12
+ import { useState } from 'react';
12
13
  import { FontFamilyControl } from '@wordpress/block-editor';
13
- import { useState } from '@wordpress/element';
14
14
  import { __ } from '@wordpress/i18n';
15
15
 
16
16
  // ...
@@ -117,7 +117,7 @@ export function useGlobalSetting( propertyPath, blockName, source = 'all' ) {
117
117
  `settings${ appendedBlockPath }.${ setting }`
118
118
  ) ??
119
119
  getValueFromObjectPath( configToUse, `settings.${ setting }` );
120
- if ( value ) {
120
+ if ( value !== undefined ) {
121
121
  result = setImmutably( result, setting.split( '.' ), value );
122
122
  }
123
123
  } );
@@ -14,6 +14,7 @@ import {
14
14
  toCustomProperties,
15
15
  toStyles,
16
16
  getStylesDeclarations,
17
+ processCSSNesting,
17
18
  } from '../use-global-styles-output';
18
19
  import { ROOT_BLOCK_SELECTOR } from '../utils';
19
20
 
@@ -967,4 +968,42 @@ describe( 'global styles renderer', () => {
967
968
  ] );
968
969
  } );
969
970
  } );
971
+
972
+ describe( 'processCSSNesting', () => {
973
+ it( 'should return processed CSS without any nested selectors', () => {
974
+ expect(
975
+ processCSSNesting( 'color: red; margin: auto;', '.foo' )
976
+ ).toEqual( '.foo{color: red; margin: auto;}' );
977
+ } );
978
+ it( 'should return processed CSS with nested selectors', () => {
979
+ expect(
980
+ processCSSNesting(
981
+ 'color: red; margin: auto; &.one{color: blue;} & .two{color: green;}',
982
+ '.foo'
983
+ )
984
+ ).toEqual(
985
+ '.foo{color: red; margin: auto;}.foo.one{color: blue;}.foo .two{color: green;}'
986
+ );
987
+ } );
988
+ it( 'should return processed CSS with pseudo elements', () => {
989
+ expect(
990
+ processCSSNesting(
991
+ 'color: red; margin: auto; &::before{color: blue;} & ::before{color: green;} &.one::before{color: yellow;} & .two::before{color: purple;}',
992
+ '.foo'
993
+ )
994
+ ).toEqual(
995
+ '.foo{color: red; margin: auto;}.foo::before{color: blue;}.foo ::before{color: green;}.foo.one::before{color: yellow;}.foo .two::before{color: purple;}'
996
+ );
997
+ } );
998
+ it( 'should return processed CSS with multiple root selectors', () => {
999
+ expect(
1000
+ processCSSNesting(
1001
+ 'color: red; margin: auto; &.one{color: blue;} & .two{color: green;} &::before{color: yellow;} & ::before{color: purple;} &.three::before{color: orange;} & .four::before{color: skyblue;}',
1002
+ '.foo, .bar'
1003
+ )
1004
+ ).toEqual(
1005
+ '.foo, .bar{color: red; margin: auto;}.foo.one, .bar.one{color: blue;}.foo .two, .bar .two{color: green;}.foo::before, .bar::before{color: yellow;}.foo ::before, .bar ::before{color: purple;}.foo.three::before, .bar.three::before{color: orange;}.foo .four::before, .bar .four::before{color: skyblue;}'
1006
+ );
1007
+ } );
1008
+ } );
970
1009
  } );
@@ -15,7 +15,12 @@ import { getCSSRules } from '@wordpress/style-engine';
15
15
  /**
16
16
  * Internal dependencies
17
17
  */
18
- import { PRESET_METADATA, ROOT_BLOCK_SELECTOR, scopeSelector } from './utils';
18
+ import {
19
+ PRESET_METADATA,
20
+ ROOT_BLOCK_SELECTOR,
21
+ scopeSelector,
22
+ appendToSelector,
23
+ } from './utils';
19
24
  import { getBlockCSSSelector } from './get-block-css-selector';
20
25
  import {
21
26
  getTypographyFontSizeValue,
@@ -1124,18 +1129,33 @@ function updateConfigWithSeparator( config ) {
1124
1129
  return config;
1125
1130
  }
1126
1131
 
1127
- const processCSSNesting = ( css, blockSelector ) => {
1132
+ export function processCSSNesting( css, blockSelector ) {
1128
1133
  let processedCSS = '';
1129
1134
 
1130
1135
  // Split CSS nested rules.
1131
1136
  const parts = css.split( '&' );
1132
1137
  parts.forEach( ( part ) => {
1133
- processedCSS += ! part.includes( '{' )
1134
- ? blockSelector + '{' + part + '}' // If the part doesn't contain braces, it applies to the root level.
1135
- : blockSelector + part; // Prepend the selector, which effectively replaces the "&" character.
1138
+ const isRootCss = ! part.includes( '{' );
1139
+ if ( isRootCss ) {
1140
+ // If the part doesn't contain braces, it applies to the root level.
1141
+ processedCSS += `${ blockSelector }{${ part.trim() }}`;
1142
+ } else {
1143
+ // If the part contains braces, it's a nested CSS rule.
1144
+ const splittedPart = part.replace( '}', '' ).split( '{' );
1145
+ if ( splittedPart.length !== 2 ) {
1146
+ return;
1147
+ }
1148
+
1149
+ const [ nestedSelector, cssValue ] = splittedPart;
1150
+ const combinedSelector = nestedSelector.startsWith( ' ' )
1151
+ ? scopeSelector( blockSelector, nestedSelector )
1152
+ : appendToSelector( blockSelector, nestedSelector );
1153
+
1154
+ processedCSS += `${ combinedSelector }{${ cssValue.trim() }}`;
1155
+ }
1136
1156
  } );
1137
1157
  return processedCSS;
1138
- };
1158
+ }
1139
1159
 
1140
1160
  /**
1141
1161
  * Returns the global styles output using a global styles configuration.
@@ -393,6 +393,27 @@ export function scopeSelector( scope, selector ) {
393
393
  return selectorsScoped.join( ', ' );
394
394
  }
395
395
 
396
+ /**
397
+ * Appends a sub-selector to an existing one.
398
+ *
399
+ * Given the compounded `selector` "h1, h2, h3"
400
+ * and the `toAppend` selector ".some-class" the result will be
401
+ * "h1.some-class, h2.some-class, h3.some-class".
402
+ *
403
+ * @param {string} selector Original selector.
404
+ * @param {string} toAppend Selector to append.
405
+ *
406
+ * @return {string} The new selector.
407
+ */
408
+ export function appendToSelector( selector, toAppend ) {
409
+ if ( ! selector.includes( ',' ) ) {
410
+ return selector + toAppend;
411
+ }
412
+ const selectors = selector.split( ',' );
413
+ const newSelectors = selectors.map( ( sel ) => sel + toAppend );
414
+ return newSelectors.join( ',' );
415
+ }
416
+
396
417
  /**
397
418
  * Compares global style variations according to their styles and settings properties.
398
419
  *
@@ -16,8 +16,8 @@ _Note:_ It is worth noting that the minimum height option is an opt-in feature.
16
16
  Renders the markup for height control component, to be used in the block inspector.
17
17
 
18
18
  ```jsx
19
+ import { useState } from 'react';
19
20
  import { HeightControl } from '@wordpress/block-editor';
20
- import { useState } from '@wordpress/element';
21
21
 
22
22
  const MyLineHeightControl = () => (
23
23
  const [ value, setValue ] = useState();
@@ -38,7 +38,7 @@ const RANGE_CONTROL_CUSTOM_SETTINGS = {
38
38
  * @param {( value: string ) => void } props.onChange Called when the height changes.
39
39
  * @param {string} props.value The current height value.
40
40
  *
41
- * @return {WPComponent} The component to be rendered.
41
+ * @return {Component} The component to be rendered.
42
42
  */
43
43
  export default function HeightControl( {
44
44
  label = __( 'Height' ),
@@ -7,8 +7,8 @@ Allow users to control the width & height of an image.
7
7
  Render a ImageSizeControl.
8
8
 
9
9
  ```jsx
10
+ import { useState } from 'react';
10
11
  import { __experimentalImageSizeControl as ImageSizeControl } from '@wordpress/block-editor';
11
- import { useState } from '@wordpress/element';
12
12
 
13
13
  const MyImageSizeControl = () => {
14
14
  const [ size, setSize ] = useState( { width: null, height: null } );
@@ -36,7 +36,7 @@ The component accepts the following props:
36
36
 
37
37
  If this property is added, a help text will be generated for the image size control, using imageSizeHelp property as the content.
38
38
 
39
- - Type: `String|WPElement`
39
+ - Type: `String|Element`
40
40
  - Required: No
41
41
 
42
42
  ### slug
@@ -128,7 +128,7 @@ export { default as BlockToolbar } from './block-toolbar';
128
128
  export { default as BlockTools } from './block-tools';
129
129
  export {
130
130
  default as CopyHandler,
131
- useClipboardHandler as __unstableUseClipboardHandler,
131
+ __unstableUseClipboardHandler,
132
132
  } from './copy-handler';
133
133
  export { default as DefaultBlockAppender } from './default-block-appender';
134
134
  export { default as __unstableEditorStyles } from './editor-styles';
@@ -0,0 +1,5 @@
1
+ // Hermes has a limit for the call stack depth to avoid infinite recursion.
2
+ // When creating a deep nested structure of inner blocks, the editor might exceed
3
+ // this limit and crash. In order to avoid this, we set a maximum depth level where
4
+ // we stop rendering blocks.
5
+ export const MAX_NESTING_DEPTH = 10;
@@ -3,6 +3,7 @@
3
3
  */
4
4
  import { __unstableGetInnerBlocksProps as getInnerBlocksProps } from '@wordpress/blocks';
5
5
  import { useRef } from '@wordpress/element';
6
+ import { useSelect } from '@wordpress/data';
6
7
 
7
8
  /**
8
9
  * Internal dependencies
@@ -21,6 +22,9 @@ import { useBlockEditContext } from '../block-edit/context';
21
22
  import useBlockSync from '../provider/use-block-sync';
22
23
  import { BlockContextProvider } from '../block-context';
23
24
  import { defaultLayout, LayoutProvider } from '../block-list/layout';
25
+ import { store as blockEditorStore } from '../../store';
26
+ import WarningMaxDepthExceeded from './warning-max-depth-exceeded';
27
+ import { MAX_NESTING_DEPTH } from './constants';
24
28
 
25
29
  /**
26
30
  * This hook is used to lightly mark an element as an inner blocks wrapper
@@ -122,6 +126,17 @@ function UncontrolledInnerBlocks( props ) {
122
126
  templateInsertUpdatesSelection
123
127
  );
124
128
 
129
+ const nestingLevel = useSelect(
130
+ ( select ) => {
131
+ return select( blockEditorStore ).getBlockParents( clientId )
132
+ ?.length;
133
+ },
134
+ [ clientId ]
135
+ );
136
+ if ( nestingLevel >= MAX_NESTING_DEPTH ) {
137
+ return <WarningMaxDepthExceeded clientId={ clientId } />;
138
+ }
139
+
125
140
  return (
126
141
  <LayoutProvider value={ layout }>
127
142
  <BlockContextProvider value={ context }>