@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
@@ -6,8 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.BlockTypesTab = BlockTypesTab;
8
8
  exports.default = void 0;
9
- var _element = require("@wordpress/element");
9
+ var _react = require("react");
10
10
  var _i18n = require("@wordpress/i18n");
11
+ var _element = require("@wordpress/element");
11
12
  var _compose = require("@wordpress/compose");
12
13
  var _blockTypesList = _interopRequireDefault(require("../block-types-list"));
13
14
  var _panel = _interopRequireDefault(require("./panel"));
@@ -88,9 +89,9 @@ function BlockTypesTab({
88
89
  return Object.entries(collections);
89
90
  }, [collections]);
90
91
  const currentlyRenderedCollections = (0, _compose.useAsyncList)(didRenderAllCategories ? collectionEntries : EMPTY_ARRAY);
91
- return (0, _element.createElement)(_inserterListbox.default, null, (0, _element.createElement)("div", null, showMostUsedBlocks && !!suggestedItems.length && (0, _element.createElement)(_panel.default, {
92
+ return (0, _react.createElement)(_inserterListbox.default, null, (0, _react.createElement)("div", null, showMostUsedBlocks && !!suggestedItems.length && (0, _react.createElement)(_panel.default, {
92
93
  title: (0, _i18n._x)('Most used', 'blocks')
93
- }, (0, _element.createElement)(_blockTypesList.default, {
94
+ }, (0, _react.createElement)(_blockTypesList.default, {
94
95
  items: suggestedItems,
95
96
  onSelect: onSelectItem,
96
97
  onHover: onHover,
@@ -100,20 +101,20 @@ function BlockTypesTab({
100
101
  if (!categoryItems || !categoryItems.length) {
101
102
  return null;
102
103
  }
103
- return (0, _element.createElement)(_panel.default, {
104
+ return (0, _react.createElement)(_panel.default, {
104
105
  key: category.slug,
105
106
  title: category.title,
106
107
  icon: category.icon
107
- }, (0, _element.createElement)(_blockTypesList.default, {
108
+ }, (0, _react.createElement)(_blockTypesList.default, {
108
109
  items: categoryItems,
109
110
  onSelect: onSelectItem,
110
111
  onHover: onHover,
111
112
  label: category.title
112
113
  }));
113
- }), didRenderAllCategories && uncategorizedItems.length > 0 && (0, _element.createElement)(_panel.default, {
114
+ }), didRenderAllCategories && uncategorizedItems.length > 0 && (0, _react.createElement)(_panel.default, {
114
115
  className: "block-editor-inserter__uncategorized-blocks-panel",
115
116
  title: (0, _i18n.__)('Uncategorized')
116
- }, (0, _element.createElement)(_blockTypesList.default, {
117
+ }, (0, _react.createElement)(_blockTypesList.default, {
117
118
  items: uncategorizedItems,
118
119
  onSelect: onSelectItem,
119
120
  onHover: onHover,
@@ -123,11 +124,11 @@ function BlockTypesTab({
123
124
  if (!collectionItems || !collectionItems.length) {
124
125
  return null;
125
126
  }
126
- return (0, _element.createElement)(_panel.default, {
127
+ return (0, _react.createElement)(_panel.default, {
127
128
  key: namespace,
128
129
  title: collection.title,
129
130
  icon: collection.icon
130
- }, (0, _element.createElement)(_blockTypesList.default, {
131
+ }, (0, _react.createElement)(_blockTypesList.default, {
131
132
  items: collectionItems,
132
133
  onSelect: onSelectItem,
133
134
  onHover: onHover,
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_i18n","_compose","_blockTypesList","_interopRequireDefault","_panel","_useBlockTypesState","_inserterListbox","_sorting","getBlockNamespace","item","name","split","MAX_SUGGESTED_ITEMS","EMPTY_ARRAY","BlockTypesTab","rootClientId","onInsert","onHover","showMostUsedBlocks","items","categories","collections","onSelectItem","useBlockTypesState","suggestedItems","useMemo","orderBy","slice","uncategorizedItems","filter","category","itemsPerCategory","pipe","itemList","reduce","acc","push","itemsPerCollection","result","Object","keys","forEach","namespace","length","useEffect","currentlyRenderedCategories","useAsyncList","didRenderAllCategories","collectionEntries","entries","currentlyRenderedCollections","createElement","default","title","_x","onSelect","label","map","categoryItems","slug","key","icon","className","__","collection","collectionItems","_default","exports"],"sources":["@wordpress/block-editor/src/components/inserter/block-types-tab.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { useMemo, useEffect } from '@wordpress/element';\nimport { pipe, useAsyncList } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BlockTypesList from '../block-types-list';\nimport InserterPanel from './panel';\nimport useBlockTypesState from './hooks/use-block-types-state';\nimport InserterListbox from '../inserter-listbox';\nimport { orderBy } from '../../utils/sorting';\n\nconst getBlockNamespace = ( item ) => item.name.split( '/' )[ 0 ];\n\nconst MAX_SUGGESTED_ITEMS = 6;\n\n/**\n * Shared reference to an empty array for cases where it is important to avoid\n * returning a new array reference on every invocation and rerendering the component.\n *\n * @type {Array}\n */\nconst EMPTY_ARRAY = [];\n\nexport function BlockTypesTab( {\n\trootClientId,\n\tonInsert,\n\tonHover,\n\tshowMostUsedBlocks,\n} ) {\n\tconst [ items, categories, collections, onSelectItem ] = useBlockTypesState(\n\t\trootClientId,\n\t\tonInsert\n\t);\n\n\tconst suggestedItems = useMemo( () => {\n\t\treturn orderBy( items, 'frecency', 'desc' ).slice(\n\t\t\t0,\n\t\t\tMAX_SUGGESTED_ITEMS\n\t\t);\n\t}, [ items ] );\n\n\tconst uncategorizedItems = useMemo( () => {\n\t\treturn items.filter( ( item ) => ! item.category );\n\t}, [ items ] );\n\n\tconst itemsPerCategory = useMemo( () => {\n\t\treturn pipe(\n\t\t\t( itemList ) =>\n\t\t\t\titemList.filter(\n\t\t\t\t\t( item ) => item.category && item.category !== 'reusable'\n\t\t\t\t),\n\t\t\t( itemList ) =>\n\t\t\t\titemList.reduce( ( acc, item ) => {\n\t\t\t\t\tconst { category } = item;\n\t\t\t\t\tif ( ! acc[ category ] ) {\n\t\t\t\t\t\tacc[ category ] = [];\n\t\t\t\t\t}\n\t\t\t\t\tacc[ category ].push( item );\n\t\t\t\t\treturn acc;\n\t\t\t\t}, {} )\n\t\t)( items );\n\t}, [ items ] );\n\n\tconst itemsPerCollection = useMemo( () => {\n\t\t// Create a new Object to avoid mutating collection.\n\t\tconst result = { ...collections };\n\t\tObject.keys( collections ).forEach( ( namespace ) => {\n\t\t\tresult[ namespace ] = items.filter(\n\t\t\t\t( item ) => getBlockNamespace( item ) === namespace\n\t\t\t);\n\t\t\tif ( result[ namespace ].length === 0 ) {\n\t\t\t\tdelete result[ namespace ];\n\t\t\t}\n\t\t} );\n\n\t\treturn result;\n\t}, [ items, collections ] );\n\n\t// Hide block preview on unmount.\n\tuseEffect( () => () => onHover( null ), [] );\n\n\t/**\n\t * The inserter contains a big number of blocks and opening it is a costful operation.\n\t * The rendering is the most costful part of it, in order to improve the responsiveness\n\t * of the \"opening\" action, these lazy lists allow us to render the inserter category per category,\n\t * once all the categories are rendered, we start rendering the collections and the uncategorized block types.\n\t */\n\tconst currentlyRenderedCategories = useAsyncList( categories );\n\tconst didRenderAllCategories =\n\t\tcategories.length === currentlyRenderedCategories.length;\n\n\t// Async List requires an array.\n\tconst collectionEntries = useMemo( () => {\n\t\treturn Object.entries( collections );\n\t}, [ collections ] );\n\tconst currentlyRenderedCollections = useAsyncList(\n\t\tdidRenderAllCategories ? collectionEntries : EMPTY_ARRAY\n\t);\n\n\treturn (\n\t\t<InserterListbox>\n\t\t\t<div>\n\t\t\t\t{ showMostUsedBlocks && !! suggestedItems.length && (\n\t\t\t\t\t<InserterPanel title={ _x( 'Most used', 'blocks' ) }>\n\t\t\t\t\t\t<BlockTypesList\n\t\t\t\t\t\t\titems={ suggestedItems }\n\t\t\t\t\t\t\tonSelect={ onSelectItem }\n\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\tlabel={ _x( 'Most used', 'blocks' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InserterPanel>\n\t\t\t\t) }\n\n\t\t\t\t{ currentlyRenderedCategories.map( ( category ) => {\n\t\t\t\t\tconst categoryItems = itemsPerCategory[ category.slug ];\n\t\t\t\t\tif ( ! categoryItems || ! categoryItems.length ) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<InserterPanel\n\t\t\t\t\t\t\tkey={ category.slug }\n\t\t\t\t\t\t\ttitle={ category.title }\n\t\t\t\t\t\t\ticon={ category.icon }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockTypesList\n\t\t\t\t\t\t\t\titems={ categoryItems }\n\t\t\t\t\t\t\t\tonSelect={ onSelectItem }\n\t\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\t\tlabel={ category.title }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</InserterPanel>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\n\t\t\t\t{ didRenderAllCategories && uncategorizedItems.length > 0 && (\n\t\t\t\t\t<InserterPanel\n\t\t\t\t\t\tclassName=\"block-editor-inserter__uncategorized-blocks-panel\"\n\t\t\t\t\t\ttitle={ __( 'Uncategorized' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockTypesList\n\t\t\t\t\t\t\titems={ uncategorizedItems }\n\t\t\t\t\t\t\tonSelect={ onSelectItem }\n\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\tlabel={ __( 'Uncategorized' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InserterPanel>\n\t\t\t\t) }\n\n\t\t\t\t{ currentlyRenderedCollections.map(\n\t\t\t\t\t( [ namespace, collection ] ) => {\n\t\t\t\t\t\tconst collectionItems = itemsPerCollection[ namespace ];\n\t\t\t\t\t\tif ( ! collectionItems || ! collectionItems.length ) {\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<InserterPanel\n\t\t\t\t\t\t\t\tkey={ namespace }\n\t\t\t\t\t\t\t\ttitle={ collection.title }\n\t\t\t\t\t\t\t\ticon={ collection.icon }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<BlockTypesList\n\t\t\t\t\t\t\t\t\titems={ collectionItems }\n\t\t\t\t\t\t\t\t\tonSelect={ onSelectItem }\n\t\t\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\t\t\tlabel={ collection.title }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</InserterPanel>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</InserterListbox>\n\t);\n}\n\nexport default BlockTypesTab;\n"],"mappings":";;;;;;;;AAIA,IAAAA,QAAA,GAAAC,OAAA;AADA,IAAAC,KAAA,GAAAD,OAAA;AAEA,IAAAE,QAAA,GAAAF,OAAA;AAKA,IAAAG,eAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAD,sBAAA,CAAAJ,OAAA;AACA,IAAAM,mBAAA,GAAAF,sBAAA,CAAAJ,OAAA;AACA,IAAAO,gBAAA,GAAAH,sBAAA,CAAAJ,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AAdA;AACA;AACA;;AAKA;AACA;AACA;;AAOA,MAAMS,iBAAiB,GAAKC,IAAI,IAAMA,IAAI,CAACC,IAAI,CAACC,KAAK,CAAE,GAAI,CAAC,CAAE,CAAC,CAAE;AAEjE,MAAMC,mBAAmB,GAAG,CAAC;;AAE7B;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,WAAW,GAAG,EAAE;AAEf,SAASC,aAAaA,CAAE;EAC9BC,YAAY;EACZC,QAAQ;EACRC,OAAO;EACPC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,KAAK,EAAEC,UAAU,EAAEC,WAAW,EAAEC,YAAY,CAAE,GAAG,IAAAC,2BAAkB,EAC1ER,YAAY,EACZC,QACD,CAAC;EAED,MAAMQ,cAAc,GAAG,IAAAC,gBAAO,EAAE,MAAM;IACrC,OAAO,IAAAC,gBAAO,EAAEP,KAAK,EAAE,UAAU,EAAE,MAAO,CAAC,CAACQ,KAAK,CAChD,CAAC,EACDf,mBACD,CAAC;EACF,CAAC,EAAE,CAAEO,KAAK,CAAG,CAAC;EAEd,MAAMS,kBAAkB,GAAG,IAAAH,gBAAO,EAAE,MAAM;IACzC,OAAON,KAAK,CAACU,MAAM,CAAIpB,IAAI,IAAM,CAAEA,IAAI,CAACqB,QAAS,CAAC;EACnD,CAAC,EAAE,CAAEX,KAAK,CAAG,CAAC;EAEd,MAAMY,gBAAgB,GAAG,IAAAN,gBAAO,EAAE,MAAM;IACvC,OAAO,IAAAO,aAAI,EACRC,QAAQ,IACTA,QAAQ,CAACJ,MAAM,CACZpB,IAAI,IAAMA,IAAI,CAACqB,QAAQ,IAAIrB,IAAI,CAACqB,QAAQ,KAAK,UAChD,CAAC,EACAG,QAAQ,IACTA,QAAQ,CAACC,MAAM,CAAE,CAAEC,GAAG,EAAE1B,IAAI,KAAM;MACjC,MAAM;QAAEqB;MAAS,CAAC,GAAGrB,IAAI;MACzB,IAAK,CAAE0B,GAAG,CAAEL,QAAQ,CAAE,EAAG;QACxBK,GAAG,CAAEL,QAAQ,CAAE,GAAG,EAAE;MACrB;MACAK,GAAG,CAAEL,QAAQ,CAAE,CAACM,IAAI,CAAE3B,IAAK,CAAC;MAC5B,OAAO0B,GAAG;IACX,CAAC,EAAE,CAAC,CAAE,CACR,CAAC,CAAEhB,KAAM,CAAC;EACX,CAAC,EAAE,CAAEA,KAAK,CAAG,CAAC;EAEd,MAAMkB,kBAAkB,GAAG,IAAAZ,gBAAO,EAAE,MAAM;IACzC;IACA,MAAMa,MAAM,GAAG;MAAE,GAAGjB;IAAY,CAAC;IACjCkB,MAAM,CAACC,IAAI,CAAEnB,WAAY,CAAC,CAACoB,OAAO,CAAIC,SAAS,IAAM;MACpDJ,MAAM,CAAEI,SAAS,CAAE,GAAGvB,KAAK,CAACU,MAAM,CAC/BpB,IAAI,IAAMD,iBAAiB,CAAEC,IAAK,CAAC,KAAKiC,SAC3C,CAAC;MACD,IAAKJ,MAAM,CAAEI,SAAS,CAAE,CAACC,MAAM,KAAK,CAAC,EAAG;QACvC,OAAOL,MAAM,CAAEI,SAAS,CAAE;MAC3B;IACD,CAAE,CAAC;IAEH,OAAOJ,MAAM;EACd,CAAC,EAAE,CAAEnB,KAAK,EAAEE,WAAW,CAAG,CAAC;;EAE3B;EACA,IAAAuB,kBAAS,EAAE,MAAM,MAAM3B,OAAO,CAAE,IAAK,CAAC,EAAE,EAAG,CAAC;;EAE5C;AACD;AACA;AACA;AACA;AACA;EACC,MAAM4B,2BAA2B,GAAG,IAAAC,qBAAY,EAAE1B,UAAW,CAAC;EAC9D,MAAM2B,sBAAsB,GAC3B3B,UAAU,CAACuB,MAAM,KAAKE,2BAA2B,CAACF,MAAM;;EAEzD;EACA,MAAMK,iBAAiB,GAAG,IAAAvB,gBAAO,EAAE,MAAM;IACxC,OAAOc,MAAM,CAACU,OAAO,CAAE5B,WAAY,CAAC;EACrC,CAAC,EAAE,CAAEA,WAAW,CAAG,CAAC;EACpB,MAAM6B,4BAA4B,GAAG,IAAAJ,qBAAY,EAChDC,sBAAsB,GAAGC,iBAAiB,GAAGnC,WAC9C,CAAC;EAED,OACC,IAAAf,QAAA,CAAAqD,aAAA,EAAC7C,gBAAA,CAAA8C,OAAe,QACf,IAAAtD,QAAA,CAAAqD,aAAA,eACGjC,kBAAkB,IAAI,CAAC,CAAEM,cAAc,CAACmB,MAAM,IAC/C,IAAA7C,QAAA,CAAAqD,aAAA,EAAC/C,MAAA,CAAAgD,OAAa;IAACC,KAAK,EAAG,IAAAC,QAAE,EAAE,WAAW,EAAE,QAAS;EAAG,GACnD,IAAAxD,QAAA,CAAAqD,aAAA,EAACjD,eAAA,CAAAkD,OAAc;IACdjC,KAAK,EAAGK,cAAgB;IACxB+B,QAAQ,EAAGjC,YAAc;IACzBL,OAAO,EAAGA,OAAS;IACnBuC,KAAK,EAAG,IAAAF,QAAE,EAAE,WAAW,EAAE,QAAS;EAAG,CACrC,CACa,CACf,EAECT,2BAA2B,CAACY,GAAG,CAAI3B,QAAQ,IAAM;IAClD,MAAM4B,aAAa,GAAG3B,gBAAgB,CAAED,QAAQ,CAAC6B,IAAI,CAAE;IACvD,IAAK,CAAED,aAAa,IAAI,CAAEA,aAAa,CAACf,MAAM,EAAG;MAChD,OAAO,IAAI;IACZ;IACA,OACC,IAAA7C,QAAA,CAAAqD,aAAA,EAAC/C,MAAA,CAAAgD,OAAa;MACbQ,GAAG,EAAG9B,QAAQ,CAAC6B,IAAM;MACrBN,KAAK,EAAGvB,QAAQ,CAACuB,KAAO;MACxBQ,IAAI,EAAG/B,QAAQ,CAAC+B;IAAM,GAEtB,IAAA/D,QAAA,CAAAqD,aAAA,EAACjD,eAAA,CAAAkD,OAAc;MACdjC,KAAK,EAAGuC,aAAe;MACvBH,QAAQ,EAAGjC,YAAc;MACzBL,OAAO,EAAGA,OAAS;MACnBuC,KAAK,EAAG1B,QAAQ,CAACuB;IAAO,CACxB,CACa,CAAC;EAElB,CAAE,CAAC,EAEDN,sBAAsB,IAAInB,kBAAkB,CAACe,MAAM,GAAG,CAAC,IACxD,IAAA7C,QAAA,CAAAqD,aAAA,EAAC/C,MAAA,CAAAgD,OAAa;IACbU,SAAS,EAAC,mDAAmD;IAC7DT,KAAK,EAAG,IAAAU,QAAE,EAAE,eAAgB;EAAG,GAE/B,IAAAjE,QAAA,CAAAqD,aAAA,EAACjD,eAAA,CAAAkD,OAAc;IACdjC,KAAK,EAAGS,kBAAoB;IAC5B2B,QAAQ,EAAGjC,YAAc;IACzBL,OAAO,EAAGA,OAAS;IACnBuC,KAAK,EAAG,IAAAO,QAAE,EAAE,eAAgB;EAAG,CAC/B,CACa,CACf,EAECb,4BAA4B,CAACO,GAAG,CACjC,CAAE,CAAEf,SAAS,EAAEsB,UAAU,CAAE,KAAM;IAChC,MAAMC,eAAe,GAAG5B,kBAAkB,CAAEK,SAAS,CAAE;IACvD,IAAK,CAAEuB,eAAe,IAAI,CAAEA,eAAe,CAACtB,MAAM,EAAG;MACpD,OAAO,IAAI;IACZ;IAEA,OACC,IAAA7C,QAAA,CAAAqD,aAAA,EAAC/C,MAAA,CAAAgD,OAAa;MACbQ,GAAG,EAAGlB,SAAW;MACjBW,KAAK,EAAGW,UAAU,CAACX,KAAO;MAC1BQ,IAAI,EAAGG,UAAU,CAACH;IAAM,GAExB,IAAA/D,QAAA,CAAAqD,aAAA,EAACjD,eAAA,CAAAkD,OAAc;MACdjC,KAAK,EAAG8C,eAAiB;MACzBV,QAAQ,EAAGjC,YAAc;MACzBL,OAAO,EAAGA,OAAS;MACnBuC,KAAK,EAAGQ,UAAU,CAACX;IAAO,CAC1B,CACa,CAAC;EAElB,CACD,CACI,CACW,CAAC;AAEpB;AAAC,IAAAa,QAAA,GAEcpD,aAAa;AAAAqD,OAAA,CAAAf,OAAA,GAAAc,QAAA"}
1
+ {"version":3,"names":["_i18n","require","_element","_compose","_blockTypesList","_interopRequireDefault","_panel","_useBlockTypesState","_inserterListbox","_sorting","getBlockNamespace","item","name","split","MAX_SUGGESTED_ITEMS","EMPTY_ARRAY","BlockTypesTab","rootClientId","onInsert","onHover","showMostUsedBlocks","items","categories","collections","onSelectItem","useBlockTypesState","suggestedItems","useMemo","orderBy","slice","uncategorizedItems","filter","category","itemsPerCategory","pipe","itemList","reduce","acc","push","itemsPerCollection","result","Object","keys","forEach","namespace","length","useEffect","currentlyRenderedCategories","useAsyncList","didRenderAllCategories","collectionEntries","entries","currentlyRenderedCollections","_react","createElement","default","title","_x","onSelect","label","map","categoryItems","slug","key","icon","className","__","collection","collectionItems","_default","exports"],"sources":["@wordpress/block-editor/src/components/inserter/block-types-tab.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { useMemo, useEffect } from '@wordpress/element';\nimport { pipe, useAsyncList } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BlockTypesList from '../block-types-list';\nimport InserterPanel from './panel';\nimport useBlockTypesState from './hooks/use-block-types-state';\nimport InserterListbox from '../inserter-listbox';\nimport { orderBy } from '../../utils/sorting';\n\nconst getBlockNamespace = ( item ) => item.name.split( '/' )[ 0 ];\n\nconst MAX_SUGGESTED_ITEMS = 6;\n\n/**\n * Shared reference to an empty array for cases where it is important to avoid\n * returning a new array reference on every invocation and rerendering the component.\n *\n * @type {Array}\n */\nconst EMPTY_ARRAY = [];\n\nexport function BlockTypesTab( {\n\trootClientId,\n\tonInsert,\n\tonHover,\n\tshowMostUsedBlocks,\n} ) {\n\tconst [ items, categories, collections, onSelectItem ] = useBlockTypesState(\n\t\trootClientId,\n\t\tonInsert\n\t);\n\n\tconst suggestedItems = useMemo( () => {\n\t\treturn orderBy( items, 'frecency', 'desc' ).slice(\n\t\t\t0,\n\t\t\tMAX_SUGGESTED_ITEMS\n\t\t);\n\t}, [ items ] );\n\n\tconst uncategorizedItems = useMemo( () => {\n\t\treturn items.filter( ( item ) => ! item.category );\n\t}, [ items ] );\n\n\tconst itemsPerCategory = useMemo( () => {\n\t\treturn pipe(\n\t\t\t( itemList ) =>\n\t\t\t\titemList.filter(\n\t\t\t\t\t( item ) => item.category && item.category !== 'reusable'\n\t\t\t\t),\n\t\t\t( itemList ) =>\n\t\t\t\titemList.reduce( ( acc, item ) => {\n\t\t\t\t\tconst { category } = item;\n\t\t\t\t\tif ( ! acc[ category ] ) {\n\t\t\t\t\t\tacc[ category ] = [];\n\t\t\t\t\t}\n\t\t\t\t\tacc[ category ].push( item );\n\t\t\t\t\treturn acc;\n\t\t\t\t}, {} )\n\t\t)( items );\n\t}, [ items ] );\n\n\tconst itemsPerCollection = useMemo( () => {\n\t\t// Create a new Object to avoid mutating collection.\n\t\tconst result = { ...collections };\n\t\tObject.keys( collections ).forEach( ( namespace ) => {\n\t\t\tresult[ namespace ] = items.filter(\n\t\t\t\t( item ) => getBlockNamespace( item ) === namespace\n\t\t\t);\n\t\t\tif ( result[ namespace ].length === 0 ) {\n\t\t\t\tdelete result[ namespace ];\n\t\t\t}\n\t\t} );\n\n\t\treturn result;\n\t}, [ items, collections ] );\n\n\t// Hide block preview on unmount.\n\tuseEffect( () => () => onHover( null ), [] );\n\n\t/**\n\t * The inserter contains a big number of blocks and opening it is a costful operation.\n\t * The rendering is the most costful part of it, in order to improve the responsiveness\n\t * of the \"opening\" action, these lazy lists allow us to render the inserter category per category,\n\t * once all the categories are rendered, we start rendering the collections and the uncategorized block types.\n\t */\n\tconst currentlyRenderedCategories = useAsyncList( categories );\n\tconst didRenderAllCategories =\n\t\tcategories.length === currentlyRenderedCategories.length;\n\n\t// Async List requires an array.\n\tconst collectionEntries = useMemo( () => {\n\t\treturn Object.entries( collections );\n\t}, [ collections ] );\n\tconst currentlyRenderedCollections = useAsyncList(\n\t\tdidRenderAllCategories ? collectionEntries : EMPTY_ARRAY\n\t);\n\n\treturn (\n\t\t<InserterListbox>\n\t\t\t<div>\n\t\t\t\t{ showMostUsedBlocks && !! suggestedItems.length && (\n\t\t\t\t\t<InserterPanel title={ _x( 'Most used', 'blocks' ) }>\n\t\t\t\t\t\t<BlockTypesList\n\t\t\t\t\t\t\titems={ suggestedItems }\n\t\t\t\t\t\t\tonSelect={ onSelectItem }\n\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\tlabel={ _x( 'Most used', 'blocks' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InserterPanel>\n\t\t\t\t) }\n\n\t\t\t\t{ currentlyRenderedCategories.map( ( category ) => {\n\t\t\t\t\tconst categoryItems = itemsPerCategory[ category.slug ];\n\t\t\t\t\tif ( ! categoryItems || ! categoryItems.length ) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<InserterPanel\n\t\t\t\t\t\t\tkey={ category.slug }\n\t\t\t\t\t\t\ttitle={ category.title }\n\t\t\t\t\t\t\ticon={ category.icon }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockTypesList\n\t\t\t\t\t\t\t\titems={ categoryItems }\n\t\t\t\t\t\t\t\tonSelect={ onSelectItem }\n\t\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\t\tlabel={ category.title }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</InserterPanel>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\n\t\t\t\t{ didRenderAllCategories && uncategorizedItems.length > 0 && (\n\t\t\t\t\t<InserterPanel\n\t\t\t\t\t\tclassName=\"block-editor-inserter__uncategorized-blocks-panel\"\n\t\t\t\t\t\ttitle={ __( 'Uncategorized' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockTypesList\n\t\t\t\t\t\t\titems={ uncategorizedItems }\n\t\t\t\t\t\t\tonSelect={ onSelectItem }\n\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\tlabel={ __( 'Uncategorized' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InserterPanel>\n\t\t\t\t) }\n\n\t\t\t\t{ currentlyRenderedCollections.map(\n\t\t\t\t\t( [ namespace, collection ] ) => {\n\t\t\t\t\t\tconst collectionItems = itemsPerCollection[ namespace ];\n\t\t\t\t\t\tif ( ! collectionItems || ! collectionItems.length ) {\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<InserterPanel\n\t\t\t\t\t\t\t\tkey={ namespace }\n\t\t\t\t\t\t\t\ttitle={ collection.title }\n\t\t\t\t\t\t\t\ticon={ collection.icon }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<BlockTypesList\n\t\t\t\t\t\t\t\t\titems={ collectionItems }\n\t\t\t\t\t\t\t\t\tonSelect={ onSelectItem }\n\t\t\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\t\t\tlabel={ collection.title }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</InserterPanel>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</InserterListbox>\n\t);\n}\n\nexport default BlockTypesTab;\n"],"mappings":"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"}
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
+ var _react = require("react");
8
9
  var _element = require("@wordpress/element");
9
10
  var _i18n = require("@wordpress/i18n");
10
11
  var _blockTypesList = _interopRequireDefault(require("../block-types-list"));
@@ -59,7 +60,7 @@ function BlockTypesTab({
59
60
  key: 'default',
60
61
  items
61
62
  }), ...collectionSections];
62
- return (0, _element.createElement)(_blockTypesList.default, {
63
+ return (0, _react.createElement)(_blockTypesList.default, {
63
64
  name: "Blocks",
64
65
  sections: sections,
65
66
  onSelect: handleSelect,
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_i18n","_blockTypesList","_interopRequireDefault","_useClipboardBlock","_useBlockTypeImpressions","_utils","_useBlockTypesState","getBlockNamespace","item","name","split","BlockTypesTab","onSelect","rootClientId","listProps","rawBlockTypes","collections","useBlockTypesState","clipboardBlock","useClipboardBlock","filteredBlockTypes","filterInserterItems","blockTypes","items","trackBlockTypeSelected","useBlockTypeImpressions","handleSelect","args","collectionSections","useMemo","result","Object","keys","forEach","namespace","data","filter","length","push","createInserterSection","key","metadata","icon","title","sections","createElement","default","label","__","_default","exports"],"sources":["@wordpress/block-editor/src/components/inserter/block-types-tab.native.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockTypesList from '../block-types-list';\nimport useClipboardBlock from './hooks/use-clipboard-block';\nimport useBlockTypeImpressions from './hooks/use-block-type-impressions';\nimport { createInserterSection, filterInserterItems } from './utils';\nimport useBlockTypesState from './hooks/use-block-types-state';\n\nconst getBlockNamespace = ( item ) => item.name.split( '/' )[ 0 ];\n\nfunction BlockTypesTab( { onSelect, rootClientId, listProps } ) {\n\tconst [ rawBlockTypes, , collections ] = useBlockTypesState(\n\t\trootClientId,\n\t\tonSelect\n\t);\n\tconst clipboardBlock = useClipboardBlock( rootClientId );\n\tconst filteredBlockTypes = filterInserterItems( rawBlockTypes );\n\tconst blockTypes = clipboardBlock\n\t\t? [ clipboardBlock, ...filteredBlockTypes ]\n\t\t: filteredBlockTypes;\n\tconst { items, trackBlockTypeSelected } =\n\t\tuseBlockTypeImpressions( blockTypes );\n\n\tconst handleSelect = ( ...args ) => {\n\t\ttrackBlockTypeSelected( ...args );\n\t\tonSelect( ...args );\n\t};\n\n\tconst collectionSections = useMemo( () => {\n\t\tconst result = [];\n\t\tObject.keys( collections ).forEach( ( namespace ) => {\n\t\t\tconst data = items.filter(\n\t\t\t\t( item ) => getBlockNamespace( item ) === namespace\n\t\t\t);\n\t\t\tif ( data.length > 0 ) {\n\t\t\t\tresult.push(\n\t\t\t\t\tcreateInserterSection( {\n\t\t\t\t\t\tkey: `collection-${ namespace }`,\n\t\t\t\t\t\tmetadata: {\n\t\t\t\t\t\t\ticon: collections[ namespace ].icon,\n\t\t\t\t\t\t\ttitle: collections[ namespace ].title,\n\t\t\t\t\t\t},\n\t\t\t\t\t\titems: data,\n\t\t\t\t\t} )\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\n\t\treturn result;\n\t}, [ items, collections ] );\n\n\tconst sections = [\n\t\tcreateInserterSection( { key: 'default', items } ),\n\t\t...collectionSections,\n\t];\n\n\treturn (\n\t\t<BlockTypesList\n\t\t\tname=\"Blocks\"\n\t\t\tsections={ sections }\n\t\t\tonSelect={ handleSelect }\n\t\t\tlistProps={ listProps }\n\t\t\tlabel={ __( 'Blocks menu' ) }\n\t\t/>\n\t);\n}\n\nexport default BlockTypesTab;\n"],"mappings":";;;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAKA,IAAAE,eAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,kBAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,wBAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,mBAAA,GAAAJ,sBAAA,CAAAH,OAAA;AAbA;AACA;AACA;;AAIA;AACA;AACA;;AAOA,MAAMQ,iBAAiB,GAAKC,IAAI,IAAMA,IAAI,CAACC,IAAI,CAACC,KAAK,CAAE,GAAI,CAAC,CAAE,CAAC,CAAE;AAEjE,SAASC,aAAaA,CAAE;EAAEC,QAAQ;EAAEC,YAAY;EAAEC;AAAU,CAAC,EAAG;EAC/D,MAAM,CAAEC,aAAa,GAAIC,WAAW,CAAE,GAAG,IAAAC,2BAAkB,EAC1DJ,YAAY,EACZD,QACD,CAAC;EACD,MAAMM,cAAc,GAAG,IAAAC,0BAAiB,EAAEN,YAAa,CAAC;EACxD,MAAMO,kBAAkB,GAAG,IAAAC,0BAAmB,EAAEN,aAAc,CAAC;EAC/D,MAAMO,UAAU,GAAGJ,cAAc,GAC9B,CAAEA,cAAc,EAAE,GAAGE,kBAAkB,CAAE,GACzCA,kBAAkB;EACrB,MAAM;IAAEG,KAAK;IAAEC;EAAuB,CAAC,GACtC,IAAAC,gCAAuB,EAAEH,UAAW,CAAC;EAEtC,MAAMI,YAAY,GAAGA,CAAE,GAAGC,IAAI,KAAM;IACnCH,sBAAsB,CAAE,GAAGG,IAAK,CAAC;IACjCf,QAAQ,CAAE,GAAGe,IAAK,CAAC;EACpB,CAAC;EAED,MAAMC,kBAAkB,GAAG,IAAAC,gBAAO,EAAE,MAAM;IACzC,MAAMC,MAAM,GAAG,EAAE;IACjBC,MAAM,CAACC,IAAI,CAAEhB,WAAY,CAAC,CAACiB,OAAO,CAAIC,SAAS,IAAM;MACpD,MAAMC,IAAI,GAAGZ,KAAK,CAACa,MAAM,CACtB5B,IAAI,IAAMD,iBAAiB,CAAEC,IAAK,CAAC,KAAK0B,SAC3C,CAAC;MACD,IAAKC,IAAI,CAACE,MAAM,GAAG,CAAC,EAAG;QACtBP,MAAM,CAACQ,IAAI,CACV,IAAAC,4BAAqB,EAAE;UACtBC,GAAG,EAAG,cAAcN,SAAW,EAAC;UAChCO,QAAQ,EAAE;YACTC,IAAI,EAAE1B,WAAW,CAAEkB,SAAS,CAAE,CAACQ,IAAI;YACnCC,KAAK,EAAE3B,WAAW,CAAEkB,SAAS,CAAE,CAACS;UACjC,CAAC;UACDpB,KAAK,EAAEY;QACR,CAAE,CACH,CAAC;MACF;IACD,CAAE,CAAC;IAEH,OAAOL,MAAM;EACd,CAAC,EAAE,CAAEP,KAAK,EAAEP,WAAW,CAAG,CAAC;EAE3B,MAAM4B,QAAQ,GAAG,CAChB,IAAAL,4BAAqB,EAAE;IAAEC,GAAG,EAAE,SAAS;IAAEjB;EAAM,CAAE,CAAC,EAClD,GAAGK,kBAAkB,CACrB;EAED,OACC,IAAA9B,QAAA,CAAA+C,aAAA,EAAC5C,eAAA,CAAA6C,OAAc;IACdrC,IAAI,EAAC,QAAQ;IACbmC,QAAQ,EAAGA,QAAU;IACrBhC,QAAQ,EAAGc,YAAc;IACzBZ,SAAS,EAAGA,SAAW;IACvBiC,KAAK,EAAG,IAAAC,QAAE,EAAE,aAAc;EAAG,CAC7B,CAAC;AAEJ;AAAC,IAAAC,QAAA,GAEctC,aAAa;AAAAuC,OAAA,CAAAJ,OAAA,GAAAG,QAAA"}
1
+ {"version":3,"names":["_element","require","_i18n","_blockTypesList","_interopRequireDefault","_useClipboardBlock","_useBlockTypeImpressions","_utils","_useBlockTypesState","getBlockNamespace","item","name","split","BlockTypesTab","onSelect","rootClientId","listProps","rawBlockTypes","collections","useBlockTypesState","clipboardBlock","useClipboardBlock","filteredBlockTypes","filterInserterItems","blockTypes","items","trackBlockTypeSelected","useBlockTypeImpressions","handleSelect","args","collectionSections","useMemo","result","Object","keys","forEach","namespace","data","filter","length","push","createInserterSection","key","metadata","icon","title","sections","_react","createElement","default","label","__","_default","exports"],"sources":["@wordpress/block-editor/src/components/inserter/block-types-tab.native.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockTypesList from '../block-types-list';\nimport useClipboardBlock from './hooks/use-clipboard-block';\nimport useBlockTypeImpressions from './hooks/use-block-type-impressions';\nimport { createInserterSection, filterInserterItems } from './utils';\nimport useBlockTypesState from './hooks/use-block-types-state';\n\nconst getBlockNamespace = ( item ) => item.name.split( '/' )[ 0 ];\n\nfunction BlockTypesTab( { onSelect, rootClientId, listProps } ) {\n\tconst [ rawBlockTypes, , collections ] = useBlockTypesState(\n\t\trootClientId,\n\t\tonSelect\n\t);\n\tconst clipboardBlock = useClipboardBlock( rootClientId );\n\tconst filteredBlockTypes = filterInserterItems( rawBlockTypes );\n\tconst blockTypes = clipboardBlock\n\t\t? [ clipboardBlock, ...filteredBlockTypes ]\n\t\t: filteredBlockTypes;\n\tconst { items, trackBlockTypeSelected } =\n\t\tuseBlockTypeImpressions( blockTypes );\n\n\tconst handleSelect = ( ...args ) => {\n\t\ttrackBlockTypeSelected( ...args );\n\t\tonSelect( ...args );\n\t};\n\n\tconst collectionSections = useMemo( () => {\n\t\tconst result = [];\n\t\tObject.keys( collections ).forEach( ( namespace ) => {\n\t\t\tconst data = items.filter(\n\t\t\t\t( item ) => getBlockNamespace( item ) === namespace\n\t\t\t);\n\t\t\tif ( data.length > 0 ) {\n\t\t\t\tresult.push(\n\t\t\t\t\tcreateInserterSection( {\n\t\t\t\t\t\tkey: `collection-${ namespace }`,\n\t\t\t\t\t\tmetadata: {\n\t\t\t\t\t\t\ticon: collections[ namespace ].icon,\n\t\t\t\t\t\t\ttitle: collections[ namespace ].title,\n\t\t\t\t\t\t},\n\t\t\t\t\t\titems: data,\n\t\t\t\t\t} )\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\n\t\treturn result;\n\t}, [ items, collections ] );\n\n\tconst sections = [\n\t\tcreateInserterSection( { key: 'default', items } ),\n\t\t...collectionSections,\n\t];\n\n\treturn (\n\t\t<BlockTypesList\n\t\t\tname=\"Blocks\"\n\t\t\tsections={ sections }\n\t\t\tonSelect={ handleSelect }\n\t\t\tlistProps={ listProps }\n\t\t\tlabel={ __( 'Blocks menu' ) }\n\t\t/>\n\t);\n}\n\nexport default BlockTypesTab;\n"],"mappings":";;;;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAKA,IAAAE,eAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,kBAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,wBAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,mBAAA,GAAAJ,sBAAA,CAAAH,OAAA;AAbA;AACA;AACA;;AAIA;AACA;AACA;;AAOA,MAAMQ,iBAAiB,GAAKC,IAAI,IAAMA,IAAI,CAACC,IAAI,CAACC,KAAK,CAAE,GAAI,CAAC,CAAE,CAAC,CAAE;AAEjE,SAASC,aAAaA,CAAE;EAAEC,QAAQ;EAAEC,YAAY;EAAEC;AAAU,CAAC,EAAG;EAC/D,MAAM,CAAEC,aAAa,GAAIC,WAAW,CAAE,GAAG,IAAAC,2BAAkB,EAC1DJ,YAAY,EACZD,QACD,CAAC;EACD,MAAMM,cAAc,GAAG,IAAAC,0BAAiB,EAAEN,YAAa,CAAC;EACxD,MAAMO,kBAAkB,GAAG,IAAAC,0BAAmB,EAAEN,aAAc,CAAC;EAC/D,MAAMO,UAAU,GAAGJ,cAAc,GAC9B,CAAEA,cAAc,EAAE,GAAGE,kBAAkB,CAAE,GACzCA,kBAAkB;EACrB,MAAM;IAAEG,KAAK;IAAEC;EAAuB,CAAC,GACtC,IAAAC,gCAAuB,EAAEH,UAAW,CAAC;EAEtC,MAAMI,YAAY,GAAGA,CAAE,GAAGC,IAAI,KAAM;IACnCH,sBAAsB,CAAE,GAAGG,IAAK,CAAC;IACjCf,QAAQ,CAAE,GAAGe,IAAK,CAAC;EACpB,CAAC;EAED,MAAMC,kBAAkB,GAAG,IAAAC,gBAAO,EAAE,MAAM;IACzC,MAAMC,MAAM,GAAG,EAAE;IACjBC,MAAM,CAACC,IAAI,CAAEhB,WAAY,CAAC,CAACiB,OAAO,CAAIC,SAAS,IAAM;MACpD,MAAMC,IAAI,GAAGZ,KAAK,CAACa,MAAM,CACtB5B,IAAI,IAAMD,iBAAiB,CAAEC,IAAK,CAAC,KAAK0B,SAC3C,CAAC;MACD,IAAKC,IAAI,CAACE,MAAM,GAAG,CAAC,EAAG;QACtBP,MAAM,CAACQ,IAAI,CACV,IAAAC,4BAAqB,EAAE;UACtBC,GAAG,EAAG,cAAcN,SAAW,EAAC;UAChCO,QAAQ,EAAE;YACTC,IAAI,EAAE1B,WAAW,CAAEkB,SAAS,CAAE,CAACQ,IAAI;YACnCC,KAAK,EAAE3B,WAAW,CAAEkB,SAAS,CAAE,CAACS;UACjC,CAAC;UACDpB,KAAK,EAAEY;QACR,CAAE,CACH,CAAC;MACF;IACD,CAAE,CAAC;IAEH,OAAOL,MAAM;EACd,CAAC,EAAE,CAAEP,KAAK,EAAEP,WAAW,CAAG,CAAC;EAE3B,MAAM4B,QAAQ,GAAG,CAChB,IAAAL,4BAAqB,EAAE;IAAEC,GAAG,EAAE,SAAS;IAAEjB;EAAM,CAAE,CAAC,EAClD,GAAGK,kBAAkB,CACrB;EAED,OACC,IAAAiB,MAAA,CAAAC,aAAA,EAAC7C,eAAA,CAAA8C,OAAc;IACdtC,IAAI,EAAC,QAAQ;IACbmC,QAAQ,EAAGA,QAAU;IACrBhC,QAAQ,EAAGc,YAAc;IACzBZ,SAAS,EAAGA,SAAW;IACvBkC,KAAK,EAAG,IAAAC,QAAE,EAAE,aAAc;EAAG,CAC7B,CAAC;AAEJ;AAAC,IAAAC,QAAA,GAEcvC,aAAa;AAAAwC,OAAA,CAAAJ,OAAA,GAAAG,QAAA"}
@@ -5,11 +5,12 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = exports.ComposedPrivateInserter = void 0;
8
- var _element = require("@wordpress/element");
8
+ var _react = require("react");
9
9
  var _classnames = _interopRequireDefault(require("classnames"));
10
10
  var _a11y = require("@wordpress/a11y");
11
11
  var _i18n = require("@wordpress/i18n");
12
12
  var _components = require("@wordpress/components");
13
+ var _element = require("@wordpress/element");
13
14
  var _data = require("@wordpress/data");
14
15
  var _compose = require("@wordpress/compose");
15
16
  var _blocks = require("@wordpress/blocks");
@@ -64,7 +65,7 @@ const defaultRenderToggle = ({
64
65
  onClick(event);
65
66
  }
66
67
  }
67
- return (0, _element.createElement)(Wrapper, {
68
+ return (0, _react.createElement)(Wrapper, {
68
69
  icon: _icons.plus,
69
70
  label: label,
70
71
  tooltipPosition: "bottom",
@@ -102,7 +103,7 @@ class PrivateInserter extends _element.Component {
102
103
  * pressed.
103
104
  * @param {boolean} options.isOpen Whether dropdown is currently open.
104
105
  *
105
- * @return {WPElement} Dropdown toggle element.
106
+ * @return {Element} Dropdown toggle element.
106
107
  */
107
108
  renderToggle({
108
109
  onToggle,
@@ -137,7 +138,7 @@ class PrivateInserter extends _element.Component {
137
138
  * @param {Function} options.onClose Callback to invoke when dropdown is
138
139
  * closed.
139
140
  *
140
- * @return {WPElement} Dropdown content element.
141
+ * @return {Element} Dropdown content element.
141
142
  */
142
143
  renderContent({
143
144
  onClose
@@ -155,7 +156,7 @@ class PrivateInserter extends _element.Component {
155
156
  selectBlockOnInsert
156
157
  } = this.props;
157
158
  if (isQuick) {
158
- return (0, _element.createElement)(_quickInserter.default, {
159
+ return (0, _react.createElement)(_quickInserter.default, {
159
160
  onSelect: blocks => {
160
161
  const firstBlock = Array.isArray(blocks) && blocks?.length ? blocks[0] : blocks;
161
162
  if (onSelectOrClose && typeof onSelectOrClose === 'function') {
@@ -170,7 +171,7 @@ class PrivateInserter extends _element.Component {
170
171
  selectBlockOnInsert: selectBlockOnInsert
171
172
  });
172
173
  }
173
- return (0, _element.createElement)(_menu.default, {
174
+ return (0, _react.createElement)(_menu.default, {
174
175
  onSelect: () => {
175
176
  onClose();
176
177
  },
@@ -195,7 +196,7 @@ class PrivateInserter extends _element.Component {
195
196
  onToggle: insertOnlyAllowedBlock
196
197
  });
197
198
  }
198
- return (0, _element.createElement)(_components.Dropdown, {
199
+ return (0, _react.createElement)(_components.Dropdown, {
199
200
  className: "block-editor-inserter",
200
201
  contentClassName: (0, _classnames.default)('block-editor-inserter__popover', {
201
202
  'is-quick': isQuick
@@ -365,7 +366,7 @@ const ComposedPrivateInserter = (0, _compose.compose)([(0, _data.withSelect)((se
365
366
  }) => hasItems || !isAppender && !rootClientId && !clientId)])(PrivateInserter);
366
367
  exports.ComposedPrivateInserter = ComposedPrivateInserter;
367
368
  const Inserter = (0, _element.forwardRef)((props, ref) => {
368
- return (0, _element.createElement)(ComposedPrivateInserter, {
369
+ return (0, _react.createElement)(ComposedPrivateInserter, {
369
370
  ref: ref,
370
371
  ...props
371
372
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_a11y","_i18n","_components","_data","_compose","_blocks","_icons","_menu","_quickInserter","_store","defaultRenderToggle","onToggle","disabled","isOpen","blockTitle","hasSingleBlockType","toggleProps","prioritizePatterns","as","Wrapper","Button","label","labelProp","onClick","rest","sprintf","_x","__","handleClick","event","createElement","icon","plus","tooltipPosition","className","PrivateInserter","Component","constructor","arguments","bind","renderToggle","renderContent","props","directInsertBlock","hasItems","onClose","rootClientId","clientId","isAppender","showInserterHelpPanel","__experimentalIsQuick","isQuick","onSelectOrClose","selectBlockOnInsert","default","onSelect","blocks","firstBlock","Array","isArray","length","render","position","insertOnlyAllowedBlock","Dropdown","contentClassName","classnames","popoverProps","shift","expandOnMobile","headerTitle","ComposedPrivateInserter","compose","withSelect","select","shouldDirectInsert","getBlockRootClientId","hasInserterItems","getAllowedBlocks","getDirectInsertBlock","getSettings","blockEditorStore","getBlockVariations","blocksStore","undefined","allowedBlocks","settings","name","allowedBlockType","title","__experimentalPreferPatternsOnRoot","withDispatch","dispatch","ownProps","getAdjacentBlockAttributes","attributesToCopy","getBlock","getPreviousBlockClientId","result","adjacentAttributes","parentBlock","innerBlocks","lastInnerBlock","attributes","currentBlock","previousBlock","forEach","attribute","hasOwnProperty","getInsertionIndex","getBlockIndex","getBlockSelectionEnd","getBlockOrder","end","insertBlock","blockToInsert","newAttributes","createBlock","message","speak","ifCondition","exports","Inserter","forwardRef","ref","_default"],"sources":["@wordpress/block-editor/src/components/inserter/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { speak } from '@wordpress/a11y';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { Dropdown, Button } from '@wordpress/components';\nimport { forwardRef, Component } from '@wordpress/element';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, ifCondition } from '@wordpress/compose';\nimport { createBlock, store as blocksStore } from '@wordpress/blocks';\nimport { plus } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport InserterMenu from './menu';\nimport QuickInserter from './quick-inserter';\nimport { store as blockEditorStore } from '../../store';\n\nconst defaultRenderToggle = ( {\n\tonToggle,\n\tdisabled,\n\tisOpen,\n\tblockTitle,\n\thasSingleBlockType,\n\ttoggleProps = {},\n\tprioritizePatterns,\n} ) => {\n\tconst {\n\t\tas: Wrapper = Button,\n\t\tlabel: labelProp,\n\t\tonClick,\n\t\t...rest\n\t} = toggleProps;\n\n\tlet label = labelProp;\n\tif ( ! label && hasSingleBlockType ) {\n\t\tlabel = sprintf(\n\t\t\t// translators: %s: the name of the block when there is only one\n\t\t\t_x( 'Add %s', 'directly add the only allowed block' ),\n\t\t\tblockTitle\n\t\t);\n\t} else if ( ! label && prioritizePatterns ) {\n\t\tlabel = __( 'Add pattern' );\n\t} else if ( ! label ) {\n\t\tlabel = _x( 'Add block', 'Generic label for block inserter button' );\n\t}\n\n\t// Handle both onClick functions from the toggle and the parent component.\n\tfunction handleClick( event ) {\n\t\tif ( onToggle ) {\n\t\t\tonToggle( event );\n\t\t}\n\t\tif ( onClick ) {\n\t\t\tonClick( event );\n\t\t}\n\t}\n\n\treturn (\n\t\t<Wrapper\n\t\t\ticon={ plus }\n\t\t\tlabel={ label }\n\t\t\ttooltipPosition=\"bottom\"\n\t\t\tonClick={ handleClick }\n\t\t\tclassName=\"block-editor-inserter__toggle\"\n\t\t\taria-haspopup={ ! hasSingleBlockType ? 'true' : false }\n\t\t\taria-expanded={ ! hasSingleBlockType ? isOpen : false }\n\t\t\tdisabled={ disabled }\n\t\t\t{ ...rest }\n\t\t/>\n\t);\n};\n\nclass PrivateInserter extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onToggle = this.onToggle.bind( this );\n\t\tthis.renderToggle = this.renderToggle.bind( this );\n\t\tthis.renderContent = this.renderContent.bind( this );\n\t}\n\n\tonToggle( isOpen ) {\n\t\tconst { onToggle } = this.props;\n\n\t\t// Surface toggle callback to parent component.\n\t\tif ( onToggle ) {\n\t\t\tonToggle( isOpen );\n\t\t}\n\t}\n\n\t/**\n\t * Render callback to display Dropdown toggle element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onToggle Callback to invoke when toggle is\n\t * pressed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {WPElement} Dropdown toggle element.\n\t */\n\trenderToggle( { onToggle, isOpen } ) {\n\t\tconst {\n\t\t\tdisabled,\n\t\t\tblockTitle,\n\t\t\thasSingleBlockType,\n\t\t\tdirectInsertBlock,\n\t\t\ttoggleProps,\n\t\t\thasItems,\n\t\t\trenderToggle = defaultRenderToggle,\n\t\t\tprioritizePatterns,\n\t\t} = this.props;\n\n\t\treturn renderToggle( {\n\t\t\tonToggle,\n\t\t\tisOpen,\n\t\t\tdisabled: disabled || ! hasItems,\n\t\t\tblockTitle,\n\t\t\thasSingleBlockType,\n\t\t\tdirectInsertBlock,\n\t\t\ttoggleProps,\n\t\t\tprioritizePatterns,\n\t\t} );\n\t}\n\n\t/**\n\t * Render callback to display Dropdown content element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onClose Callback to invoke when dropdown is\n\t * closed.\n\t *\n\t * @return {WPElement} Dropdown content element.\n\t */\n\trenderContent( { onClose } ) {\n\t\tconst {\n\t\t\trootClientId,\n\t\t\tclientId,\n\t\t\tisAppender,\n\t\t\tshowInserterHelpPanel,\n\n\t\t\t// This prop is experimental to give some time for the quick inserter to mature\n\t\t\t// Feel free to make them stable after a few releases.\n\t\t\t__experimentalIsQuick: isQuick,\n\t\t\tprioritizePatterns,\n\t\t\tonSelectOrClose,\n\t\t\tselectBlockOnInsert,\n\t\t} = this.props;\n\n\t\tif ( isQuick ) {\n\t\t\treturn (\n\t\t\t\t<QuickInserter\n\t\t\t\t\tonSelect={ ( blocks ) => {\n\t\t\t\t\t\tconst firstBlock =\n\t\t\t\t\t\t\tArray.isArray( blocks ) && blocks?.length\n\t\t\t\t\t\t\t\t? blocks[ 0 ]\n\t\t\t\t\t\t\t\t: blocks;\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tonSelectOrClose &&\n\t\t\t\t\t\t\ttypeof onSelectOrClose === 'function'\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tonSelectOrClose( firstBlock );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClose();\n\t\t\t\t\t} }\n\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\tprioritizePatterns={ prioritizePatterns }\n\t\t\t\t\tselectBlockOnInsert={ selectBlockOnInsert }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<InserterMenu\n\t\t\t\tonSelect={ () => {\n\t\t\t\t\tonClose();\n\t\t\t\t} }\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisAppender={ isAppender }\n\t\t\t\tshowInserterHelpPanel={ showInserterHelpPanel }\n\t\t\t\tprioritizePatterns={ prioritizePatterns }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tposition,\n\t\t\thasSingleBlockType,\n\t\t\tdirectInsertBlock,\n\t\t\tinsertOnlyAllowedBlock,\n\t\t\t__experimentalIsQuick: isQuick,\n\t\t\tonSelectOrClose,\n\t\t} = this.props;\n\n\t\tif ( hasSingleBlockType || directInsertBlock ) {\n\t\t\treturn this.renderToggle( { onToggle: insertOnlyAllowedBlock } );\n\t\t}\n\n\t\treturn (\n\t\t\t<Dropdown\n\t\t\t\tclassName=\"block-editor-inserter\"\n\t\t\t\tcontentClassName={ classnames(\n\t\t\t\t\t'block-editor-inserter__popover',\n\t\t\t\t\t{ 'is-quick': isQuick }\n\t\t\t\t) }\n\t\t\t\tpopoverProps={ { position, shift: true } }\n\t\t\t\tonToggle={ this.onToggle }\n\t\t\t\texpandOnMobile\n\t\t\t\theaderTitle={ __( 'Add a block' ) }\n\t\t\t\trenderToggle={ this.renderToggle }\n\t\t\t\trenderContent={ this.renderContent }\n\t\t\t\tonClose={ onSelectOrClose }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport const ComposedPrivateInserter = compose( [\n\twithSelect(\n\t\t( select, { clientId, rootClientId, shouldDirectInsert = true } ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\thasInserterItems,\n\t\t\t\tgetAllowedBlocks,\n\t\t\t\tgetDirectInsertBlock,\n\t\t\t\tgetSettings,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tconst { getBlockVariations } = select( blocksStore );\n\n\t\t\trootClientId =\n\t\t\t\trootClientId || getBlockRootClientId( clientId ) || undefined;\n\n\t\t\tconst allowedBlocks = getAllowedBlocks( rootClientId );\n\n\t\t\tconst directInsertBlock =\n\t\t\t\tshouldDirectInsert && getDirectInsertBlock( rootClientId );\n\n\t\t\tconst settings = getSettings();\n\n\t\t\tconst hasSingleBlockType =\n\t\t\t\tallowedBlocks?.length === 1 &&\n\t\t\t\tgetBlockVariations( allowedBlocks[ 0 ].name, 'inserter' )\n\t\t\t\t\t?.length === 0;\n\n\t\t\tlet allowedBlockType = false;\n\t\t\tif ( hasSingleBlockType ) {\n\t\t\t\tallowedBlockType = allowedBlocks[ 0 ];\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\thasItems: hasInserterItems( rootClientId ),\n\t\t\t\thasSingleBlockType,\n\t\t\t\tblockTitle: allowedBlockType ? allowedBlockType.title : '',\n\t\t\t\tallowedBlockType,\n\t\t\t\tdirectInsertBlock,\n\t\t\t\trootClientId,\n\t\t\t\tprioritizePatterns:\n\t\t\t\t\tsettings.__experimentalPreferPatternsOnRoot &&\n\t\t\t\t\t! rootClientId,\n\t\t\t};\n\t\t}\n\t),\n\twithDispatch( ( dispatch, ownProps, { select } ) => {\n\t\treturn {\n\t\t\tinsertOnlyAllowedBlock() {\n\t\t\t\tconst {\n\t\t\t\t\trootClientId,\n\t\t\t\t\tclientId,\n\t\t\t\t\tisAppender,\n\t\t\t\t\thasSingleBlockType,\n\t\t\t\t\tallowedBlockType,\n\t\t\t\t\tdirectInsertBlock,\n\t\t\t\t\tonSelectOrClose,\n\t\t\t\t\tselectBlockOnInsert,\n\t\t\t\t} = ownProps;\n\n\t\t\t\tif ( ! hasSingleBlockType && ! directInsertBlock ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tfunction getAdjacentBlockAttributes( attributesToCopy ) {\n\t\t\t\t\tconst { getBlock, getPreviousBlockClientId } =\n\t\t\t\t\t\tselect( blockEditorStore );\n\n\t\t\t\t\tif (\n\t\t\t\t\t\t! attributesToCopy ||\n\t\t\t\t\t\t( ! clientId && ! rootClientId )\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn {};\n\t\t\t\t\t}\n\n\t\t\t\t\tconst result = {};\n\t\t\t\t\tlet adjacentAttributes = {};\n\n\t\t\t\t\t// If there is no clientId, then attempt to get attributes\n\t\t\t\t\t// from the last block within innerBlocks of the root block.\n\t\t\t\t\tif ( ! clientId ) {\n\t\t\t\t\t\tconst parentBlock = getBlock( rootClientId );\n\n\t\t\t\t\t\tif ( parentBlock?.innerBlocks?.length ) {\n\t\t\t\t\t\t\tconst lastInnerBlock =\n\t\t\t\t\t\t\t\tparentBlock.innerBlocks[\n\t\t\t\t\t\t\t\t\tparentBlock.innerBlocks.length - 1\n\t\t\t\t\t\t\t\t];\n\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\tdirectInsertBlock &&\n\t\t\t\t\t\t\t\tdirectInsertBlock?.name === lastInnerBlock.name\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\tadjacentAttributes = lastInnerBlock.attributes;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Otherwise, attempt to get attributes from the\n\t\t\t\t\t\t// previous block relative to the current clientId.\n\t\t\t\t\t\tconst currentBlock = getBlock( clientId );\n\t\t\t\t\t\tconst previousBlock = getBlock(\n\t\t\t\t\t\t\tgetPreviousBlockClientId( clientId )\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tif ( currentBlock?.name === previousBlock?.name ) {\n\t\t\t\t\t\t\tadjacentAttributes =\n\t\t\t\t\t\t\t\tpreviousBlock?.attributes || {};\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Copy over only those attributes flagged to be copied.\n\t\t\t\t\tattributesToCopy.forEach( ( attribute ) => {\n\t\t\t\t\t\tif ( adjacentAttributes.hasOwnProperty( attribute ) ) {\n\t\t\t\t\t\t\tresult[ attribute ] =\n\t\t\t\t\t\t\t\tadjacentAttributes[ attribute ];\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tfunction getInsertionIndex() {\n\t\t\t\t\tconst {\n\t\t\t\t\t\tgetBlockIndex,\n\t\t\t\t\t\tgetBlockSelectionEnd,\n\t\t\t\t\t\tgetBlockOrder,\n\t\t\t\t\t\tgetBlockRootClientId,\n\t\t\t\t\t} = select( blockEditorStore );\n\n\t\t\t\t\t// If the clientId is defined, we insert at the position of the block.\n\t\t\t\t\tif ( clientId ) {\n\t\t\t\t\t\treturn getBlockIndex( clientId );\n\t\t\t\t\t}\n\n\t\t\t\t\t// If there a selected block, we insert after the selected block.\n\t\t\t\t\tconst end = getBlockSelectionEnd();\n\t\t\t\t\tif (\n\t\t\t\t\t\t! isAppender &&\n\t\t\t\t\t\tend &&\n\t\t\t\t\t\tgetBlockRootClientId( end ) === rootClientId\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn getBlockIndex( end ) + 1;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Otherwise, we insert at the end of the current rootClientId.\n\t\t\t\t\treturn getBlockOrder( rootClientId ).length;\n\t\t\t\t}\n\n\t\t\t\tconst { insertBlock } = dispatch( blockEditorStore );\n\n\t\t\t\tlet blockToInsert;\n\n\t\t\t\t// Attempt to augment the directInsertBlock with attributes from an adjacent block.\n\t\t\t\t// This ensures styling from nearby blocks is preserved in the newly inserted block.\n\t\t\t\t// See: https://github.com/WordPress/gutenberg/issues/37904\n\t\t\t\tif ( directInsertBlock ) {\n\t\t\t\t\tconst newAttributes = getAdjacentBlockAttributes(\n\t\t\t\t\t\tdirectInsertBlock.attributesToCopy\n\t\t\t\t\t);\n\n\t\t\t\t\tblockToInsert = createBlock( directInsertBlock.name, {\n\t\t\t\t\t\t...( directInsertBlock.attributes || {} ),\n\t\t\t\t\t\t...newAttributes,\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tblockToInsert = createBlock( allowedBlockType.name );\n\t\t\t\t}\n\n\t\t\t\tinsertBlock(\n\t\t\t\t\tblockToInsert,\n\t\t\t\t\tgetInsertionIndex(),\n\t\t\t\t\trootClientId,\n\t\t\t\t\tselectBlockOnInsert\n\t\t\t\t);\n\n\t\t\t\tif ( onSelectOrClose ) {\n\t\t\t\t\tonSelectOrClose( {\n\t\t\t\t\t\tclientId: blockToInsert?.clientId,\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\tconst message = sprintf(\n\t\t\t\t\t// translators: %s: the name of the block that has been added\n\t\t\t\t\t__( '%s block added' ),\n\t\t\t\t\tallowedBlockType.title\n\t\t\t\t);\n\t\t\t\tspeak( message );\n\t\t\t},\n\t\t};\n\t} ),\n\t// The global inserter should always be visible, we are using ( ! isAppender && ! rootClientId && ! clientId ) as\n\t// a way to detect the global Inserter.\n\tifCondition(\n\t\t( { hasItems, isAppender, rootClientId, clientId } ) =>\n\t\t\thasItems || ( ! isAppender && ! rootClientId && ! clientId )\n\t),\n] )( PrivateInserter );\n\nconst Inserter = forwardRef( ( props, ref ) => {\n\treturn <ComposedPrivateInserter ref={ ref } { ...props } />;\n} );\n\nexport default Inserter;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_a11y","_i18n","_components","_element","_data","_compose","_blocks","_icons","_menu","_quickInserter","_store","defaultRenderToggle","onToggle","disabled","isOpen","blockTitle","hasSingleBlockType","toggleProps","prioritizePatterns","as","Wrapper","Button","label","labelProp","onClick","rest","sprintf","_x","__","handleClick","event","_react","createElement","icon","plus","tooltipPosition","className","PrivateInserter","Component","constructor","arguments","bind","renderToggle","renderContent","props","directInsertBlock","hasItems","onClose","rootClientId","clientId","isAppender","showInserterHelpPanel","__experimentalIsQuick","isQuick","onSelectOrClose","selectBlockOnInsert","default","onSelect","blocks","firstBlock","Array","isArray","length","render","position","insertOnlyAllowedBlock","Dropdown","contentClassName","classnames","popoverProps","shift","expandOnMobile","headerTitle","ComposedPrivateInserter","compose","withSelect","select","shouldDirectInsert","getBlockRootClientId","hasInserterItems","getAllowedBlocks","getDirectInsertBlock","getSettings","blockEditorStore","getBlockVariations","blocksStore","undefined","allowedBlocks","settings","name","allowedBlockType","title","__experimentalPreferPatternsOnRoot","withDispatch","dispatch","ownProps","getAdjacentBlockAttributes","attributesToCopy","getBlock","getPreviousBlockClientId","result","adjacentAttributes","parentBlock","innerBlocks","lastInnerBlock","attributes","currentBlock","previousBlock","forEach","attribute","hasOwnProperty","getInsertionIndex","getBlockIndex","getBlockSelectionEnd","getBlockOrder","end","insertBlock","blockToInsert","newAttributes","createBlock","message","speak","ifCondition","exports","Inserter","forwardRef","ref","_default"],"sources":["@wordpress/block-editor/src/components/inserter/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { speak } from '@wordpress/a11y';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { Dropdown, Button } from '@wordpress/components';\nimport { forwardRef, Component } from '@wordpress/element';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, ifCondition } from '@wordpress/compose';\nimport { createBlock, store as blocksStore } from '@wordpress/blocks';\nimport { plus } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport InserterMenu from './menu';\nimport QuickInserter from './quick-inserter';\nimport { store as blockEditorStore } from '../../store';\n\nconst defaultRenderToggle = ( {\n\tonToggle,\n\tdisabled,\n\tisOpen,\n\tblockTitle,\n\thasSingleBlockType,\n\ttoggleProps = {},\n\tprioritizePatterns,\n} ) => {\n\tconst {\n\t\tas: Wrapper = Button,\n\t\tlabel: labelProp,\n\t\tonClick,\n\t\t...rest\n\t} = toggleProps;\n\n\tlet label = labelProp;\n\tif ( ! label && hasSingleBlockType ) {\n\t\tlabel = sprintf(\n\t\t\t// translators: %s: the name of the block when there is only one\n\t\t\t_x( 'Add %s', 'directly add the only allowed block' ),\n\t\t\tblockTitle\n\t\t);\n\t} else if ( ! label && prioritizePatterns ) {\n\t\tlabel = __( 'Add pattern' );\n\t} else if ( ! label ) {\n\t\tlabel = _x( 'Add block', 'Generic label for block inserter button' );\n\t}\n\n\t// Handle both onClick functions from the toggle and the parent component.\n\tfunction handleClick( event ) {\n\t\tif ( onToggle ) {\n\t\t\tonToggle( event );\n\t\t}\n\t\tif ( onClick ) {\n\t\t\tonClick( event );\n\t\t}\n\t}\n\n\treturn (\n\t\t<Wrapper\n\t\t\ticon={ plus }\n\t\t\tlabel={ label }\n\t\t\ttooltipPosition=\"bottom\"\n\t\t\tonClick={ handleClick }\n\t\t\tclassName=\"block-editor-inserter__toggle\"\n\t\t\taria-haspopup={ ! hasSingleBlockType ? 'true' : false }\n\t\t\taria-expanded={ ! hasSingleBlockType ? isOpen : false }\n\t\t\tdisabled={ disabled }\n\t\t\t{ ...rest }\n\t\t/>\n\t);\n};\n\nclass PrivateInserter extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onToggle = this.onToggle.bind( this );\n\t\tthis.renderToggle = this.renderToggle.bind( this );\n\t\tthis.renderContent = this.renderContent.bind( this );\n\t}\n\n\tonToggle( isOpen ) {\n\t\tconst { onToggle } = this.props;\n\n\t\t// Surface toggle callback to parent component.\n\t\tif ( onToggle ) {\n\t\t\tonToggle( isOpen );\n\t\t}\n\t}\n\n\t/**\n\t * Render callback to display Dropdown toggle element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onToggle Callback to invoke when toggle is\n\t * pressed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {Element} Dropdown toggle element.\n\t */\n\trenderToggle( { onToggle, isOpen } ) {\n\t\tconst {\n\t\t\tdisabled,\n\t\t\tblockTitle,\n\t\t\thasSingleBlockType,\n\t\t\tdirectInsertBlock,\n\t\t\ttoggleProps,\n\t\t\thasItems,\n\t\t\trenderToggle = defaultRenderToggle,\n\t\t\tprioritizePatterns,\n\t\t} = this.props;\n\n\t\treturn renderToggle( {\n\t\t\tonToggle,\n\t\t\tisOpen,\n\t\t\tdisabled: disabled || ! hasItems,\n\t\t\tblockTitle,\n\t\t\thasSingleBlockType,\n\t\t\tdirectInsertBlock,\n\t\t\ttoggleProps,\n\t\t\tprioritizePatterns,\n\t\t} );\n\t}\n\n\t/**\n\t * Render callback to display Dropdown content element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onClose Callback to invoke when dropdown is\n\t * closed.\n\t *\n\t * @return {Element} Dropdown content element.\n\t */\n\trenderContent( { onClose } ) {\n\t\tconst {\n\t\t\trootClientId,\n\t\t\tclientId,\n\t\t\tisAppender,\n\t\t\tshowInserterHelpPanel,\n\n\t\t\t// This prop is experimental to give some time for the quick inserter to mature\n\t\t\t// Feel free to make them stable after a few releases.\n\t\t\t__experimentalIsQuick: isQuick,\n\t\t\tprioritizePatterns,\n\t\t\tonSelectOrClose,\n\t\t\tselectBlockOnInsert,\n\t\t} = this.props;\n\n\t\tif ( isQuick ) {\n\t\t\treturn (\n\t\t\t\t<QuickInserter\n\t\t\t\t\tonSelect={ ( blocks ) => {\n\t\t\t\t\t\tconst firstBlock =\n\t\t\t\t\t\t\tArray.isArray( blocks ) && blocks?.length\n\t\t\t\t\t\t\t\t? blocks[ 0 ]\n\t\t\t\t\t\t\t\t: blocks;\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tonSelectOrClose &&\n\t\t\t\t\t\t\ttypeof onSelectOrClose === 'function'\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tonSelectOrClose( firstBlock );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClose();\n\t\t\t\t\t} }\n\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\tprioritizePatterns={ prioritizePatterns }\n\t\t\t\t\tselectBlockOnInsert={ selectBlockOnInsert }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<InserterMenu\n\t\t\t\tonSelect={ () => {\n\t\t\t\t\tonClose();\n\t\t\t\t} }\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisAppender={ isAppender }\n\t\t\t\tshowInserterHelpPanel={ showInserterHelpPanel }\n\t\t\t\tprioritizePatterns={ prioritizePatterns }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tposition,\n\t\t\thasSingleBlockType,\n\t\t\tdirectInsertBlock,\n\t\t\tinsertOnlyAllowedBlock,\n\t\t\t__experimentalIsQuick: isQuick,\n\t\t\tonSelectOrClose,\n\t\t} = this.props;\n\n\t\tif ( hasSingleBlockType || directInsertBlock ) {\n\t\t\treturn this.renderToggle( { onToggle: insertOnlyAllowedBlock } );\n\t\t}\n\n\t\treturn (\n\t\t\t<Dropdown\n\t\t\t\tclassName=\"block-editor-inserter\"\n\t\t\t\tcontentClassName={ classnames(\n\t\t\t\t\t'block-editor-inserter__popover',\n\t\t\t\t\t{ 'is-quick': isQuick }\n\t\t\t\t) }\n\t\t\t\tpopoverProps={ { position, shift: true } }\n\t\t\t\tonToggle={ this.onToggle }\n\t\t\t\texpandOnMobile\n\t\t\t\theaderTitle={ __( 'Add a block' ) }\n\t\t\t\trenderToggle={ this.renderToggle }\n\t\t\t\trenderContent={ this.renderContent }\n\t\t\t\tonClose={ onSelectOrClose }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport const ComposedPrivateInserter = compose( [\n\twithSelect(\n\t\t( select, { clientId, rootClientId, shouldDirectInsert = true } ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\thasInserterItems,\n\t\t\t\tgetAllowedBlocks,\n\t\t\t\tgetDirectInsertBlock,\n\t\t\t\tgetSettings,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tconst { getBlockVariations } = select( blocksStore );\n\n\t\t\trootClientId =\n\t\t\t\trootClientId || getBlockRootClientId( clientId ) || undefined;\n\n\t\t\tconst allowedBlocks = getAllowedBlocks( rootClientId );\n\n\t\t\tconst directInsertBlock =\n\t\t\t\tshouldDirectInsert && getDirectInsertBlock( rootClientId );\n\n\t\t\tconst settings = getSettings();\n\n\t\t\tconst hasSingleBlockType =\n\t\t\t\tallowedBlocks?.length === 1 &&\n\t\t\t\tgetBlockVariations( allowedBlocks[ 0 ].name, 'inserter' )\n\t\t\t\t\t?.length === 0;\n\n\t\t\tlet allowedBlockType = false;\n\t\t\tif ( hasSingleBlockType ) {\n\t\t\t\tallowedBlockType = allowedBlocks[ 0 ];\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\thasItems: hasInserterItems( rootClientId ),\n\t\t\t\thasSingleBlockType,\n\t\t\t\tblockTitle: allowedBlockType ? allowedBlockType.title : '',\n\t\t\t\tallowedBlockType,\n\t\t\t\tdirectInsertBlock,\n\t\t\t\trootClientId,\n\t\t\t\tprioritizePatterns:\n\t\t\t\t\tsettings.__experimentalPreferPatternsOnRoot &&\n\t\t\t\t\t! rootClientId,\n\t\t\t};\n\t\t}\n\t),\n\twithDispatch( ( dispatch, ownProps, { select } ) => {\n\t\treturn {\n\t\t\tinsertOnlyAllowedBlock() {\n\t\t\t\tconst {\n\t\t\t\t\trootClientId,\n\t\t\t\t\tclientId,\n\t\t\t\t\tisAppender,\n\t\t\t\t\thasSingleBlockType,\n\t\t\t\t\tallowedBlockType,\n\t\t\t\t\tdirectInsertBlock,\n\t\t\t\t\tonSelectOrClose,\n\t\t\t\t\tselectBlockOnInsert,\n\t\t\t\t} = ownProps;\n\n\t\t\t\tif ( ! hasSingleBlockType && ! directInsertBlock ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tfunction getAdjacentBlockAttributes( attributesToCopy ) {\n\t\t\t\t\tconst { getBlock, getPreviousBlockClientId } =\n\t\t\t\t\t\tselect( blockEditorStore );\n\n\t\t\t\t\tif (\n\t\t\t\t\t\t! attributesToCopy ||\n\t\t\t\t\t\t( ! clientId && ! rootClientId )\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn {};\n\t\t\t\t\t}\n\n\t\t\t\t\tconst result = {};\n\t\t\t\t\tlet adjacentAttributes = {};\n\n\t\t\t\t\t// If there is no clientId, then attempt to get attributes\n\t\t\t\t\t// from the last block within innerBlocks of the root block.\n\t\t\t\t\tif ( ! clientId ) {\n\t\t\t\t\t\tconst parentBlock = getBlock( rootClientId );\n\n\t\t\t\t\t\tif ( parentBlock?.innerBlocks?.length ) {\n\t\t\t\t\t\t\tconst lastInnerBlock =\n\t\t\t\t\t\t\t\tparentBlock.innerBlocks[\n\t\t\t\t\t\t\t\t\tparentBlock.innerBlocks.length - 1\n\t\t\t\t\t\t\t\t];\n\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\tdirectInsertBlock &&\n\t\t\t\t\t\t\t\tdirectInsertBlock?.name === lastInnerBlock.name\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\tadjacentAttributes = lastInnerBlock.attributes;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Otherwise, attempt to get attributes from the\n\t\t\t\t\t\t// previous block relative to the current clientId.\n\t\t\t\t\t\tconst currentBlock = getBlock( clientId );\n\t\t\t\t\t\tconst previousBlock = getBlock(\n\t\t\t\t\t\t\tgetPreviousBlockClientId( clientId )\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tif ( currentBlock?.name === previousBlock?.name ) {\n\t\t\t\t\t\t\tadjacentAttributes =\n\t\t\t\t\t\t\t\tpreviousBlock?.attributes || {};\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Copy over only those attributes flagged to be copied.\n\t\t\t\t\tattributesToCopy.forEach( ( attribute ) => {\n\t\t\t\t\t\tif ( adjacentAttributes.hasOwnProperty( attribute ) ) {\n\t\t\t\t\t\t\tresult[ attribute ] =\n\t\t\t\t\t\t\t\tadjacentAttributes[ attribute ];\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tfunction getInsertionIndex() {\n\t\t\t\t\tconst {\n\t\t\t\t\t\tgetBlockIndex,\n\t\t\t\t\t\tgetBlockSelectionEnd,\n\t\t\t\t\t\tgetBlockOrder,\n\t\t\t\t\t\tgetBlockRootClientId,\n\t\t\t\t\t} = select( blockEditorStore );\n\n\t\t\t\t\t// If the clientId is defined, we insert at the position of the block.\n\t\t\t\t\tif ( clientId ) {\n\t\t\t\t\t\treturn getBlockIndex( clientId );\n\t\t\t\t\t}\n\n\t\t\t\t\t// If there a selected block, we insert after the selected block.\n\t\t\t\t\tconst end = getBlockSelectionEnd();\n\t\t\t\t\tif (\n\t\t\t\t\t\t! isAppender &&\n\t\t\t\t\t\tend &&\n\t\t\t\t\t\tgetBlockRootClientId( end ) === rootClientId\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn getBlockIndex( end ) + 1;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Otherwise, we insert at the end of the current rootClientId.\n\t\t\t\t\treturn getBlockOrder( rootClientId ).length;\n\t\t\t\t}\n\n\t\t\t\tconst { insertBlock } = dispatch( blockEditorStore );\n\n\t\t\t\tlet blockToInsert;\n\n\t\t\t\t// Attempt to augment the directInsertBlock with attributes from an adjacent block.\n\t\t\t\t// This ensures styling from nearby blocks is preserved in the newly inserted block.\n\t\t\t\t// See: https://github.com/WordPress/gutenberg/issues/37904\n\t\t\t\tif ( directInsertBlock ) {\n\t\t\t\t\tconst newAttributes = getAdjacentBlockAttributes(\n\t\t\t\t\t\tdirectInsertBlock.attributesToCopy\n\t\t\t\t\t);\n\n\t\t\t\t\tblockToInsert = createBlock( directInsertBlock.name, {\n\t\t\t\t\t\t...( directInsertBlock.attributes || {} ),\n\t\t\t\t\t\t...newAttributes,\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tblockToInsert = createBlock( allowedBlockType.name );\n\t\t\t\t}\n\n\t\t\t\tinsertBlock(\n\t\t\t\t\tblockToInsert,\n\t\t\t\t\tgetInsertionIndex(),\n\t\t\t\t\trootClientId,\n\t\t\t\t\tselectBlockOnInsert\n\t\t\t\t);\n\n\t\t\t\tif ( onSelectOrClose ) {\n\t\t\t\t\tonSelectOrClose( {\n\t\t\t\t\t\tclientId: blockToInsert?.clientId,\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\tconst message = sprintf(\n\t\t\t\t\t// translators: %s: the name of the block that has been added\n\t\t\t\t\t__( '%s block added' ),\n\t\t\t\t\tallowedBlockType.title\n\t\t\t\t);\n\t\t\t\tspeak( message );\n\t\t\t},\n\t\t};\n\t} ),\n\t// The global inserter should always be visible, we are using ( ! isAppender && ! rootClientId && ! clientId ) as\n\t// a way to detect the global Inserter.\n\tifCondition(\n\t\t( { hasItems, isAppender, rootClientId, clientId } ) =>\n\t\t\thasItems || ( ! isAppender && ! rootClientId && ! clientId )\n\t),\n] )( PrivateInserter );\n\nconst Inserter = forwardRef( ( props, ref ) => {\n\treturn <ComposedPrivateInserter ref={ ref } { ...props } />;\n} );\n\nexport default Inserter;\n"],"mappings":"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"}
@@ -5,10 +5,11 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = exports.Inserter = void 0;
8
- var _element = require("@wordpress/element");
8
+ var _react = require("react");
9
9
  var _reactNative = require("react-native");
10
10
  var _i18n = require("@wordpress/i18n");
11
11
  var _components = require("@wordpress/components");
12
+ var _element = require("@wordpress/element");
12
13
  var _data = require("@wordpress/data");
13
14
  var _compose = require("@wordpress/compose");
14
15
  var _blocks = require("@wordpress/blocks");
@@ -38,9 +39,9 @@ const defaultRenderToggle = ({
38
39
  buttonStyle,
39
40
  onLongPress
40
41
  }) => {
41
- return (0, _element.createElement)(_components.ToolbarButton, {
42
+ return (0, _react.createElement)(_components.ToolbarButton, {
42
43
  title: (0, _i18n._x)('Add block', 'Generic label for block inserter button'),
43
- icon: (0, _element.createElement)(_icons.Icon, {
44
+ icon: (0, _react.createElement)(_icons.Icon, {
44
45
  icon: _icons.plus,
45
46
  style: iconStyle
46
47
  }),
@@ -194,7 +195,7 @@ class Inserter extends _element.Component {
194
195
  * pressed.
195
196
  * @param {boolean} options.isOpen Whether dropdown is currently open.
196
197
  *
197
- * @return {WPElement} Dropdown toggle element.
198
+ * @return {Element} Dropdown toggle element.
198
199
  */
199
200
  renderInserterToggle({
200
201
  onToggle,
@@ -207,7 +208,7 @@ class Inserter extends _element.Component {
207
208
  showSeparator
208
209
  } = this.props;
209
210
  if (showSeparator && isOpen) {
210
- return (0, _element.createElement)(_insertionPoint.default, null);
211
+ return (0, _react.createElement)(_insertionPoint.default, null);
211
212
  }
212
213
  const buttonStyle = getStylesFromColorScheme(_style.default['inserter-menu__add-block-button'], _style.default['inserter-menu__add-block-button--dark']);
213
214
  const iconStyle = getStylesFromColorScheme(_style.default['inserter-menu__add-block-button-icon'], _style.default['inserter-menu__add-block-button-icon--dark']);
@@ -230,14 +231,14 @@ class Inserter extends _element.Component {
230
231
  insertionIndex: this.getInsertionIndex(insertionType)
231
232
  }, onToggle);
232
233
  };
233
- return (0, _element.createElement)(_element.Fragment, null, renderToggle({
234
+ return (0, _react.createElement)(_react.Fragment, null, renderToggle({
234
235
  onToggle: onPress,
235
236
  isOpen,
236
237
  disabled,
237
238
  iconStyle,
238
239
  buttonStyle,
239
240
  onLongPress
240
- }), (0, _element.createElement)(_components.Picker, {
241
+ }), (0, _react.createElement)(_components.Picker, {
241
242
  ref: instance => this.picker = instance,
242
243
  options: this.getInsertionOptions(),
243
244
  onChange: onPickerSelect,
@@ -253,7 +254,7 @@ class Inserter extends _element.Component {
253
254
  * closed.
254
255
  * @param {boolean} options.isOpen Whether dropdown is currently open.
255
256
  *
256
- * @return {WPElement} Dropdown content element.
257
+ * @return {Element} Dropdown content element.
257
258
  */
258
259
  renderContent({
259
260
  onClose,
@@ -268,7 +269,7 @@ class Inserter extends _element.Component {
268
269
  shouldReplaceBlock,
269
270
  insertionIndex
270
271
  } = this.state;
271
- return (0, _element.createElement)(_menu.default, {
272
+ return (0, _react.createElement)(_menu.default, {
272
273
  isOpen: isOpen,
273
274
  onSelect: onClose,
274
275
  onDismiss: onClose,
@@ -280,7 +281,7 @@ class Inserter extends _element.Component {
280
281
  });
281
282
  }
282
283
  render() {
283
- return (0, _element.createElement)(_components.Dropdown, {
284
+ return (0, _react.createElement)(_components.Dropdown, {
284
285
  onToggle: this.onToggle,
285
286
  headerTitle: (0, _i18n.__)('Add a block'),
286
287
  renderToggle: this.renderInserterToggle,
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_reactNative","_i18n","_components","_data","_compose","_blocks","_icons","_reactNativeBridge","_style","_interopRequireDefault","_menu","_insertionPoint","_store","VOICE_OVER_ANNOUNCEMENT_DELAY","defaultRenderToggle","onToggle","disabled","iconStyle","buttonStyle","onLongPress","createElement","ToolbarButton","title","_x","icon","Icon","plus","style","onClick","extraProps","hint","__","testID","hitSlop","top","bottom","left","right","isDisabled","customContainerStyles","fixedRatio","Inserter","Component","announcementTimeout","constructor","arguments","bind","renderInserterToggle","renderContent","componentWillUnmount","clearTimeout","getInsertionOptions","addBeforeOption","value","label","plusCircle","replaceCurrentOption","plusCircleFilled","addAfterOption","addToBeginningOption","insertBefore","addToEndOption","insertAfter","isAnyBlockSelected","isSelectedBlockReplaceable","props","getInsertionIndex","insertionType","insertionIndexDefault","insertionIndexStart","insertionIndexBefore","insertionIndexAfter","insertionIndexEnd","shouldReplaceBlock","isOpen","blockTypeImpressions","updateSettings","impressionsRemain","Object","values","some","count","decrementedImpressions","entries","reduce","acc","blockName","Math","max","impressions","setBlockTypeImpressions","onInserterToggledAnnouncement","AccessibilityInfo","isScreenReaderEnabled","then","isEnabled","isIOS","Platform","OS","announcement","setTimeout","announceForAccessibility","renderToggle","getStylesFromColorScheme","showSeparator","default","styles","onPress","setState","destinationRootClientId","insertionIndex","picker","presentPicker","onPickerSelect","Fragment","Picker","ref","instance","options","onChange","hideCancelButton","onClose","clientId","isAppender","state","onSelect","onDismiss","rootClientId","render","Dropdown","headerTitle","exports","_default","compose","withDispatch","dispatch","blockEditorStore","withSelect","select","getBlockRootClientId","getBlockSelectionEnd","getBlockOrder","getBlockIndex","getBlock","getSettings","getBlockEditorSettings","end","selectedBlockIndex","endOfRootIndex","length","isSelectedUnmodifiedDefaultBlock","isUnmodifiedDefaultBlock","undefined","getDefaultInsertionIndex","__experimentalShouldInsertAtTheTop","shouldInsertAtTheTop","withPreferredColorScheme"],"sources":["@wordpress/block-editor/src/components/inserter/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { AccessibilityInfo, Platform } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { Dropdown, ToolbarButton, Picker } from '@wordpress/components';\nimport { Component } from '@wordpress/element';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { isUnmodifiedDefaultBlock } from '@wordpress/blocks';\nimport {\n\tIcon,\n\tplus,\n\tplusCircle,\n\tplusCircleFilled,\n\tinsertAfter,\n\tinsertBefore,\n} from '@wordpress/icons';\nimport { setBlockTypeImpressions } from '@wordpress/react-native-bridge';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport InserterMenu from './menu';\nimport BlockInsertionPoint from '../block-list/insertion-point';\nimport { store as blockEditorStore } from '../../store';\n\nconst VOICE_OVER_ANNOUNCEMENT_DELAY = 1000;\n\nconst defaultRenderToggle = ( {\n\tonToggle,\n\tdisabled,\n\ticonStyle,\n\tbuttonStyle,\n\tonLongPress,\n} ) => {\n\treturn (\n\t\t<ToolbarButton\n\t\t\ttitle={ _x(\n\t\t\t\t'Add block',\n\t\t\t\t'Generic label for block inserter button'\n\t\t\t) }\n\t\t\ticon={ <Icon icon={ plus } style={ iconStyle } /> }\n\t\t\tonClick={ onToggle }\n\t\t\textraProps={ {\n\t\t\t\thint: __( 'Double tap to add a block' ),\n\t\t\t\t// testID is present to disambiguate this element for native UI tests. It's not\n\t\t\t\t// usually required for components. See: https://github.com/WordPress/gutenberg/pull/18832#issuecomment-561411389.\n\t\t\t\ttestID: 'add-block-button',\n\t\t\t\tonLongPress,\n\t\t\t\thitSlop: { top: 10, bottom: 10, left: 10, right: 10 },\n\t\t\t} }\n\t\t\tisDisabled={ disabled }\n\t\t\tcustomContainerStyles={ buttonStyle }\n\t\t\tfixedRatio={ false }\n\t\t/>\n\t);\n};\n\nexport class Inserter extends Component {\n\tannouncementTimeout;\n\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onToggle = this.onToggle.bind( this );\n\t\tthis.renderInserterToggle = this.renderInserterToggle.bind( this );\n\t\tthis.renderContent = this.renderContent.bind( this );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tclearTimeout( this.announcementTimeout );\n\t}\n\n\tgetInsertionOptions() {\n\t\tconst addBeforeOption = {\n\t\t\tvalue: 'before',\n\t\t\tlabel: __( 'Add Block Before' ),\n\t\t\ticon: plusCircle,\n\t\t};\n\n\t\tconst replaceCurrentOption = {\n\t\t\tvalue: 'replace',\n\t\t\tlabel: __( 'Replace Current Block' ),\n\t\t\ticon: plusCircleFilled,\n\t\t};\n\n\t\tconst addAfterOption = {\n\t\t\tvalue: 'after',\n\t\t\tlabel: __( 'Add Block After' ),\n\t\t\ticon: plusCircle,\n\t\t};\n\n\t\tconst addToBeginningOption = {\n\t\t\tvalue: 'start',\n\t\t\tlabel: __( 'Add To Beginning' ),\n\t\t\ticon: insertBefore,\n\t\t};\n\n\t\tconst addToEndOption = {\n\t\t\tvalue: 'end',\n\t\t\tlabel: __( 'Add To End' ),\n\t\t\ticon: insertAfter,\n\t\t};\n\n\t\tconst { isAnyBlockSelected, isSelectedBlockReplaceable } = this.props;\n\t\tif ( isAnyBlockSelected ) {\n\t\t\tif ( isSelectedBlockReplaceable ) {\n\t\t\t\treturn [\n\t\t\t\t\taddToBeginningOption,\n\t\t\t\t\taddBeforeOption,\n\t\t\t\t\treplaceCurrentOption,\n\t\t\t\t\taddAfterOption,\n\t\t\t\t\taddToEndOption,\n\t\t\t\t];\n\t\t\t}\n\t\t\treturn [\n\t\t\t\taddToBeginningOption,\n\t\t\t\taddBeforeOption,\n\t\t\t\taddAfterOption,\n\t\t\t\taddToEndOption,\n\t\t\t];\n\t\t}\n\t\treturn [ addToBeginningOption, addToEndOption ];\n\t}\n\n\tgetInsertionIndex( insertionType ) {\n\t\tconst {\n\t\t\tinsertionIndexDefault,\n\t\t\tinsertionIndexStart,\n\t\t\tinsertionIndexBefore,\n\t\t\tinsertionIndexAfter,\n\t\t\tinsertionIndexEnd,\n\t\t} = this.props;\n\t\tif ( insertionType === 'start' ) {\n\t\t\treturn insertionIndexStart;\n\t\t}\n\t\tif ( insertionType === 'before' || insertionType === 'replace' ) {\n\t\t\treturn insertionIndexBefore;\n\t\t}\n\t\tif ( insertionType === 'after' ) {\n\t\t\treturn insertionIndexAfter;\n\t\t}\n\t\tif ( insertionType === 'end' ) {\n\t\t\treturn insertionIndexEnd;\n\t\t}\n\t\treturn insertionIndexDefault;\n\t}\n\n\tshouldReplaceBlock( insertionType ) {\n\t\tconst { isSelectedBlockReplaceable } = this.props;\n\t\tif ( insertionType === 'replace' ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( insertionType === 'default' && isSelectedBlockReplaceable ) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonToggle( isOpen ) {\n\t\tconst { blockTypeImpressions, onToggle, updateSettings } = this.props;\n\n\t\tif ( ! isOpen ) {\n\t\t\tconst impressionsRemain = Object.values(\n\t\t\t\tblockTypeImpressions\n\t\t\t).some( ( count ) => count > 0 );\n\n\t\t\tif ( impressionsRemain ) {\n\t\t\t\tconst decrementedImpressions = Object.entries(\n\t\t\t\t\tblockTypeImpressions\n\t\t\t\t).reduce(\n\t\t\t\t\t( acc, [ blockName, count ] ) => ( {\n\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t[ blockName ]: Math.max( count - 1, 0 ),\n\t\t\t\t\t} ),\n\t\t\t\t\t{}\n\t\t\t\t);\n\n\t\t\t\t// Persist block type impression to JavaScript store.\n\t\t\t\tupdateSettings( {\n\t\t\t\t\timpressions: decrementedImpressions,\n\t\t\t\t} );\n\n\t\t\t\t// Persist block type impression count to native app store.\n\t\t\t\tsetBlockTypeImpressions( decrementedImpressions );\n\t\t\t}\n\t\t}\n\n\t\t// Surface toggle callback to parent component.\n\t\tif ( onToggle ) {\n\t\t\tonToggle( isOpen );\n\t\t}\n\t\tthis.onInserterToggledAnnouncement( isOpen );\n\t}\n\n\tonInserterToggledAnnouncement( isOpen ) {\n\t\tAccessibilityInfo.isScreenReaderEnabled().then( ( isEnabled ) => {\n\t\t\tif ( isEnabled ) {\n\t\t\t\tconst isIOS = Platform.OS === 'ios';\n\t\t\t\tconst announcement = isOpen\n\t\t\t\t\t? __( 'Scrollable block menu opened. Select a block.' )\n\t\t\t\t\t: __( 'Scrollable block menu closed.' );\n\t\t\t\tthis.announcementTimeout = setTimeout(\n\t\t\t\t\t() =>\n\t\t\t\t\t\tAccessibilityInfo.announceForAccessibility(\n\t\t\t\t\t\t\tannouncement\n\t\t\t\t\t\t),\n\t\t\t\t\tisIOS ? VOICE_OVER_ANNOUNCEMENT_DELAY : 0\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\t}\n\n\t/**\n\t * Render callback to display Dropdown toggle element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onToggle Callback to invoke when toggle is\n\t * pressed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {WPElement} Dropdown toggle element.\n\t */\n\trenderInserterToggle( { onToggle, isOpen } ) {\n\t\tconst {\n\t\t\tdisabled,\n\t\t\trenderToggle = defaultRenderToggle,\n\t\t\tgetStylesFromColorScheme,\n\t\t\tshowSeparator,\n\t\t} = this.props;\n\t\tif ( showSeparator && isOpen ) {\n\t\t\treturn <BlockInsertionPoint />;\n\t\t}\n\n\t\tconst buttonStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'inserter-menu__add-block-button' ],\n\t\t\tstyles[ 'inserter-menu__add-block-button--dark' ]\n\t\t);\n\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'inserter-menu__add-block-button-icon' ],\n\t\t\tstyles[ 'inserter-menu__add-block-button-icon--dark' ]\n\t\t);\n\n\t\tconst onPress = () => {\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\tdestinationRootClientId: this.props.destinationRootClientId,\n\t\t\t\t\tshouldReplaceBlock: this.shouldReplaceBlock( 'default' ),\n\t\t\t\t\tinsertionIndex: this.getInsertionIndex( 'default' ),\n\t\t\t\t},\n\t\t\t\tonToggle\n\t\t\t);\n\t\t};\n\n\t\tconst onLongPress = () => {\n\t\t\tif ( this.picker ) {\n\t\t\t\tthis.picker.presentPicker();\n\t\t\t}\n\t\t};\n\n\t\tconst onPickerSelect = ( insertionType ) => {\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\tdestinationRootClientId: this.props.destinationRootClientId,\n\t\t\t\t\tshouldReplaceBlock:\n\t\t\t\t\t\tthis.shouldReplaceBlock( insertionType ),\n\t\t\t\t\tinsertionIndex: this.getInsertionIndex( insertionType ),\n\t\t\t\t},\n\t\t\t\tonToggle\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ renderToggle( {\n\t\t\t\t\tonToggle: onPress,\n\t\t\t\t\tisOpen,\n\t\t\t\t\tdisabled,\n\t\t\t\t\ticonStyle,\n\t\t\t\t\tbuttonStyle,\n\t\t\t\t\tonLongPress,\n\t\t\t\t} ) }\n\t\t\t\t<Picker\n\t\t\t\t\tref={ ( instance ) => ( this.picker = instance ) }\n\t\t\t\t\toptions={ this.getInsertionOptions() }\n\t\t\t\t\tonChange={ onPickerSelect }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t}\n\n\t/**\n\t * Render callback to display Dropdown content element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onClose Callback to invoke when dropdown is\n\t * closed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {WPElement} Dropdown content element.\n\t */\n\trenderContent( { onClose, isOpen } ) {\n\t\tconst { clientId, isAppender } = this.props;\n\t\tconst { destinationRootClientId, shouldReplaceBlock, insertionIndex } =\n\t\t\tthis.state;\n\t\treturn (\n\t\t\t<InserterMenu\n\t\t\t\tisOpen={ isOpen }\n\t\t\t\tonSelect={ onClose }\n\t\t\t\tonDismiss={ onClose }\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisAppender={ isAppender }\n\t\t\t\tshouldReplaceBlock={ shouldReplaceBlock }\n\t\t\t\tinsertionIndex={ insertionIndex }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Dropdown\n\t\t\t\tonToggle={ this.onToggle }\n\t\t\t\theaderTitle={ __( 'Add a block' ) }\n\t\t\t\trenderToggle={ this.renderInserterToggle }\n\t\t\t\trenderContent={ this.renderContent }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithDispatch( ( dispatch ) => {\n\t\tconst { updateSettings } = dispatch( blockEditorStore );\n\t\treturn { updateSettings };\n\t} ),\n\twithSelect( ( select, { clientId, isAppender, rootClientId } ) => {\n\t\tconst {\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockSelectionEnd,\n\t\t\tgetBlockOrder,\n\t\t\tgetBlockIndex,\n\t\t\tgetBlock,\n\t\t\tgetSettings: getBlockEditorSettings,\n\t\t} = select( blockEditorStore );\n\n\t\tconst end = getBlockSelectionEnd();\n\t\t// `end` argument (id) can refer to the component which is removed\n\t\t// due to pressing `undo` button, that's why we need to check\n\t\t// if `getBlock( end) is valid, otherwise `null` is passed\n\t\tconst isAnyBlockSelected = ! isAppender && end && getBlock( end );\n\t\tconst destinationRootClientId = isAnyBlockSelected\n\t\t\t? getBlockRootClientId( end )\n\t\t\t: rootClientId;\n\t\tconst selectedBlockIndex = getBlockIndex( end );\n\t\tconst endOfRootIndex = getBlockOrder( rootClientId ).length;\n\t\tconst isSelectedUnmodifiedDefaultBlock = isAnyBlockSelected\n\t\t\t? isUnmodifiedDefaultBlock( getBlock( end ) )\n\t\t\t: undefined;\n\n\t\tfunction getDefaultInsertionIndex() {\n\t\t\tconst { __experimentalShouldInsertAtTheTop: shouldInsertAtTheTop } =\n\t\t\t\tgetBlockEditorSettings();\n\n\t\t\t// If post title is selected insert as first block.\n\t\t\tif ( shouldInsertAtTheTop ) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\t// If the clientId is defined, we insert at the position of the block.\n\t\t\tif ( clientId ) {\n\t\t\t\treturn getBlockIndex( clientId );\n\t\t\t}\n\n\t\t\t// If there is a selected block,\n\t\t\tif ( isAnyBlockSelected ) {\n\t\t\t\t// And the last selected block is unmodified (empty), it will be replaced.\n\t\t\t\tif ( isSelectedUnmodifiedDefaultBlock ) {\n\t\t\t\t\treturn selectedBlockIndex;\n\t\t\t\t}\n\n\t\t\t\t// We insert after the selected block.\n\t\t\t\treturn selectedBlockIndex + 1;\n\t\t\t}\n\n\t\t\t// Otherwise, we insert at the end of the current rootClientId.\n\t\t\treturn endOfRootIndex;\n\t\t}\n\n\t\tconst insertionIndexStart = 0;\n\n\t\tconst insertionIndexBefore = isAnyBlockSelected\n\t\t\t? selectedBlockIndex\n\t\t\t: insertionIndexStart;\n\n\t\tconst insertionIndexAfter = isAnyBlockSelected\n\t\t\t? selectedBlockIndex + 1\n\t\t\t: endOfRootIndex;\n\n\t\tconst insertionIndexEnd = endOfRootIndex;\n\n\t\treturn {\n\t\t\tblockTypeImpressions: getBlockEditorSettings().impressions,\n\t\t\tdestinationRootClientId,\n\t\t\tinsertionIndexDefault: getDefaultInsertionIndex(),\n\t\t\tinsertionIndexBefore,\n\t\t\tinsertionIndexAfter,\n\t\t\tinsertionIndexStart,\n\t\t\tinsertionIndexEnd,\n\t\t\tisAnyBlockSelected: !! isAnyBlockSelected,\n\t\t\tisSelectedBlockReplaceable: isSelectedUnmodifiedDefaultBlock,\n\t\t};\n\t} ),\n\n\twithPreferredColorScheme,\n] )( Inserter );\n"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","require","_i18n","_components","_element","_data","_compose","_blocks","_icons","_reactNativeBridge","_style","_interopRequireDefault","_menu","_insertionPoint","_store","VOICE_OVER_ANNOUNCEMENT_DELAY","defaultRenderToggle","onToggle","disabled","iconStyle","buttonStyle","onLongPress","_react","createElement","ToolbarButton","title","_x","icon","Icon","plus","style","onClick","extraProps","hint","__","testID","hitSlop","top","bottom","left","right","isDisabled","customContainerStyles","fixedRatio","Inserter","Component","announcementTimeout","constructor","arguments","bind","renderInserterToggle","renderContent","componentWillUnmount","clearTimeout","getInsertionOptions","addBeforeOption","value","label","plusCircle","replaceCurrentOption","plusCircleFilled","addAfterOption","addToBeginningOption","insertBefore","addToEndOption","insertAfter","isAnyBlockSelected","isSelectedBlockReplaceable","props","getInsertionIndex","insertionType","insertionIndexDefault","insertionIndexStart","insertionIndexBefore","insertionIndexAfter","insertionIndexEnd","shouldReplaceBlock","isOpen","blockTypeImpressions","updateSettings","impressionsRemain","Object","values","some","count","decrementedImpressions","entries","reduce","acc","blockName","Math","max","impressions","setBlockTypeImpressions","onInserterToggledAnnouncement","AccessibilityInfo","isScreenReaderEnabled","then","isEnabled","isIOS","Platform","OS","announcement","setTimeout","announceForAccessibility","renderToggle","getStylesFromColorScheme","showSeparator","default","styles","onPress","setState","destinationRootClientId","insertionIndex","picker","presentPicker","onPickerSelect","Fragment","Picker","ref","instance","options","onChange","hideCancelButton","onClose","clientId","isAppender","state","onSelect","onDismiss","rootClientId","render","Dropdown","headerTitle","exports","_default","compose","withDispatch","dispatch","blockEditorStore","withSelect","select","getBlockRootClientId","getBlockSelectionEnd","getBlockOrder","getBlockIndex","getBlock","getSettings","getBlockEditorSettings","end","selectedBlockIndex","endOfRootIndex","length","isSelectedUnmodifiedDefaultBlock","isUnmodifiedDefaultBlock","undefined","getDefaultInsertionIndex","__experimentalShouldInsertAtTheTop","shouldInsertAtTheTop","withPreferredColorScheme"],"sources":["@wordpress/block-editor/src/components/inserter/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { AccessibilityInfo, Platform } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { Dropdown, ToolbarButton, Picker } from '@wordpress/components';\nimport { Component } from '@wordpress/element';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { isUnmodifiedDefaultBlock } from '@wordpress/blocks';\nimport {\n\tIcon,\n\tplus,\n\tplusCircle,\n\tplusCircleFilled,\n\tinsertAfter,\n\tinsertBefore,\n} from '@wordpress/icons';\nimport { setBlockTypeImpressions } from '@wordpress/react-native-bridge';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport InserterMenu from './menu';\nimport BlockInsertionPoint from '../block-list/insertion-point';\nimport { store as blockEditorStore } from '../../store';\n\nconst VOICE_OVER_ANNOUNCEMENT_DELAY = 1000;\n\nconst defaultRenderToggle = ( {\n\tonToggle,\n\tdisabled,\n\ticonStyle,\n\tbuttonStyle,\n\tonLongPress,\n} ) => {\n\treturn (\n\t\t<ToolbarButton\n\t\t\ttitle={ _x(\n\t\t\t\t'Add block',\n\t\t\t\t'Generic label for block inserter button'\n\t\t\t) }\n\t\t\ticon={ <Icon icon={ plus } style={ iconStyle } /> }\n\t\t\tonClick={ onToggle }\n\t\t\textraProps={ {\n\t\t\t\thint: __( 'Double tap to add a block' ),\n\t\t\t\t// testID is present to disambiguate this element for native UI tests. It's not\n\t\t\t\t// usually required for components. See: https://github.com/WordPress/gutenberg/pull/18832#issuecomment-561411389.\n\t\t\t\ttestID: 'add-block-button',\n\t\t\t\tonLongPress,\n\t\t\t\thitSlop: { top: 10, bottom: 10, left: 10, right: 10 },\n\t\t\t} }\n\t\t\tisDisabled={ disabled }\n\t\t\tcustomContainerStyles={ buttonStyle }\n\t\t\tfixedRatio={ false }\n\t\t/>\n\t);\n};\n\nexport class Inserter extends Component {\n\tannouncementTimeout;\n\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onToggle = this.onToggle.bind( this );\n\t\tthis.renderInserterToggle = this.renderInserterToggle.bind( this );\n\t\tthis.renderContent = this.renderContent.bind( this );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tclearTimeout( this.announcementTimeout );\n\t}\n\n\tgetInsertionOptions() {\n\t\tconst addBeforeOption = {\n\t\t\tvalue: 'before',\n\t\t\tlabel: __( 'Add Block Before' ),\n\t\t\ticon: plusCircle,\n\t\t};\n\n\t\tconst replaceCurrentOption = {\n\t\t\tvalue: 'replace',\n\t\t\tlabel: __( 'Replace Current Block' ),\n\t\t\ticon: plusCircleFilled,\n\t\t};\n\n\t\tconst addAfterOption = {\n\t\t\tvalue: 'after',\n\t\t\tlabel: __( 'Add Block After' ),\n\t\t\ticon: plusCircle,\n\t\t};\n\n\t\tconst addToBeginningOption = {\n\t\t\tvalue: 'start',\n\t\t\tlabel: __( 'Add To Beginning' ),\n\t\t\ticon: insertBefore,\n\t\t};\n\n\t\tconst addToEndOption = {\n\t\t\tvalue: 'end',\n\t\t\tlabel: __( 'Add To End' ),\n\t\t\ticon: insertAfter,\n\t\t};\n\n\t\tconst { isAnyBlockSelected, isSelectedBlockReplaceable } = this.props;\n\t\tif ( isAnyBlockSelected ) {\n\t\t\tif ( isSelectedBlockReplaceable ) {\n\t\t\t\treturn [\n\t\t\t\t\taddToBeginningOption,\n\t\t\t\t\taddBeforeOption,\n\t\t\t\t\treplaceCurrentOption,\n\t\t\t\t\taddAfterOption,\n\t\t\t\t\taddToEndOption,\n\t\t\t\t];\n\t\t\t}\n\t\t\treturn [\n\t\t\t\taddToBeginningOption,\n\t\t\t\taddBeforeOption,\n\t\t\t\taddAfterOption,\n\t\t\t\taddToEndOption,\n\t\t\t];\n\t\t}\n\t\treturn [ addToBeginningOption, addToEndOption ];\n\t}\n\n\tgetInsertionIndex( insertionType ) {\n\t\tconst {\n\t\t\tinsertionIndexDefault,\n\t\t\tinsertionIndexStart,\n\t\t\tinsertionIndexBefore,\n\t\t\tinsertionIndexAfter,\n\t\t\tinsertionIndexEnd,\n\t\t} = this.props;\n\t\tif ( insertionType === 'start' ) {\n\t\t\treturn insertionIndexStart;\n\t\t}\n\t\tif ( insertionType === 'before' || insertionType === 'replace' ) {\n\t\t\treturn insertionIndexBefore;\n\t\t}\n\t\tif ( insertionType === 'after' ) {\n\t\t\treturn insertionIndexAfter;\n\t\t}\n\t\tif ( insertionType === 'end' ) {\n\t\t\treturn insertionIndexEnd;\n\t\t}\n\t\treturn insertionIndexDefault;\n\t}\n\n\tshouldReplaceBlock( insertionType ) {\n\t\tconst { isSelectedBlockReplaceable } = this.props;\n\t\tif ( insertionType === 'replace' ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( insertionType === 'default' && isSelectedBlockReplaceable ) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonToggle( isOpen ) {\n\t\tconst { blockTypeImpressions, onToggle, updateSettings } = this.props;\n\n\t\tif ( ! isOpen ) {\n\t\t\tconst impressionsRemain = Object.values(\n\t\t\t\tblockTypeImpressions\n\t\t\t).some( ( count ) => count > 0 );\n\n\t\t\tif ( impressionsRemain ) {\n\t\t\t\tconst decrementedImpressions = Object.entries(\n\t\t\t\t\tblockTypeImpressions\n\t\t\t\t).reduce(\n\t\t\t\t\t( acc, [ blockName, count ] ) => ( {\n\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t[ blockName ]: Math.max( count - 1, 0 ),\n\t\t\t\t\t} ),\n\t\t\t\t\t{}\n\t\t\t\t);\n\n\t\t\t\t// Persist block type impression to JavaScript store.\n\t\t\t\tupdateSettings( {\n\t\t\t\t\timpressions: decrementedImpressions,\n\t\t\t\t} );\n\n\t\t\t\t// Persist block type impression count to native app store.\n\t\t\t\tsetBlockTypeImpressions( decrementedImpressions );\n\t\t\t}\n\t\t}\n\n\t\t// Surface toggle callback to parent component.\n\t\tif ( onToggle ) {\n\t\t\tonToggle( isOpen );\n\t\t}\n\t\tthis.onInserterToggledAnnouncement( isOpen );\n\t}\n\n\tonInserterToggledAnnouncement( isOpen ) {\n\t\tAccessibilityInfo.isScreenReaderEnabled().then( ( isEnabled ) => {\n\t\t\tif ( isEnabled ) {\n\t\t\t\tconst isIOS = Platform.OS === 'ios';\n\t\t\t\tconst announcement = isOpen\n\t\t\t\t\t? __( 'Scrollable block menu opened. Select a block.' )\n\t\t\t\t\t: __( 'Scrollable block menu closed.' );\n\t\t\t\tthis.announcementTimeout = setTimeout(\n\t\t\t\t\t() =>\n\t\t\t\t\t\tAccessibilityInfo.announceForAccessibility(\n\t\t\t\t\t\t\tannouncement\n\t\t\t\t\t\t),\n\t\t\t\t\tisIOS ? VOICE_OVER_ANNOUNCEMENT_DELAY : 0\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\t}\n\n\t/**\n\t * Render callback to display Dropdown toggle element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onToggle Callback to invoke when toggle is\n\t * pressed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {Element} Dropdown toggle element.\n\t */\n\trenderInserterToggle( { onToggle, isOpen } ) {\n\t\tconst {\n\t\t\tdisabled,\n\t\t\trenderToggle = defaultRenderToggle,\n\t\t\tgetStylesFromColorScheme,\n\t\t\tshowSeparator,\n\t\t} = this.props;\n\t\tif ( showSeparator && isOpen ) {\n\t\t\treturn <BlockInsertionPoint />;\n\t\t}\n\n\t\tconst buttonStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'inserter-menu__add-block-button' ],\n\t\t\tstyles[ 'inserter-menu__add-block-button--dark' ]\n\t\t);\n\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'inserter-menu__add-block-button-icon' ],\n\t\t\tstyles[ 'inserter-menu__add-block-button-icon--dark' ]\n\t\t);\n\n\t\tconst onPress = () => {\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\tdestinationRootClientId: this.props.destinationRootClientId,\n\t\t\t\t\tshouldReplaceBlock: this.shouldReplaceBlock( 'default' ),\n\t\t\t\t\tinsertionIndex: this.getInsertionIndex( 'default' ),\n\t\t\t\t},\n\t\t\t\tonToggle\n\t\t\t);\n\t\t};\n\n\t\tconst onLongPress = () => {\n\t\t\tif ( this.picker ) {\n\t\t\t\tthis.picker.presentPicker();\n\t\t\t}\n\t\t};\n\n\t\tconst onPickerSelect = ( insertionType ) => {\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\tdestinationRootClientId: this.props.destinationRootClientId,\n\t\t\t\t\tshouldReplaceBlock:\n\t\t\t\t\t\tthis.shouldReplaceBlock( insertionType ),\n\t\t\t\t\tinsertionIndex: this.getInsertionIndex( insertionType ),\n\t\t\t\t},\n\t\t\t\tonToggle\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ renderToggle( {\n\t\t\t\t\tonToggle: onPress,\n\t\t\t\t\tisOpen,\n\t\t\t\t\tdisabled,\n\t\t\t\t\ticonStyle,\n\t\t\t\t\tbuttonStyle,\n\t\t\t\t\tonLongPress,\n\t\t\t\t} ) }\n\t\t\t\t<Picker\n\t\t\t\t\tref={ ( instance ) => ( this.picker = instance ) }\n\t\t\t\t\toptions={ this.getInsertionOptions() }\n\t\t\t\t\tonChange={ onPickerSelect }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t}\n\n\t/**\n\t * Render callback to display Dropdown content element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onClose Callback to invoke when dropdown is\n\t * closed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {Element} Dropdown content element.\n\t */\n\trenderContent( { onClose, isOpen } ) {\n\t\tconst { clientId, isAppender } = this.props;\n\t\tconst { destinationRootClientId, shouldReplaceBlock, insertionIndex } =\n\t\t\tthis.state;\n\t\treturn (\n\t\t\t<InserterMenu\n\t\t\t\tisOpen={ isOpen }\n\t\t\t\tonSelect={ onClose }\n\t\t\t\tonDismiss={ onClose }\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisAppender={ isAppender }\n\t\t\t\tshouldReplaceBlock={ shouldReplaceBlock }\n\t\t\t\tinsertionIndex={ insertionIndex }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Dropdown\n\t\t\t\tonToggle={ this.onToggle }\n\t\t\t\theaderTitle={ __( 'Add a block' ) }\n\t\t\t\trenderToggle={ this.renderInserterToggle }\n\t\t\t\trenderContent={ this.renderContent }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithDispatch( ( dispatch ) => {\n\t\tconst { updateSettings } = dispatch( blockEditorStore );\n\t\treturn { updateSettings };\n\t} ),\n\twithSelect( ( select, { clientId, isAppender, rootClientId } ) => {\n\t\tconst {\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockSelectionEnd,\n\t\t\tgetBlockOrder,\n\t\t\tgetBlockIndex,\n\t\t\tgetBlock,\n\t\t\tgetSettings: getBlockEditorSettings,\n\t\t} = select( blockEditorStore );\n\n\t\tconst end = getBlockSelectionEnd();\n\t\t// `end` argument (id) can refer to the component which is removed\n\t\t// due to pressing `undo` button, that's why we need to check\n\t\t// if `getBlock( end) is valid, otherwise `null` is passed\n\t\tconst isAnyBlockSelected = ! isAppender && end && getBlock( end );\n\t\tconst destinationRootClientId = isAnyBlockSelected\n\t\t\t? getBlockRootClientId( end )\n\t\t\t: rootClientId;\n\t\tconst selectedBlockIndex = getBlockIndex( end );\n\t\tconst endOfRootIndex = getBlockOrder( rootClientId ).length;\n\t\tconst isSelectedUnmodifiedDefaultBlock = isAnyBlockSelected\n\t\t\t? isUnmodifiedDefaultBlock( getBlock( end ) )\n\t\t\t: undefined;\n\n\t\tfunction getDefaultInsertionIndex() {\n\t\t\tconst { __experimentalShouldInsertAtTheTop: shouldInsertAtTheTop } =\n\t\t\t\tgetBlockEditorSettings();\n\n\t\t\t// If post title is selected insert as first block.\n\t\t\tif ( shouldInsertAtTheTop ) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\t// If the clientId is defined, we insert at the position of the block.\n\t\t\tif ( clientId ) {\n\t\t\t\treturn getBlockIndex( clientId );\n\t\t\t}\n\n\t\t\t// If there is a selected block,\n\t\t\tif ( isAnyBlockSelected ) {\n\t\t\t\t// And the last selected block is unmodified (empty), it will be replaced.\n\t\t\t\tif ( isSelectedUnmodifiedDefaultBlock ) {\n\t\t\t\t\treturn selectedBlockIndex;\n\t\t\t\t}\n\n\t\t\t\t// We insert after the selected block.\n\t\t\t\treturn selectedBlockIndex + 1;\n\t\t\t}\n\n\t\t\t// Otherwise, we insert at the end of the current rootClientId.\n\t\t\treturn endOfRootIndex;\n\t\t}\n\n\t\tconst insertionIndexStart = 0;\n\n\t\tconst insertionIndexBefore = isAnyBlockSelected\n\t\t\t? selectedBlockIndex\n\t\t\t: insertionIndexStart;\n\n\t\tconst insertionIndexAfter = isAnyBlockSelected\n\t\t\t? selectedBlockIndex + 1\n\t\t\t: endOfRootIndex;\n\n\t\tconst insertionIndexEnd = endOfRootIndex;\n\n\t\treturn {\n\t\t\tblockTypeImpressions: getBlockEditorSettings().impressions,\n\t\t\tdestinationRootClientId,\n\t\t\tinsertionIndexDefault: getDefaultInsertionIndex(),\n\t\t\tinsertionIndexBefore,\n\t\t\tinsertionIndexAfter,\n\t\t\tinsertionIndexStart,\n\t\t\tinsertionIndexEnd,\n\t\t\tisAnyBlockSelected: !! isAnyBlockSelected,\n\t\t\tisSelectedBlockReplaceable: isSelectedUnmodifiedDefaultBlock,\n\t\t};\n\t} ),\n\n\twithPreferredColorScheme,\n] )( Inserter );\n"],"mappings":"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"}
@@ -5,8 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
- var _element = require("@wordpress/element");
8
+ var _react = require("react");
9
9
  var _data = require("@wordpress/data");
10
+ var _element = require("@wordpress/element");
10
11
  var _menu = _interopRequireDefault(require("./menu"));
11
12
  var _store = require("../../store");
12
13
  /**
@@ -43,7 +44,7 @@ function InserterLibrary({
43
44
  prioritizePatterns: getSettings().__experimentalPreferPatternsOnRoot && !_rootClientId
44
45
  };
45
46
  }, [clientId, rootClientId]);
46
- return (0, _element.createElement)(_menu.default, {
47
+ return (0, _react.createElement)(_menu.default, {
47
48
  onSelect: onSelect,
48
49
  rootClientId: destinationRootClientId,
49
50
  clientId: clientId,
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_data","_menu","_interopRequireDefault","_store","noop","InserterLibrary","rootClientId","clientId","isAppender","showInserterHelpPanel","showMostUsedBlocks","__experimentalInsertionIndex","__experimentalFilterValue","onSelect","shouldFocusBlock","ref","destinationRootClientId","prioritizePatterns","useSelect","select","getBlockRootClientId","getSettings","blockEditorStore","_rootClientId","undefined","__experimentalPreferPatternsOnRoot","createElement","default","_default","forwardRef","exports"],"sources":["@wordpress/block-editor/src/components/inserter/library.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport InserterMenu from './menu';\nimport { store as blockEditorStore } from '../../store';\n\nconst noop = () => {};\n\nfunction InserterLibrary(\n\t{\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\tshowInserterHelpPanel,\n\t\tshowMostUsedBlocks = false,\n\t\t__experimentalInsertionIndex,\n\t\t__experimentalFilterValue,\n\t\tonSelect = noop,\n\t\tshouldFocusBlock = false,\n\t},\n\tref\n) {\n\tconst { destinationRootClientId, prioritizePatterns } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, getSettings } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\tconst _rootClientId =\n\t\t\t\trootClientId || getBlockRootClientId( clientId ) || undefined;\n\t\t\treturn {\n\t\t\t\tdestinationRootClientId: _rootClientId,\n\t\t\t\tprioritizePatterns:\n\t\t\t\t\tgetSettings().__experimentalPreferPatternsOnRoot &&\n\t\t\t\t\t! _rootClientId,\n\t\t\t};\n\t\t},\n\t\t[ clientId, rootClientId ]\n\t);\n\n\treturn (\n\t\t<InserterMenu\n\t\t\tonSelect={ onSelect }\n\t\t\trootClientId={ destinationRootClientId }\n\t\t\tclientId={ clientId }\n\t\t\tisAppender={ isAppender }\n\t\t\tshowInserterHelpPanel={ showInserterHelpPanel }\n\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t__experimentalInsertionIndex={ __experimentalInsertionIndex }\n\t\t\t__experimentalFilterValue={ __experimentalFilterValue }\n\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\tprioritizePatterns={ prioritizePatterns }\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( InserterLibrary );\n"],"mappings":";;;;;;;AAIA,IAAAA,QAAA,GAAAC,OAAA;AADA,IAAAC,KAAA,GAAAD,OAAA;AAMA,IAAAE,KAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AAVA;AACA;AACA;;AAIA;AACA;AACA;;AAIA,MAAMK,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;AAErB,SAASC,eAAeA,CACvB;EACCC,YAAY;EACZC,QAAQ;EACRC,UAAU;EACVC,qBAAqB;EACrBC,kBAAkB,GAAG,KAAK;EAC1BC,4BAA4B;EAC5BC,yBAAyB;EACzBC,QAAQ,GAAGT,IAAI;EACfU,gBAAgB,GAAG;AACpB,CAAC,EACDC,GAAG,EACF;EACD,MAAM;IAAEC,uBAAuB;IAAEC;EAAmB,CAAC,GAAG,IAAAC,eAAS,EAC9DC,MAAM,IAAM;IACb,MAAM;MAAEC,oBAAoB;MAAEC;IAAY,CAAC,GAC1CF,MAAM,CAAEG,YAAiB,CAAC;IAE3B,MAAMC,aAAa,GAClBjB,YAAY,IAAIc,oBAAoB,CAAEb,QAAS,CAAC,IAAIiB,SAAS;IAC9D,OAAO;MACNR,uBAAuB,EAAEO,aAAa;MACtCN,kBAAkB,EACjBI,WAAW,CAAC,CAAC,CAACI,kCAAkC,IAChD,CAAEF;IACJ,CAAC;EACF,CAAC,EACD,CAAEhB,QAAQ,EAAED,YAAY,CACzB,CAAC;EAED,OACC,IAAAR,QAAA,CAAA4B,aAAA,EAACzB,KAAA,CAAA0B,OAAY;IACZd,QAAQ,EAAGA,QAAU;IACrBP,YAAY,EAAGU,uBAAyB;IACxCT,QAAQ,EAAGA,QAAU;IACrBC,UAAU,EAAGA,UAAY;IACzBC,qBAAqB,EAAGA,qBAAuB;IAC/CC,kBAAkB,EAAGA,kBAAoB;IACzCC,4BAA4B,EAAGA,4BAA8B;IAC7DC,yBAAyB,EAAGA,yBAA2B;IACvDE,gBAAgB,EAAGA,gBAAkB;IACrCG,kBAAkB,EAAGA,kBAAoB;IACzCF,GAAG,EAAGA;EAAK,CACX,CAAC;AAEJ;AAAC,IAAAa,QAAA,GAEc,IAAAC,mBAAU,EAAExB,eAAgB,CAAC;AAAAyB,OAAA,CAAAH,OAAA,GAAAC,QAAA"}
1
+ {"version":3,"names":["_data","require","_element","_menu","_interopRequireDefault","_store","noop","InserterLibrary","rootClientId","clientId","isAppender","showInserterHelpPanel","showMostUsedBlocks","__experimentalInsertionIndex","__experimentalFilterValue","onSelect","shouldFocusBlock","ref","destinationRootClientId","prioritizePatterns","useSelect","select","getBlockRootClientId","getSettings","blockEditorStore","_rootClientId","undefined","__experimentalPreferPatternsOnRoot","_react","createElement","default","_default","forwardRef","exports"],"sources":["@wordpress/block-editor/src/components/inserter/library.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport InserterMenu from './menu';\nimport { store as blockEditorStore } from '../../store';\n\nconst noop = () => {};\n\nfunction InserterLibrary(\n\t{\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\tshowInserterHelpPanel,\n\t\tshowMostUsedBlocks = false,\n\t\t__experimentalInsertionIndex,\n\t\t__experimentalFilterValue,\n\t\tonSelect = noop,\n\t\tshouldFocusBlock = false,\n\t},\n\tref\n) {\n\tconst { destinationRootClientId, prioritizePatterns } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, getSettings } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\tconst _rootClientId =\n\t\t\t\trootClientId || getBlockRootClientId( clientId ) || undefined;\n\t\t\treturn {\n\t\t\t\tdestinationRootClientId: _rootClientId,\n\t\t\t\tprioritizePatterns:\n\t\t\t\t\tgetSettings().__experimentalPreferPatternsOnRoot &&\n\t\t\t\t\t! _rootClientId,\n\t\t\t};\n\t\t},\n\t\t[ clientId, rootClientId ]\n\t);\n\n\treturn (\n\t\t<InserterMenu\n\t\t\tonSelect={ onSelect }\n\t\t\trootClientId={ destinationRootClientId }\n\t\t\tclientId={ clientId }\n\t\t\tisAppender={ isAppender }\n\t\t\tshowInserterHelpPanel={ showInserterHelpPanel }\n\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t__experimentalInsertionIndex={ __experimentalInsertionIndex }\n\t\t\t__experimentalFilterValue={ __experimentalFilterValue }\n\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\tprioritizePatterns={ prioritizePatterns }\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( InserterLibrary );\n"],"mappings":";;;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAKA,IAAAE,KAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AAVA;AACA;AACA;;AAIA;AACA;AACA;;AAIA,MAAMK,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;AAErB,SAASC,eAAeA,CACvB;EACCC,YAAY;EACZC,QAAQ;EACRC,UAAU;EACVC,qBAAqB;EACrBC,kBAAkB,GAAG,KAAK;EAC1BC,4BAA4B;EAC5BC,yBAAyB;EACzBC,QAAQ,GAAGT,IAAI;EACfU,gBAAgB,GAAG;AACpB,CAAC,EACDC,GAAG,EACF;EACD,MAAM;IAAEC,uBAAuB;IAAEC;EAAmB,CAAC,GAAG,IAAAC,eAAS,EAC9DC,MAAM,IAAM;IACb,MAAM;MAAEC,oBAAoB;MAAEC;IAAY,CAAC,GAC1CF,MAAM,CAAEG,YAAiB,CAAC;IAE3B,MAAMC,aAAa,GAClBjB,YAAY,IAAIc,oBAAoB,CAAEb,QAAS,CAAC,IAAIiB,SAAS;IAC9D,OAAO;MACNR,uBAAuB,EAAEO,aAAa;MACtCN,kBAAkB,EACjBI,WAAW,CAAC,CAAC,CAACI,kCAAkC,IAChD,CAAEF;IACJ,CAAC;EACF,CAAC,EACD,CAAEhB,QAAQ,EAAED,YAAY,CACzB,CAAC;EAED,OACC,IAAAoB,MAAA,CAAAC,aAAA,EAAC1B,KAAA,CAAA2B,OAAY;IACZf,QAAQ,EAAGA,QAAU;IACrBP,YAAY,EAAGU,uBAAyB;IACxCT,QAAQ,EAAGA,QAAU;IACrBC,UAAU,EAAGA,UAAY;IACzBC,qBAAqB,EAAGA,qBAAuB;IAC/CC,kBAAkB,EAAGA,kBAAoB;IACzCC,4BAA4B,EAAGA,4BAA8B;IAC7DC,yBAAyB,EAAGA,yBAA2B;IACvDE,gBAAgB,EAAGA,gBAAkB;IACrCG,kBAAkB,EAAGA,kBAAoB;IACzCF,GAAG,EAAGA;EAAK,CACX,CAAC;AAEJ;AAAC,IAAAc,QAAA,GAEc,IAAAC,mBAAU,EAAEzB,eAAgB,CAAC;AAAA0B,OAAA,CAAAH,OAAA,GAAAC,QAAA"}