@wordpress/block-editor 12.10.6 → 12.11.1

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 (1226) 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 +11 -9
  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 +20 -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/image-settings-panel.js +4 -4
  322. package/build/components/global-styles/image-settings-panel.js.map +1 -1
  323. package/build/components/global-styles/typography-panel.js +22 -21
  324. package/build/components/global-styles/typography-panel.js.map +1 -1
  325. package/build/components/gradients/with-gradient.js +2 -2
  326. package/build/components/gradients/with-gradient.js.map +1 -1
  327. package/build/components/height-control/index.js +9 -8
  328. package/build/components/height-control/index.js.map +1 -1
  329. package/build/components/iframe/index.js +7 -14
  330. package/build/components/iframe/index.js.map +1 -1
  331. package/build/components/image-editor/aspect-ratio-dropdown.js +7 -7
  332. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  333. package/build/components/image-editor/context.js +2 -1
  334. package/build/components/image-editor/context.js.map +1 -1
  335. package/build/components/image-editor/cropper.js +4 -4
  336. package/build/components/image-editor/cropper.js.map +1 -1
  337. package/build/components/image-editor/form-controls.js +3 -3
  338. package/build/components/image-editor/form-controls.js.map +1 -1
  339. package/build/components/image-editor/index.js +5 -5
  340. package/build/components/image-editor/index.js.map +1 -1
  341. package/build/components/image-editor/rotation-button.js +2 -2
  342. package/build/components/image-editor/rotation-button.js.map +1 -1
  343. package/build/components/image-editor/zoom-dropdown.js +4 -4
  344. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  345. package/build/components/image-size-control/index.js +9 -9
  346. package/build/components/image-size-control/index.js.map +1 -1
  347. package/build/components/index.js +1 -1
  348. package/build/components/index.js.map +1 -1
  349. package/build/components/inner-blocks/button-block-appender.js +2 -2
  350. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  351. package/build/components/inner-blocks/constants.native.js +13 -0
  352. package/build/components/inner-blocks/constants.native.js.map +1 -0
  353. package/build/components/inner-blocks/default-block-appender.js +2 -2
  354. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  355. package/build/components/inner-blocks/index.js +9 -8
  356. package/build/components/inner-blocks/index.js.map +1 -1
  357. package/build/components/inner-blocks/index.native.js +21 -8
  358. package/build/components/inner-blocks/index.native.js.map +1 -1
  359. package/build/components/inner-blocks/warning-max-depth-exceeded.native.js +95 -0
  360. package/build/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -0
  361. package/build/components/inner-blocks/with-client-id.js +2 -2
  362. package/build/components/inner-blocks/with-client-id.js.map +1 -1
  363. package/build/components/inserter/block-patterns-explorer/explorer.js +7 -6
  364. package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  365. package/build/components/inserter/block-patterns-explorer/patterns-list.js +6 -5
  366. package/build/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  367. package/build/components/inserter/block-patterns-explorer/sidebar.js +8 -8
  368. package/build/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  369. package/build/components/inserter/block-patterns-filter.js +12 -11
  370. package/build/components/inserter/block-patterns-filter.js.map +1 -1
  371. package/build/components/inserter/block-patterns-tab.js +19 -18
  372. package/build/components/inserter/block-patterns-tab.js.map +1 -1
  373. package/build/components/inserter/block-types-tab.js +10 -9
  374. package/build/components/inserter/block-types-tab.js.map +1 -1
  375. package/build/components/inserter/block-types-tab.native.js +2 -1
  376. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  377. package/build/components/inserter/index.js +9 -8
  378. package/build/components/inserter/index.js.map +1 -1
  379. package/build/components/inserter/index.native.js +11 -10
  380. package/build/components/inserter/index.native.js.map +1 -1
  381. package/build/components/inserter/library.js +3 -2
  382. package/build/components/inserter/library.js.map +1 -1
  383. package/build/components/inserter/media-tab/media-list.js +3 -3
  384. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  385. package/build/components/inserter/media-tab/media-panel.js +7 -6
  386. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  387. package/build/components/inserter/media-tab/media-preview.js +18 -17
  388. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  389. package/build/components/inserter/media-tab/media-tab.js +12 -11
  390. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  391. package/build/components/inserter/media-tab/utils.js +2 -2
  392. package/build/components/inserter/media-tab/utils.js.map +1 -1
  393. package/build/components/inserter/menu.js +19 -18
  394. package/build/components/inserter/menu.js.map +1 -1
  395. package/build/components/inserter/menu.native.js +9 -8
  396. package/build/components/inserter/menu.native.js.map +1 -1
  397. package/build/components/inserter/mobile-tab-navigation.js +12 -12
  398. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  399. package/build/components/inserter/no-results.js +4 -4
  400. package/build/components/inserter/no-results.js.map +1 -1
  401. package/build/components/inserter/no-results.native.js +4 -4
  402. package/build/components/inserter/no-results.native.js.map +1 -1
  403. package/build/components/inserter/panel.js +5 -5
  404. package/build/components/inserter/panel.js.map +1 -1
  405. package/build/components/inserter/preview-panel.js +8 -7
  406. package/build/components/inserter/preview-panel.js.map +1 -1
  407. package/build/components/inserter/quick-inserter.js +7 -6
  408. package/build/components/inserter/quick-inserter.js.map +1 -1
  409. package/build/components/inserter/reusable-block-rename-hint.js +5 -4
  410. package/build/components/inserter/reusable-block-rename-hint.js.map +1 -1
  411. package/build/components/inserter/reusable-blocks-tab.native.js +3 -2
  412. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  413. package/build/components/inserter/search-results.js +11 -10
  414. package/build/components/inserter/search-results.js.map +1 -1
  415. package/build/components/inserter/search-results.native.js +4 -3
  416. package/build/components/inserter/search-results.native.js.map +1 -1
  417. package/build/components/inserter/tabs.js +2 -1
  418. package/build/components/inserter/tabs.js.map +1 -1
  419. package/build/components/inserter/tabs.native.js +7 -6
  420. package/build/components/inserter/tabs.native.js.map +1 -1
  421. package/build/components/inserter/tips.js +6 -5
  422. package/build/components/inserter/tips.js.map +1 -1
  423. package/build/components/inserter-draggable-blocks/index.js +3 -3
  424. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  425. package/build/components/inserter-list-item/index.js +9 -8
  426. package/build/components/inserter-list-item/index.js.map +1 -1
  427. package/build/components/inserter-listbox/group.js +2 -1
  428. package/build/components/inserter-listbox/group.js.map +1 -1
  429. package/build/components/inserter-listbox/index.js +2 -2
  430. package/build/components/inserter-listbox/index.js.map +1 -1
  431. package/build/components/inserter-listbox/item.js +5 -4
  432. package/build/components/inserter-listbox/item.js.map +1 -1
  433. package/build/components/inserter-listbox/row.js +2 -1
  434. package/build/components/inserter-listbox/row.js.map +1 -1
  435. package/build/components/inspector-controls/block-support-slot-container.js +3 -2
  436. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  437. package/build/components/inspector-controls/block-support-tools-panel.js +3 -2
  438. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  439. package/build/components/inspector-controls/fill.js +7 -6
  440. package/build/components/inspector-controls/fill.js.map +1 -1
  441. package/build/components/inspector-controls/fill.native.js +4 -3
  442. package/build/components/inspector-controls/fill.native.js.map +1 -1
  443. package/build/components/inspector-controls/index.js +3 -3
  444. package/build/components/inspector-controls/index.js.map +1 -1
  445. package/build/components/inspector-controls/slot.js +5 -4
  446. package/build/components/inspector-controls/slot.js.map +1 -1
  447. package/build/components/inspector-controls/slot.native.js +2 -2
  448. package/build/components/inspector-controls/slot.native.js.map +1 -1
  449. package/build/components/inspector-controls-tabs/advanced-controls-panel.js +3 -3
  450. package/build/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  451. package/build/components/inspector-controls-tabs/index.js +5 -5
  452. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  453. package/build/components/inspector-controls-tabs/position-controls-panel.js +5 -4
  454. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  455. package/build/components/inspector-controls-tabs/settings-tab-hint.js +5 -4
  456. package/build/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  457. package/build/components/inspector-controls-tabs/settings-tab.js +2 -2
  458. package/build/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  459. package/build/components/inspector-controls-tabs/styles-tab.js +11 -11
  460. package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  461. package/build/components/inspector-popover-header/index.js +8 -8
  462. package/build/components/inspector-popover-header/index.js.map +1 -1
  463. package/build/components/justify-content-control/index.js +3 -3
  464. package/build/components/justify-content-control/index.js.map +1 -1
  465. package/build/components/justify-content-control/ui.js +2 -2
  466. package/build/components/justify-content-control/ui.js.map +1 -1
  467. package/build/components/letter-spacing-control/index.js +3 -3
  468. package/build/components/letter-spacing-control/index.js.map +1 -1
  469. package/build/components/line-height-control/index.js +3 -3
  470. package/build/components/line-height-control/index.js.map +1 -1
  471. package/build/components/line-height-control/index.native.js +2 -2
  472. package/build/components/line-height-control/index.native.js.map +1 -1
  473. package/build/components/link-control/index.js +18 -17
  474. package/build/components/link-control/index.js.map +1 -1
  475. package/build/components/link-control/link-preview.js +20 -20
  476. package/build/components/link-control/link-preview.js.map +1 -1
  477. package/build/components/link-control/search-create-button.js +4 -3
  478. package/build/components/link-control/search-create-button.js.map +1 -1
  479. package/build/components/link-control/search-input.js +5 -4
  480. package/build/components/link-control/search-input.js.map +1 -1
  481. package/build/components/link-control/search-item.js +5 -5
  482. package/build/components/link-control/search-item.js.map +1 -1
  483. package/build/components/link-control/search-results.js +7 -7
  484. package/build/components/link-control/search-results.js.map +1 -1
  485. package/build/components/link-control/settings-drawer.js +5 -4
  486. package/build/components/link-control/settings-drawer.js.map +1 -1
  487. package/build/components/link-control/settings.js +4 -4
  488. package/build/components/link-control/settings.js.map +1 -1
  489. package/build/components/list-view/appender.js +5 -4
  490. package/build/components/list-view/appender.js.map +1 -1
  491. package/build/components/list-view/aria-referenced-text.js +2 -1
  492. package/build/components/list-view/aria-referenced-text.js.map +1 -1
  493. package/build/components/list-view/block-contents.js +5 -4
  494. package/build/components/list-view/block-contents.js.map +1 -1
  495. package/build/components/list-view/block-select-button.js +16 -15
  496. package/build/components/list-view/block-select-button.js.map +1 -1
  497. package/build/components/list-view/block.js +14 -13
  498. package/build/components/list-view/block.js.map +1 -1
  499. package/build/components/list-view/branch.js +9 -8
  500. package/build/components/list-view/branch.js.map +1 -1
  501. package/build/components/list-view/drop-indicator.js +4 -3
  502. package/build/components/list-view/drop-indicator.js.map +1 -1
  503. package/build/components/list-view/expander.js +3 -3
  504. package/build/components/list-view/expander.js.map +1 -1
  505. package/build/components/list-view/index.js +8 -7
  506. package/build/components/list-view/index.js.map +1 -1
  507. package/build/components/list-view/leaf.js +3 -2
  508. package/build/components/list-view/leaf.js.map +1 -1
  509. package/build/components/media-placeholder/index.js +22 -21
  510. package/build/components/media-placeholder/index.js.map +1 -1
  511. package/build/components/media-placeholder/index.native.js +13 -12
  512. package/build/components/media-placeholder/index.native.js.map +1 -1
  513. package/build/components/media-replace-flow/index.js +14 -13
  514. package/build/components/media-replace-flow/index.js.map +1 -1
  515. package/build/components/media-replace-flow/index.native.js +2 -2
  516. package/build/components/media-replace-flow/index.native.js.map +1 -1
  517. package/build/components/media-upload/{constants.js → constants.native.js} +2 -4
  518. package/build/components/media-upload/constants.native.js.map +1 -0
  519. package/build/components/media-upload/index.js +1 -1
  520. package/build/components/media-upload/index.js.map +1 -1
  521. package/build/components/media-upload/index.native.js +12 -11
  522. package/build/components/media-upload/index.native.js.map +1 -1
  523. package/build/components/media-upload-progress/index.native.js +5 -4
  524. package/build/components/media-upload-progress/index.native.js.map +1 -1
  525. package/build/components/multi-selection-inspector/index.js +6 -6
  526. package/build/components/multi-selection-inspector/index.js.map +1 -1
  527. package/build/components/navigable-toolbar/index.js +4 -3
  528. package/build/components/navigable-toolbar/index.js.map +1 -1
  529. package/build/components/observe-typing/index.js +2 -2
  530. package/build/components/observe-typing/index.js.map +1 -1
  531. package/build/components/panel-color-settings/index.js +2 -2
  532. package/build/components/panel-color-settings/index.js.map +1 -1
  533. package/build/components/plain-text/index.js +4 -3
  534. package/build/components/plain-text/index.js.map +1 -1
  535. package/build/components/plain-text/index.native.js +4 -3
  536. package/build/components/plain-text/index.native.js.map +1 -1
  537. package/build/components/preview-options/index.js +5 -5
  538. package/build/components/preview-options/index.js.map +1 -1
  539. package/build/components/provider/block-refs-provider.js +2 -1
  540. package/build/components/provider/block-refs-provider.js.map +1 -1
  541. package/build/components/provider/index.js +4 -3
  542. package/build/components/provider/index.js.map +1 -1
  543. package/build/components/provider/index.native.js +3 -2
  544. package/build/components/provider/index.native.js.map +1 -1
  545. package/build/components/provider/use-block-sync.js +1 -1
  546. package/build/components/provider/use-block-sync.js.map +1 -1
  547. package/build/components/provider/with-registry-provider.js +4 -3
  548. package/build/components/provider/with-registry-provider.js.map +1 -1
  549. package/build/components/publish-date-time-picker/index.js +5 -4
  550. package/build/components/publish-date-time-picker/index.js.map +1 -1
  551. package/build/components/recursion-provider/index.js +2 -1
  552. package/build/components/recursion-provider/index.js.map +1 -1
  553. package/build/components/resizable-box-popover/index.js +3 -3
  554. package/build/components/resizable-box-popover/index.js.map +1 -1
  555. package/build/components/resolution-tool/index.js +3 -3
  556. package/build/components/resolution-tool/index.js.map +1 -1
  557. package/build/components/responsive-block-control/index.js +10 -9
  558. package/build/components/responsive-block-control/index.js.map +1 -1
  559. package/build/components/responsive-block-control/label.js +3 -3
  560. package/build/components/responsive-block-control/label.js.map +1 -1
  561. package/build/components/rich-text/content.js +3 -2
  562. package/build/components/rich-text/content.js.map +1 -1
  563. package/build/components/rich-text/embed-handler-picker.native.js +2 -1
  564. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  565. package/build/components/rich-text/format-edit.js +4 -3
  566. package/build/components/rich-text/format-edit.js.map +1 -1
  567. package/build/components/rich-text/format-toolbar/index.js +4 -4
  568. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  569. package/build/components/rich-text/format-toolbar/index.native.js +3 -3
  570. package/build/components/rich-text/format-toolbar/index.native.js.map +1 -1
  571. package/build/components/rich-text/format-toolbar-container.js +9 -9
  572. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  573. package/build/components/rich-text/format-toolbar-container.native.js +3 -3
  574. package/build/components/rich-text/format-toolbar-container.native.js.map +1 -1
  575. package/build/components/rich-text/get-rich-text-values.js +2 -1
  576. package/build/components/rich-text/get-rich-text-values.js.map +1 -1
  577. package/build/components/rich-text/index.js +9 -8
  578. package/build/components/rich-text/index.js.map +1 -1
  579. package/build/components/rich-text/index.native.js +8 -15
  580. package/build/components/rich-text/index.native.js.map +1 -1
  581. package/build/components/rich-text/multiline.js +3 -2
  582. package/build/components/rich-text/multiline.js.map +1 -1
  583. package/build/components/rich-text/toolbar-button.js +3 -3
  584. package/build/components/rich-text/toolbar-button.js.map +1 -1
  585. package/build/components/rich-text/use-paste-handler.js +5 -87
  586. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  587. package/build/components/rich-text/utils.js +2 -5
  588. package/build/components/rich-text/utils.js.map +1 -1
  589. package/build/components/skip-to-selected-block/index.js +2 -2
  590. package/build/components/skip-to-selected-block/index.js.map +1 -1
  591. package/build/components/spacing-sizes-control/index.js +9 -8
  592. package/build/components/spacing-sizes-control/index.js.map +1 -1
  593. package/build/components/spacing-sizes-control/input-controls/axial.js +3 -3
  594. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  595. package/build/components/spacing-sizes-control/input-controls/separated.js +3 -3
  596. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  597. package/build/components/spacing-sizes-control/input-controls/single.js +2 -2
  598. package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  599. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +9 -8
  600. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  601. package/build/components/spacing-sizes-control/sides-dropdown/index.js +6 -6
  602. package/build/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  603. package/build/components/text-decoration-control/index.js +6 -6
  604. package/build/components/text-decoration-control/index.js.map +1 -1
  605. package/build/components/text-transform-control/index.js +6 -6
  606. package/build/components/text-transform-control/index.js.map +1 -1
  607. package/build/components/tool-selector/index.js +11 -10
  608. package/build/components/tool-selector/index.js.map +1 -1
  609. package/build/components/typewriter/index.js +3 -3
  610. package/build/components/typewriter/index.js.map +1 -1
  611. package/build/components/ungroup-button/index.native.js +2 -2
  612. package/build/components/ungroup-button/index.native.js.map +1 -1
  613. package/build/components/unit-control/index.js +2 -2
  614. package/build/components/unit-control/index.js.map +1 -1
  615. package/build/components/unsupported-block-details/index.native.js +127 -0
  616. package/build/components/unsupported-block-details/index.native.js.map +1 -0
  617. package/build/components/url-input/button.js +9 -8
  618. package/build/components/url-input/button.js.map +1 -1
  619. package/build/components/url-input/index.js +9 -8
  620. package/build/components/url-input/index.js.map +1 -1
  621. package/build/components/url-input/index.native.js +2 -2
  622. package/build/components/url-input/index.native.js.map +1 -1
  623. package/build/components/url-popover/image-url-input-ui.js +19 -18
  624. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  625. package/build/components/url-popover/index.js +8 -7
  626. package/build/components/url-popover/index.js.map +1 -1
  627. package/build/components/url-popover/link-editor.js +4 -4
  628. package/build/components/url-popover/link-editor.js.map +1 -1
  629. package/build/components/url-popover/link-viewer-url.js +3 -3
  630. package/build/components/url-popover/link-viewer-url.js.map +1 -1
  631. package/build/components/url-popover/link-viewer.js +4 -4
  632. package/build/components/url-popover/link-viewer.js.map +1 -1
  633. package/build/components/use-on-block-drop/index.js +2 -2
  634. package/build/components/use-on-block-drop/index.js.map +1 -1
  635. package/build/components/use-unsupported-block-editor/index.native.js +57 -0
  636. package/build/components/use-unsupported-block-editor/index.native.js.map +1 -0
  637. package/build/components/video-player/gridicon-play.native.js +3 -3
  638. package/build/components/video-player/gridicon-play.native.js.map +1 -1
  639. package/build/components/video-player/index.native.js +6 -5
  640. package/build/components/video-player/index.native.js.map +1 -1
  641. package/build/components/warning/index.js +10 -9
  642. package/build/components/warning/index.js.map +1 -1
  643. package/build/components/warning/index.native.js +6 -6
  644. package/build/components/warning/index.native.js.map +1 -1
  645. package/build/components/writing-flow/index.js +7 -5
  646. package/build/components/writing-flow/index.js.map +1 -1
  647. package/build/components/writing-flow/use-clipboard-handler.js +179 -0
  648. package/build/components/writing-flow/use-clipboard-handler.js.map +1 -0
  649. package/build/components/writing-flow/use-tab-nav.js +4 -3
  650. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  651. package/build/components/writing-mode-control/index.js +6 -6
  652. package/build/components/writing-mode-control/index.js.map +1 -1
  653. package/build/hooks/align.js +6 -6
  654. package/build/hooks/align.js.map +1 -1
  655. package/build/hooks/anchor.js +10 -9
  656. package/build/hooks/anchor.js.map +1 -1
  657. package/build/hooks/background.js +17 -16
  658. package/build/hooks/background.js.map +1 -1
  659. package/build/hooks/block-hooks.js +11 -10
  660. package/build/hooks/block-hooks.js.map +1 -1
  661. package/build/hooks/block-rename-ui.js +17 -16
  662. package/build/hooks/block-rename-ui.js.map +1 -1
  663. package/build/hooks/border.js +6 -5
  664. package/build/hooks/border.js.map +1 -1
  665. package/build/hooks/color.js +7 -6
  666. package/build/hooks/color.js.map +1 -1
  667. package/build/hooks/content-lock-ui.js +9 -8
  668. package/build/hooks/content-lock-ui.js.map +1 -1
  669. package/build/hooks/contrast-checker.js +2 -1
  670. package/build/hooks/contrast-checker.js.map +1 -1
  671. package/build/hooks/custom-class-name.js +7 -7
  672. package/build/hooks/custom-class-name.js.map +1 -1
  673. package/build/hooks/custom-fields.js +8 -8
  674. package/build/hooks/custom-fields.js.map +1 -1
  675. package/build/hooks/dimensions.js +5 -4
  676. package/build/hooks/dimensions.js.map +1 -1
  677. package/build/hooks/duotone.js +10 -9
  678. package/build/hooks/duotone.js.map +1 -1
  679. package/build/hooks/font-size.js +5 -5
  680. package/build/hooks/font-size.js.map +1 -1
  681. package/build/hooks/layout.js +14 -13
  682. package/build/hooks/layout.js.map +1 -1
  683. package/build/hooks/line-height.js +3 -3
  684. package/build/hooks/line-height.js.map +1 -1
  685. package/build/hooks/margin.js +3 -2
  686. package/build/hooks/margin.js.map +1 -1
  687. package/build/hooks/padding.js +3 -2
  688. package/build/hooks/padding.js.map +1 -1
  689. package/build/hooks/position.js +10 -9
  690. package/build/hooks/position.js.map +1 -1
  691. package/build/hooks/style.js +11 -10
  692. package/build/hooks/style.js.map +1 -1
  693. package/build/hooks/typography.js +4 -3
  694. package/build/hooks/typography.js.map +1 -1
  695. package/build/hooks/typography.native.js +4 -4
  696. package/build/hooks/typography.native.js.map +1 -1
  697. package/build/hooks/utils.js +1 -1
  698. package/build/hooks/utils.js.map +1 -1
  699. package/build/layouts/constrained.js +11 -11
  700. package/build/layouts/constrained.js.map +1 -1
  701. package/build/layouts/flex.js +18 -18
  702. package/build/layouts/flex.js.map +1 -1
  703. package/build/layouts/grid.js +10 -10
  704. package/build/layouts/grid.js.map +1 -1
  705. package/build/lock-unlock.js +1 -1
  706. package/build/lock-unlock.js.map +1 -1
  707. package/build/private-apis.js +2 -0
  708. package/build/private-apis.js.map +1 -1
  709. package/build/store/selectors.js +1 -1
  710. package/build/store/selectors.js.map +1 -1
  711. package/build/utils/pasting.js +46 -0
  712. package/build/utils/pasting.js.map +1 -1
  713. package/build/utils/use-notify-copy.js +53 -0
  714. package/build/utils/use-notify-copy.js.map +1 -0
  715. package/build-module/autocompleters/block.js +1 -1
  716. package/build-module/autocompleters/link.js +1 -1
  717. package/build-module/components/alignment-control/index.js +1 -1
  718. package/build-module/components/alignment-control/ui.js +1 -1
  719. package/build-module/components/autocomplete/index.js +1 -1
  720. package/build-module/components/block-actions/index.js +1 -1
  721. package/build-module/components/block-actions/index.js.map +1 -1
  722. package/build-module/components/block-alignment-control/index.js +1 -1
  723. package/build-module/components/block-alignment-control/ui.js +1 -1
  724. package/build-module/components/block-alignment-control/ui.native.js +1 -1
  725. package/build-module/components/block-alignment-matrix-control/index.js +1 -1
  726. package/build-module/components/block-breadcrumb/index.js +2 -2
  727. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  728. package/build-module/components/block-canvas/index.js +7 -9
  729. package/build-module/components/block-canvas/index.js.map +1 -1
  730. package/build-module/components/block-caption/index.native.js +1 -1
  731. package/build-module/components/block-card/index.js +1 -1
  732. package/build-module/components/block-compare/block-view.js +1 -1
  733. package/build-module/components/block-compare/index.js +1 -1
  734. package/build-module/components/block-context/index.js +1 -1
  735. package/build-module/components/block-controls/fill.js +1 -1
  736. package/build-module/components/block-controls/index.js +1 -1
  737. package/build-module/components/block-controls/slot.js +1 -1
  738. package/build-module/components/block-controls/slot.native.js +1 -1
  739. package/build-module/components/block-draggable/draggable-chip.js +1 -1
  740. package/build-module/components/block-draggable/draggable-chip.native.js +1 -1
  741. package/build-module/components/block-draggable/dropping-insertion-point.native.js +1 -1
  742. package/build-module/components/block-draggable/index.js +1 -1
  743. package/build-module/components/block-draggable/index.native.js +1 -1
  744. package/build-module/components/block-edit/edit.js +1 -1
  745. package/build-module/components/block-edit/edit.native.js +1 -1
  746. package/build-module/components/block-edit/index.js +1 -1
  747. package/build-module/components/block-edit-visually-button/index.js +1 -1
  748. package/build-module/components/block-full-height-alignment-control/index.js +1 -1
  749. package/build-module/components/block-heading-level-dropdown/heading-level-icon.js +3 -3
  750. package/build-module/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  751. package/build-module/components/block-heading-level-dropdown/index.js +3 -3
  752. package/build-module/components/block-heading-level-dropdown/index.js.map +1 -1
  753. package/build-module/components/block-heading-level-dropdown/index.native.js +3 -3
  754. package/build-module/components/block-heading-level-dropdown/index.native.js.map +1 -1
  755. package/build-module/components/block-icon/index.js +1 -1
  756. package/build-module/components/block-icon/index.native.js +1 -1
  757. package/build-module/components/block-info-slot-fill/index.js +1 -1
  758. package/build-module/components/block-inspector/index.js +1 -1
  759. package/build-module/components/block-list/block-crash-warning.js +1 -1
  760. package/build-module/components/block-list/block-html.js +1 -1
  761. package/build-module/components/block-list/block-invalid-warning.js +1 -1
  762. package/build-module/components/block-list/block-invalid-warning.native.js +1 -1
  763. package/build-module/components/block-list/block-list-item-cell.native.js +1 -1
  764. package/build-module/components/block-list/block-list-item.native.js +3 -3
  765. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  766. package/build-module/components/block-list/block-outline.native.js +1 -1
  767. package/build-module/components/block-list/block-selection-button.native.js +1 -1
  768. package/build-module/components/block-list/block.js +1 -1
  769. package/build-module/components/block-list/block.native.js +1 -1
  770. package/build-module/components/block-list/grid-item.native.js +1 -1
  771. package/build-module/components/block-list/index.js +1 -1
  772. package/build-module/components/block-list/index.native.js +1 -1
  773. package/build-module/components/block-list/insertion-point.native.js +1 -1
  774. package/build-module/components/block-list/layout.js +1 -1
  775. package/build-module/components/block-list/subdirectory-icon.js +1 -1
  776. package/build-module/components/block-list-appender/index.js +1 -1
  777. package/build-module/components/block-list-appender/index.native.js +1 -1
  778. package/build-module/components/block-lock/menu-item.js +1 -1
  779. package/build-module/components/block-lock/modal.js +1 -1
  780. package/build-module/components/block-lock/toolbar.js +1 -1
  781. package/build-module/components/block-media-update-progress/index.native.js +1 -1
  782. package/build-module/components/block-mover/button.js +1 -1
  783. package/build-module/components/block-mover/index.js +1 -1
  784. package/build-module/components/block-mover/index.native.js +1 -1
  785. package/build-module/components/block-navigation/dropdown.js +1 -1
  786. package/build-module/components/block-parent-selector/index.js +2 -2
  787. package/build-module/components/block-parent-selector/index.js.map +1 -1
  788. package/build-module/components/block-pattern-setup/index.js +1 -1
  789. package/build-module/components/block-pattern-setup/setup-toolbar.js +1 -1
  790. package/build-module/components/block-patterns-list/index.js +1 -1
  791. package/build-module/components/block-patterns-paging/index.js +1 -1
  792. package/build-module/components/block-popover/drop-zone.js +1 -1
  793. package/build-module/components/block-popover/inbetween.js +1 -1
  794. package/build-module/components/block-popover/index.js +1 -1
  795. package/build-module/components/block-preview/auto.js +1 -1
  796. package/build-module/components/block-preview/index.js +2 -2
  797. package/build-module/components/block-preview/index.js.map +1 -1
  798. package/build-module/components/block-quick-navigation/index.js +1 -1
  799. package/build-module/components/block-removal-warning-modal/index.js +1 -1
  800. package/build-module/components/block-selection-clearer/index.js +1 -1
  801. package/build-module/components/block-settings/button.native.js +1 -1
  802. package/build-module/components/block-settings/container.native.js +1 -1
  803. package/build-module/components/block-settings-menu/block-html-convert-button.js +20 -17
  804. package/build-module/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  805. package/build-module/components/block-settings-menu/block-mode-toggle.js +1 -1
  806. package/build-module/components/block-settings-menu/block-settings-dropdown.js +1 -1
  807. package/build-module/components/block-settings-menu/index.js +1 -1
  808. package/build-module/components/block-settings-menu-controls/index.js +2 -2
  809. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  810. package/build-module/components/block-styles/index.js +3 -2
  811. package/build-module/components/block-styles/index.js.map +1 -1
  812. package/build-module/components/block-styles/index.native.js +1 -1
  813. package/build-module/components/block-styles/menu-items.js +1 -1
  814. package/build-module/components/block-styles/preview-panel.js +1 -1
  815. package/build-module/components/block-styles/preview.native.js +1 -1
  816. package/build-module/components/block-switcher/block-styles-menu.js +1 -1
  817. package/build-module/components/block-switcher/block-transformations-menu.js +1 -1
  818. package/build-module/components/block-switcher/block-transformations-menu.native.js +1 -1
  819. package/build-module/components/block-switcher/block-variation-transformations.js +1 -1
  820. package/build-module/components/block-switcher/index.js +6 -6
  821. package/build-module/components/block-switcher/index.js.map +1 -1
  822. package/build-module/components/block-switcher/pattern-transformations-menu.js +5 -3
  823. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  824. package/build-module/components/block-switcher/preview-block-popover.js +1 -1
  825. package/build-module/components/block-toolbar/block-toolbar-menu.native.js +1 -1
  826. package/build-module/components/block-toolbar/index.js +1 -1
  827. package/build-module/components/block-toolbar/index.native.js +1 -1
  828. package/build-module/components/block-tools/back-compat.js +1 -1
  829. package/build-module/components/block-tools/block-contextual-toolbar.js +1 -1
  830. package/build-module/components/block-tools/block-selection-button.js +2 -2
  831. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  832. package/build-module/components/block-tools/index.js +1 -1
  833. package/build-module/components/block-tools/insertion-point.js +1 -1
  834. package/build-module/components/block-tools/selected-block-popover.js +1 -1
  835. package/build-module/components/block-tools/zoom-out-mode-inserters.js +1 -1
  836. package/build-module/components/block-types-list/index.js +1 -1
  837. package/build-module/components/block-types-list/index.native.js +1 -1
  838. package/build-module/components/block-variation-picker/index.js +1 -1
  839. package/build-module/components/block-variation-picker/index.native.js +1 -1
  840. package/build-module/components/block-variation-transforms/index.js +1 -1
  841. package/build-module/components/block-vertical-alignment-control/icons.js +1 -1
  842. package/build-module/components/block-vertical-alignment-control/index.js +1 -1
  843. package/build-module/components/block-vertical-alignment-control/ui.js +1 -1
  844. package/build-module/components/border-radius-control/all-input-control.js +1 -1
  845. package/build-module/components/border-radius-control/index.js +2 -2
  846. package/build-module/components/border-radius-control/index.js.map +1 -1
  847. package/build-module/components/border-radius-control/input-controls.js +1 -1
  848. package/build-module/components/border-radius-control/linked-button.js +1 -1
  849. package/build-module/components/button-block-appender/index.js +1 -1
  850. package/build-module/components/button-block-appender/index.native.js +1 -1
  851. package/build-module/components/caption/index.native.js +1 -1
  852. package/build-module/components/child-layout-control/index.js +2 -2
  853. package/build-module/components/child-layout-control/index.js.map +1 -1
  854. package/build-module/components/color-palette/control.js +1 -1
  855. package/build-module/components/color-palette/with-color-context.js +1 -1
  856. package/build-module/components/color-style-selector/index.js +1 -1
  857. package/build-module/components/colors/with-colors.js +2 -2
  858. package/build-module/components/colors/with-colors.js.map +1 -1
  859. package/build-module/components/colors-gradients/control.js +1 -1
  860. package/build-module/components/colors-gradients/dropdown.js +1 -1
  861. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +1 -1
  862. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +1 -1
  863. package/build-module/components/contrast-checker/index.js +1 -1
  864. package/build-module/components/contrast-checker/index.native.js +1 -1
  865. package/build-module/components/convert-to-group-buttons/index.js +1 -1
  866. package/build-module/components/convert-to-group-buttons/toolbar.js +1 -1
  867. package/build-module/components/copy-handler/index.js +25 -205
  868. package/build-module/components/copy-handler/index.js.map +1 -1
  869. package/build-module/components/date-format-picker/index.js +1 -1
  870. package/build-module/components/default-block-appender/index.js +1 -1
  871. package/build-module/components/default-block-appender/index.native.js +1 -1
  872. package/build-module/components/default-style-picker/index.js +1 -1
  873. package/build-module/components/dimensions-tool/aspect-ratio-tool.js +1 -1
  874. package/build-module/components/dimensions-tool/index.js +2 -2
  875. package/build-module/components/dimensions-tool/index.js.map +1 -1
  876. package/build-module/components/dimensions-tool/scale-tool.js +2 -2
  877. package/build-module/components/dimensions-tool/scale-tool.js.map +1 -1
  878. package/build-module/components/dimensions-tool/width-height-tool.js +3 -3
  879. package/build-module/components/dimensions-tool/width-height-tool.js.map +1 -1
  880. package/build-module/components/duotone-control/index.js +10 -2
  881. package/build-module/components/duotone-control/index.js.map +1 -1
  882. package/build-module/components/editable-text/index.js +1 -1
  883. package/build-module/components/editor-styles/index.js +1 -1
  884. package/build-module/components/floating-toolbar/index.native.js +1 -1
  885. package/build-module/components/floating-toolbar/nav-up-icon.js +1 -1
  886. package/build-module/components/font-appearance-control/index.js +2 -2
  887. package/build-module/components/font-appearance-control/index.js.map +1 -1
  888. package/build-module/components/font-family/index.js +1 -1
  889. package/build-module/components/font-sizes/font-size-picker.js +1 -1
  890. package/build-module/components/font-sizes/with-font-sizes.js +1 -1
  891. package/build-module/components/global-styles/advanced-panel.js +1 -1
  892. package/build-module/components/global-styles/border-panel.js +1 -1
  893. package/build-module/components/global-styles/color-panel.js +1 -1
  894. package/build-module/components/global-styles/color-panel.native.js +1 -1
  895. package/build-module/components/global-styles/dimensions-panel.js +1 -1
  896. package/build-module/components/global-styles/effects-panel.js +1 -1
  897. package/build-module/components/global-styles/filters-panel.js +1 -1
  898. package/build-module/components/global-styles/image-settings-panel.js +1 -1
  899. package/build-module/components/global-styles/typography-panel.js +1 -1
  900. package/build-module/components/gradients/with-gradient.js +1 -1
  901. package/build-module/components/height-control/index.js +2 -2
  902. package/build-module/components/height-control/index.js.map +1 -1
  903. package/build-module/components/iframe/index.js +2 -10
  904. package/build-module/components/iframe/index.js.map +1 -1
  905. package/build-module/components/image-editor/aspect-ratio-dropdown.js +1 -1
  906. package/build-module/components/image-editor/context.js +1 -1
  907. package/build-module/components/image-editor/cropper.js +1 -1
  908. package/build-module/components/image-editor/form-controls.js +1 -1
  909. package/build-module/components/image-editor/index.js +1 -1
  910. package/build-module/components/image-editor/rotation-button.js +1 -1
  911. package/build-module/components/image-editor/zoom-dropdown.js +1 -1
  912. package/build-module/components/image-size-control/index.js +1 -1
  913. package/build-module/components/index.js +1 -1
  914. package/build-module/components/index.js.map +1 -1
  915. package/build-module/components/inner-blocks/button-block-appender.js +1 -1
  916. package/build-module/components/inner-blocks/constants.native.js +6 -0
  917. package/build-module/components/inner-blocks/constants.native.js.map +1 -0
  918. package/build-module/components/inner-blocks/default-block-appender.js +1 -1
  919. package/build-module/components/inner-blocks/index.js +1 -1
  920. package/build-module/components/inner-blocks/index.native.js +13 -1
  921. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  922. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js +86 -0
  923. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -0
  924. package/build-module/components/inner-blocks/with-client-id.js +1 -1
  925. package/build-module/components/inserter/block-patterns-explorer/explorer.js +1 -1
  926. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js +1 -1
  927. package/build-module/components/inserter/block-patterns-explorer/sidebar.js +1 -1
  928. package/build-module/components/inserter/block-patterns-filter.js +1 -1
  929. package/build-module/components/inserter/block-patterns-tab.js +1 -1
  930. package/build-module/components/inserter/block-types-tab.js +1 -1
  931. package/build-module/components/inserter/block-types-tab.native.js +1 -1
  932. package/build-module/components/inserter/index.js +3 -3
  933. package/build-module/components/inserter/index.js.map +1 -1
  934. package/build-module/components/inserter/index.native.js +3 -3
  935. package/build-module/components/inserter/index.native.js.map +1 -1
  936. package/build-module/components/inserter/library.js +1 -1
  937. package/build-module/components/inserter/media-tab/media-list.js +1 -1
  938. package/build-module/components/inserter/media-tab/media-panel.js +1 -1
  939. package/build-module/components/inserter/media-tab/media-preview.js +1 -1
  940. package/build-module/components/inserter/media-tab/media-tab.js +1 -1
  941. package/build-module/components/inserter/media-tab/utils.js +1 -1
  942. package/build-module/components/inserter/menu.js +1 -1
  943. package/build-module/components/inserter/menu.native.js +1 -1
  944. package/build-module/components/inserter/mobile-tab-navigation.js +1 -1
  945. package/build-module/components/inserter/no-results.js +1 -1
  946. package/build-module/components/inserter/no-results.native.js +1 -1
  947. package/build-module/components/inserter/panel.js +1 -1
  948. package/build-module/components/inserter/preview-panel.js +1 -1
  949. package/build-module/components/inserter/quick-inserter.js +1 -1
  950. package/build-module/components/inserter/reusable-block-rename-hint.js +1 -1
  951. package/build-module/components/inserter/reusable-blocks-tab.native.js +1 -1
  952. package/build-module/components/inserter/search-results.js +1 -1
  953. package/build-module/components/inserter/search-results.native.js +1 -1
  954. package/build-module/components/inserter/tabs.js +1 -1
  955. package/build-module/components/inserter/tabs.native.js +1 -1
  956. package/build-module/components/inserter/tips.js +1 -1
  957. package/build-module/components/inserter-draggable-blocks/index.js +1 -1
  958. package/build-module/components/inserter-list-item/index.js +1 -1
  959. package/build-module/components/inserter-listbox/group.js +1 -1
  960. package/build-module/components/inserter-listbox/index.js +1 -1
  961. package/build-module/components/inserter-listbox/item.js +1 -1
  962. package/build-module/components/inserter-listbox/row.js +1 -1
  963. package/build-module/components/inspector-controls/block-support-slot-container.js +1 -1
  964. package/build-module/components/inspector-controls/block-support-tools-panel.js +1 -1
  965. package/build-module/components/inspector-controls/fill.js +1 -1
  966. package/build-module/components/inspector-controls/fill.native.js +1 -1
  967. package/build-module/components/inspector-controls/index.js +1 -1
  968. package/build-module/components/inspector-controls/slot.js +1 -1
  969. package/build-module/components/inspector-controls/slot.native.js +1 -1
  970. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js +1 -1
  971. package/build-module/components/inspector-controls-tabs/index.js +1 -1
  972. package/build-module/components/inspector-controls-tabs/position-controls-panel.js +1 -1
  973. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js +1 -1
  974. package/build-module/components/inspector-controls-tabs/settings-tab.js +1 -1
  975. package/build-module/components/inspector-controls-tabs/styles-tab.js +1 -1
  976. package/build-module/components/inspector-popover-header/index.js +1 -1
  977. package/build-module/components/justify-content-control/index.js +1 -1
  978. package/build-module/components/justify-content-control/ui.js +1 -1
  979. package/build-module/components/letter-spacing-control/index.js +2 -2
  980. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  981. package/build-module/components/line-height-control/index.js +1 -1
  982. package/build-module/components/line-height-control/index.native.js +1 -1
  983. package/build-module/components/link-control/index.js +1 -1
  984. package/build-module/components/link-control/link-preview.js +1 -1
  985. package/build-module/components/link-control/search-create-button.js +1 -1
  986. package/build-module/components/link-control/search-input.js +1 -1
  987. package/build-module/components/link-control/search-item.js +1 -1
  988. package/build-module/components/link-control/search-results.js +1 -1
  989. package/build-module/components/link-control/settings-drawer.js +1 -1
  990. package/build-module/components/link-control/settings.js +1 -1
  991. package/build-module/components/list-view/appender.js +1 -1
  992. package/build-module/components/list-view/aria-referenced-text.js +1 -1
  993. package/build-module/components/list-view/block-contents.js +1 -1
  994. package/build-module/components/list-view/block-select-button.js +1 -1
  995. package/build-module/components/list-view/block.js +1 -1
  996. package/build-module/components/list-view/branch.js +1 -1
  997. package/build-module/components/list-view/drop-indicator.js +1 -1
  998. package/build-module/components/list-view/expander.js +1 -1
  999. package/build-module/components/list-view/index.js +1 -1
  1000. package/build-module/components/list-view/leaf.js +1 -1
  1001. package/build-module/components/media-placeholder/index.js +1 -1
  1002. package/build-module/components/media-placeholder/index.native.js +1 -1
  1003. package/build-module/components/media-replace-flow/index.js +1 -1
  1004. package/build-module/components/media-replace-flow/index.native.js +1 -1
  1005. package/build-module/components/media-upload/{constants.js → constants.native.js} +1 -2
  1006. package/build-module/components/media-upload/constants.native.js.map +1 -0
  1007. package/build-module/components/media-upload/index.js +1 -1
  1008. package/build-module/components/media-upload/index.js.map +1 -1
  1009. package/build-module/components/media-upload/index.native.js +7 -7
  1010. package/build-module/components/media-upload/index.native.js.map +1 -1
  1011. package/build-module/components/media-upload-progress/index.native.js +1 -1
  1012. package/build-module/components/multi-selection-inspector/index.js +1 -1
  1013. package/build-module/components/navigable-toolbar/index.js +1 -1
  1014. package/build-module/components/observe-typing/index.js +1 -1
  1015. package/build-module/components/panel-color-settings/index.js +1 -1
  1016. package/build-module/components/plain-text/index.js +1 -1
  1017. package/build-module/components/plain-text/index.native.js +1 -1
  1018. package/build-module/components/preview-options/index.js +1 -1
  1019. package/build-module/components/provider/block-refs-provider.js +1 -1
  1020. package/build-module/components/provider/index.js +1 -1
  1021. package/build-module/components/provider/index.native.js +1 -1
  1022. package/build-module/components/provider/use-block-sync.js +1 -1
  1023. package/build-module/components/provider/use-block-sync.js.map +1 -1
  1024. package/build-module/components/provider/with-registry-provider.js +1 -1
  1025. package/build-module/components/publish-date-time-picker/index.js +1 -1
  1026. package/build-module/components/recursion-provider/index.js +1 -1
  1027. package/build-module/components/resizable-box-popover/index.js +1 -1
  1028. package/build-module/components/resolution-tool/index.js +1 -1
  1029. package/build-module/components/responsive-block-control/index.js +1 -1
  1030. package/build-module/components/responsive-block-control/label.js +1 -1
  1031. package/build-module/components/rich-text/content.js +1 -1
  1032. package/build-module/components/rich-text/embed-handler-picker.native.js +1 -1
  1033. package/build-module/components/rich-text/format-edit.js +1 -1
  1034. package/build-module/components/rich-text/format-toolbar/index.js +1 -1
  1035. package/build-module/components/rich-text/format-toolbar/index.native.js +1 -1
  1036. package/build-module/components/rich-text/format-toolbar-container.js +1 -1
  1037. package/build-module/components/rich-text/format-toolbar-container.native.js +1 -1
  1038. package/build-module/components/rich-text/get-rich-text-values.js +1 -1
  1039. package/build-module/components/rich-text/index.js +1 -1
  1040. package/build-module/components/rich-text/index.native.js +2 -10
  1041. package/build-module/components/rich-text/index.native.js.map +1 -1
  1042. package/build-module/components/rich-text/multiline.js +1 -1
  1043. package/build-module/components/rich-text/toolbar-button.js +1 -1
  1044. package/build-module/components/rich-text/use-paste-handler.js +7 -89
  1045. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  1046. package/build-module/components/rich-text/utils.js +1 -3
  1047. package/build-module/components/rich-text/utils.js.map +1 -1
  1048. package/build-module/components/skip-to-selected-block/index.js +1 -1
  1049. package/build-module/components/spacing-sizes-control/index.js +1 -1
  1050. package/build-module/components/spacing-sizes-control/input-controls/axial.js +1 -1
  1051. package/build-module/components/spacing-sizes-control/input-controls/separated.js +1 -1
  1052. package/build-module/components/spacing-sizes-control/input-controls/single.js +1 -1
  1053. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -1
  1054. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js +1 -1
  1055. package/build-module/components/text-decoration-control/index.js +2 -2
  1056. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1057. package/build-module/components/text-transform-control/index.js +2 -2
  1058. package/build-module/components/text-transform-control/index.js.map +1 -1
  1059. package/build-module/components/tool-selector/index.js +1 -1
  1060. package/build-module/components/typewriter/index.js +2 -2
  1061. package/build-module/components/typewriter/index.js.map +1 -1
  1062. package/build-module/components/ungroup-button/index.native.js +1 -1
  1063. package/build-module/components/unit-control/index.js +1 -1
  1064. package/build-module/components/unsupported-block-details/index.native.js +118 -0
  1065. package/build-module/components/unsupported-block-details/index.native.js.map +1 -0
  1066. package/build-module/components/url-input/button.js +1 -1
  1067. package/build-module/components/url-input/index.js +1 -1
  1068. package/build-module/components/url-input/index.native.js +1 -1
  1069. package/build-module/components/url-popover/image-url-input-ui.js +1 -1
  1070. package/build-module/components/url-popover/index.js +1 -1
  1071. package/build-module/components/url-popover/link-editor.js +1 -1
  1072. package/build-module/components/url-popover/link-viewer-url.js +1 -1
  1073. package/build-module/components/url-popover/link-viewer.js +1 -1
  1074. package/build-module/components/use-on-block-drop/index.js +2 -2
  1075. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  1076. package/build-module/components/use-unsupported-block-editor/index.native.js +51 -0
  1077. package/build-module/components/use-unsupported-block-editor/index.native.js.map +1 -0
  1078. package/build-module/components/video-player/gridicon-play.native.js +1 -1
  1079. package/build-module/components/video-player/index.native.js +1 -1
  1080. package/build-module/components/warning/index.js +1 -1
  1081. package/build-module/components/warning/index.native.js +1 -1
  1082. package/build-module/components/writing-flow/index.js +5 -4
  1083. package/build-module/components/writing-flow/index.js.map +1 -1
  1084. package/build-module/components/writing-flow/use-clipboard-handler.js +172 -0
  1085. package/build-module/components/writing-flow/use-clipboard-handler.js.map +1 -0
  1086. package/build-module/components/writing-flow/use-tab-nav.js +1 -1
  1087. package/build-module/components/writing-mode-control/index.js +2 -2
  1088. package/build-module/components/writing-mode-control/index.js.map +1 -1
  1089. package/build-module/hooks/align.js +1 -1
  1090. package/build-module/hooks/anchor.js +3 -3
  1091. package/build-module/hooks/anchor.js.map +1 -1
  1092. package/build-module/hooks/background.js +1 -1
  1093. package/build-module/hooks/block-hooks.js +1 -1
  1094. package/build-module/hooks/block-rename-ui.js +1 -1
  1095. package/build-module/hooks/border.js +1 -1
  1096. package/build-module/hooks/color.js +1 -1
  1097. package/build-module/hooks/content-lock-ui.js +1 -1
  1098. package/build-module/hooks/contrast-checker.js +1 -1
  1099. package/build-module/hooks/custom-class-name.js +3 -3
  1100. package/build-module/hooks/custom-class-name.js.map +1 -1
  1101. package/build-module/hooks/custom-fields.js +3 -3
  1102. package/build-module/hooks/custom-fields.js.map +1 -1
  1103. package/build-module/hooks/dimensions.js +1 -1
  1104. package/build-module/hooks/duotone.js +1 -1
  1105. package/build-module/hooks/font-size.js +2 -2
  1106. package/build-module/hooks/font-size.js.map +1 -1
  1107. package/build-module/hooks/layout.js +1 -1
  1108. package/build-module/hooks/line-height.js +2 -2
  1109. package/build-module/hooks/line-height.js.map +1 -1
  1110. package/build-module/hooks/margin.js +1 -1
  1111. package/build-module/hooks/padding.js +1 -1
  1112. package/build-module/hooks/position.js +3 -3
  1113. package/build-module/hooks/position.js.map +1 -1
  1114. package/build-module/hooks/style.js +1 -1
  1115. package/build-module/hooks/typography.js +1 -1
  1116. package/build-module/hooks/typography.native.js +1 -1
  1117. package/build-module/hooks/utils.js +1 -1
  1118. package/build-module/hooks/utils.js.map +1 -1
  1119. package/build-module/layouts/constrained.js +1 -1
  1120. package/build-module/layouts/flex.js +1 -1
  1121. package/build-module/layouts/grid.js +1 -1
  1122. package/build-module/lock-unlock.js +1 -1
  1123. package/build-module/lock-unlock.js.map +1 -1
  1124. package/build-module/private-apis.js +2 -0
  1125. package/build-module/private-apis.js.map +1 -1
  1126. package/build-module/store/selectors.js +1 -1
  1127. package/build-module/store/selectors.js.map +1 -1
  1128. package/build-module/utils/pasting.js +47 -0
  1129. package/build-module/utils/pasting.js.map +1 -1
  1130. package/build-module/utils/use-notify-copy.js +46 -0
  1131. package/build-module/utils/use-notify-copy.js.map +1 -0
  1132. package/build-style/content-rtl.css +10 -11
  1133. package/build-style/content.css +10 -11
  1134. package/build-style/default-editor-styles-rtl.css +1 -1
  1135. package/build-style/default-editor-styles.css +1 -1
  1136. package/build-style/style-rtl.css +10 -16
  1137. package/build-style/style.css +10 -16
  1138. package/package.json +31 -32
  1139. package/src/components/block-actions/index.js +1 -1
  1140. package/src/components/block-breadcrumb/index.js +1 -1
  1141. package/src/components/block-canvas/index.js +6 -12
  1142. package/src/components/block-context/README.md +1 -1
  1143. package/src/components/block-heading-level-dropdown/heading-level-icon.js +2 -2
  1144. package/src/components/block-heading-level-dropdown/index.js +2 -2
  1145. package/src/components/block-heading-level-dropdown/index.native.js +2 -2
  1146. package/src/components/block-list/block-list-item.native.js +2 -2
  1147. package/src/components/block-parent-selector/index.js +1 -1
  1148. package/src/components/block-preview/index.js +1 -1
  1149. package/src/components/block-settings-menu/block-html-convert-button.js +28 -19
  1150. package/src/components/block-settings-menu-controls/index.js +1 -1
  1151. package/src/components/block-styles/index.js +4 -1
  1152. package/src/components/block-switcher/index.js +17 -18
  1153. package/src/components/block-switcher/pattern-transformations-menu.js +4 -1
  1154. package/src/components/block-switcher/style.scss +0 -6
  1155. package/src/components/block-switcher/test/__snapshots__/index.js.snap +2 -2
  1156. package/src/components/block-tools/block-selection-button.js +1 -1
  1157. package/src/components/border-radius-control/index.js +1 -1
  1158. package/src/components/child-layout-control/index.js +1 -1
  1159. package/src/components/color-palette/test/__snapshots__/control.js.snap +1 -1
  1160. package/src/components/colors/with-colors.js +1 -1
  1161. package/src/components/copy-handler/README.md +2 -0
  1162. package/src/components/copy-handler/index.js +21 -291
  1163. package/src/components/dimensions-tool/index.js +1 -1
  1164. package/src/components/dimensions-tool/scale-tool.js +1 -1
  1165. package/src/components/dimensions-tool/width-height-tool.js +1 -1
  1166. package/src/components/duotone-control/index.js +14 -2
  1167. package/src/components/editable-text/README.md +2 -2
  1168. package/src/components/font-appearance-control/index.js +1 -1
  1169. package/src/components/font-family/README.md +1 -1
  1170. package/src/components/height-control/README.md +1 -1
  1171. package/src/components/height-control/index.js +1 -1
  1172. package/src/components/iframe/index.js +1 -8
  1173. package/src/components/image-size-control/README.md +2 -2
  1174. package/src/components/index.js +1 -1
  1175. package/src/components/inner-blocks/constants.native.js +5 -0
  1176. package/src/components/inner-blocks/index.native.js +15 -0
  1177. package/src/components/inner-blocks/warning-max-depth-exceeded.native.js +100 -0
  1178. package/src/components/inserter/index.js +2 -2
  1179. package/src/components/inserter/index.native.js +2 -2
  1180. package/src/components/letter-spacing-control/index.js +1 -1
  1181. package/src/components/media-placeholder/README.md +3 -3
  1182. package/src/components/media-upload/{constants.js → constants.native.js} +0 -1
  1183. package/src/components/media-upload/index.js +1 -1
  1184. package/src/components/media-upload/index.native.js +9 -5
  1185. package/src/components/panel-color-settings/README.md +5 -1
  1186. package/src/components/plain-text/README.md +1 -1
  1187. package/src/components/provider/README.md +1 -1
  1188. package/src/components/provider/use-block-sync.js +1 -1
  1189. package/src/components/publish-date-time-picker/README.md +1 -1
  1190. package/src/components/responsive-block-control/README.md +1 -3
  1191. package/src/components/rich-text/README.md +3 -3
  1192. package/src/components/rich-text/index.native.js +0 -13
  1193. package/src/components/rich-text/use-paste-handler.js +5 -99
  1194. package/src/components/rich-text/utils.js +0 -3
  1195. package/src/components/text-decoration-control/index.js +1 -1
  1196. package/src/components/text-transform-control/index.js +1 -1
  1197. package/src/components/typewriter/index.js +1 -1
  1198. package/src/components/unit-control/README.md +1 -1
  1199. package/src/components/unsupported-block-details/index.native.js +183 -0
  1200. package/src/components/unsupported-block-details/style.native.scss +56 -0
  1201. package/src/components/url-input/README.md +4 -4
  1202. package/src/components/use-on-block-drop/index.js +2 -2
  1203. package/src/components/use-unsupported-block-editor/index.native.js +59 -0
  1204. package/src/components/writing-flow/index.js +4 -2
  1205. package/src/components/writing-flow/use-clipboard-handler.js +242 -0
  1206. package/src/components/writing-mode-control/index.js +1 -1
  1207. package/src/hooks/anchor.js +2 -2
  1208. package/src/hooks/custom-class-name.js +2 -2
  1209. package/src/hooks/custom-fields.js +2 -2
  1210. package/src/hooks/font-size.js +1 -1
  1211. package/src/hooks/line-height.js +1 -1
  1212. package/src/hooks/position.js +2 -2
  1213. package/src/hooks/utils.js +0 -2
  1214. package/src/lock-unlock.js +1 -1
  1215. package/src/private-apis.js +2 -0
  1216. package/src/store/selectors.js +1 -1
  1217. package/src/utils/pasting.js +51 -0
  1218. package/src/utils/use-notify-copy.js +63 -0
  1219. package/tsconfig.tsbuildinfo +1 -1
  1220. package/build/components/block-settings-menu/block-convert-button.js +0 -27
  1221. package/build/components/block-settings-menu/block-convert-button.js.map +0 -1
  1222. package/build/components/media-upload/constants.js.map +0 -1
  1223. package/build-module/components/block-settings-menu/block-convert-button.js +0 -20
  1224. package/build-module/components/block-settings-menu/block-convert-button.js.map +0 -1
  1225. package/build-module/components/media-upload/constants.js.map +0 -1
  1226. package/src/components/block-settings-menu/block-convert-button.js +0 -14
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","Component","React","__","BottomSheet","PanelBody","Picker","TextControl","getOtherMediaOptions","requestMediaPicker","mediaSources","capturePhoto","captureVideo","image","wordpress","mobile","globe","store","blockEditorStore","compose","withSelect","MEDIA_TYPE_IMAGE","MEDIA_TYPE_VIDEO","MEDIA_TYPE_AUDIO","MEDIA_TYPE_ANY","styles","URL_MEDIA_SOURCE","PICKER_OPENING_DELAY","MediaUpload","pickerTimeout","constructor","props","onPickerPresent","bind","onPickerSelect","getAllSources","state","url","showURLInput","otherMediaOptions","componentDidMount","allowedTypes","autoOpen","otherMediaOptionsWithIcons","map","option","requiresModal","types","id","value","setState","componentWillUnmount","clearTimeout","onSelectURL","cameraImageSource","deviceCamera","label","icon","cameraVideoSource","deviceLibrarySource","deviceLibrary","siteLibrarySource","siteMediaLibrary","mediaLibrary","urlSource","internalSources","concat","getMediaOptionsItems","__experimentalOnlyMediaLibrary","isAudioBlockMediaUploadEnabled","filter","source","every","allowedType","includes","some","getChooseFromDeviceIcon","isIOS","OS","picker","setTimeout","presentPicker","onSelect","multiple","mediaSource","shift","type","media","render","isReplacingMedia","isOneType","length","isImage","isVideo","isAudio","isAnyType","isImageOrVideo","pickerTitle","getMediaOptions","createElement","title","hideCancelButton","ref","instance","options","onChange","testID","Fragment","URLInput","isVisible","onClose","open","hideHeader","style","autoFocus","autoCapitalize","autoCorrect","autoComplete","keyboardType","placeholder","select","capabilities","getSettings"],"sources":["@wordpress/block-editor/src/components/media-upload/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { Platform } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component, React } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBottomSheet,\n\tPanelBody,\n\tPicker,\n\tTextControl,\n} from '@wordpress/components';\nimport {\n\tgetOtherMediaOptions,\n\trequestMediaPicker,\n\tmediaSources,\n} from '@wordpress/react-native-bridge';\nimport {\n\tcapturePhoto,\n\tcaptureVideo,\n\timage,\n\twordpress,\n\tmobile,\n\tglobe,\n} from '@wordpress/icons';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { compose } from '@wordpress/compose';\nimport { withSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tMEDIA_TYPE_IMAGE,\n\tMEDIA_TYPE_VIDEO,\n\tMEDIA_TYPE_AUDIO,\n\tMEDIA_TYPE_ANY,\n} from './constants';\nimport styles from './style.scss';\n\nconst URL_MEDIA_SOURCE = 'URL';\n\nconst PICKER_OPENING_DELAY = 200;\n\nexport class MediaUpload extends Component {\n\tpickerTimeout;\n\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.onPickerPresent = this.onPickerPresent.bind( this );\n\t\tthis.onPickerSelect = this.onPickerSelect.bind( this );\n\t\tthis.getAllSources = this.getAllSources.bind( this );\n\t\tthis.state = {\n\t\t\turl: '',\n\t\t\tshowURLInput: false,\n\t\t\totherMediaOptions: [],\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tconst { allowedTypes = [], autoOpen } = this.props;\n\t\tgetOtherMediaOptions( allowedTypes, ( otherMediaOptions ) => {\n\t\t\tconst otherMediaOptionsWithIcons = otherMediaOptions.map(\n\t\t\t\t( option ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...option,\n\t\t\t\t\t\trequiresModal: true,\n\t\t\t\t\t\ttypes: allowedTypes,\n\t\t\t\t\t\tid: option.value,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tthis.setState( { otherMediaOptions: otherMediaOptionsWithIcons } );\n\t\t} );\n\n\t\tif ( autoOpen ) {\n\t\t\tthis.onPickerPresent();\n\t\t}\n\t}\n\n\tcomponentWillUnmount() {\n\t\tclearTimeout( this.pickerTimeout );\n\t}\n\n\tgetAllSources() {\n\t\tconst { onSelectURL } = this.props;\n\n\t\tconst cameraImageSource = {\n\t\t\tid: mediaSources.deviceCamera, // ID is the value sent to native.\n\t\t\tvalue: mediaSources.deviceCamera + '-IMAGE', // This is needed to diferenciate image-camera from video-camera sources.\n\t\t\tlabel: __( 'Take a Photo' ),\n\t\t\trequiresModal: true,\n\t\t\ttypes: [ MEDIA_TYPE_IMAGE ],\n\t\t\ticon: capturePhoto,\n\t\t};\n\n\t\tconst cameraVideoSource = {\n\t\t\tid: mediaSources.deviceCamera,\n\t\t\tvalue: mediaSources.deviceCamera,\n\t\t\tlabel: __( 'Take a Video' ),\n\t\t\trequiresModal: true,\n\t\t\ttypes: [ MEDIA_TYPE_VIDEO ],\n\t\t\ticon: captureVideo,\n\t\t};\n\n\t\tconst deviceLibrarySource = {\n\t\t\tid: mediaSources.deviceLibrary,\n\t\t\tvalue: mediaSources.deviceLibrary,\n\t\t\tlabel: __( 'Choose from device' ),\n\t\t\trequiresModal: true,\n\t\t\ttypes: [ MEDIA_TYPE_IMAGE, MEDIA_TYPE_VIDEO ],\n\t\t\ticon: image,\n\t\t};\n\n\t\tconst siteLibrarySource = {\n\t\t\tid: mediaSources.siteMediaLibrary,\n\t\t\tvalue: mediaSources.siteMediaLibrary,\n\t\t\tlabel: __( 'WordPress Media Library' ),\n\t\t\trequiresModal: true,\n\t\t\ttypes: [\n\t\t\t\tMEDIA_TYPE_IMAGE,\n\t\t\t\tMEDIA_TYPE_VIDEO,\n\t\t\t\tMEDIA_TYPE_AUDIO,\n\t\t\t\tMEDIA_TYPE_ANY,\n\t\t\t],\n\t\t\ticon: wordpress,\n\t\t\tmediaLibrary: true,\n\t\t};\n\n\t\tconst urlSource = {\n\t\t\tid: URL_MEDIA_SOURCE,\n\t\t\tvalue: URL_MEDIA_SOURCE,\n\t\t\tlabel: __( 'Insert from URL' ),\n\t\t\ttypes: [ MEDIA_TYPE_AUDIO, MEDIA_TYPE_IMAGE, MEDIA_TYPE_VIDEO ],\n\t\t\ticon: globe,\n\t\t};\n\n\t\t// Only include `urlSource` option if `onSelectURL` prop is present, in order to match the web behavior.\n\t\tconst internalSources = [\n\t\t\tdeviceLibrarySource,\n\t\t\tcameraImageSource,\n\t\t\tcameraVideoSource,\n\t\t\tsiteLibrarySource,\n\t\t\t...( onSelectURL ? [ urlSource ] : [] ),\n\t\t];\n\n\t\treturn internalSources.concat( this.state.otherMediaOptions );\n\t}\n\n\tgetMediaOptionsItems() {\n\t\tconst {\n\t\t\tallowedTypes = [],\n\t\t\t__experimentalOnlyMediaLibrary,\n\t\t\tisAudioBlockMediaUploadEnabled,\n\t\t} = this.props;\n\n\t\treturn this.getAllSources()\n\t\t\t.filter( ( source ) => {\n\t\t\t\tif ( __experimentalOnlyMediaLibrary ) {\n\t\t\t\t\treturn source.mediaLibrary;\n\t\t\t\t} else if (\n\t\t\t\t\tallowedTypes.every(\n\t\t\t\t\t\t( allowedType ) =>\n\t\t\t\t\t\t\tallowedType === MEDIA_TYPE_AUDIO &&\n\t\t\t\t\t\t\tsource.types.includes( allowedType )\n\t\t\t\t\t) &&\n\t\t\t\t\tsource.id !== URL_MEDIA_SOURCE\n\t\t\t\t) {\n\t\t\t\t\treturn isAudioBlockMediaUploadEnabled === true;\n\t\t\t\t}\n\n\t\t\t\treturn allowedTypes.some( ( allowedType ) =>\n\t\t\t\t\tsource.types.includes( allowedType )\n\t\t\t\t);\n\t\t\t} )\n\t\t\t.map( ( source ) => {\n\t\t\t\treturn {\n\t\t\t\t\t...source,\n\t\t\t\t\ticon: source.icon || this.getChooseFromDeviceIcon(),\n\t\t\t\t};\n\t\t\t} );\n\t}\n\n\tgetChooseFromDeviceIcon() {\n\t\treturn mobile;\n\t}\n\n\tonPickerPresent() {\n\t\tconst { autoOpen } = this.props;\n\t\tconst isIOS = Platform.OS === 'ios';\n\n\t\tif ( this.picker ) {\n\t\t\t// the delay below is required because on iOS this action sheet gets dismissed by the close event of the Inserter\n\t\t\t// so this delay allows the Inserter to be closed fully before presenting action sheet.\n\t\t\tif ( autoOpen && isIOS ) {\n\t\t\t\tthis.pickerTimeout = setTimeout(\n\t\t\t\t\t() => this.picker.presentPicker(),\n\t\t\t\t\tPICKER_OPENING_DELAY\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthis.picker.presentPicker();\n\t\t\t}\n\t\t}\n\t}\n\n\tonPickerSelect( value ) {\n\t\tconst { allowedTypes = [], onSelect, multiple = false } = this.props;\n\n\t\tif ( value === URL_MEDIA_SOURCE ) {\n\t\t\tthis.setState( { showURLInput: true } );\n\t\t\treturn;\n\t\t}\n\n\t\tconst mediaSource = this.getAllSources()\n\t\t\t.filter( ( source ) => source.value === value )\n\t\t\t.shift();\n\t\tconst types = allowedTypes.filter( ( type ) =>\n\t\t\tmediaSource.types.includes( type )\n\t\t);\n\n\t\trequestMediaPicker( mediaSource.id, types, multiple, ( media ) => {\n\t\t\tif ( ( multiple && media ) || ( media && media.id ) ) {\n\t\t\t\tonSelect( media );\n\t\t\t}\n\t\t} );\n\t}\n\n\trender() {\n\t\tconst { allowedTypes = [], isReplacingMedia, multiple } = this.props;\n\t\tconst isOneType = allowedTypes.length === 1;\n\t\tconst isImage = isOneType && allowedTypes.includes( MEDIA_TYPE_IMAGE );\n\t\tconst isVideo = isOneType && allowedTypes.includes( MEDIA_TYPE_VIDEO );\n\t\tconst isAudio = isOneType && allowedTypes.includes( MEDIA_TYPE_AUDIO );\n\t\tconst isAnyType = isOneType && allowedTypes.includes( MEDIA_TYPE_ANY );\n\n\t\tconst isImageOrVideo =\n\t\t\tallowedTypes.length === 2 &&\n\t\t\tallowedTypes.includes( MEDIA_TYPE_IMAGE ) &&\n\t\t\tallowedTypes.includes( MEDIA_TYPE_VIDEO );\n\n\t\tlet pickerTitle;\n\t\tif ( isImage ) {\n\t\t\tif ( isReplacingMedia ) {\n\t\t\t\tpickerTitle = __( 'Replace image' );\n\t\t\t} else {\n\t\t\t\tpickerTitle = multiple\n\t\t\t\t\t? __( 'Choose images' )\n\t\t\t\t\t: __( 'Choose image' );\n\t\t\t}\n\t\t} else if ( isVideo ) {\n\t\t\tif ( isReplacingMedia ) {\n\t\t\t\tpickerTitle = __( 'Replace video' );\n\t\t\t} else {\n\t\t\t\tpickerTitle = __( 'Choose video' );\n\t\t\t}\n\t\t} else if ( isImageOrVideo ) {\n\t\t\tif ( isReplacingMedia ) {\n\t\t\t\tpickerTitle = __( 'Replace image or video' );\n\t\t\t} else {\n\t\t\t\tpickerTitle = __( 'Choose image or video' );\n\t\t\t}\n\t\t} else if ( isAudio ) {\n\t\t\tif ( isReplacingMedia ) {\n\t\t\t\tpickerTitle = __( 'Replace audio' );\n\t\t\t} else {\n\t\t\t\tpickerTitle = __( 'Choose audio' );\n\t\t\t}\n\t\t} else if ( isAnyType ) {\n\t\t\tpickerTitle = __( 'Choose file' );\n\t\t\tif ( isReplacingMedia ) {\n\t\t\t\tpickerTitle = __( 'Replace file' );\n\t\t\t} else {\n\t\t\t\tpickerTitle = __( 'Choose file' );\n\t\t\t}\n\t\t}\n\n\t\tconst getMediaOptions = () => (\n\t\t\t<Picker\n\t\t\t\ttitle={ pickerTitle }\n\t\t\t\thideCancelButton\n\t\t\t\tref={ ( instance ) => ( this.picker = instance ) }\n\t\t\t\toptions={ this.getMediaOptionsItems() }\n\t\t\t\tonChange={ this.onPickerSelect }\n\t\t\t\ttestID=\"media-options-picker\"\n\t\t\t/>\n\t\t);\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<URLInput\n\t\t\t\t\tisVisible={ this.state.showURLInput }\n\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\tif ( this.state.url !== '' ) {\n\t\t\t\t\t\t\tthis.props.onSelectURL( this.state.url );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthis.setState( { showURLInput: false, url: '' } );\n\t\t\t\t\t} }\n\t\t\t\t\tonChange={ ( url ) => {\n\t\t\t\t\t\tthis.setState( { url } );\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ this.state.url }\n\t\t\t\t/>\n\t\t\t\t{ this.props.render( {\n\t\t\t\t\topen: this.onPickerPresent,\n\t\t\t\t\tgetMediaOptions,\n\t\t\t\t} ) }\n\t\t\t</>\n\t\t);\n\t}\n}\n\nfunction URLInput( props ) {\n\treturn (\n\t\t<BottomSheet\n\t\t\thideHeader\n\t\t\tisVisible={ props.isVisible }\n\t\t\tonClose={ props.onClose }\n\t\t>\n\t\t\t<PanelBody style={ styles[ 'media-upload__link-input' ] }>\n\t\t\t\t<TextControl\n\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\tautoFocus\n\t\t\t\t\tautoCapitalize=\"none\"\n\t\t\t\t\tautoCorrect={ false }\n\t\t\t\t\tautoComplete={ Platform.isIOS ? 'url' : 'off' }\n\t\t\t\t\tkeyboardType=\"url\"\n\t\t\t\t\tlabel={ __( 'Insert from URL' ) }\n\t\t\t\t\tonChange={ props.onChange }\n\t\t\t\t\tplaceholder={ __( 'Type a URL' ) }\n\t\t\t\t\tvalue={ props.value }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</BottomSheet>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst { capabilities } = select( blockEditorStore ).getSettings();\n\t\treturn {\n\t\t\tisAudioBlockMediaUploadEnabled:\n\t\t\t\tcapabilities?.isAudioBlockMediaUploadEnabled === true,\n\t\t};\n\t} ),\n] )( MediaUpload );\n"],"mappings":"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"}
1
+ {"version":3,"names":["Platform","Component","React","__","BottomSheet","PanelBody","Picker","TextControl","getOtherMediaOptions","requestMediaPicker","mediaSources","capturePhoto","captureVideo","image","wordpress","mobile","globe","store","blockEditorStore","compose","withSelect","MEDIA_TYPE_IMAGE","MEDIA_TYPE_VIDEO","MEDIA_TYPE_AUDIO","MEDIA_TYPE_ANY","OPTION_TAKE_VIDEO","OPTION_TAKE_PHOTO","OPTION_INSERT_FROM_URL","OPTION_WORDPRESS_MEDIA_LIBRARY","styles","URL_MEDIA_SOURCE","PICKER_OPENING_DELAY","MediaUpload","pickerTimeout","constructor","props","onPickerPresent","bind","onPickerSelect","getAllSources","state","url","showURLInput","otherMediaOptions","componentDidMount","allowedTypes","autoOpen","otherMediaOptionsWithIcons","map","option","requiresModal","types","id","value","setState","componentWillUnmount","clearTimeout","onSelectURL","cameraImageSource","deviceCamera","label","icon","cameraVideoSource","deviceLibrarySource","deviceLibrary","siteLibrarySource","siteMediaLibrary","mediaLibrary","urlSource","internalSources","concat","getMediaOptionsItems","__experimentalOnlyMediaLibrary","isAudioBlockMediaUploadEnabled","filter","source","every","allowedType","includes","some","getChooseFromDeviceIcon","isIOS","OS","picker","setTimeout","presentPicker","onSelect","multiple","mediaSource","shift","type","media","render","isReplacingMedia","isOneType","length","isImage","isVideo","isAudio","isAnyType","isImageOrVideo","pickerTitle","getMediaOptions","createElement","title","hideCancelButton","ref","instance","options","onChange","testID","Fragment","URLInput","isVisible","onClose","open","hideHeader","style","autoFocus","autoCapitalize","autoCorrect","autoComplete","keyboardType","placeholder","select","capabilities","getSettings"],"sources":["@wordpress/block-editor/src/components/media-upload/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { Platform } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Component, React } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBottomSheet,\n\tPanelBody,\n\tPicker,\n\tTextControl,\n} from '@wordpress/components';\nimport {\n\tgetOtherMediaOptions,\n\trequestMediaPicker,\n\tmediaSources,\n} from '@wordpress/react-native-bridge';\nimport {\n\tcapturePhoto,\n\tcaptureVideo,\n\timage,\n\twordpress,\n\tmobile,\n\tglobe,\n} from '@wordpress/icons';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { compose } from '@wordpress/compose';\nimport { withSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tMEDIA_TYPE_IMAGE,\n\tMEDIA_TYPE_VIDEO,\n\tMEDIA_TYPE_AUDIO,\n\tMEDIA_TYPE_ANY,\n\tOPTION_TAKE_VIDEO,\n\tOPTION_TAKE_PHOTO,\n\tOPTION_INSERT_FROM_URL,\n\tOPTION_WORDPRESS_MEDIA_LIBRARY,\n} from './constants';\nimport styles from './style.scss';\n\nconst URL_MEDIA_SOURCE = 'URL';\n\nconst PICKER_OPENING_DELAY = 200;\n\nexport class MediaUpload extends Component {\n\tpickerTimeout;\n\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.onPickerPresent = this.onPickerPresent.bind( this );\n\t\tthis.onPickerSelect = this.onPickerSelect.bind( this );\n\t\tthis.getAllSources = this.getAllSources.bind( this );\n\t\tthis.state = {\n\t\t\turl: '',\n\t\t\tshowURLInput: false,\n\t\t\totherMediaOptions: [],\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tconst { allowedTypes = [], autoOpen } = this.props;\n\t\tgetOtherMediaOptions( allowedTypes, ( otherMediaOptions ) => {\n\t\t\tconst otherMediaOptionsWithIcons = otherMediaOptions.map(\n\t\t\t\t( option ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...option,\n\t\t\t\t\t\trequiresModal: true,\n\t\t\t\t\t\ttypes: allowedTypes,\n\t\t\t\t\t\tid: option.value,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tthis.setState( { otherMediaOptions: otherMediaOptionsWithIcons } );\n\t\t} );\n\n\t\tif ( autoOpen ) {\n\t\t\tthis.onPickerPresent();\n\t\t}\n\t}\n\n\tcomponentWillUnmount() {\n\t\tclearTimeout( this.pickerTimeout );\n\t}\n\n\tgetAllSources() {\n\t\tconst { onSelectURL } = this.props;\n\n\t\tconst cameraImageSource = {\n\t\t\tid: mediaSources.deviceCamera, // ID is the value sent to native.\n\t\t\tvalue: mediaSources.deviceCamera + '-IMAGE', // This is needed to diferenciate image-camera from video-camera sources.\n\t\t\tlabel: OPTION_TAKE_PHOTO,\n\t\t\trequiresModal: true,\n\t\t\ttypes: [ MEDIA_TYPE_IMAGE ],\n\t\t\ticon: capturePhoto,\n\t\t};\n\n\t\tconst cameraVideoSource = {\n\t\t\tid: mediaSources.deviceCamera,\n\t\t\tvalue: mediaSources.deviceCamera,\n\t\t\tlabel: OPTION_TAKE_VIDEO,\n\t\t\trequiresModal: true,\n\t\t\ttypes: [ MEDIA_TYPE_VIDEO ],\n\t\t\ticon: captureVideo,\n\t\t};\n\n\t\tconst deviceLibrarySource = {\n\t\t\tid: mediaSources.deviceLibrary,\n\t\t\tvalue: mediaSources.deviceLibrary,\n\t\t\tlabel: __( 'Choose from device' ),\n\t\t\trequiresModal: true,\n\t\t\ttypes: [ MEDIA_TYPE_IMAGE, MEDIA_TYPE_VIDEO ],\n\t\t\ticon: image,\n\t\t};\n\n\t\tconst siteLibrarySource = {\n\t\t\tid: mediaSources.siteMediaLibrary,\n\t\t\tvalue: mediaSources.siteMediaLibrary,\n\t\t\tlabel: OPTION_WORDPRESS_MEDIA_LIBRARY,\n\t\t\trequiresModal: true,\n\t\t\ttypes: [\n\t\t\t\tMEDIA_TYPE_IMAGE,\n\t\t\t\tMEDIA_TYPE_VIDEO,\n\t\t\t\tMEDIA_TYPE_AUDIO,\n\t\t\t\tMEDIA_TYPE_ANY,\n\t\t\t],\n\t\t\ticon: wordpress,\n\t\t\tmediaLibrary: true,\n\t\t};\n\n\t\tconst urlSource = {\n\t\t\tid: URL_MEDIA_SOURCE,\n\t\t\tvalue: URL_MEDIA_SOURCE,\n\t\t\tlabel: OPTION_INSERT_FROM_URL,\n\t\t\ttypes: [ MEDIA_TYPE_AUDIO, MEDIA_TYPE_IMAGE, MEDIA_TYPE_VIDEO ],\n\t\t\ticon: globe,\n\t\t};\n\n\t\t// Only include `urlSource` option if `onSelectURL` prop is present, in order to match the web behavior.\n\t\tconst internalSources = [\n\t\t\tdeviceLibrarySource,\n\t\t\tcameraImageSource,\n\t\t\tcameraVideoSource,\n\t\t\tsiteLibrarySource,\n\t\t\t...( onSelectURL ? [ urlSource ] : [] ),\n\t\t];\n\n\t\treturn internalSources.concat( this.state.otherMediaOptions );\n\t}\n\n\tgetMediaOptionsItems() {\n\t\tconst {\n\t\t\tallowedTypes = [],\n\t\t\t__experimentalOnlyMediaLibrary,\n\t\t\tisAudioBlockMediaUploadEnabled,\n\t\t} = this.props;\n\n\t\treturn this.getAllSources()\n\t\t\t.filter( ( source ) => {\n\t\t\t\tif ( __experimentalOnlyMediaLibrary ) {\n\t\t\t\t\treturn source.mediaLibrary;\n\t\t\t\t} else if (\n\t\t\t\t\tallowedTypes.every(\n\t\t\t\t\t\t( allowedType ) =>\n\t\t\t\t\t\t\tallowedType === MEDIA_TYPE_AUDIO &&\n\t\t\t\t\t\t\tsource.types.includes( allowedType )\n\t\t\t\t\t) &&\n\t\t\t\t\tsource.id !== URL_MEDIA_SOURCE\n\t\t\t\t) {\n\t\t\t\t\treturn isAudioBlockMediaUploadEnabled === true;\n\t\t\t\t}\n\n\t\t\t\treturn allowedTypes.some( ( allowedType ) =>\n\t\t\t\t\tsource.types.includes( allowedType )\n\t\t\t\t);\n\t\t\t} )\n\t\t\t.map( ( source ) => {\n\t\t\t\treturn {\n\t\t\t\t\t...source,\n\t\t\t\t\ticon: source.icon || this.getChooseFromDeviceIcon(),\n\t\t\t\t};\n\t\t\t} );\n\t}\n\n\tgetChooseFromDeviceIcon() {\n\t\treturn mobile;\n\t}\n\n\tonPickerPresent() {\n\t\tconst { autoOpen } = this.props;\n\t\tconst isIOS = Platform.OS === 'ios';\n\n\t\tif ( this.picker ) {\n\t\t\t// the delay below is required because on iOS this action sheet gets dismissed by the close event of the Inserter\n\t\t\t// so this delay allows the Inserter to be closed fully before presenting action sheet.\n\t\t\tif ( autoOpen && isIOS ) {\n\t\t\t\tthis.pickerTimeout = setTimeout(\n\t\t\t\t\t() => this.picker.presentPicker(),\n\t\t\t\t\tPICKER_OPENING_DELAY\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthis.picker.presentPicker();\n\t\t\t}\n\t\t}\n\t}\n\n\tonPickerSelect( value ) {\n\t\tconst { allowedTypes = [], onSelect, multiple = false } = this.props;\n\n\t\tif ( value === URL_MEDIA_SOURCE ) {\n\t\t\tthis.setState( { showURLInput: true } );\n\t\t\treturn;\n\t\t}\n\n\t\tconst mediaSource = this.getAllSources()\n\t\t\t.filter( ( source ) => source.value === value )\n\t\t\t.shift();\n\t\tconst types = allowedTypes.filter( ( type ) =>\n\t\t\tmediaSource.types.includes( type )\n\t\t);\n\n\t\trequestMediaPicker( mediaSource.id, types, multiple, ( media ) => {\n\t\t\tif ( ( multiple && media ) || ( media && media.id ) ) {\n\t\t\t\tonSelect( media );\n\t\t\t}\n\t\t} );\n\t}\n\n\trender() {\n\t\tconst { allowedTypes = [], isReplacingMedia, multiple } = this.props;\n\t\tconst isOneType = allowedTypes.length === 1;\n\t\tconst isImage = isOneType && allowedTypes.includes( MEDIA_TYPE_IMAGE );\n\t\tconst isVideo = isOneType && allowedTypes.includes( MEDIA_TYPE_VIDEO );\n\t\tconst isAudio = isOneType && allowedTypes.includes( MEDIA_TYPE_AUDIO );\n\t\tconst isAnyType = isOneType && allowedTypes.includes( MEDIA_TYPE_ANY );\n\n\t\tconst isImageOrVideo =\n\t\t\tallowedTypes.length === 2 &&\n\t\t\tallowedTypes.includes( MEDIA_TYPE_IMAGE ) &&\n\t\t\tallowedTypes.includes( MEDIA_TYPE_VIDEO );\n\n\t\tlet pickerTitle;\n\t\tif ( isImage ) {\n\t\t\tif ( isReplacingMedia ) {\n\t\t\t\tpickerTitle = __( 'Replace image' );\n\t\t\t} else {\n\t\t\t\tpickerTitle = multiple\n\t\t\t\t\t? __( 'Choose images' )\n\t\t\t\t\t: __( 'Choose image' );\n\t\t\t}\n\t\t} else if ( isVideo ) {\n\t\t\tif ( isReplacingMedia ) {\n\t\t\t\tpickerTitle = __( 'Replace video' );\n\t\t\t} else {\n\t\t\t\tpickerTitle = __( 'Choose video' );\n\t\t\t}\n\t\t} else if ( isImageOrVideo ) {\n\t\t\tif ( isReplacingMedia ) {\n\t\t\t\tpickerTitle = __( 'Replace image or video' );\n\t\t\t} else {\n\t\t\t\tpickerTitle = __( 'Choose image or video' );\n\t\t\t}\n\t\t} else if ( isAudio ) {\n\t\t\tif ( isReplacingMedia ) {\n\t\t\t\tpickerTitle = __( 'Replace audio' );\n\t\t\t} else {\n\t\t\t\tpickerTitle = __( 'Choose audio' );\n\t\t\t}\n\t\t} else if ( isAnyType ) {\n\t\t\tpickerTitle = __( 'Choose file' );\n\t\t\tif ( isReplacingMedia ) {\n\t\t\t\tpickerTitle = __( 'Replace file' );\n\t\t\t} else {\n\t\t\t\tpickerTitle = __( 'Choose file' );\n\t\t\t}\n\t\t}\n\n\t\tconst getMediaOptions = () => (\n\t\t\t<Picker\n\t\t\t\ttitle={ pickerTitle }\n\t\t\t\thideCancelButton\n\t\t\t\tref={ ( instance ) => ( this.picker = instance ) }\n\t\t\t\toptions={ this.getMediaOptionsItems() }\n\t\t\t\tonChange={ this.onPickerSelect }\n\t\t\t\ttestID=\"media-options-picker\"\n\t\t\t/>\n\t\t);\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<URLInput\n\t\t\t\t\tisVisible={ this.state.showURLInput }\n\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\tif ( this.state.url !== '' ) {\n\t\t\t\t\t\t\tthis.props.onSelectURL( this.state.url );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthis.setState( { showURLInput: false, url: '' } );\n\t\t\t\t\t} }\n\t\t\t\t\tonChange={ ( url ) => {\n\t\t\t\t\t\tthis.setState( { url } );\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ this.state.url }\n\t\t\t\t/>\n\t\t\t\t{ this.props.render( {\n\t\t\t\t\topen: this.onPickerPresent,\n\t\t\t\t\tgetMediaOptions,\n\t\t\t\t} ) }\n\t\t\t</>\n\t\t);\n\t}\n}\n\nfunction URLInput( props ) {\n\treturn (\n\t\t<BottomSheet\n\t\t\thideHeader\n\t\t\tisVisible={ props.isVisible }\n\t\t\tonClose={ props.onClose }\n\t\t>\n\t\t\t<PanelBody style={ styles[ 'media-upload__link-input' ] }>\n\t\t\t\t<TextControl\n\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\tautoFocus\n\t\t\t\t\tautoCapitalize=\"none\"\n\t\t\t\t\tautoCorrect={ false }\n\t\t\t\t\tautoComplete={ Platform.isIOS ? 'url' : 'off' }\n\t\t\t\t\tkeyboardType=\"url\"\n\t\t\t\t\tlabel={ OPTION_INSERT_FROM_URL }\n\t\t\t\t\tonChange={ props.onChange }\n\t\t\t\t\tplaceholder={ __( 'Type a URL' ) }\n\t\t\t\t\tvalue={ props.value }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</BottomSheet>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst { capabilities } = select( blockEditorStore ).getSettings();\n\t\treturn {\n\t\t\tisAudioBlockMediaUploadEnabled:\n\t\t\t\tcapabilities?.isAudioBlockMediaUploadEnabled === true,\n\t\t};\n\t} ),\n] )( MediaUpload );\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * External dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * Internal dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * External dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * External dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement, Fragment } from "@wordpress/element";
1
+ import { createElement, Fragment } from "react";
2
2
  /**
3
3
  * External dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -254,7 +254,7 @@ export default function useBlockSync({
254
254
  });
255
255
  }
256
256
  previousAreBlocksDifferent = areBlocksDifferent;
257
- });
257
+ }, blockEditorStore);
258
258
  return () => {
259
259
  subscribed.current = false;
260
260
  unsubscribe();
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useRef","useRegistry","useSelect","cloneBlock","store","blockEditorStore","noop","useBlockSync","clientId","value","controlledBlocks","selection","controlledSelection","onChange","onInput","registry","resetBlocks","resetSelection","replaceInnerBlocks","selectBlock","setHasControlledInnerBlocks","__unstableMarkNextChangeAsNotPersistent","dispatch","hasSelectedBlock","getBlockName","getBlocks","getSelectionStart","getSelectionEnd","getBlock","select","isControlled","areInnerBlocksControlled","pendingChanges","incoming","outgoing","subscribed","setControlledBlocks","batch","storeBlocks","map","block","current","unsetControlledBlocks","onInputRef","onChangeRef","includes","length","hadSelecton","selectionAnchor","selectionFocus","selectionStart","selectionEnd","initialPosition","selectionStillExists","getSelectedBlocksInitialCaretPosition","isLastBlockChangePersistent","__unstableIsLastBlockChangeIgnored","blocks","isPersistent","previousAreBlocksDifferent","unsubscribe","subscribe","isStillControlled","newIsPersistent","newBlocks","areBlocksDifferent","didPersistenceChange","push","updateParent"],"sources":["@wordpress/block-editor/src/components/provider/use-block-sync.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\nimport { useRegistry, useSelect } from '@wordpress/data';\nimport { cloneBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\nconst noop = () => {};\n\n/**\n * A function to call when the block value has been updated in the block-editor\n * store.\n *\n * @callback onBlockUpdate\n * @param {Object[]} blocks The updated blocks.\n * @param {Object} options The updated block options, such as selectionStart\n * and selectionEnd.\n */\n\n/**\n * useBlockSync is a side effect which handles bidirectional sync between the\n * block-editor store and a controlling data source which provides blocks. This\n * is most commonly used by the BlockEditorProvider to synchronize the contents\n * of the block-editor store with the root entity, like a post.\n *\n * Another example would be the template part block, which provides blocks from\n * a separate entity data source than a root entity. This hook syncs edits to\n * the template part in the block editor back to the entity and vice-versa.\n *\n * Here are some of its basic functions:\n * - Initalizes the block-editor store for the given clientID to the blocks\n * given via props.\n * - Adds incoming changes (like undo) to the block-editor store.\n * - Adds outgoing changes (like editing content) to the controlling entity,\n * determining if a change should be considered persistent or not.\n * - Handles edge cases and race conditions which occur in those operations.\n * - Ignores changes which happen to other entities (like nested inner block\n * controllers.\n * - Passes selection state from the block-editor store to the controlling entity.\n *\n * @param {Object} props Props for the block sync hook\n * @param {string} props.clientId The client ID of the inner block controller.\n * If none is passed, then it is assumed to be a\n * root controller rather than an inner block\n * controller.\n * @param {Object[]} props.value The control value for the blocks. This value\n * is used to initalize the block-editor store\n * and for resetting the blocks to incoming\n * changes like undo.\n * @param {Object} props.selection The selection state responsible to restore the selection on undo/redo.\n * @param {onBlockUpdate} props.onChange Function to call when a persistent\n * change has been made in the block-editor blocks\n * for the given clientId. For example, after\n * this function is called, an entity is marked\n * dirty because it has changes to save.\n * @param {onBlockUpdate} props.onInput Function to call when a non-persistent\n * change has been made in the block-editor blocks\n * for the given clientId. When this is called,\n * controlling sources do not become dirty.\n */\nexport default function useBlockSync( {\n\tclientId = null,\n\tvalue: controlledBlocks,\n\tselection: controlledSelection,\n\tonChange = noop,\n\tonInput = noop,\n} ) {\n\tconst registry = useRegistry();\n\n\tconst {\n\t\tresetBlocks,\n\t\tresetSelection,\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\tsetHasControlledInnerBlocks,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = registry.dispatch( blockEditorStore );\n\tconst {\n\t\thasSelectedBlock,\n\t\tgetBlockName,\n\t\tgetBlocks,\n\t\tgetSelectionStart,\n\t\tgetSelectionEnd,\n\t\tgetBlock,\n\t} = registry.select( blockEditorStore );\n\tconst isControlled = useSelect(\n\t\t( select ) => {\n\t\t\treturn (\n\t\t\t\t! clientId ||\n\t\t\t\tselect( blockEditorStore ).areInnerBlocksControlled( clientId )\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst pendingChanges = useRef( { incoming: null, outgoing: [] } );\n\tconst subscribed = useRef( false );\n\n\tconst setControlledBlocks = () => {\n\t\tif ( ! controlledBlocks ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// We don't need to persist this change because we only replace\n\t\t// controlled inner blocks when the change was caused by an entity,\n\t\t// and so it would already be persisted.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tif ( clientId ) {\n\t\t\t// It is important to batch here because otherwise,\n\t\t\t// as soon as `setHasControlledInnerBlocks` is called\n\t\t\t// the effect to restore might be triggered\n\t\t\t// before the actual blocks get set properly in state.\n\t\t\tregistry.batch( () => {\n\t\t\t\tsetHasControlledInnerBlocks( clientId, true );\n\t\t\t\tconst storeBlocks = controlledBlocks.map( ( block ) =>\n\t\t\t\t\tcloneBlock( block )\n\t\t\t\t);\n\t\t\t\tif ( subscribed.current ) {\n\t\t\t\t\tpendingChanges.current.incoming = storeBlocks;\n\t\t\t\t}\n\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\treplaceInnerBlocks( clientId, storeBlocks );\n\t\t\t} );\n\t\t} else {\n\t\t\tif ( subscribed.current ) {\n\t\t\t\tpendingChanges.current.incoming = controlledBlocks;\n\t\t\t}\n\t\t\tresetBlocks( controlledBlocks );\n\t\t}\n\t};\n\n\t// Clean up the changes made by setControlledBlocks() when the component\n\t// containing useBlockSync() unmounts.\n\tconst unsetControlledBlocks = () => {\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tif ( clientId ) {\n\t\t\tsetHasControlledInnerBlocks( clientId, false );\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t} else {\n\t\t\tresetBlocks( [] );\n\t\t}\n\t};\n\n\t// Add a subscription to the block-editor registry to detect when changes\n\t// have been made. This lets us inform the data source of changes. This\n\t// is an effect so that the subscriber can run synchronously without\n\t// waiting for React renders for changes.\n\tconst onInputRef = useRef( onInput );\n\tconst onChangeRef = useRef( onChange );\n\tuseEffect( () => {\n\t\tonInputRef.current = onInput;\n\t\tonChangeRef.current = onChange;\n\t}, [ onInput, onChange ] );\n\n\t// Determine if blocks need to be reset when they change.\n\tuseEffect( () => {\n\t\tif ( pendingChanges.current.outgoing.includes( controlledBlocks ) ) {\n\t\t\t// Skip block reset if the value matches expected outbound sync\n\t\t\t// triggered by this component by a preceding change detection.\n\t\t\t// Only skip if the value matches expectation, since a reset should\n\t\t\t// still occur if the value is modified (not equal by reference),\n\t\t\t// to allow that the consumer may apply modifications to reflect\n\t\t\t// back on the editor.\n\t\t\tif (\n\t\t\t\tpendingChanges.current.outgoing[\n\t\t\t\t\tpendingChanges.current.outgoing.length - 1\n\t\t\t\t] === controlledBlocks\n\t\t\t) {\n\t\t\t\tpendingChanges.current.outgoing = [];\n\t\t\t}\n\t\t} else if ( getBlocks( clientId ) !== controlledBlocks ) {\n\t\t\t// Reset changing value in all other cases than the sync described\n\t\t\t// above. Since this can be reached in an update following an out-\n\t\t\t// bound sync, unset the outbound value to avoid considering it in\n\t\t\t// subsequent renders.\n\t\t\tpendingChanges.current.outgoing = [];\n\t\t\tconst hadSelecton = hasSelectedBlock();\n\t\t\tconst selectionAnchor = getSelectionStart();\n\t\t\tconst selectionFocus = getSelectionEnd();\n\t\t\tsetControlledBlocks();\n\n\t\t\tif ( controlledSelection ) {\n\t\t\t\tresetSelection(\n\t\t\t\t\tcontrolledSelection.selectionStart,\n\t\t\t\t\tcontrolledSelection.selectionEnd,\n\t\t\t\t\tcontrolledSelection.initialPosition\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tconst selectionStillExists = getBlock(\n\t\t\t\t\tselectionAnchor.clientId\n\t\t\t\t);\n\t\t\t\tif ( hadSelecton && ! selectionStillExists ) {\n\t\t\t\t\tselectBlock( clientId );\n\t\t\t\t} else {\n\t\t\t\t\tresetSelection( selectionAnchor, selectionFocus );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, [ controlledBlocks, clientId ] );\n\n\tuseEffect( () => {\n\t\t// When the block becomes uncontrolled, it means its inner state has been reset\n\t\t// we need to take the blocks again from the external value property.\n\t\tif ( ! isControlled ) {\n\t\t\tpendingChanges.current.outgoing = [];\n\t\t\tsetControlledBlocks();\n\t\t}\n\t}, [ isControlled ] );\n\n\tuseEffect( () => {\n\t\tconst {\n\t\t\tgetSelectedBlocksInitialCaretPosition,\n\t\t\tisLastBlockChangePersistent,\n\t\t\t__unstableIsLastBlockChangeIgnored,\n\t\t\tareInnerBlocksControlled,\n\t\t} = registry.select( blockEditorStore );\n\n\t\tlet blocks = getBlocks( clientId );\n\t\tlet isPersistent = isLastBlockChangePersistent();\n\t\tlet previousAreBlocksDifferent = false;\n\n\t\tsubscribed.current = true;\n\t\tconst unsubscribe = registry.subscribe( () => {\n\t\t\t// Sometimes, when changing block lists, lingering subscriptions\n\t\t\t// might trigger before they are cleaned up. If the block for which\n\t\t\t// the subscription runs is no longer in the store, this would clear\n\t\t\t// its parent entity's block list. To avoid this, we bail out if\n\t\t\t// the subscription is triggering for a block (`clientId !== null`)\n\t\t\t// and its block name can't be found because it's not on the list.\n\t\t\t// (`getBlockName( clientId ) === null`).\n\t\t\tif ( clientId !== null && getBlockName( clientId ) === null )\n\t\t\t\treturn;\n\n\t\t\t// When RESET_BLOCKS on parent blocks get called, the controlled blocks\n\t\t\t// can reset to uncontrolled, in these situations, it means we need to populate\n\t\t\t// the blocks again from the external blocks (the value property here)\n\t\t\t// and we should stop triggering onChange\n\t\t\tconst isStillControlled =\n\t\t\t\t! clientId || areInnerBlocksControlled( clientId );\n\t\t\tif ( ! isStillControlled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst newIsPersistent = isLastBlockChangePersistent();\n\t\t\tconst newBlocks = getBlocks( clientId );\n\t\t\tconst areBlocksDifferent = newBlocks !== blocks;\n\t\t\tblocks = newBlocks;\n\t\t\tif (\n\t\t\t\tareBlocksDifferent &&\n\t\t\t\t( pendingChanges.current.incoming ||\n\t\t\t\t\t__unstableIsLastBlockChangeIgnored() )\n\t\t\t) {\n\t\t\t\tpendingChanges.current.incoming = null;\n\t\t\t\tisPersistent = newIsPersistent;\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Since we often dispatch an action to mark the previous action as\n\t\t\t// persistent, we need to make sure that the blocks changed on the\n\t\t\t// previous action before committing the change.\n\t\t\tconst didPersistenceChange =\n\t\t\t\tpreviousAreBlocksDifferent &&\n\t\t\t\t! areBlocksDifferent &&\n\t\t\t\tnewIsPersistent &&\n\t\t\t\t! isPersistent;\n\n\t\t\tif ( areBlocksDifferent || didPersistenceChange ) {\n\t\t\t\tisPersistent = newIsPersistent;\n\t\t\t\t// We know that onChange/onInput will update controlledBlocks.\n\t\t\t\t// We need to be aware that it was caused by an outgoing change\n\t\t\t\t// so that we do not treat it as an incoming change later on,\n\t\t\t\t// which would cause a block reset.\n\t\t\t\tpendingChanges.current.outgoing.push( blocks );\n\n\t\t\t\t// Inform the controlling entity that changes have been made to\n\t\t\t\t// the block-editor store they should be aware about.\n\t\t\t\tconst updateParent = isPersistent\n\t\t\t\t\t? onChangeRef.current\n\t\t\t\t\t: onInputRef.current;\n\t\t\t\tupdateParent( blocks, {\n\t\t\t\t\tselection: {\n\t\t\t\t\t\tselectionStart: getSelectionStart(),\n\t\t\t\t\t\tselectionEnd: getSelectionEnd(),\n\t\t\t\t\t\tinitialPosition:\n\t\t\t\t\t\t\tgetSelectedBlocksInitialCaretPosition(),\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\t\t\tpreviousAreBlocksDifferent = areBlocksDifferent;\n\t\t} );\n\n\t\treturn () => {\n\t\t\tsubscribed.current = false;\n\t\t\tunsubscribe();\n\t\t};\n\t}, [ registry, clientId ] );\n\n\tuseEffect( () => {\n\t\treturn () => {\n\t\t\tunsetControlledBlocks();\n\t\t};\n\t}, [] );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["useEffect","useRef","useRegistry","useSelect","cloneBlock","store","blockEditorStore","noop","useBlockSync","clientId","value","controlledBlocks","selection","controlledSelection","onChange","onInput","registry","resetBlocks","resetSelection","replaceInnerBlocks","selectBlock","setHasControlledInnerBlocks","__unstableMarkNextChangeAsNotPersistent","dispatch","hasSelectedBlock","getBlockName","getBlocks","getSelectionStart","getSelectionEnd","getBlock","select","isControlled","areInnerBlocksControlled","pendingChanges","incoming","outgoing","subscribed","setControlledBlocks","batch","storeBlocks","map","block","current","unsetControlledBlocks","onInputRef","onChangeRef","includes","length","hadSelecton","selectionAnchor","selectionFocus","selectionStart","selectionEnd","initialPosition","selectionStillExists","getSelectedBlocksInitialCaretPosition","isLastBlockChangePersistent","__unstableIsLastBlockChangeIgnored","blocks","isPersistent","previousAreBlocksDifferent","unsubscribe","subscribe","isStillControlled","newIsPersistent","newBlocks","areBlocksDifferent","didPersistenceChange","push","updateParent"],"sources":["@wordpress/block-editor/src/components/provider/use-block-sync.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\nimport { useRegistry, useSelect } from '@wordpress/data';\nimport { cloneBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\nconst noop = () => {};\n\n/**\n * A function to call when the block value has been updated in the block-editor\n * store.\n *\n * @callback onBlockUpdate\n * @param {Object[]} blocks The updated blocks.\n * @param {Object} options The updated block options, such as selectionStart\n * and selectionEnd.\n */\n\n/**\n * useBlockSync is a side effect which handles bidirectional sync between the\n * block-editor store and a controlling data source which provides blocks. This\n * is most commonly used by the BlockEditorProvider to synchronize the contents\n * of the block-editor store with the root entity, like a post.\n *\n * Another example would be the template part block, which provides blocks from\n * a separate entity data source than a root entity. This hook syncs edits to\n * the template part in the block editor back to the entity and vice-versa.\n *\n * Here are some of its basic functions:\n * - Initalizes the block-editor store for the given clientID to the blocks\n * given via props.\n * - Adds incoming changes (like undo) to the block-editor store.\n * - Adds outgoing changes (like editing content) to the controlling entity,\n * determining if a change should be considered persistent or not.\n * - Handles edge cases and race conditions which occur in those operations.\n * - Ignores changes which happen to other entities (like nested inner block\n * controllers.\n * - Passes selection state from the block-editor store to the controlling entity.\n *\n * @param {Object} props Props for the block sync hook\n * @param {string} props.clientId The client ID of the inner block controller.\n * If none is passed, then it is assumed to be a\n * root controller rather than an inner block\n * controller.\n * @param {Object[]} props.value The control value for the blocks. This value\n * is used to initalize the block-editor store\n * and for resetting the blocks to incoming\n * changes like undo.\n * @param {Object} props.selection The selection state responsible to restore the selection on undo/redo.\n * @param {onBlockUpdate} props.onChange Function to call when a persistent\n * change has been made in the block-editor blocks\n * for the given clientId. For example, after\n * this function is called, an entity is marked\n * dirty because it has changes to save.\n * @param {onBlockUpdate} props.onInput Function to call when a non-persistent\n * change has been made in the block-editor blocks\n * for the given clientId. When this is called,\n * controlling sources do not become dirty.\n */\nexport default function useBlockSync( {\n\tclientId = null,\n\tvalue: controlledBlocks,\n\tselection: controlledSelection,\n\tonChange = noop,\n\tonInput = noop,\n} ) {\n\tconst registry = useRegistry();\n\n\tconst {\n\t\tresetBlocks,\n\t\tresetSelection,\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\tsetHasControlledInnerBlocks,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = registry.dispatch( blockEditorStore );\n\tconst {\n\t\thasSelectedBlock,\n\t\tgetBlockName,\n\t\tgetBlocks,\n\t\tgetSelectionStart,\n\t\tgetSelectionEnd,\n\t\tgetBlock,\n\t} = registry.select( blockEditorStore );\n\tconst isControlled = useSelect(\n\t\t( select ) => {\n\t\t\treturn (\n\t\t\t\t! clientId ||\n\t\t\t\tselect( blockEditorStore ).areInnerBlocksControlled( clientId )\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst pendingChanges = useRef( { incoming: null, outgoing: [] } );\n\tconst subscribed = useRef( false );\n\n\tconst setControlledBlocks = () => {\n\t\tif ( ! controlledBlocks ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// We don't need to persist this change because we only replace\n\t\t// controlled inner blocks when the change was caused by an entity,\n\t\t// and so it would already be persisted.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tif ( clientId ) {\n\t\t\t// It is important to batch here because otherwise,\n\t\t\t// as soon as `setHasControlledInnerBlocks` is called\n\t\t\t// the effect to restore might be triggered\n\t\t\t// before the actual blocks get set properly in state.\n\t\t\tregistry.batch( () => {\n\t\t\t\tsetHasControlledInnerBlocks( clientId, true );\n\t\t\t\tconst storeBlocks = controlledBlocks.map( ( block ) =>\n\t\t\t\t\tcloneBlock( block )\n\t\t\t\t);\n\t\t\t\tif ( subscribed.current ) {\n\t\t\t\t\tpendingChanges.current.incoming = storeBlocks;\n\t\t\t\t}\n\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\treplaceInnerBlocks( clientId, storeBlocks );\n\t\t\t} );\n\t\t} else {\n\t\t\tif ( subscribed.current ) {\n\t\t\t\tpendingChanges.current.incoming = controlledBlocks;\n\t\t\t}\n\t\t\tresetBlocks( controlledBlocks );\n\t\t}\n\t};\n\n\t// Clean up the changes made by setControlledBlocks() when the component\n\t// containing useBlockSync() unmounts.\n\tconst unsetControlledBlocks = () => {\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tif ( clientId ) {\n\t\t\tsetHasControlledInnerBlocks( clientId, false );\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t} else {\n\t\t\tresetBlocks( [] );\n\t\t}\n\t};\n\n\t// Add a subscription to the block-editor registry to detect when changes\n\t// have been made. This lets us inform the data source of changes. This\n\t// is an effect so that the subscriber can run synchronously without\n\t// waiting for React renders for changes.\n\tconst onInputRef = useRef( onInput );\n\tconst onChangeRef = useRef( onChange );\n\tuseEffect( () => {\n\t\tonInputRef.current = onInput;\n\t\tonChangeRef.current = onChange;\n\t}, [ onInput, onChange ] );\n\n\t// Determine if blocks need to be reset when they change.\n\tuseEffect( () => {\n\t\tif ( pendingChanges.current.outgoing.includes( controlledBlocks ) ) {\n\t\t\t// Skip block reset if the value matches expected outbound sync\n\t\t\t// triggered by this component by a preceding change detection.\n\t\t\t// Only skip if the value matches expectation, since a reset should\n\t\t\t// still occur if the value is modified (not equal by reference),\n\t\t\t// to allow that the consumer may apply modifications to reflect\n\t\t\t// back on the editor.\n\t\t\tif (\n\t\t\t\tpendingChanges.current.outgoing[\n\t\t\t\t\tpendingChanges.current.outgoing.length - 1\n\t\t\t\t] === controlledBlocks\n\t\t\t) {\n\t\t\t\tpendingChanges.current.outgoing = [];\n\t\t\t}\n\t\t} else if ( getBlocks( clientId ) !== controlledBlocks ) {\n\t\t\t// Reset changing value in all other cases than the sync described\n\t\t\t// above. Since this can be reached in an update following an out-\n\t\t\t// bound sync, unset the outbound value to avoid considering it in\n\t\t\t// subsequent renders.\n\t\t\tpendingChanges.current.outgoing = [];\n\t\t\tconst hadSelecton = hasSelectedBlock();\n\t\t\tconst selectionAnchor = getSelectionStart();\n\t\t\tconst selectionFocus = getSelectionEnd();\n\t\t\tsetControlledBlocks();\n\n\t\t\tif ( controlledSelection ) {\n\t\t\t\tresetSelection(\n\t\t\t\t\tcontrolledSelection.selectionStart,\n\t\t\t\t\tcontrolledSelection.selectionEnd,\n\t\t\t\t\tcontrolledSelection.initialPosition\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tconst selectionStillExists = getBlock(\n\t\t\t\t\tselectionAnchor.clientId\n\t\t\t\t);\n\t\t\t\tif ( hadSelecton && ! selectionStillExists ) {\n\t\t\t\t\tselectBlock( clientId );\n\t\t\t\t} else {\n\t\t\t\t\tresetSelection( selectionAnchor, selectionFocus );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, [ controlledBlocks, clientId ] );\n\n\tuseEffect( () => {\n\t\t// When the block becomes uncontrolled, it means its inner state has been reset\n\t\t// we need to take the blocks again from the external value property.\n\t\tif ( ! isControlled ) {\n\t\t\tpendingChanges.current.outgoing = [];\n\t\t\tsetControlledBlocks();\n\t\t}\n\t}, [ isControlled ] );\n\n\tuseEffect( () => {\n\t\tconst {\n\t\t\tgetSelectedBlocksInitialCaretPosition,\n\t\t\tisLastBlockChangePersistent,\n\t\t\t__unstableIsLastBlockChangeIgnored,\n\t\t\tareInnerBlocksControlled,\n\t\t} = registry.select( blockEditorStore );\n\n\t\tlet blocks = getBlocks( clientId );\n\t\tlet isPersistent = isLastBlockChangePersistent();\n\t\tlet previousAreBlocksDifferent = false;\n\n\t\tsubscribed.current = true;\n\t\tconst unsubscribe = registry.subscribe( () => {\n\t\t\t// Sometimes, when changing block lists, lingering subscriptions\n\t\t\t// might trigger before they are cleaned up. If the block for which\n\t\t\t// the subscription runs is no longer in the store, this would clear\n\t\t\t// its parent entity's block list. To avoid this, we bail out if\n\t\t\t// the subscription is triggering for a block (`clientId !== null`)\n\t\t\t// and its block name can't be found because it's not on the list.\n\t\t\t// (`getBlockName( clientId ) === null`).\n\t\t\tif ( clientId !== null && getBlockName( clientId ) === null )\n\t\t\t\treturn;\n\n\t\t\t// When RESET_BLOCKS on parent blocks get called, the controlled blocks\n\t\t\t// can reset to uncontrolled, in these situations, it means we need to populate\n\t\t\t// the blocks again from the external blocks (the value property here)\n\t\t\t// and we should stop triggering onChange\n\t\t\tconst isStillControlled =\n\t\t\t\t! clientId || areInnerBlocksControlled( clientId );\n\t\t\tif ( ! isStillControlled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst newIsPersistent = isLastBlockChangePersistent();\n\t\t\tconst newBlocks = getBlocks( clientId );\n\t\t\tconst areBlocksDifferent = newBlocks !== blocks;\n\t\t\tblocks = newBlocks;\n\t\t\tif (\n\t\t\t\tareBlocksDifferent &&\n\t\t\t\t( pendingChanges.current.incoming ||\n\t\t\t\t\t__unstableIsLastBlockChangeIgnored() )\n\t\t\t) {\n\t\t\t\tpendingChanges.current.incoming = null;\n\t\t\t\tisPersistent = newIsPersistent;\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Since we often dispatch an action to mark the previous action as\n\t\t\t// persistent, we need to make sure that the blocks changed on the\n\t\t\t// previous action before committing the change.\n\t\t\tconst didPersistenceChange =\n\t\t\t\tpreviousAreBlocksDifferent &&\n\t\t\t\t! areBlocksDifferent &&\n\t\t\t\tnewIsPersistent &&\n\t\t\t\t! isPersistent;\n\n\t\t\tif ( areBlocksDifferent || didPersistenceChange ) {\n\t\t\t\tisPersistent = newIsPersistent;\n\t\t\t\t// We know that onChange/onInput will update controlledBlocks.\n\t\t\t\t// We need to be aware that it was caused by an outgoing change\n\t\t\t\t// so that we do not treat it as an incoming change later on,\n\t\t\t\t// which would cause a block reset.\n\t\t\t\tpendingChanges.current.outgoing.push( blocks );\n\n\t\t\t\t// Inform the controlling entity that changes have been made to\n\t\t\t\t// the block-editor store they should be aware about.\n\t\t\t\tconst updateParent = isPersistent\n\t\t\t\t\t? onChangeRef.current\n\t\t\t\t\t: onInputRef.current;\n\t\t\t\tupdateParent( blocks, {\n\t\t\t\t\tselection: {\n\t\t\t\t\t\tselectionStart: getSelectionStart(),\n\t\t\t\t\t\tselectionEnd: getSelectionEnd(),\n\t\t\t\t\t\tinitialPosition:\n\t\t\t\t\t\t\tgetSelectedBlocksInitialCaretPosition(),\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\t\t\tpreviousAreBlocksDifferent = areBlocksDifferent;\n\t\t}, blockEditorStore );\n\n\t\treturn () => {\n\t\t\tsubscribed.current = false;\n\t\t\tunsubscribe();\n\t\t};\n\t}, [ registry, clientId ] );\n\n\tuseEffect( () => {\n\t\treturn () => {\n\t\t\tunsetControlledBlocks();\n\t\t};\n\t}, [] );\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * External dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement, Fragment } from "@wordpress/element";
1
+ import { createElement, Fragment } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement, Fragment } from "@wordpress/element";
1
+ import { createElement, Fragment } from "react";
2
2
  /**
3
3
  * External dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement, Fragment } from "@wordpress/element";
1
+ import { createElement, Fragment } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * Internal dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement } from "@wordpress/element";
1
+ import { createElement } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement, Fragment } from "@wordpress/element";
1
+ import { createElement, Fragment } from "react";
2
2
  /**
3
3
  * External dependencies
4
4
  */
@@ -1,4 +1,4 @@
1
- import { createElement, Fragment } from "@wordpress/element";
1
+ import { createElement, Fragment } from "react";
2
2
  /**
3
3
  * External dependencies
4
4
  */
@@ -23,7 +23,7 @@ import { RemoveBrowserShortcuts } from './remove-browser-shortcuts';
23
23
  import { filePasteHandler } from './file-paste-handler';
24
24
  import FormatToolbarContainer from './format-toolbar-container';
25
25
  import { store as blockEditorStore } from '../../store';
26
- import { addActiveFormats, getMultilineTag, getAllowedFormats, isShortcode, createLinkInParagraph } from './utils';
26
+ import { addActiveFormats, getMultilineTag, getAllowedFormats, createLinkInParagraph } from './utils';
27
27
  import EmbedHandlerPicker from './embed-handler-picker';
28
28
  import { Content } from './content';
29
29
  const classes = 'block-editor-rich-text__editable';
@@ -336,14 +336,6 @@ function RichTextWrapper({
336
336
  return;
337
337
  }
338
338
  let mode = onReplace && onSplit ? 'AUTO' : 'INLINE';
339
-
340
- // Force the blocks mode when the user is pasting
341
- // on a new line & the content resembles a shortcode.
342
- // Otherwise it's going to be detected as inline
343
- // and the shortcode won't be replaced.
344
- if (mode === 'AUTO' && isEmpty(value) && isShortcode(plainText)) {
345
- mode = 'BLOCKS';
346
- }
347
339
  const isPastedURL = isURL(plainText.trim());
348
340
  const presentEmbedHandlerPicker = () => embedHandlerPickerRef.current?.presentPicker({
349
341
  createEmbed: () => onReplace(content, content.length - 1, -1),