@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,28 +1,31 @@
1
+ import { createElement } from "react";
1
2
  /**
2
3
  * WordPress dependencies
3
4
  */
5
+ import { __ } from '@wordpress/i18n';
6
+ import { MenuItem } from '@wordpress/components';
4
7
  import { rawHandler, getBlockContent } from '@wordpress/blocks';
5
- import { compose } from '@wordpress/compose';
6
- import { withSelect, withDispatch } from '@wordpress/data';
8
+ import { useDispatch, useSelect } from '@wordpress/data';
7
9
 
8
10
  /**
9
11
  * Internal dependencies
10
12
  */
11
- import BlockConvertButton from './block-convert-button';
12
13
  import { store as blockEditorStore } from '../../store';
13
- export default compose(withSelect((select, {
14
+ function BlockHTMLConvertButton({
14
15
  clientId
15
- }) => {
16
- const block = select(blockEditorStore).getBlock(clientId);
17
- return {
18
- block,
19
- shouldRender: block && block.name === 'core/html'
20
- };
21
- }), withDispatch((dispatch, {
22
- block
23
- }) => ({
24
- onClick: () => dispatch(blockEditorStore).replaceBlocks(block.clientId, rawHandler({
25
- HTML: getBlockContent(block)
26
- }))
27
- })))(BlockConvertButton);
16
+ }) {
17
+ const block = useSelect(select => select(blockEditorStore).getBlock(clientId), [clientId]);
18
+ const {
19
+ replaceBlocks
20
+ } = useDispatch(blockEditorStore);
21
+ if (!block || block.name !== 'core/html') {
22
+ return null;
23
+ }
24
+ return createElement(MenuItem, {
25
+ onClick: () => replaceBlocks(clientId, rawHandler({
26
+ HTML: getBlockContent(block)
27
+ }))
28
+ }, __('Convert to Blocks'));
29
+ }
30
+ export default BlockHTMLConvertButton;
28
31
  //# sourceMappingURL=block-html-convert-button.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["rawHandler","getBlockContent","compose","withSelect","withDispatch","BlockConvertButton","store","blockEditorStore","select","clientId","block","getBlock","shouldRender","name","dispatch","onClick","replaceBlocks","HTML"],"sources":["@wordpress/block-editor/src/components/block-settings-menu/block-html-convert-button.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { rawHandler, getBlockContent } from '@wordpress/blocks';\nimport { compose } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport BlockConvertButton from './block-convert-button';\nimport { store as blockEditorStore } from '../../store';\n\nexport default compose(\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst block = select( blockEditorStore ).getBlock( clientId );\n\n\t\treturn {\n\t\t\tblock,\n\t\t\tshouldRender: block && block.name === 'core/html',\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { block } ) => ( {\n\t\tonClick: () =>\n\t\t\tdispatch( blockEditorStore ).replaceBlocks(\n\t\t\t\tblock.clientId,\n\t\t\t\trawHandler( { HTML: getBlockContent( block ) } )\n\t\t\t),\n\t} ) )\n)( BlockConvertButton );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,UAAU,EAAEC,eAAe,QAAQ,mBAAmB;AAC/D,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,UAAU,EAAEC,YAAY,QAAQ,iBAAiB;;AAE1D;AACA;AACA;AACA,OAAOC,kBAAkB,MAAM,wBAAwB;AACvD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAEvD,eAAeL,OAAO,CACrBC,UAAU,CAAE,CAAEK,MAAM,EAAE;EAAEC;AAAS,CAAC,KAAM;EACvC,MAAMC,KAAK,GAAGF,MAAM,CAAED,gBAAiB,CAAC,CAACI,QAAQ,CAAEF,QAAS,CAAC;EAE7D,OAAO;IACNC,KAAK;IACLE,YAAY,EAAEF,KAAK,IAAIA,KAAK,CAACG,IAAI,KAAK;EACvC,CAAC;AACF,CAAE,CAAC,EACHT,YAAY,CAAE,CAAEU,QAAQ,EAAE;EAAEJ;AAAM,CAAC,MAAQ;EAC1CK,OAAO,EAAEA,CAAA,KACRD,QAAQ,CAAEP,gBAAiB,CAAC,CAACS,aAAa,CACzCN,KAAK,CAACD,QAAQ,EACdT,UAAU,CAAE;IAAEiB,IAAI,EAAEhB,eAAe,CAAES,KAAM;EAAE,CAAE,CAChD;AACF,CAAC,CAAG,CACL,CAAC,CAAEL,kBAAmB,CAAC"}
1
+ {"version":3,"names":["__","MenuItem","rawHandler","getBlockContent","useDispatch","useSelect","store","blockEditorStore","BlockHTMLConvertButton","clientId","block","select","getBlock","replaceBlocks","name","createElement","onClick","HTML"],"sources":["@wordpress/block-editor/src/components/block-settings-menu/block-html-convert-button.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { MenuItem } from '@wordpress/components';\nimport { rawHandler, getBlockContent } from '@wordpress/blocks';\nimport { useDispatch, useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\nfunction BlockHTMLConvertButton( { clientId } ) {\n\tconst block = useSelect(\n\t\t( select ) => select( blockEditorStore ).getBlock( clientId ),\n\t\t[ clientId ]\n\t);\n\tconst { replaceBlocks } = useDispatch( blockEditorStore );\n\n\tif ( ! block || block.name !== 'core/html' ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<MenuItem\n\t\t\tonClick={ () =>\n\t\t\t\treplaceBlocks(\n\t\t\t\t\tclientId,\n\t\t\t\t\trawHandler( { HTML: getBlockContent( block ) } )\n\t\t\t\t)\n\t\t\t}\n\t\t>\n\t\t\t{ __( 'Convert to Blocks' ) }\n\t\t</MenuItem>\n\t);\n}\n\nexport default BlockHTMLConvertButton;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,UAAU,EAAEC,eAAe,QAAQ,mBAAmB;AAC/D,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;;AAExD;AACA;AACA;AACA,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAEvD,SAASC,sBAAsBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EAC/C,MAAMC,KAAK,GAAGL,SAAS,CACpBM,MAAM,IAAMA,MAAM,CAAEJ,gBAAiB,CAAC,CAACK,QAAQ,CAAEH,QAAS,CAAC,EAC7D,CAAEA,QAAQ,CACX,CAAC;EACD,MAAM;IAAEI;EAAc,CAAC,GAAGT,WAAW,CAAEG,gBAAiB,CAAC;EAEzD,IAAK,CAAEG,KAAK,IAAIA,KAAK,CAACI,IAAI,KAAK,WAAW,EAAG;IAC5C,OAAO,IAAI;EACZ;EAEA,OACCC,aAAA,CAACd,QAAQ;IACRe,OAAO,EAAGA,CAAA,KACTH,aAAa,CACZJ,QAAQ,EACRP,UAAU,CAAE;MAAEe,IAAI,EAAEd,eAAe,CAAEO,KAAM;IAAE,CAAE,CAChD;EACA,GAECV,EAAE,CAAE,mBAAoB,CACjB,CAAC;AAEb;AAEA,eAAeQ,sBAAsB"}
@@ -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
  * 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
  */
@@ -79,7 +79,7 @@ const BlockSettingsMenuControlsSlot = ({
79
79
  * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-settings-menu-controls/README.md
80
80
  *
81
81
  * @param {Object} props Fill props.
82
- * @return {WPElement} Element.
82
+ * @return {Element} Element.
83
83
  */
84
84
  function BlockSettingsMenuControls({
85
85
  ...props
@@ -1 +1 @@
1
- {"version":3,"names":["createSlotFill","MenuGroup","MenuItem","__experimentalStyleProvider","StyleProvider","useSelect","pipe","__","useConvertToGroupButtonProps","ConvertToGroupButton","BlockLockMenuItem","useBlockLock","store","blockEditorStore","BlockModeToggle","Fill","Slot","BlockSettingsMenuControlsSlot","fillProps","clientIds","__unstableDisplayLocation","selectedBlocks","selectedClientIds","select","getBlockNamesByClientId","getSelectedBlockClientIds","ids","canLock","showLockButton","length","convertToGroupButtonProps","isGroupable","isUngroupable","showConvertToGroupButton","createElement","fills","onClose","clientId","canMove","onlyBlock","onClick","onMoveTo","count","firstBlockClientId","onToggle","BlockSettingsMenuControls","props","document"],"sources":["@wordpress/block-editor/src/components/block-settings-menu-controls/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tcreateSlotFill,\n\tMenuGroup,\n\tMenuItem,\n\t__experimentalStyleProvider as StyleProvider,\n} from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { pipe } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseConvertToGroupButtonProps,\n\tConvertToGroupButton,\n} from '../convert-to-group-buttons';\nimport { BlockLockMenuItem, useBlockLock } from '../block-lock';\nimport { store as blockEditorStore } from '../../store';\nimport BlockModeToggle from '../block-settings-menu/block-mode-toggle';\n\nconst { Fill, Slot } = createSlotFill( 'BlockSettingsMenuControls' );\n\nconst BlockSettingsMenuControlsSlot = ( {\n\tfillProps,\n\tclientIds = null,\n\t__unstableDisplayLocation,\n} ) => {\n\tconst { selectedBlocks, selectedClientIds } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockNamesByClientId, getSelectedBlockClientIds } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst ids =\n\t\t\t\tclientIds !== null ? clientIds : getSelectedBlockClientIds();\n\t\t\treturn {\n\t\t\t\tselectedBlocks: getBlockNamesByClientId( ids ),\n\t\t\t\tselectedClientIds: ids,\n\t\t\t};\n\t\t},\n\t\t[ clientIds ]\n\t);\n\n\tconst { canLock } = useBlockLock( selectedClientIds[ 0 ] );\n\tconst showLockButton = selectedClientIds.length === 1 && canLock;\n\n\t// Check if current selection of blocks is Groupable or Ungroupable\n\t// and pass this props down to ConvertToGroupButton.\n\tconst convertToGroupButtonProps =\n\t\tuseConvertToGroupButtonProps( selectedClientIds );\n\tconst { isGroupable, isUngroupable } = convertToGroupButtonProps;\n\tconst showConvertToGroupButton = isGroupable || isUngroupable;\n\n\treturn (\n\t\t<Slot\n\t\t\tfillProps={ {\n\t\t\t\t...fillProps,\n\t\t\t\t__unstableDisplayLocation,\n\t\t\t\tselectedBlocks,\n\t\t\t\tselectedClientIds,\n\t\t\t} }\n\t\t>\n\t\t\t{ ( fills ) => {\n\t\t\t\tif (\n\t\t\t\t\t! fills?.length > 0 &&\n\t\t\t\t\t! showConvertToGroupButton &&\n\t\t\t\t\t! showLockButton\n\t\t\t\t) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t{ showConvertToGroupButton && (\n\t\t\t\t\t\t\t<ConvertToGroupButton\n\t\t\t\t\t\t\t\t{ ...convertToGroupButtonProps }\n\t\t\t\t\t\t\t\tonClose={ fillProps?.onClose }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showLockButton && (\n\t\t\t\t\t\t\t<BlockLockMenuItem\n\t\t\t\t\t\t\t\tclientId={ selectedClientIds[ 0 ] }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ fills }\n\t\t\t\t\t\t{ fillProps?.canMove && ! fillProps?.onlyBlock && (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ pipe(\n\t\t\t\t\t\t\t\t\tfillProps?.onClose,\n\t\t\t\t\t\t\t\t\tfillProps?.onMoveTo\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Move to' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ fillProps?.count === 1 && (\n\t\t\t\t\t\t\t<BlockModeToggle\n\t\t\t\t\t\t\t\tclientId={ fillProps?.firstBlockClientId }\n\t\t\t\t\t\t\t\tonToggle={ fillProps?.onClose }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</MenuGroup>\n\t\t\t\t);\n\t\t\t} }\n\t\t</Slot>\n\t);\n};\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-settings-menu-controls/README.md\n *\n * @param {Object} props Fill props.\n * @return {WPElement} Element.\n */\nfunction BlockSettingsMenuControls( { ...props } ) {\n\treturn (\n\t\t<StyleProvider document={ document }>\n\t\t\t<Fill { ...props } />\n\t\t</StyleProvider>\n\t);\n}\n\nBlockSettingsMenuControls.Slot = BlockSettingsMenuControlsSlot;\n\nexport default BlockSettingsMenuControls;\n"],"mappings":"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"}
1
+ {"version":3,"names":["createSlotFill","MenuGroup","MenuItem","__experimentalStyleProvider","StyleProvider","useSelect","pipe","__","useConvertToGroupButtonProps","ConvertToGroupButton","BlockLockMenuItem","useBlockLock","store","blockEditorStore","BlockModeToggle","Fill","Slot","BlockSettingsMenuControlsSlot","fillProps","clientIds","__unstableDisplayLocation","selectedBlocks","selectedClientIds","select","getBlockNamesByClientId","getSelectedBlockClientIds","ids","canLock","showLockButton","length","convertToGroupButtonProps","isGroupable","isUngroupable","showConvertToGroupButton","createElement","fills","onClose","clientId","canMove","onlyBlock","onClick","onMoveTo","count","firstBlockClientId","onToggle","BlockSettingsMenuControls","props","document"],"sources":["@wordpress/block-editor/src/components/block-settings-menu-controls/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tcreateSlotFill,\n\tMenuGroup,\n\tMenuItem,\n\t__experimentalStyleProvider as StyleProvider,\n} from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { pipe } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseConvertToGroupButtonProps,\n\tConvertToGroupButton,\n} from '../convert-to-group-buttons';\nimport { BlockLockMenuItem, useBlockLock } from '../block-lock';\nimport { store as blockEditorStore } from '../../store';\nimport BlockModeToggle from '../block-settings-menu/block-mode-toggle';\n\nconst { Fill, Slot } = createSlotFill( 'BlockSettingsMenuControls' );\n\nconst BlockSettingsMenuControlsSlot = ( {\n\tfillProps,\n\tclientIds = null,\n\t__unstableDisplayLocation,\n} ) => {\n\tconst { selectedBlocks, selectedClientIds } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockNamesByClientId, getSelectedBlockClientIds } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst ids =\n\t\t\t\tclientIds !== null ? clientIds : getSelectedBlockClientIds();\n\t\t\treturn {\n\t\t\t\tselectedBlocks: getBlockNamesByClientId( ids ),\n\t\t\t\tselectedClientIds: ids,\n\t\t\t};\n\t\t},\n\t\t[ clientIds ]\n\t);\n\n\tconst { canLock } = useBlockLock( selectedClientIds[ 0 ] );\n\tconst showLockButton = selectedClientIds.length === 1 && canLock;\n\n\t// Check if current selection of blocks is Groupable or Ungroupable\n\t// and pass this props down to ConvertToGroupButton.\n\tconst convertToGroupButtonProps =\n\t\tuseConvertToGroupButtonProps( selectedClientIds );\n\tconst { isGroupable, isUngroupable } = convertToGroupButtonProps;\n\tconst showConvertToGroupButton = isGroupable || isUngroupable;\n\n\treturn (\n\t\t<Slot\n\t\t\tfillProps={ {\n\t\t\t\t...fillProps,\n\t\t\t\t__unstableDisplayLocation,\n\t\t\t\tselectedBlocks,\n\t\t\t\tselectedClientIds,\n\t\t\t} }\n\t\t>\n\t\t\t{ ( fills ) => {\n\t\t\t\tif (\n\t\t\t\t\t! fills?.length > 0 &&\n\t\t\t\t\t! showConvertToGroupButton &&\n\t\t\t\t\t! showLockButton\n\t\t\t\t) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t{ showConvertToGroupButton && (\n\t\t\t\t\t\t\t<ConvertToGroupButton\n\t\t\t\t\t\t\t\t{ ...convertToGroupButtonProps }\n\t\t\t\t\t\t\t\tonClose={ fillProps?.onClose }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showLockButton && (\n\t\t\t\t\t\t\t<BlockLockMenuItem\n\t\t\t\t\t\t\t\tclientId={ selectedClientIds[ 0 ] }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ fills }\n\t\t\t\t\t\t{ fillProps?.canMove && ! fillProps?.onlyBlock && (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ pipe(\n\t\t\t\t\t\t\t\t\tfillProps?.onClose,\n\t\t\t\t\t\t\t\t\tfillProps?.onMoveTo\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Move to' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ fillProps?.count === 1 && (\n\t\t\t\t\t\t\t<BlockModeToggle\n\t\t\t\t\t\t\t\tclientId={ fillProps?.firstBlockClientId }\n\t\t\t\t\t\t\t\tonToggle={ fillProps?.onClose }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</MenuGroup>\n\t\t\t\t);\n\t\t\t} }\n\t\t</Slot>\n\t);\n};\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-settings-menu-controls/README.md\n *\n * @param {Object} props Fill props.\n * @return {Element} Element.\n */\nfunction BlockSettingsMenuControls( { ...props } ) {\n\treturn (\n\t\t<StyleProvider document={ document }>\n\t\t\t<Fill { ...props } />\n\t\t</StyleProvider>\n\t);\n}\n\nBlockSettingsMenuControls.Slot = BlockSettingsMenuControlsSlot;\n\nexport default BlockSettingsMenuControls;\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
  */
@@ -11,6 +11,7 @@ import { useState } from '@wordpress/element';
11
11
  import { debounce, useViewportMatch } from '@wordpress/compose';
12
12
  import { Button, __experimentalTruncate as Truncate, Popover } from '@wordpress/components';
13
13
  import deprecated from '@wordpress/deprecated';
14
+ import { __ } from '@wordpress/i18n';
14
15
 
15
16
  /**
16
17
  * Internal dependencies
@@ -61,7 +62,7 @@ function BlockStyles({
61
62
  }, createElement("div", {
62
63
  className: "block-editor-block-styles__variants"
63
64
  }, stylesToRender.map(style => {
64
- const buttonText = style.label || style.name;
65
+ const buttonText = style.isDefault ? __('Default') : style.label || style.name;
65
66
  return createElement(Button, {
66
67
  __next40pxDefaultSize: true,
67
68
  className: classnames('block-editor-block-styles__item', {
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","useState","debounce","useViewportMatch","Button","__experimentalTruncate","Truncate","Popover","deprecated","BlockStylesPreviewPanel","useStylesForBlocks","noop","BlockStyles","clientId","onSwitch","onHoverClassName","onSelect","stylesToRender","activeStyle","genericPreviewBlock","className","previewClassName","hoveredStyle","setHoveredStyle","isMobileViewport","length","debouncedSetHoveredStyle","onSelectStylePreview","style","cancel","styleItemHandler","item","_item$name","name","createElement","map","buttonText","label","__next40pxDefaultSize","key","variant","onMouseEnter","onFocus","onMouseLeave","onBlur","onClick","numberOfLines","placement","offset","focusOnMount","Slot","version","since"],"sources":["@wordpress/block-editor/src/components/block-styles/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { debounce, useViewportMatch } from '@wordpress/compose';\nimport {\n\tButton,\n\t__experimentalTruncate as Truncate,\n\tPopover,\n} from '@wordpress/components';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport BlockStylesPreviewPanel from './preview-panel';\nimport useStylesForBlocks from './use-styles-for-block';\n\nconst noop = () => {};\n\n// Block Styles component for the Settings Sidebar.\nfunction BlockStyles( { clientId, onSwitch = noop, onHoverClassName = noop } ) {\n\tconst {\n\t\tonSelect,\n\t\tstylesToRender,\n\t\tactiveStyle,\n\t\tgenericPreviewBlock,\n\t\tclassName: previewClassName,\n\t} = useStylesForBlocks( {\n\t\tclientId,\n\t\tonSwitch,\n\t} );\n\tconst [ hoveredStyle, setHoveredStyle ] = useState( null );\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\n\tif ( ! stylesToRender || stylesToRender.length === 0 ) {\n\t\treturn null;\n\t}\n\n\tconst debouncedSetHoveredStyle = debounce( setHoveredStyle, 250 );\n\n\tconst onSelectStylePreview = ( style ) => {\n\t\tonSelect( style );\n\t\tonHoverClassName( null );\n\t\tsetHoveredStyle( null );\n\t\tdebouncedSetHoveredStyle.cancel();\n\t};\n\n\tconst styleItemHandler = ( item ) => {\n\t\tif ( hoveredStyle === item ) {\n\t\t\tdebouncedSetHoveredStyle.cancel();\n\t\t\treturn;\n\t\t}\n\t\tdebouncedSetHoveredStyle( item );\n\t\tonHoverClassName( item?.name ?? null );\n\t};\n\n\treturn (\n\t\t<div className=\"block-editor-block-styles\">\n\t\t\t<div className=\"block-editor-block-styles__variants\">\n\t\t\t\t{ stylesToRender.map( ( style ) => {\n\t\t\t\t\tconst buttonText = style.label || style.name;\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'block-editor-block-styles__item',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'is-active':\n\t\t\t\t\t\t\t\t\t\tactiveStyle.name === style.name,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tkey={ style.name }\n\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\tlabel={ buttonText }\n\t\t\t\t\t\t\tonMouseEnter={ () => styleItemHandler( style ) }\n\t\t\t\t\t\t\tonFocus={ () => styleItemHandler( style ) }\n\t\t\t\t\t\t\tonMouseLeave={ () => styleItemHandler( null ) }\n\t\t\t\t\t\t\tonBlur={ () => styleItemHandler( null ) }\n\t\t\t\t\t\t\tonClick={ () => onSelectStylePreview( style ) }\n\t\t\t\t\t\t\taria-current={ activeStyle.name === style.name }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Truncate\n\t\t\t\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\t\t\t\tclassName=\"block-editor-block-styles__item-text\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ buttonText }\n\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</div>\n\t\t\t{ hoveredStyle && ! isMobileViewport && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"left-start\"\n\t\t\t\t\toffset={ 20 }\n\t\t\t\t\tfocusOnMount={ false }\n\t\t\t\t>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName=\"block-editor-block-styles__preview-panel\"\n\t\t\t\t\t\tonMouseLeave={ () => styleItemHandler( null ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockStylesPreviewPanel\n\t\t\t\t\t\t\tactiveStyle={ activeStyle }\n\t\t\t\t\t\t\tclassName={ previewClassName }\n\t\t\t\t\t\t\tgenericPreviewBlock={ genericPreviewBlock }\n\t\t\t\t\t\t\tstyle={ hoveredStyle }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default BlockStyles;\n\nBlockStyles.Slot = () => {\n\tdeprecated( 'BlockStyles.Slot', {\n\t\tversion: '6.4',\n\t\tsince: '6.2',\n\t} );\n\n\treturn null;\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","useState","debounce","useViewportMatch","Button","__experimentalTruncate","Truncate","Popover","deprecated","__","BlockStylesPreviewPanel","useStylesForBlocks","noop","BlockStyles","clientId","onSwitch","onHoverClassName","onSelect","stylesToRender","activeStyle","genericPreviewBlock","className","previewClassName","hoveredStyle","setHoveredStyle","isMobileViewport","length","debouncedSetHoveredStyle","onSelectStylePreview","style","cancel","styleItemHandler","item","_item$name","name","createElement","map","buttonText","isDefault","label","__next40pxDefaultSize","key","variant","onMouseEnter","onFocus","onMouseLeave","onBlur","onClick","numberOfLines","placement","offset","focusOnMount","Slot","version","since"],"sources":["@wordpress/block-editor/src/components/block-styles/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { debounce, useViewportMatch } from '@wordpress/compose';\nimport {\n\tButton,\n\t__experimentalTruncate as Truncate,\n\tPopover,\n} from '@wordpress/components';\nimport deprecated from '@wordpress/deprecated';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockStylesPreviewPanel from './preview-panel';\nimport useStylesForBlocks from './use-styles-for-block';\n\nconst noop = () => {};\n\n// Block Styles component for the Settings Sidebar.\nfunction BlockStyles( { clientId, onSwitch = noop, onHoverClassName = noop } ) {\n\tconst {\n\t\tonSelect,\n\t\tstylesToRender,\n\t\tactiveStyle,\n\t\tgenericPreviewBlock,\n\t\tclassName: previewClassName,\n\t} = useStylesForBlocks( {\n\t\tclientId,\n\t\tonSwitch,\n\t} );\n\tconst [ hoveredStyle, setHoveredStyle ] = useState( null );\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\n\tif ( ! stylesToRender || stylesToRender.length === 0 ) {\n\t\treturn null;\n\t}\n\n\tconst debouncedSetHoveredStyle = debounce( setHoveredStyle, 250 );\n\n\tconst onSelectStylePreview = ( style ) => {\n\t\tonSelect( style );\n\t\tonHoverClassName( null );\n\t\tsetHoveredStyle( null );\n\t\tdebouncedSetHoveredStyle.cancel();\n\t};\n\n\tconst styleItemHandler = ( item ) => {\n\t\tif ( hoveredStyle === item ) {\n\t\t\tdebouncedSetHoveredStyle.cancel();\n\t\t\treturn;\n\t\t}\n\t\tdebouncedSetHoveredStyle( item );\n\t\tonHoverClassName( item?.name ?? null );\n\t};\n\n\treturn (\n\t\t<div className=\"block-editor-block-styles\">\n\t\t\t<div className=\"block-editor-block-styles__variants\">\n\t\t\t\t{ stylesToRender.map( ( style ) => {\n\t\t\t\t\tconst buttonText = style.isDefault\n\t\t\t\t\t\t? __( 'Default' )\n\t\t\t\t\t\t: style.label || style.name;\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'block-editor-block-styles__item',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'is-active':\n\t\t\t\t\t\t\t\t\t\tactiveStyle.name === style.name,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tkey={ style.name }\n\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\tlabel={ buttonText }\n\t\t\t\t\t\t\tonMouseEnter={ () => styleItemHandler( style ) }\n\t\t\t\t\t\t\tonFocus={ () => styleItemHandler( style ) }\n\t\t\t\t\t\t\tonMouseLeave={ () => styleItemHandler( null ) }\n\t\t\t\t\t\t\tonBlur={ () => styleItemHandler( null ) }\n\t\t\t\t\t\t\tonClick={ () => onSelectStylePreview( style ) }\n\t\t\t\t\t\t\taria-current={ activeStyle.name === style.name }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Truncate\n\t\t\t\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\t\t\t\tclassName=\"block-editor-block-styles__item-text\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ buttonText }\n\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</div>\n\t\t\t{ hoveredStyle && ! isMobileViewport && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"left-start\"\n\t\t\t\t\toffset={ 20 }\n\t\t\t\t\tfocusOnMount={ false }\n\t\t\t\t>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName=\"block-editor-block-styles__preview-panel\"\n\t\t\t\t\t\tonMouseLeave={ () => styleItemHandler( null ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockStylesPreviewPanel\n\t\t\t\t\t\t\tactiveStyle={ activeStyle }\n\t\t\t\t\t\t\tclassName={ previewClassName }\n\t\t\t\t\t\t\tgenericPreviewBlock={ genericPreviewBlock }\n\t\t\t\t\t\t\tstyle={ hoveredStyle }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default BlockStyles;\n\nBlockStyles.Slot = () => {\n\tdeprecated( 'BlockStyles.Slot', {\n\t\tversion: '6.4',\n\t\tsince: '6.2',\n\t} );\n\n\treturn null;\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
  * 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
  * 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, 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
  * 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, Fragment } from "@wordpress/element";
1
+ import { createElement, Fragment } from "react";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
@@ -79,8 +79,9 @@ export const BlockSwitcherDropdownMenu = ({
79
79
  clientId: Array.isArray(clientIds) ? clientIds[0] : clientIds,
80
80
  maximumLength: 35
81
81
  });
82
- const isReusable = blocks.length === 1 && isReusableBlock(blocks[0]);
83
- const isTemplate = blocks.length === 1 && isTemplatePart(blocks[0]);
82
+ const isSingleBlock = blocks.length === 1;
83
+ const isReusable = isSingleBlock && isReusableBlock(blocks[0]);
84
+ const isTemplate = isSingleBlock && isTemplatePart(blocks[0]);
84
85
  function selectForMultipleBlocks(insertedBlocks) {
85
86
  if (insertedBlocks.length > 1) {
86
87
  multiSelect(insertedBlocks[0].clientId, insertedBlocks[insertedBlocks.length - 1].clientId);
@@ -128,9 +129,8 @@ export const BlockSwitcherDropdownMenu = ({
128
129
  }, blockTitle))
129
130
  }));
130
131
  }
131
- const blockSwitcherLabel = blockTitle;
132
- const blockSwitcherDescription = 1 === blocks.length ? sprintf( /* translators: %s: block title. */
133
- __('%s: Change block type or style'), blockTitle) : sprintf( /* translators: %d: number of blocks. */
132
+ const blockSwitcherLabel = isSingleBlock ? blockTitle : __('Multiple blocks selected');
133
+ const blockSwitcherDescription = isSingleBlock ? __('Change block type or style') : sprintf( /* translators: %d: number of blocks. */
134
134
  _n('Change type of %d block', 'Change type of %d blocks', blocks.length), blocks.length);
135
135
  const hasBlockOrBlockVariationTransforms = hasPossibleBlockTransformations || hasPossibleBlockVariationTransformations;
136
136
  const showDropDown = hasBlockStyles || hasBlockOrBlockVariationTransforms || hasPatternTransformation;
@@ -1 +1 @@
1
- {"version":3,"names":["__","_n","sprintf","DropdownMenu","ToolbarButton","ToolbarGroup","ToolbarItem","switchToBlockType","store","blocksStore","isReusableBlock","isTemplatePart","useSelect","useDispatch","copy","blockEditorStore","useBlockDisplayInformation","BlockIcon","BlockTransformationsMenu","useBlockVariationTransforms","BlockStylesMenu","PatternTransformationsMenu","useBlockDisplayTitle","BlockSwitcherDropdownMenu","clientIds","blocks","replaceBlocks","multiSelect","updateBlockAttributes","blockInformation","clientId","possibleBlockTransformations","canRemove","hasBlockStyles","icon","patterns","select","getBlockRootClientId","getBlockTransformItems","__experimentalGetPatternTransformItems","canRemoveBlocks","getBlockStyles","getBlockType","rootClientId","Array","isArray","name","firstBlockName","_isSingleBlockSelected","length","styles","_icon","isSelectionOfSameType","Set","map","size","blockVariationTransformations","blockTitle","maximumLength","isReusable","isTemplate","selectForMultipleBlocks","insertedBlocks","onBlockTransform","newBlocks","onBlockVariationTransform","find","variationName","attributes","onPatternTransform","transformedBlocks","hasPossibleBlockTransformations","hasPossibleBlockVariationTransformations","hasPatternTransformation","createElement","disabled","className","title","Fragment","showColors","blockSwitcherLabel","blockSwitcherDescription","hasBlockOrBlockVariationTransforms","showDropDown","toggleProps","label","popoverProps","placement","describedBy","menuProps","orientation","onClose","onSelect","possibleBlockVariationTransformations","onSelectVariation","hoveredBlock","onSwitch","BlockSwitcher","getBlocksByClientId","some","block"],"sources":["@wordpress/block-editor/src/components/block-switcher/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport {\n\tDropdownMenu,\n\tToolbarButton,\n\tToolbarGroup,\n\tToolbarItem,\n} from '@wordpress/components';\nimport {\n\tswitchToBlockType,\n\tstore as blocksStore,\n\tisReusableBlock,\n\tisTemplatePart,\n} from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { copy } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport BlockIcon from '../block-icon';\nimport BlockTransformationsMenu from './block-transformations-menu';\nimport { useBlockVariationTransforms } from './block-variation-transformations';\nimport BlockStylesMenu from './block-styles-menu';\nimport PatternTransformationsMenu from './pattern-transformations-menu';\nimport useBlockDisplayTitle from '../block-title/use-block-display-title';\n\nexport const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {\n\tconst { replaceBlocks, multiSelect, updateBlockAttributes } =\n\t\tuseDispatch( blockEditorStore );\n\tconst blockInformation = useBlockDisplayInformation( blocks[ 0 ].clientId );\n\tconst {\n\t\tpossibleBlockTransformations,\n\t\tcanRemove,\n\t\thasBlockStyles,\n\t\ticon,\n\t\tpatterns,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetBlockTransformItems,\n\t\t\t\t__experimentalGetPatternTransformItems,\n\t\t\t\tcanRemoveBlocks,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { getBlockStyles, getBlockType } = select( blocksStore );\n\t\t\tconst rootClientId = getBlockRootClientId(\n\t\t\t\tArray.isArray( clientIds ) ? clientIds[ 0 ] : clientIds\n\t\t\t);\n\t\t\tconst [ { name: firstBlockName } ] = blocks;\n\t\t\tconst _isSingleBlockSelected = blocks.length === 1;\n\t\t\tconst styles =\n\t\t\t\t_isSingleBlockSelected && getBlockStyles( firstBlockName );\n\t\t\tlet _icon;\n\t\t\tif ( _isSingleBlockSelected ) {\n\t\t\t\t_icon = blockInformation?.icon; // Take into account active block variations.\n\t\t\t} else {\n\t\t\t\tconst isSelectionOfSameType =\n\t\t\t\t\tnew Set( blocks.map( ( { name } ) => name ) ).size === 1;\n\t\t\t\t// When selection consists of blocks of multiple types, display an\n\t\t\t\t// appropriate icon to communicate the non-uniformity.\n\t\t\t\t_icon = isSelectionOfSameType\n\t\t\t\t\t? getBlockType( firstBlockName )?.icon\n\t\t\t\t\t: copy;\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tpossibleBlockTransformations: getBlockTransformItems(\n\t\t\t\t\tblocks,\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanRemove: canRemoveBlocks( clientIds, rootClientId ),\n\t\t\t\thasBlockStyles: !! styles?.length,\n\t\t\t\ticon: _icon,\n\t\t\t\tpatterns: __experimentalGetPatternTransformItems(\n\t\t\t\t\tblocks,\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientIds, blocks, blockInformation?.icon ]\n\t);\n\n\tconst blockVariationTransformations = useBlockVariationTransforms( {\n\t\tclientIds,\n\t\tblocks,\n\t} );\n\n\tconst blockTitle = useBlockDisplayTitle( {\n\t\tclientId: Array.isArray( clientIds ) ? clientIds[ 0 ] : clientIds,\n\t\tmaximumLength: 35,\n\t} );\n\tconst isReusable = blocks.length === 1 && isReusableBlock( blocks[ 0 ] );\n\tconst isTemplate = blocks.length === 1 && isTemplatePart( blocks[ 0 ] );\n\n\tfunction selectForMultipleBlocks( insertedBlocks ) {\n\t\tif ( insertedBlocks.length > 1 ) {\n\t\t\tmultiSelect(\n\t\t\t\tinsertedBlocks[ 0 ].clientId,\n\t\t\t\tinsertedBlocks[ insertedBlocks.length - 1 ].clientId\n\t\t\t);\n\t\t}\n\t}\n\n\t// Simple block tranformation based on the `Block Transforms` API.\n\tfunction onBlockTransform( name ) {\n\t\tconst newBlocks = switchToBlockType( blocks, name );\n\t\treplaceBlocks( clientIds, newBlocks );\n\t\tselectForMultipleBlocks( newBlocks );\n\t}\n\n\tfunction onBlockVariationTransform( name ) {\n\t\tupdateBlockAttributes( blocks[ 0 ].clientId, {\n\t\t\t...blockVariationTransformations.find(\n\t\t\t\t( { name: variationName } ) => variationName === name\n\t\t\t).attributes,\n\t\t} );\n\t}\n\n\t// Pattern transformation through the `Patterns` API.\n\tfunction onPatternTransform( transformedBlocks ) {\n\t\treplaceBlocks( clientIds, transformedBlocks );\n\t\tselectForMultipleBlocks( transformedBlocks );\n\t}\n\n\t/**\n\t * The `isTemplate` check is a stopgap solution here.\n\t * Ideally, the Transforms API should handle this\n\t * by allowing to exclude blocks from wildcard transformations.\n\t */\n\tconst hasPossibleBlockTransformations =\n\t\t!! possibleBlockTransformations.length && canRemove && ! isTemplate;\n\tconst hasPossibleBlockVariationTransformations =\n\t\t!! blockVariationTransformations?.length;\n\tconst hasPatternTransformation = !! patterns?.length && canRemove;\n\tif (\n\t\t! hasBlockStyles &&\n\t\t! hasPossibleBlockTransformations &&\n\t\t! hasPossibleBlockVariationTransformations\n\t) {\n\t\treturn (\n\t\t\t<ToolbarGroup>\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tdisabled\n\t\t\t\t\tclassName=\"block-editor-block-switcher__no-switcher-icon\"\n\t\t\t\t\ttitle={ blockTitle }\n\t\t\t\t\ticon={\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<BlockIcon icon={ icon } showColors />\n\t\t\t\t\t\t\t{ ( isReusable || isTemplate ) && (\n\t\t\t\t\t\t\t\t<span className=\"block-editor-block-switcher__toggle-text\">\n\t\t\t\t\t\t\t\t\t{ blockTitle }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolbarGroup>\n\t\t);\n\t}\n\n\tconst blockSwitcherLabel = blockTitle;\n\n\tconst blockSwitcherDescription =\n\t\t1 === blocks.length\n\t\t\t? sprintf(\n\t\t\t\t\t/* translators: %s: block title. */\n\t\t\t\t\t__( '%s: Change block type or style' ),\n\t\t\t\t\tblockTitle\n\t\t\t )\n\t\t\t: sprintf(\n\t\t\t\t\t/* translators: %d: number of blocks. */\n\t\t\t\t\t_n(\n\t\t\t\t\t\t'Change type of %d block',\n\t\t\t\t\t\t'Change type of %d blocks',\n\t\t\t\t\t\tblocks.length\n\t\t\t\t\t),\n\t\t\t\t\tblocks.length\n\t\t\t );\n\n\tconst hasBlockOrBlockVariationTransforms =\n\t\thasPossibleBlockTransformations ||\n\t\thasPossibleBlockVariationTransformations;\n\tconst showDropDown =\n\t\thasBlockStyles ||\n\t\thasBlockOrBlockVariationTransforms ||\n\t\thasPatternTransformation;\n\treturn (\n\t\t<ToolbarGroup>\n\t\t\t<ToolbarItem>\n\t\t\t\t{ ( toggleProps ) => (\n\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\tclassName=\"block-editor-block-switcher\"\n\t\t\t\t\t\tlabel={ blockSwitcherLabel }\n\t\t\t\t\t\tpopoverProps={ {\n\t\t\t\t\t\t\tplacement: 'bottom-start',\n\t\t\t\t\t\t\tclassName: 'block-editor-block-switcher__popover',\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<BlockIcon\n\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-switcher__toggle\"\n\t\t\t\t\t\t\t\t\tshowColors\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ ( isReusable || isTemplate ) && (\n\t\t\t\t\t\t\t\t\t<span className=\"block-editor-block-switcher__toggle-text\">\n\t\t\t\t\t\t\t\t\t\t{ blockTitle }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\tdescribedBy: blockSwitcherDescription,\n\t\t\t\t\t\t\t...toggleProps,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tmenuProps={ { orientation: 'both' } }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) =>\n\t\t\t\t\t\t\tshowDropDown && (\n\t\t\t\t\t\t\t\t<div className=\"block-editor-block-switcher__container\">\n\t\t\t\t\t\t\t\t\t{ hasPatternTransformation && (\n\t\t\t\t\t\t\t\t\t\t<PatternTransformationsMenu\n\t\t\t\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\t\t\t\tpatterns={ patterns }\n\t\t\t\t\t\t\t\t\t\t\tonSelect={ (\n\t\t\t\t\t\t\t\t\t\t\t\ttransformedBlocks\n\t\t\t\t\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\t\t\t\t\tonPatternTransform(\n\t\t\t\t\t\t\t\t\t\t\t\t\ttransformedBlocks\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ hasBlockOrBlockVariationTransforms && (\n\t\t\t\t\t\t\t\t\t\t<BlockTransformationsMenu\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-switcher__transforms__menugroup\"\n\t\t\t\t\t\t\t\t\t\t\tpossibleBlockTransformations={\n\t\t\t\t\t\t\t\t\t\t\t\tpossibleBlockTransformations\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tpossibleBlockVariationTransformations={\n\t\t\t\t\t\t\t\t\t\t\t\tblockVariationTransformations\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\t\t\t\tonSelect={ ( name ) => {\n\t\t\t\t\t\t\t\t\t\t\t\tonBlockTransform( name );\n\t\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\tonSelectVariation={ ( name ) => {\n\t\t\t\t\t\t\t\t\t\t\t\tonBlockVariationTransform(\n\t\t\t\t\t\t\t\t\t\t\t\t\tname\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ hasBlockStyles && (\n\t\t\t\t\t\t\t\t\t\t<BlockStylesMenu\n\t\t\t\t\t\t\t\t\t\t\thoveredBlock={ blocks[ 0 ] }\n\t\t\t\t\t\t\t\t\t\t\tonSwitch={ onClose }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t</DropdownMenu>\n\t\t\t\t) }\n\t\t\t</ToolbarItem>\n\t\t</ToolbarGroup>\n\t);\n};\n\nexport const BlockSwitcher = ( { clientIds } ) => {\n\tconst blocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlocksByClientId( clientIds ),\n\t\t[ clientIds ]\n\t);\n\n\tif ( ! blocks.length || blocks.some( ( block ) => ! block ) ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<BlockSwitcherDropdownMenu clientIds={ clientIds } blocks={ blocks } />\n\t);\n};\n\nexport default BlockSwitcher;\n"],"mappings":"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"}
1
+ {"version":3,"names":["__","_n","sprintf","DropdownMenu","ToolbarButton","ToolbarGroup","ToolbarItem","switchToBlockType","store","blocksStore","isReusableBlock","isTemplatePart","useSelect","useDispatch","copy","blockEditorStore","useBlockDisplayInformation","BlockIcon","BlockTransformationsMenu","useBlockVariationTransforms","BlockStylesMenu","PatternTransformationsMenu","useBlockDisplayTitle","BlockSwitcherDropdownMenu","clientIds","blocks","replaceBlocks","multiSelect","updateBlockAttributes","blockInformation","clientId","possibleBlockTransformations","canRemove","hasBlockStyles","icon","patterns","select","getBlockRootClientId","getBlockTransformItems","__experimentalGetPatternTransformItems","canRemoveBlocks","getBlockStyles","getBlockType","rootClientId","Array","isArray","name","firstBlockName","_isSingleBlockSelected","length","styles","_icon","isSelectionOfSameType","Set","map","size","blockVariationTransformations","blockTitle","maximumLength","isSingleBlock","isReusable","isTemplate","selectForMultipleBlocks","insertedBlocks","onBlockTransform","newBlocks","onBlockVariationTransform","find","variationName","attributes","onPatternTransform","transformedBlocks","hasPossibleBlockTransformations","hasPossibleBlockVariationTransformations","hasPatternTransformation","createElement","disabled","className","title","Fragment","showColors","blockSwitcherLabel","blockSwitcherDescription","hasBlockOrBlockVariationTransforms","showDropDown","toggleProps","label","popoverProps","placement","describedBy","menuProps","orientation","onClose","onSelect","possibleBlockVariationTransformations","onSelectVariation","hoveredBlock","onSwitch","BlockSwitcher","getBlocksByClientId","some","block"],"sources":["@wordpress/block-editor/src/components/block-switcher/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport {\n\tDropdownMenu,\n\tToolbarButton,\n\tToolbarGroup,\n\tToolbarItem,\n} from '@wordpress/components';\nimport {\n\tswitchToBlockType,\n\tstore as blocksStore,\n\tisReusableBlock,\n\tisTemplatePart,\n} from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { copy } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport BlockIcon from '../block-icon';\nimport BlockTransformationsMenu from './block-transformations-menu';\nimport { useBlockVariationTransforms } from './block-variation-transformations';\nimport BlockStylesMenu from './block-styles-menu';\nimport PatternTransformationsMenu from './pattern-transformations-menu';\nimport useBlockDisplayTitle from '../block-title/use-block-display-title';\n\nexport const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {\n\tconst { replaceBlocks, multiSelect, updateBlockAttributes } =\n\t\tuseDispatch( blockEditorStore );\n\tconst blockInformation = useBlockDisplayInformation( blocks[ 0 ].clientId );\n\tconst {\n\t\tpossibleBlockTransformations,\n\t\tcanRemove,\n\t\thasBlockStyles,\n\t\ticon,\n\t\tpatterns,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetBlockTransformItems,\n\t\t\t\t__experimentalGetPatternTransformItems,\n\t\t\t\tcanRemoveBlocks,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { getBlockStyles, getBlockType } = select( blocksStore );\n\t\t\tconst rootClientId = getBlockRootClientId(\n\t\t\t\tArray.isArray( clientIds ) ? clientIds[ 0 ] : clientIds\n\t\t\t);\n\t\t\tconst [ { name: firstBlockName } ] = blocks;\n\t\t\tconst _isSingleBlockSelected = blocks.length === 1;\n\t\t\tconst styles =\n\t\t\t\t_isSingleBlockSelected && getBlockStyles( firstBlockName );\n\t\t\tlet _icon;\n\t\t\tif ( _isSingleBlockSelected ) {\n\t\t\t\t_icon = blockInformation?.icon; // Take into account active block variations.\n\t\t\t} else {\n\t\t\t\tconst isSelectionOfSameType =\n\t\t\t\t\tnew Set( blocks.map( ( { name } ) => name ) ).size === 1;\n\t\t\t\t// When selection consists of blocks of multiple types, display an\n\t\t\t\t// appropriate icon to communicate the non-uniformity.\n\t\t\t\t_icon = isSelectionOfSameType\n\t\t\t\t\t? getBlockType( firstBlockName )?.icon\n\t\t\t\t\t: copy;\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tpossibleBlockTransformations: getBlockTransformItems(\n\t\t\t\t\tblocks,\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanRemove: canRemoveBlocks( clientIds, rootClientId ),\n\t\t\t\thasBlockStyles: !! styles?.length,\n\t\t\t\ticon: _icon,\n\t\t\t\tpatterns: __experimentalGetPatternTransformItems(\n\t\t\t\t\tblocks,\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientIds, blocks, blockInformation?.icon ]\n\t);\n\n\tconst blockVariationTransformations = useBlockVariationTransforms( {\n\t\tclientIds,\n\t\tblocks,\n\t} );\n\n\tconst blockTitle = useBlockDisplayTitle( {\n\t\tclientId: Array.isArray( clientIds ) ? clientIds[ 0 ] : clientIds,\n\t\tmaximumLength: 35,\n\t} );\n\n\tconst isSingleBlock = blocks.length === 1;\n\tconst isReusable = isSingleBlock && isReusableBlock( blocks[ 0 ] );\n\tconst isTemplate = isSingleBlock && isTemplatePart( blocks[ 0 ] );\n\n\tfunction selectForMultipleBlocks( insertedBlocks ) {\n\t\tif ( insertedBlocks.length > 1 ) {\n\t\t\tmultiSelect(\n\t\t\t\tinsertedBlocks[ 0 ].clientId,\n\t\t\t\tinsertedBlocks[ insertedBlocks.length - 1 ].clientId\n\t\t\t);\n\t\t}\n\t}\n\n\t// Simple block tranformation based on the `Block Transforms` API.\n\tfunction onBlockTransform( name ) {\n\t\tconst newBlocks = switchToBlockType( blocks, name );\n\t\treplaceBlocks( clientIds, newBlocks );\n\t\tselectForMultipleBlocks( newBlocks );\n\t}\n\n\tfunction onBlockVariationTransform( name ) {\n\t\tupdateBlockAttributes( blocks[ 0 ].clientId, {\n\t\t\t...blockVariationTransformations.find(\n\t\t\t\t( { name: variationName } ) => variationName === name\n\t\t\t).attributes,\n\t\t} );\n\t}\n\n\t// Pattern transformation through the `Patterns` API.\n\tfunction onPatternTransform( transformedBlocks ) {\n\t\treplaceBlocks( clientIds, transformedBlocks );\n\t\tselectForMultipleBlocks( transformedBlocks );\n\t}\n\n\t/**\n\t * The `isTemplate` check is a stopgap solution here.\n\t * Ideally, the Transforms API should handle this\n\t * by allowing to exclude blocks from wildcard transformations.\n\t */\n\tconst hasPossibleBlockTransformations =\n\t\t!! possibleBlockTransformations.length && canRemove && ! isTemplate;\n\tconst hasPossibleBlockVariationTransformations =\n\t\t!! blockVariationTransformations?.length;\n\tconst hasPatternTransformation = !! patterns?.length && canRemove;\n\tif (\n\t\t! hasBlockStyles &&\n\t\t! hasPossibleBlockTransformations &&\n\t\t! hasPossibleBlockVariationTransformations\n\t) {\n\t\treturn (\n\t\t\t<ToolbarGroup>\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tdisabled\n\t\t\t\t\tclassName=\"block-editor-block-switcher__no-switcher-icon\"\n\t\t\t\t\ttitle={ blockTitle }\n\t\t\t\t\ticon={\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<BlockIcon icon={ icon } showColors />\n\t\t\t\t\t\t\t{ ( isReusable || isTemplate ) && (\n\t\t\t\t\t\t\t\t<span className=\"block-editor-block-switcher__toggle-text\">\n\t\t\t\t\t\t\t\t\t{ blockTitle }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolbarGroup>\n\t\t);\n\t}\n\n\tconst blockSwitcherLabel = isSingleBlock\n\t\t? blockTitle\n\t\t: __( 'Multiple blocks selected' );\n\n\tconst blockSwitcherDescription = isSingleBlock\n\t\t? __( 'Change block type or style' )\n\t\t: sprintf(\n\t\t\t\t/* translators: %d: number of blocks. */\n\t\t\t\t_n(\n\t\t\t\t\t'Change type of %d block',\n\t\t\t\t\t'Change type of %d blocks',\n\t\t\t\t\tblocks.length\n\t\t\t\t),\n\t\t\t\tblocks.length\n\t\t );\n\n\tconst hasBlockOrBlockVariationTransforms =\n\t\thasPossibleBlockTransformations ||\n\t\thasPossibleBlockVariationTransformations;\n\tconst showDropDown =\n\t\thasBlockStyles ||\n\t\thasBlockOrBlockVariationTransforms ||\n\t\thasPatternTransformation;\n\treturn (\n\t\t<ToolbarGroup>\n\t\t\t<ToolbarItem>\n\t\t\t\t{ ( toggleProps ) => (\n\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\tclassName=\"block-editor-block-switcher\"\n\t\t\t\t\t\tlabel={ blockSwitcherLabel }\n\t\t\t\t\t\tpopoverProps={ {\n\t\t\t\t\t\t\tplacement: 'bottom-start',\n\t\t\t\t\t\t\tclassName: 'block-editor-block-switcher__popover',\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<BlockIcon\n\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-switcher__toggle\"\n\t\t\t\t\t\t\t\t\tshowColors\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ ( isReusable || isTemplate ) && (\n\t\t\t\t\t\t\t\t\t<span className=\"block-editor-block-switcher__toggle-text\">\n\t\t\t\t\t\t\t\t\t\t{ blockTitle }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\tdescribedBy: blockSwitcherDescription,\n\t\t\t\t\t\t\t...toggleProps,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tmenuProps={ { orientation: 'both' } }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) =>\n\t\t\t\t\t\t\tshowDropDown && (\n\t\t\t\t\t\t\t\t<div className=\"block-editor-block-switcher__container\">\n\t\t\t\t\t\t\t\t\t{ hasPatternTransformation && (\n\t\t\t\t\t\t\t\t\t\t<PatternTransformationsMenu\n\t\t\t\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\t\t\t\tpatterns={ patterns }\n\t\t\t\t\t\t\t\t\t\t\tonSelect={ (\n\t\t\t\t\t\t\t\t\t\t\t\ttransformedBlocks\n\t\t\t\t\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\t\t\t\t\tonPatternTransform(\n\t\t\t\t\t\t\t\t\t\t\t\t\ttransformedBlocks\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ hasBlockOrBlockVariationTransforms && (\n\t\t\t\t\t\t\t\t\t\t<BlockTransformationsMenu\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-switcher__transforms__menugroup\"\n\t\t\t\t\t\t\t\t\t\t\tpossibleBlockTransformations={\n\t\t\t\t\t\t\t\t\t\t\t\tpossibleBlockTransformations\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tpossibleBlockVariationTransformations={\n\t\t\t\t\t\t\t\t\t\t\t\tblockVariationTransformations\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\t\t\t\tonSelect={ ( name ) => {\n\t\t\t\t\t\t\t\t\t\t\t\tonBlockTransform( name );\n\t\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\tonSelectVariation={ ( name ) => {\n\t\t\t\t\t\t\t\t\t\t\t\tonBlockVariationTransform(\n\t\t\t\t\t\t\t\t\t\t\t\t\tname\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ hasBlockStyles && (\n\t\t\t\t\t\t\t\t\t\t<BlockStylesMenu\n\t\t\t\t\t\t\t\t\t\t\thoveredBlock={ blocks[ 0 ] }\n\t\t\t\t\t\t\t\t\t\t\tonSwitch={ onClose }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t</DropdownMenu>\n\t\t\t\t) }\n\t\t\t</ToolbarItem>\n\t\t</ToolbarGroup>\n\t);\n};\n\nexport const BlockSwitcher = ( { clientIds } ) => {\n\tconst blocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlocksByClientId( clientIds ),\n\t\t[ clientIds ]\n\t);\n\n\tif ( ! blocks.length || blocks.some( ( block ) => ! block ) ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<BlockSwitcherDropdownMenu clientIds={ clientIds } blocks={ blocks } />\n\t);\n};\n\nexport default BlockSwitcher;\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
  */
@@ -46,8 +46,10 @@ function PreviewPatternsPopover({
46
46
  className: "block-editor-block-switcher__preview__popover",
47
47
  position: "bottom right"
48
48
  }, createElement("div", {
49
- className: "block-editor-block-switcher__preview is-pattern-list-preview"
50
- }, createElement(BlockPatternsList, {
49
+ className: "block-editor-block-switcher__preview"
50
+ }, createElement("div", {
51
+ className: "block-editor-block-switcher__preview-title"
52
+ }, __('Preview')), createElement(BlockPatternsList, {
51
53
  patterns: patterns,
52
54
  onSelect: onSelect
53
55
  })))));
@@ -1 +1 @@
1
- {"version":3,"names":["__","useState","useInstanceId","chevronRight","MenuGroup","MenuItem","Popover","VisuallyHidden","__unstableComposite","Composite","__unstableUseCompositeState","useCompositeState","__unstableCompositeItem","CompositeItem","BlockPreview","useTransformedPatterns","PatternTransformationsMenu","blocks","patterns","statePatterns","onSelect","showTransforms","setShowTransforms","length","createElement","className","PreviewPatternsPopover","onClick","event","preventDefault","icon","position","BlockPatternsList","composite","role","map","pattern","BlockPattern","key","name","baseClassName","descriptionId","as","title","description","undefined","transformedBlocks","viewportWidth","id"],"sources":["@wordpress/block-editor/src/components/block-switcher/pattern-transformations-menu.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { useInstanceId } from '@wordpress/compose';\nimport { chevronRight } from '@wordpress/icons';\n\nimport {\n\tMenuGroup,\n\tMenuItem,\n\tPopover,\n\tVisuallyHidden,\n\t__unstableComposite as Composite,\n\t__unstableUseCompositeState as useCompositeState,\n\t__unstableCompositeItem as CompositeItem,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport BlockPreview from '../block-preview';\nimport useTransformedPatterns from './use-transformed-patterns';\n\nfunction PatternTransformationsMenu( {\n\tblocks,\n\tpatterns: statePatterns,\n\tonSelect,\n} ) {\n\tconst [ showTransforms, setShowTransforms ] = useState( false );\n\tconst patterns = useTransformedPatterns( statePatterns, blocks );\n\tif ( ! patterns.length ) return null;\n\n\treturn (\n\t\t<MenuGroup className=\"block-editor-block-switcher__pattern__transforms__menugroup\">\n\t\t\t{ showTransforms && (\n\t\t\t\t<PreviewPatternsPopover\n\t\t\t\t\tpatterns={ patterns }\n\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<MenuItem\n\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tsetShowTransforms( ! showTransforms );\n\t\t\t\t} }\n\t\t\t\ticon={ chevronRight }\n\t\t\t>\n\t\t\t\t{ __( 'Patterns' ) }\n\t\t\t</MenuItem>\n\t\t</MenuGroup>\n\t);\n}\n\nfunction PreviewPatternsPopover( { patterns, onSelect } ) {\n\treturn (\n\t\t<div className=\"block-editor-block-switcher__popover__preview__parent\">\n\t\t\t<div className=\"block-editor-block-switcher__popover__preview__container\">\n\t\t\t\t<Popover\n\t\t\t\t\tclassName=\"block-editor-block-switcher__preview__popover\"\n\t\t\t\t\tposition=\"bottom right\"\n\t\t\t\t>\n\t\t\t\t\t<div className=\"block-editor-block-switcher__preview is-pattern-list-preview\">\n\t\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\t\tpatterns={ patterns }\n\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Popover>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nfunction BlockPatternsList( { patterns, onSelect } ) {\n\tconst composite = useCompositeState();\n\treturn (\n\t\t<Composite\n\t\t\t{ ...composite }\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"block-editor-block-switcher__preview-patterns-container\"\n\t\t\taria-label={ __( 'Patterns list' ) }\n\t\t>\n\t\t\t{ patterns.map( ( pattern ) => (\n\t\t\t\t<BlockPattern\n\t\t\t\t\tkey={ pattern.name }\n\t\t\t\t\tpattern={ pattern }\n\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\tcomposite={ composite }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</Composite>\n\t);\n}\n\nfunction BlockPattern( { pattern, onSelect, composite } ) {\n\t// TODO check pattern/preview width...\n\tconst baseClassName =\n\t\t'block-editor-block-switcher__preview-patterns-container';\n\tconst descriptionId = useInstanceId(\n\t\tBlockPattern,\n\t\t`${ baseClassName }-list__item-description`\n\t);\n\treturn (\n\t\t<div className={ `${ baseClassName }-list__list-item` }>\n\t\t\t<CompositeItem\n\t\t\t\trole=\"option\"\n\t\t\t\tas=\"div\"\n\t\t\t\t{ ...composite }\n\t\t\t\taria-label={ pattern.title }\n\t\t\t\taria-describedby={\n\t\t\t\t\tpattern.description ? descriptionId : undefined\n\t\t\t\t}\n\t\t\t\tclassName={ `${ baseClassName }-list__item` }\n\t\t\t\tonClick={ () => onSelect( pattern.transformedBlocks ) }\n\t\t\t>\n\t\t\t\t<BlockPreview\n\t\t\t\t\tblocks={ pattern.transformedBlocks }\n\t\t\t\t\tviewportWidth={ pattern.viewportWidth || 500 }\n\t\t\t\t/>\n\t\t\t\t<div className={ `${ baseClassName }-list__item-title` }>\n\t\t\t\t\t{ pattern.title }\n\t\t\t\t</div>\n\t\t\t</CompositeItem>\n\t\t\t{ !! pattern.description && (\n\t\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t\t{ pattern.description }\n\t\t\t\t</VisuallyHidden>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default PatternTransformationsMenu;\n"],"mappings":"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"}
1
+ {"version":3,"names":["__","useState","useInstanceId","chevronRight","MenuGroup","MenuItem","Popover","VisuallyHidden","__unstableComposite","Composite","__unstableUseCompositeState","useCompositeState","__unstableCompositeItem","CompositeItem","BlockPreview","useTransformedPatterns","PatternTransformationsMenu","blocks","patterns","statePatterns","onSelect","showTransforms","setShowTransforms","length","createElement","className","PreviewPatternsPopover","onClick","event","preventDefault","icon","position","BlockPatternsList","composite","role","map","pattern","BlockPattern","key","name","baseClassName","descriptionId","as","title","description","undefined","transformedBlocks","viewportWidth","id"],"sources":["@wordpress/block-editor/src/components/block-switcher/pattern-transformations-menu.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { useInstanceId } from '@wordpress/compose';\nimport { chevronRight } from '@wordpress/icons';\n\nimport {\n\tMenuGroup,\n\tMenuItem,\n\tPopover,\n\tVisuallyHidden,\n\t__unstableComposite as Composite,\n\t__unstableUseCompositeState as useCompositeState,\n\t__unstableCompositeItem as CompositeItem,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport BlockPreview from '../block-preview';\nimport useTransformedPatterns from './use-transformed-patterns';\n\nfunction PatternTransformationsMenu( {\n\tblocks,\n\tpatterns: statePatterns,\n\tonSelect,\n} ) {\n\tconst [ showTransforms, setShowTransforms ] = useState( false );\n\tconst patterns = useTransformedPatterns( statePatterns, blocks );\n\tif ( ! patterns.length ) return null;\n\n\treturn (\n\t\t<MenuGroup className=\"block-editor-block-switcher__pattern__transforms__menugroup\">\n\t\t\t{ showTransforms && (\n\t\t\t\t<PreviewPatternsPopover\n\t\t\t\t\tpatterns={ patterns }\n\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<MenuItem\n\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tsetShowTransforms( ! showTransforms );\n\t\t\t\t} }\n\t\t\t\ticon={ chevronRight }\n\t\t\t>\n\t\t\t\t{ __( 'Patterns' ) }\n\t\t\t</MenuItem>\n\t\t</MenuGroup>\n\t);\n}\n\nfunction PreviewPatternsPopover( { patterns, onSelect } ) {\n\treturn (\n\t\t<div className=\"block-editor-block-switcher__popover__preview__parent\">\n\t\t\t<div className=\"block-editor-block-switcher__popover__preview__container\">\n\t\t\t\t<Popover\n\t\t\t\t\tclassName=\"block-editor-block-switcher__preview__popover\"\n\t\t\t\t\tposition=\"bottom right\"\n\t\t\t\t>\n\t\t\t\t\t<div className=\"block-editor-block-switcher__preview\">\n\t\t\t\t\t\t<div className=\"block-editor-block-switcher__preview-title\">\n\t\t\t\t\t\t\t{ __( 'Preview' ) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\t\tpatterns={ patterns }\n\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Popover>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nfunction BlockPatternsList( { patterns, onSelect } ) {\n\tconst composite = useCompositeState();\n\treturn (\n\t\t<Composite\n\t\t\t{ ...composite }\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"block-editor-block-switcher__preview-patterns-container\"\n\t\t\taria-label={ __( 'Patterns list' ) }\n\t\t>\n\t\t\t{ patterns.map( ( pattern ) => (\n\t\t\t\t<BlockPattern\n\t\t\t\t\tkey={ pattern.name }\n\t\t\t\t\tpattern={ pattern }\n\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\tcomposite={ composite }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</Composite>\n\t);\n}\n\nfunction BlockPattern( { pattern, onSelect, composite } ) {\n\t// TODO check pattern/preview width...\n\tconst baseClassName =\n\t\t'block-editor-block-switcher__preview-patterns-container';\n\tconst descriptionId = useInstanceId(\n\t\tBlockPattern,\n\t\t`${ baseClassName }-list__item-description`\n\t);\n\treturn (\n\t\t<div className={ `${ baseClassName }-list__list-item` }>\n\t\t\t<CompositeItem\n\t\t\t\trole=\"option\"\n\t\t\t\tas=\"div\"\n\t\t\t\t{ ...composite }\n\t\t\t\taria-label={ pattern.title }\n\t\t\t\taria-describedby={\n\t\t\t\t\tpattern.description ? descriptionId : undefined\n\t\t\t\t}\n\t\t\t\tclassName={ `${ baseClassName }-list__item` }\n\t\t\t\tonClick={ () => onSelect( pattern.transformedBlocks ) }\n\t\t\t>\n\t\t\t\t<BlockPreview\n\t\t\t\t\tblocks={ pattern.transformedBlocks }\n\t\t\t\t\tviewportWidth={ pattern.viewportWidth || 500 }\n\t\t\t\t/>\n\t\t\t\t<div className={ `${ baseClassName }-list__item-title` }>\n\t\t\t\t\t{ pattern.title }\n\t\t\t\t</div>\n\t\t\t</CompositeItem>\n\t\t\t{ !! pattern.description && (\n\t\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t\t{ pattern.description }\n\t\t\t\t</VisuallyHidden>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default PatternTransformationsMenu;\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
  * 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, 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
  * 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
  */
@@ -36,7 +36,7 @@ import BlockMover from '../block-mover';
36
36
  * @param {string} props Component props.
37
37
  * @param {string} props.clientId Client ID of block.
38
38
  *
39
- * @return {WPComponent} The component to be rendered.
39
+ * @return {Component} The component to be rendered.
40
40
  */
41
41
  function BlockSelectionButton({
42
42
  clientId,
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","dragHandle","Button","Flex","FlexItem","useSelect","useDispatch","useEffect","useRef","BACKSPACE","DELETE","UP","DOWN","LEFT","RIGHT","TAB","ESCAPE","ENTER","SPACE","getBlockType","__experimentalGetAccessibleBlockLabel","getAccessibleBlockLabel","speak","focus","__","BlockTitle","BlockIcon","store","blockEditorStore","BlockDraggable","useBlockDisplayInformation","__unstableUseBlockElement","useBlockElement","BlockMover","BlockSelectionButton","clientId","rootClientId","blockInformation","selected","select","getBlock","getBlockIndex","hasBlockMovingClientId","getBlockListSettings","__unstableGetEditorMode","index","name","attributes","blockMovingMode","orientation","editorMode","setNavigationMode","removeBlock","ref","blockType","label","current","blockElement","getBlockRootClientId","getClientIdsOfDescendants","getSelectedBlockClientId","getMultiSelectedBlocksEndClientId","getPreviousBlockClientId","getNextBlockClientId","selectBlock","clearSelectedBlock","setBlockMovingClientId","moveBlockToPosition","onKeyDown","event","keyCode","isUp","isDown","isLeft","isRight","isTab","isEscape","isEnter","isSpace","isShift","shiftKey","preventDefault","selectedBlockClientId","selectionEndClientId","selectionBeforeEndClientId","selectionAfterEndClientId","navigateUp","navigateDown","navigateOut","navigateIn","focusedBlockUid","_getBlockRootClientId","_getClientIdsOfDescen","startingBlockClientId","defaultPrevented","sourceRoot","destRoot","sourceBlockIndex","destinationBlockIndex","nextTabbable","tabbable","findNext","contains","ownerDocument","defaultView","frameElement","findPrevious","classNames","dragHandleLabel","createElement","className","justify","icon","showColors","clientIds","hideDragHandle","draggableProps","tabIndex","onClick","undefined","showTooltip","maximumLength"],"sources":["@wordpress/block-editor/src/components/block-tools/block-selection-button.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { dragHandle } from '@wordpress/icons';\nimport { Button, Flex, FlexItem } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport {\n\tBACKSPACE,\n\tDELETE,\n\tUP,\n\tDOWN,\n\tLEFT,\n\tRIGHT,\n\tTAB,\n\tESCAPE,\n\tENTER,\n\tSPACE,\n} from '@wordpress/keycodes';\nimport {\n\tgetBlockType,\n\t__experimentalGetAccessibleBlockLabel as getAccessibleBlockLabel,\n} from '@wordpress/blocks';\nimport { speak } from '@wordpress/a11y';\nimport { focus } from '@wordpress/dom';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockTitle from '../block-title';\nimport BlockIcon from '../block-icon';\nimport { store as blockEditorStore } from '../../store';\nimport BlockDraggable from '../block-draggable';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport { __unstableUseBlockElement as useBlockElement } from '../block-list/use-block-props/use-block-refs';\nimport BlockMover from '../block-mover';\n\n/**\n * Block selection button component, displaying the label of the block. If the block\n * descends from a root block, a button is displayed enabling the user to select\n * the root block.\n *\n * @param {string} props Component props.\n * @param {string} props.clientId Client ID of block.\n *\n * @return {WPComponent} The component to be rendered.\n */\nfunction BlockSelectionButton( { clientId, rootClientId } ) {\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\tconst selected = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlock,\n\t\t\t\tgetBlockIndex,\n\t\t\t\thasBlockMovingClientId,\n\t\t\t\tgetBlockListSettings,\n\t\t\t\t__unstableGetEditorMode,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst index = getBlockIndex( clientId );\n\t\t\tconst { name, attributes } = getBlock( clientId );\n\t\t\tconst blockMovingMode = hasBlockMovingClientId();\n\t\t\treturn {\n\t\t\t\tindex,\n\t\t\t\tname,\n\t\t\t\tattributes,\n\t\t\t\tblockMovingMode,\n\t\t\t\torientation: getBlockListSettings( rootClientId )?.orientation,\n\t\t\t\teditorMode: __unstableGetEditorMode(),\n\t\t\t};\n\t\t},\n\t\t[ clientId, rootClientId ]\n\t);\n\tconst {\n\t\tindex,\n\t\tname,\n\t\tattributes,\n\t\tblockMovingMode,\n\t\torientation,\n\t\teditorMode,\n\t} = selected;\n\tconst { setNavigationMode, removeBlock } = useDispatch( blockEditorStore );\n\tconst ref = useRef();\n\n\tconst blockType = getBlockType( name );\n\tconst label = getAccessibleBlockLabel(\n\t\tblockType,\n\t\tattributes,\n\t\tindex + 1,\n\t\torientation\n\t);\n\n\t// Focus the breadcrumb in navigation mode.\n\tuseEffect( () => {\n\t\tref.current.focus();\n\n\t\tspeak( label );\n\t}, [ label ] );\n\tconst blockElement = useBlockElement( clientId );\n\n\tconst {\n\t\thasBlockMovingClientId,\n\t\tgetBlockIndex,\n\t\tgetBlockRootClientId,\n\t\tgetClientIdsOfDescendants,\n\t\tgetSelectedBlockClientId,\n\t\tgetMultiSelectedBlocksEndClientId,\n\t\tgetPreviousBlockClientId,\n\t\tgetNextBlockClientId,\n\t} = useSelect( blockEditorStore );\n\tconst {\n\t\tselectBlock,\n\t\tclearSelectedBlock,\n\t\tsetBlockMovingClientId,\n\t\tmoveBlockToPosition,\n\t} = useDispatch( blockEditorStore );\n\n\tfunction onKeyDown( event ) {\n\t\tconst { keyCode } = event;\n\t\tconst isUp = keyCode === UP;\n\t\tconst isDown = keyCode === DOWN;\n\t\tconst isLeft = keyCode === LEFT;\n\t\tconst isRight = keyCode === RIGHT;\n\t\tconst isTab = keyCode === TAB;\n\t\tconst isEscape = keyCode === ESCAPE;\n\t\tconst isEnter = keyCode === ENTER;\n\t\tconst isSpace = keyCode === SPACE;\n\t\tconst isShift = event.shiftKey;\n\n\t\tif ( keyCode === BACKSPACE || keyCode === DELETE ) {\n\t\t\tremoveBlock( clientId );\n\t\t\tevent.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\t\tconst selectionEndClientId = getMultiSelectedBlocksEndClientId();\n\t\tconst selectionBeforeEndClientId = getPreviousBlockClientId(\n\t\t\tselectionEndClientId || selectedBlockClientId\n\t\t);\n\t\tconst selectionAfterEndClientId = getNextBlockClientId(\n\t\t\tselectionEndClientId || selectedBlockClientId\n\t\t);\n\n\t\tconst navigateUp = ( isTab && isShift ) || isUp;\n\t\tconst navigateDown = ( isTab && ! isShift ) || isDown;\n\t\t// Move out of current nesting level (no effect if at root level).\n\t\tconst navigateOut = isLeft;\n\t\t// Move into next nesting level (no effect if the current block has no innerBlocks).\n\t\tconst navigateIn = isRight;\n\n\t\tlet focusedBlockUid;\n\t\tif ( navigateUp ) {\n\t\t\tfocusedBlockUid = selectionBeforeEndClientId;\n\t\t} else if ( navigateDown ) {\n\t\t\tfocusedBlockUid = selectionAfterEndClientId;\n\t\t} else if ( navigateOut ) {\n\t\t\tfocusedBlockUid =\n\t\t\t\tgetBlockRootClientId( selectedBlockClientId ) ??\n\t\t\t\tselectedBlockClientId;\n\t\t} else if ( navigateIn ) {\n\t\t\tfocusedBlockUid =\n\t\t\t\tgetClientIdsOfDescendants( selectedBlockClientId )[ 0 ] ??\n\t\t\t\tselectedBlockClientId;\n\t\t}\n\t\tconst startingBlockClientId = hasBlockMovingClientId();\n\t\tif ( isEscape && startingBlockClientId && ! event.defaultPrevented ) {\n\t\t\tsetBlockMovingClientId( null );\n\t\t\tevent.preventDefault();\n\t\t}\n\t\tif ( ( isEnter || isSpace ) && startingBlockClientId ) {\n\t\t\tconst sourceRoot = getBlockRootClientId( startingBlockClientId );\n\t\t\tconst destRoot = getBlockRootClientId( selectedBlockClientId );\n\t\t\tconst sourceBlockIndex = getBlockIndex( startingBlockClientId );\n\t\t\tlet destinationBlockIndex = getBlockIndex( selectedBlockClientId );\n\t\t\tif (\n\t\t\t\tsourceBlockIndex < destinationBlockIndex &&\n\t\t\t\tsourceRoot === destRoot\n\t\t\t) {\n\t\t\t\tdestinationBlockIndex -= 1;\n\t\t\t}\n\t\t\tmoveBlockToPosition(\n\t\t\t\tstartingBlockClientId,\n\t\t\t\tsourceRoot,\n\t\t\t\tdestRoot,\n\t\t\t\tdestinationBlockIndex\n\t\t\t);\n\t\t\tselectBlock( startingBlockClientId );\n\t\t\tsetBlockMovingClientId( null );\n\t\t}\n\t\t// Prevent the block from being moved into itself.\n\t\tif (\n\t\t\tstartingBlockClientId &&\n\t\t\tselectedBlockClientId === startingBlockClientId &&\n\t\t\tnavigateIn\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tif ( navigateDown || navigateUp || navigateOut || navigateIn ) {\n\t\t\tif ( focusedBlockUid ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tselectBlock( focusedBlockUid );\n\t\t\t} else if ( isTab && selectedBlockClientId ) {\n\t\t\t\tlet nextTabbable;\n\n\t\t\t\tif ( navigateDown ) {\n\t\t\t\t\tnextTabbable = blockElement;\n\t\t\t\t\tdo {\n\t\t\t\t\t\tnextTabbable = focus.tabbable.findNext( nextTabbable );\n\t\t\t\t\t} while (\n\t\t\t\t\t\tnextTabbable &&\n\t\t\t\t\t\tblockElement.contains( nextTabbable )\n\t\t\t\t\t);\n\n\t\t\t\t\tif ( ! nextTabbable ) {\n\t\t\t\t\t\tnextTabbable =\n\t\t\t\t\t\t\tblockElement.ownerDocument.defaultView.frameElement;\n\t\t\t\t\t\tnextTabbable = focus.tabbable.findNext( nextTabbable );\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tnextTabbable = focus.tabbable.findPrevious( blockElement );\n\t\t\t\t}\n\n\t\t\t\tif ( nextTabbable ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tnextTabbable.focus();\n\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tconst classNames = classnames(\n\t\t'block-editor-block-list__block-selection-button',\n\t\t{\n\t\t\t'is-block-moving-mode': !! blockMovingMode,\n\t\t}\n\t);\n\n\tconst dragHandleLabel = __( 'Drag' );\n\n\treturn (\n\t\t<div className={ classNames }>\n\t\t\t<Flex\n\t\t\t\tjustify=\"center\"\n\t\t\t\tclassName=\"block-editor-block-list__block-selection-button__content\"\n\t\t\t>\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<BlockIcon icon={ blockInformation?.icon } showColors />\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem>\n\t\t\t\t\t{ editorMode === 'zoom-out' && (\n\t\t\t\t\t\t<BlockMover clientIds={ [ clientId ] } hideDragHandle />\n\t\t\t\t\t) }\n\t\t\t\t\t{ editorMode === 'navigation' && (\n\t\t\t\t\t\t<BlockDraggable clientIds={ [ clientId ] }>\n\t\t\t\t\t\t\t{ ( draggableProps ) => (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ticon={ dragHandle }\n\t\t\t\t\t\t\t\t\tclassName=\"block-selection-button_drag-handle\"\n\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t\tlabel={ dragHandleLabel }\n\t\t\t\t\t\t\t\t\t// Should not be able to tab to drag handle as this\n\t\t\t\t\t\t\t\t\t// button can only be used with a pointer device.\n\t\t\t\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t\t\t\t\t{ ...draggableProps }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</BlockDraggable>\n\t\t\t\t\t) }\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\teditorMode === 'navigation'\n\t\t\t\t\t\t\t\t? () => setNavigationMode( false )\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonKeyDown={ onKeyDown }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\tshowTooltip={ false }\n\t\t\t\t\t\tclassName=\"block-selection-button_select-button\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockTitle\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tmaximumLength={ 35 }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Button>\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\t\t</div>\n\t);\n}\n\nexport default BlockSelectionButton;\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","dragHandle","Button","Flex","FlexItem","useSelect","useDispatch","useEffect","useRef","BACKSPACE","DELETE","UP","DOWN","LEFT","RIGHT","TAB","ESCAPE","ENTER","SPACE","getBlockType","__experimentalGetAccessibleBlockLabel","getAccessibleBlockLabel","speak","focus","__","BlockTitle","BlockIcon","store","blockEditorStore","BlockDraggable","useBlockDisplayInformation","__unstableUseBlockElement","useBlockElement","BlockMover","BlockSelectionButton","clientId","rootClientId","blockInformation","selected","select","getBlock","getBlockIndex","hasBlockMovingClientId","getBlockListSettings","__unstableGetEditorMode","index","name","attributes","blockMovingMode","orientation","editorMode","setNavigationMode","removeBlock","ref","blockType","label","current","blockElement","getBlockRootClientId","getClientIdsOfDescendants","getSelectedBlockClientId","getMultiSelectedBlocksEndClientId","getPreviousBlockClientId","getNextBlockClientId","selectBlock","clearSelectedBlock","setBlockMovingClientId","moveBlockToPosition","onKeyDown","event","keyCode","isUp","isDown","isLeft","isRight","isTab","isEscape","isEnter","isSpace","isShift","shiftKey","preventDefault","selectedBlockClientId","selectionEndClientId","selectionBeforeEndClientId","selectionAfterEndClientId","navigateUp","navigateDown","navigateOut","navigateIn","focusedBlockUid","_getBlockRootClientId","_getClientIdsOfDescen","startingBlockClientId","defaultPrevented","sourceRoot","destRoot","sourceBlockIndex","destinationBlockIndex","nextTabbable","tabbable","findNext","contains","ownerDocument","defaultView","frameElement","findPrevious","classNames","dragHandleLabel","createElement","className","justify","icon","showColors","clientIds","hideDragHandle","draggableProps","tabIndex","onClick","undefined","showTooltip","maximumLength"],"sources":["@wordpress/block-editor/src/components/block-tools/block-selection-button.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { dragHandle } from '@wordpress/icons';\nimport { Button, Flex, FlexItem } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport {\n\tBACKSPACE,\n\tDELETE,\n\tUP,\n\tDOWN,\n\tLEFT,\n\tRIGHT,\n\tTAB,\n\tESCAPE,\n\tENTER,\n\tSPACE,\n} from '@wordpress/keycodes';\nimport {\n\tgetBlockType,\n\t__experimentalGetAccessibleBlockLabel as getAccessibleBlockLabel,\n} from '@wordpress/blocks';\nimport { speak } from '@wordpress/a11y';\nimport { focus } from '@wordpress/dom';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockTitle from '../block-title';\nimport BlockIcon from '../block-icon';\nimport { store as blockEditorStore } from '../../store';\nimport BlockDraggable from '../block-draggable';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport { __unstableUseBlockElement as useBlockElement } from '../block-list/use-block-props/use-block-refs';\nimport BlockMover from '../block-mover';\n\n/**\n * Block selection button component, displaying the label of the block. If the block\n * descends from a root block, a button is displayed enabling the user to select\n * the root block.\n *\n * @param {string} props Component props.\n * @param {string} props.clientId Client ID of block.\n *\n * @return {Component} The component to be rendered.\n */\nfunction BlockSelectionButton( { clientId, rootClientId } ) {\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\tconst selected = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlock,\n\t\t\t\tgetBlockIndex,\n\t\t\t\thasBlockMovingClientId,\n\t\t\t\tgetBlockListSettings,\n\t\t\t\t__unstableGetEditorMode,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst index = getBlockIndex( clientId );\n\t\t\tconst { name, attributes } = getBlock( clientId );\n\t\t\tconst blockMovingMode = hasBlockMovingClientId();\n\t\t\treturn {\n\t\t\t\tindex,\n\t\t\t\tname,\n\t\t\t\tattributes,\n\t\t\t\tblockMovingMode,\n\t\t\t\torientation: getBlockListSettings( rootClientId )?.orientation,\n\t\t\t\teditorMode: __unstableGetEditorMode(),\n\t\t\t};\n\t\t},\n\t\t[ clientId, rootClientId ]\n\t);\n\tconst {\n\t\tindex,\n\t\tname,\n\t\tattributes,\n\t\tblockMovingMode,\n\t\torientation,\n\t\teditorMode,\n\t} = selected;\n\tconst { setNavigationMode, removeBlock } = useDispatch( blockEditorStore );\n\tconst ref = useRef();\n\n\tconst blockType = getBlockType( name );\n\tconst label = getAccessibleBlockLabel(\n\t\tblockType,\n\t\tattributes,\n\t\tindex + 1,\n\t\torientation\n\t);\n\n\t// Focus the breadcrumb in navigation mode.\n\tuseEffect( () => {\n\t\tref.current.focus();\n\n\t\tspeak( label );\n\t}, [ label ] );\n\tconst blockElement = useBlockElement( clientId );\n\n\tconst {\n\t\thasBlockMovingClientId,\n\t\tgetBlockIndex,\n\t\tgetBlockRootClientId,\n\t\tgetClientIdsOfDescendants,\n\t\tgetSelectedBlockClientId,\n\t\tgetMultiSelectedBlocksEndClientId,\n\t\tgetPreviousBlockClientId,\n\t\tgetNextBlockClientId,\n\t} = useSelect( blockEditorStore );\n\tconst {\n\t\tselectBlock,\n\t\tclearSelectedBlock,\n\t\tsetBlockMovingClientId,\n\t\tmoveBlockToPosition,\n\t} = useDispatch( blockEditorStore );\n\n\tfunction onKeyDown( event ) {\n\t\tconst { keyCode } = event;\n\t\tconst isUp = keyCode === UP;\n\t\tconst isDown = keyCode === DOWN;\n\t\tconst isLeft = keyCode === LEFT;\n\t\tconst isRight = keyCode === RIGHT;\n\t\tconst isTab = keyCode === TAB;\n\t\tconst isEscape = keyCode === ESCAPE;\n\t\tconst isEnter = keyCode === ENTER;\n\t\tconst isSpace = keyCode === SPACE;\n\t\tconst isShift = event.shiftKey;\n\n\t\tif ( keyCode === BACKSPACE || keyCode === DELETE ) {\n\t\t\tremoveBlock( clientId );\n\t\t\tevent.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\t\tconst selectionEndClientId = getMultiSelectedBlocksEndClientId();\n\t\tconst selectionBeforeEndClientId = getPreviousBlockClientId(\n\t\t\tselectionEndClientId || selectedBlockClientId\n\t\t);\n\t\tconst selectionAfterEndClientId = getNextBlockClientId(\n\t\t\tselectionEndClientId || selectedBlockClientId\n\t\t);\n\n\t\tconst navigateUp = ( isTab && isShift ) || isUp;\n\t\tconst navigateDown = ( isTab && ! isShift ) || isDown;\n\t\t// Move out of current nesting level (no effect if at root level).\n\t\tconst navigateOut = isLeft;\n\t\t// Move into next nesting level (no effect if the current block has no innerBlocks).\n\t\tconst navigateIn = isRight;\n\n\t\tlet focusedBlockUid;\n\t\tif ( navigateUp ) {\n\t\t\tfocusedBlockUid = selectionBeforeEndClientId;\n\t\t} else if ( navigateDown ) {\n\t\t\tfocusedBlockUid = selectionAfterEndClientId;\n\t\t} else if ( navigateOut ) {\n\t\t\tfocusedBlockUid =\n\t\t\t\tgetBlockRootClientId( selectedBlockClientId ) ??\n\t\t\t\tselectedBlockClientId;\n\t\t} else if ( navigateIn ) {\n\t\t\tfocusedBlockUid =\n\t\t\t\tgetClientIdsOfDescendants( selectedBlockClientId )[ 0 ] ??\n\t\t\t\tselectedBlockClientId;\n\t\t}\n\t\tconst startingBlockClientId = hasBlockMovingClientId();\n\t\tif ( isEscape && startingBlockClientId && ! event.defaultPrevented ) {\n\t\t\tsetBlockMovingClientId( null );\n\t\t\tevent.preventDefault();\n\t\t}\n\t\tif ( ( isEnter || isSpace ) && startingBlockClientId ) {\n\t\t\tconst sourceRoot = getBlockRootClientId( startingBlockClientId );\n\t\t\tconst destRoot = getBlockRootClientId( selectedBlockClientId );\n\t\t\tconst sourceBlockIndex = getBlockIndex( startingBlockClientId );\n\t\t\tlet destinationBlockIndex = getBlockIndex( selectedBlockClientId );\n\t\t\tif (\n\t\t\t\tsourceBlockIndex < destinationBlockIndex &&\n\t\t\t\tsourceRoot === destRoot\n\t\t\t) {\n\t\t\t\tdestinationBlockIndex -= 1;\n\t\t\t}\n\t\t\tmoveBlockToPosition(\n\t\t\t\tstartingBlockClientId,\n\t\t\t\tsourceRoot,\n\t\t\t\tdestRoot,\n\t\t\t\tdestinationBlockIndex\n\t\t\t);\n\t\t\tselectBlock( startingBlockClientId );\n\t\t\tsetBlockMovingClientId( null );\n\t\t}\n\t\t// Prevent the block from being moved into itself.\n\t\tif (\n\t\t\tstartingBlockClientId &&\n\t\t\tselectedBlockClientId === startingBlockClientId &&\n\t\t\tnavigateIn\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tif ( navigateDown || navigateUp || navigateOut || navigateIn ) {\n\t\t\tif ( focusedBlockUid ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tselectBlock( focusedBlockUid );\n\t\t\t} else if ( isTab && selectedBlockClientId ) {\n\t\t\t\tlet nextTabbable;\n\n\t\t\t\tif ( navigateDown ) {\n\t\t\t\t\tnextTabbable = blockElement;\n\t\t\t\t\tdo {\n\t\t\t\t\t\tnextTabbable = focus.tabbable.findNext( nextTabbable );\n\t\t\t\t\t} while (\n\t\t\t\t\t\tnextTabbable &&\n\t\t\t\t\t\tblockElement.contains( nextTabbable )\n\t\t\t\t\t);\n\n\t\t\t\t\tif ( ! nextTabbable ) {\n\t\t\t\t\t\tnextTabbable =\n\t\t\t\t\t\t\tblockElement.ownerDocument.defaultView.frameElement;\n\t\t\t\t\t\tnextTabbable = focus.tabbable.findNext( nextTabbable );\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tnextTabbable = focus.tabbable.findPrevious( blockElement );\n\t\t\t\t}\n\n\t\t\t\tif ( nextTabbable ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tnextTabbable.focus();\n\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tconst classNames = classnames(\n\t\t'block-editor-block-list__block-selection-button',\n\t\t{\n\t\t\t'is-block-moving-mode': !! blockMovingMode,\n\t\t}\n\t);\n\n\tconst dragHandleLabel = __( 'Drag' );\n\n\treturn (\n\t\t<div className={ classNames }>\n\t\t\t<Flex\n\t\t\t\tjustify=\"center\"\n\t\t\t\tclassName=\"block-editor-block-list__block-selection-button__content\"\n\t\t\t>\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<BlockIcon icon={ blockInformation?.icon } showColors />\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem>\n\t\t\t\t\t{ editorMode === 'zoom-out' && (\n\t\t\t\t\t\t<BlockMover clientIds={ [ clientId ] } hideDragHandle />\n\t\t\t\t\t) }\n\t\t\t\t\t{ editorMode === 'navigation' && (\n\t\t\t\t\t\t<BlockDraggable clientIds={ [ clientId ] }>\n\t\t\t\t\t\t\t{ ( draggableProps ) => (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ticon={ dragHandle }\n\t\t\t\t\t\t\t\t\tclassName=\"block-selection-button_drag-handle\"\n\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t\tlabel={ dragHandleLabel }\n\t\t\t\t\t\t\t\t\t// Should not be able to tab to drag handle as this\n\t\t\t\t\t\t\t\t\t// button can only be used with a pointer device.\n\t\t\t\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t\t\t\t\t{ ...draggableProps }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</BlockDraggable>\n\t\t\t\t\t) }\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\teditorMode === 'navigation'\n\t\t\t\t\t\t\t\t? () => setNavigationMode( false )\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonKeyDown={ onKeyDown }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\tshowTooltip={ false }\n\t\t\t\t\t\tclassName=\"block-selection-button_select-button\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockTitle\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tmaximumLength={ 35 }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Button>\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\t\t</div>\n\t);\n}\n\nexport default BlockSelectionButton;\n"],"mappings":"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"}