@wordpress/block-editor 14.4.0 → 14.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1056) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +4 -8
  3. package/build/autocompleters/block.js +13 -5
  4. package/build/autocompleters/block.js.map +1 -1
  5. package/build/components/background-image-control/index.js +1 -1
  6. package/build/components/background-image-control/index.js.map +1 -1
  7. package/build/components/block-canvas/index.js +10 -0
  8. package/build/components/block-canvas/index.js.map +1 -1
  9. package/build/components/block-card/index.js +2 -2
  10. package/build/components/block-card/index.js.map +1 -1
  11. package/build/components/block-controls/slot.js.map +1 -1
  12. package/build/components/block-controls/slot.native.js.map +1 -1
  13. package/build/components/block-draggable/draggable-chip.js +1 -1
  14. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  15. package/build/components/block-full-height-alignment-control/index.js +1 -1
  16. package/build/components/block-full-height-alignment-control/index.js.map +1 -1
  17. package/build/components/block-list/block-invalid-warning.native.js +1 -1
  18. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  19. package/build/components/block-list/block-list-item.native.js.map +1 -1
  20. package/build/components/block-list/block.js +1 -1
  21. package/build/components/block-list/block.js.map +1 -1
  22. package/build/components/block-list/block.native.js +1 -7
  23. package/build/components/block-list/block.native.js.map +1 -1
  24. package/build/components/block-list/index.js +6 -5
  25. package/build/components/block-list/index.js.map +1 -1
  26. package/build/components/block-list/index.native.js.map +1 -1
  27. package/build/components/block-list/use-block-props/index.js +1 -2
  28. package/build/components/block-list/use-block-props/index.js.map +1 -1
  29. package/build/components/block-list/use-block-props/use-focus-first-element.js +4 -3
  30. package/build/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  31. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js +11 -6
  32. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  33. package/build/components/block-list/use-in-between-inserter.js +1 -1
  34. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  35. package/build/components/block-list/zoom-out-separator.js +10 -7
  36. package/build/components/block-list/zoom-out-separator.js.map +1 -1
  37. package/build/components/block-lock/modal.js +1 -1
  38. package/build/components/block-lock/modal.js.map +1 -1
  39. package/build/components/block-mover/button.js.map +1 -1
  40. package/build/components/block-parent-selector/index.js +1 -1
  41. package/build/components/block-parent-selector/index.js.map +1 -1
  42. package/build/components/block-pattern-setup/index.js.map +1 -1
  43. package/build/components/block-patterns-list/index.js.map +1 -1
  44. package/build/components/block-patterns-paging/index.js +1 -1
  45. package/build/components/block-patterns-paging/index.js.map +1 -1
  46. package/build/components/block-popover/index.js +1 -1
  47. package/build/components/block-popover/index.js.map +1 -1
  48. package/build/components/block-preview/auto.js +1 -4
  49. package/build/components/block-preview/auto.js.map +1 -1
  50. package/build/components/block-preview/index.js +2 -2
  51. package/build/components/block-preview/index.js.map +1 -1
  52. package/build/components/block-rename/modal.js +2 -2
  53. package/build/components/block-rename/modal.js.map +1 -1
  54. package/build/components/block-settings-menu/block-parent-selector-menu-item.js +1 -1
  55. package/build/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
  56. package/build/components/block-settings-menu/block-settings-dropdown.js +5 -0
  57. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  58. package/build/components/block-settings-menu/index.js +4 -3
  59. package/build/components/block-settings-menu/index.js.map +1 -1
  60. package/build/components/block-switcher/block-transformations-menu.native.js +1 -1
  61. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  62. package/build/components/block-switcher/index.js +2 -1
  63. package/build/components/block-switcher/index.js.map +1 -1
  64. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  65. package/build/components/block-switcher/use-transformed-patterns.js +1 -0
  66. package/build/components/block-switcher/use-transformed-patterns.js.map +1 -1
  67. package/build/components/block-switcher/utils.js +1 -0
  68. package/build/components/block-switcher/utils.js.map +1 -1
  69. package/build/components/block-toolbar/change-design.js +122 -0
  70. package/build/components/block-toolbar/change-design.js.map +1 -0
  71. package/build/components/block-toolbar/index.js +19 -7
  72. package/build/components/block-toolbar/index.js.map +1 -1
  73. package/build/components/block-tools/index.js +4 -17
  74. package/build/components/block-tools/index.js.map +1 -1
  75. package/build/components/block-tools/insertion-point.js +4 -3
  76. package/build/components/block-tools/insertion-point.js.map +1 -1
  77. package/build/components/block-tools/use-show-block-tools.js +4 -6
  78. package/build/components/block-tools/use-show-block-tools.js.map +1 -1
  79. package/build/components/block-tools/zoom-out-mode-inserters.js +20 -29
  80. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  81. package/build/components/block-types-list/index.js.map +1 -1
  82. package/build/components/block-types-list/index.native.js.map +1 -1
  83. package/build/components/block-variation-transforms/index.js +3 -2
  84. package/build/components/block-variation-transforms/index.js.map +1 -1
  85. package/build/components/block-vertical-alignment-control/ui.js +6 -10
  86. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  87. package/build/components/border-radius-control/index.js.map +1 -1
  88. package/build/components/border-radius-control/linked-button.js +7 -10
  89. package/build/components/border-radius-control/linked-button.js.map +1 -1
  90. package/build/components/border-radius-control/utils.js.map +1 -1
  91. package/build/components/button-block-appender/index.js.map +1 -1
  92. package/build/components/collab/block-comment-icon-slot.js +18 -0
  93. package/build/components/collab/block-comment-icon-slot.js.map +1 -0
  94. package/build/components/collab/block-comment-icon-toolbar-slot.js +18 -0
  95. package/build/components/collab/block-comment-icon-toolbar-slot.js.map +1 -0
  96. package/build/components/color-style-selector/index.js.map +1 -1
  97. package/build/components/colors/utils.js.map +1 -1
  98. package/build/components/colors/with-colors.js.map +1 -1
  99. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  100. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +7 -1
  101. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  102. package/build/components/convert-to-group-buttons/toolbar.js +4 -4
  103. package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
  104. package/build/components/date-format-picker/index.js +1 -0
  105. package/build/components/date-format-picker/index.js.map +1 -1
  106. package/build/components/duotone/utils.js.map +1 -1
  107. package/build/components/duotone-control/index.js.map +1 -1
  108. package/build/components/font-sizes/fluid-utils.js.map +1 -1
  109. package/build/components/font-sizes/utils.js.map +1 -1
  110. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  111. package/build/components/global-styles/border-panel.js.map +1 -1
  112. package/build/components/global-styles/color-panel.js +1 -4
  113. package/build/components/global-styles/color-panel.js.map +1 -1
  114. package/build/components/global-styles/filters-panel.js.map +1 -1
  115. package/build/components/global-styles/get-block-css-selector.js.map +1 -1
  116. package/build/components/global-styles/get-global-styles-changes.js +2 -1
  117. package/build/components/global-styles/get-global-styles-changes.js.map +1 -1
  118. package/build/components/global-styles/hooks.js.map +1 -1
  119. package/build/components/global-styles/typography-panel.js.map +1 -1
  120. package/build/components/global-styles/use-global-styles-context.native.js +6 -0
  121. package/build/components/global-styles/use-global-styles-context.native.js.map +1 -1
  122. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  123. package/build/components/global-styles/utils.js.map +1 -1
  124. package/build/components/gradients/use-gradient.js.map +1 -1
  125. package/build/components/grid/grid-item-movers.js.map +1 -1
  126. package/build/components/grid/grid-visualizer.js.map +1 -1
  127. package/build/components/iframe/index.js +46 -11
  128. package/build/components/iframe/index.js.map +1 -1
  129. package/build/components/image-editor/use-save-image.js +1 -1
  130. package/build/components/image-editor/use-save-image.js.map +1 -1
  131. package/build/components/image-size-control/index.js +61 -20
  132. package/build/components/image-size-control/index.js.map +1 -1
  133. package/build/components/inner-blocks/index.js +9 -5
  134. package/build/components/inner-blocks/index.js.map +1 -1
  135. package/build/components/inner-blocks/use-nested-settings-update.js +15 -8
  136. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  137. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +1 -1
  138. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  139. package/build/components/inserter/block-patterns-explorer/pattern-list.js +2 -2
  140. package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  141. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +2 -2
  142. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  143. package/build/components/inserter/block-patterns-tab/patterns-filter.js +1 -1
  144. package/build/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  145. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js +1 -1
  146. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  147. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  148. package/build/components/inserter/category-tabs/index.js +16 -12
  149. package/build/components/inserter/category-tabs/index.js.map +1 -1
  150. package/build/components/inserter/hooks/use-block-types-state.js +1 -1
  151. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  152. package/build/components/inserter/hooks/use-patterns-state.js +1 -1
  153. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  154. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  155. package/build/components/inserter/media-tab/media-preview.js +1 -1
  156. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  157. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  158. package/build/components/inserter/media-tab/utils.js.map +1 -1
  159. package/build/components/inserter/menu.js +8 -3
  160. package/build/components/inserter/menu.js.map +1 -1
  161. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  162. package/build/components/inserter/preview-panel.js.map +1 -1
  163. package/build/components/inserter/quick-inserter.js +1 -1
  164. package/build/components/inserter/quick-inserter.js.map +1 -1
  165. package/build/components/inserter/search-results.js +1 -1
  166. package/build/components/inserter/search-results.js.map +1 -1
  167. package/build/components/inserter/tabs.native.js.map +1 -1
  168. package/build/components/inserter-button/index.native.js +1 -1
  169. package/build/components/inserter-button/index.native.js.map +1 -1
  170. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  171. package/build/components/inspector-controls/fill.js.map +1 -1
  172. package/build/components/inspector-controls/fill.native.js.map +1 -1
  173. package/build/components/inspector-controls/slot.js.map +1 -1
  174. package/build/components/inspector-controls/slot.native.js.map +1 -1
  175. package/build/components/inspector-controls-tabs/index.js +0 -2
  176. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  177. package/build/components/inspector-controls-tabs/utils.js +3 -6
  178. package/build/components/inspector-controls-tabs/utils.js.map +1 -1
  179. package/build/components/line-height-control/index.js.map +1 -1
  180. package/build/components/link-control/is-url-like.js.map +1 -1
  181. package/build/components/link-control/link-preview.js +12 -9
  182. package/build/components/link-control/link-preview.js.map +1 -1
  183. package/build/components/link-control/search-create-button.js +1 -1
  184. package/build/components/link-control/search-create-button.js.map +1 -1
  185. package/build/components/link-control/search-input.js +3 -5
  186. package/build/components/link-control/search-input.js.map +1 -1
  187. package/build/components/link-control/search-results.js +5 -15
  188. package/build/components/link-control/search-results.js.map +1 -1
  189. package/build/components/link-control/settings-drawer.js.map +1 -1
  190. package/build/components/link-control/use-rich-url-data.js.map +1 -1
  191. package/build/components/list-view/appender.js +5 -4
  192. package/build/components/list-view/appender.js.map +1 -1
  193. package/build/components/list-view/block-select-button.js.map +1 -1
  194. package/build/components/list-view/block.js.map +1 -1
  195. package/build/components/list-view/branch.js +6 -5
  196. package/build/components/list-view/branch.js.map +1 -1
  197. package/build/components/list-view/drop-indicator.js.map +1 -1
  198. package/build/components/list-view/index.js +1 -2
  199. package/build/components/list-view/index.js.map +1 -1
  200. package/build/components/list-view/use-block-selection.js +2 -2
  201. package/build/components/list-view/use-block-selection.js.map +1 -1
  202. package/build/components/list-view/utils.js +1 -1
  203. package/build/components/list-view/utils.js.map +1 -1
  204. package/build/components/media-placeholder/index.native.js +1 -1
  205. package/build/components/media-placeholder/index.native.js.map +1 -1
  206. package/build/components/media-replace-flow/index.js.map +1 -1
  207. package/build/components/multi-selection-inspector/index.js +2 -2
  208. package/build/components/multi-selection-inspector/index.js.map +1 -1
  209. package/build/components/observe-typing/index.js +1 -0
  210. package/build/components/observe-typing/index.js.map +1 -1
  211. package/build/components/provider/index.js +1 -1
  212. package/build/components/provider/index.js.map +1 -1
  213. package/build/components/recursion-provider/index.js +1 -0
  214. package/build/components/recursion-provider/index.js.map +1 -1
  215. package/build/components/responsive-block-control/index.js +3 -3
  216. package/build/components/responsive-block-control/index.js.map +1 -1
  217. package/build/components/responsive-block-control/label.js +1 -1
  218. package/build/components/responsive-block-control/label.js.map +1 -1
  219. package/build/components/rich-text/content.js.map +1 -1
  220. package/build/components/rich-text/event-listeners/index.js +3 -1
  221. package/build/components/rich-text/event-listeners/index.js.map +1 -1
  222. package/build/components/rich-text/file-paste-handler.native.js.map +1 -1
  223. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  224. package/build/components/rich-text/format-toolbar/index.native.js.map +1 -1
  225. package/build/components/rich-text/index.js +3 -2
  226. package/build/components/rich-text/index.js.map +1 -1
  227. package/build/components/rich-text/index.native.js +2 -6
  228. package/build/components/rich-text/index.native.js.map +1 -1
  229. package/build/components/rich-text/multiline.js.map +1 -1
  230. package/build/components/rich-text/native/get-format-colors.native.js.map +1 -1
  231. package/build/components/rich-text/native/index.native.js.map +1 -1
  232. package/build/components/rich-text/native/use-format-types.js +1 -0
  233. package/build/components/rich-text/native/use-format-types.js.map +1 -1
  234. package/build/components/rich-text/toolbar-button.js.map +1 -1
  235. package/build/components/rich-text/use-format-types.js +1 -0
  236. package/build/components/rich-text/use-format-types.js.map +1 -1
  237. package/build/components/spacing-sizes-control/index.js +2 -2
  238. package/build/components/spacing-sizes-control/index.js.map +1 -1
  239. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  240. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  241. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +3 -3
  242. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  243. package/build/components/spacing-sizes-control/linked-button.js +1 -5
  244. package/build/components/spacing-sizes-control/linked-button.js.map +1 -1
  245. package/build/components/spacing-sizes-control/utils.js +1 -0
  246. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  247. package/build/components/tool-selector/index.js +8 -5
  248. package/build/components/tool-selector/index.js.map +1 -1
  249. package/build/components/typewriter/index.js +1 -0
  250. package/build/components/typewriter/index.js.map +1 -1
  251. package/build/components/unsupported-block-details/index.native.js.map +1 -1
  252. package/build/components/url-input/index.js +1 -1
  253. package/build/components/url-input/index.js.map +1 -1
  254. package/build/components/use-block-commands/index.js +1 -1
  255. package/build/components/use-block-commands/index.js.map +1 -1
  256. package/build/components/use-block-drop-zone/index.js +5 -5
  257. package/build/components/use-block-drop-zone/index.js.map +1 -1
  258. package/build/components/use-block-drop-zone/index.native.js +0 -1
  259. package/build/components/use-block-drop-zone/index.native.js.map +1 -1
  260. package/build/components/use-flash-editable-blocks/index.js.map +1 -1
  261. package/build/components/use-moving-animation/index.js +1 -3
  262. package/build/components/use-moving-animation/index.js.map +1 -1
  263. package/build/components/use-resize-canvas/index.js +1 -2
  264. package/build/components/use-resize-canvas/index.js.map +1 -1
  265. package/build/components/use-settings/index.js +1 -3
  266. package/build/components/use-settings/index.js.map +1 -1
  267. package/build/components/writing-flow/index.js +5 -3
  268. package/build/components/writing-flow/index.js.map +1 -1
  269. package/build/components/writing-flow/use-tab-nav.js +20 -5
  270. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  271. package/build/hooks/align.js.map +1 -1
  272. package/build/hooks/block-bindings.js +19 -8
  273. package/build/hooks/block-bindings.js.map +1 -1
  274. package/build/hooks/block-hooks.js +1 -1
  275. package/build/hooks/block-hooks.js.map +1 -1
  276. package/build/hooks/block-style-variation.js.map +1 -1
  277. package/build/hooks/contrast-checker.js +0 -1
  278. package/build/hooks/contrast-checker.js.map +1 -1
  279. package/build/hooks/duotone.js +2 -2
  280. package/build/hooks/duotone.js.map +1 -1
  281. package/build/hooks/font-family.js.map +1 -1
  282. package/build/hooks/gap.js.map +1 -1
  283. package/build/hooks/generated-class-name.js +1 -0
  284. package/build/hooks/generated-class-name.js.map +1 -1
  285. package/build/hooks/grid-visualizer.js +13 -11
  286. package/build/hooks/grid-visualizer.js.map +1 -1
  287. package/build/hooks/layout-child.js +41 -3
  288. package/build/hooks/layout-child.js.map +1 -1
  289. package/build/hooks/layout.js.map +1 -1
  290. package/build/hooks/position.js +1 -1
  291. package/build/hooks/position.js.map +1 -1
  292. package/build/hooks/spacing-visualizer.js.map +1 -1
  293. package/build/hooks/style.js +4 -1
  294. package/build/hooks/style.js.map +1 -1
  295. package/build/hooks/text-align.js.map +1 -1
  296. package/build/hooks/use-typography-props.js.map +1 -1
  297. package/build/hooks/use-zoom-out.js +17 -18
  298. package/build/hooks/use-zoom-out.js.map +1 -1
  299. package/build/index.js +0 -7
  300. package/build/index.js.map +1 -1
  301. package/build/layouts/constrained.js.map +1 -1
  302. package/build/layouts/flex.js.map +1 -1
  303. package/build/layouts/grid.js.map +1 -1
  304. package/build/layouts/utils.js.map +1 -1
  305. package/build/private-apis.js +6 -1
  306. package/build/private-apis.js.map +1 -1
  307. package/build/store/actions.js +6 -38
  308. package/build/store/actions.js.map +1 -1
  309. package/build/store/defaults.js +1 -1
  310. package/build/store/defaults.js.map +1 -1
  311. package/build/store/private-actions.js +57 -8
  312. package/build/store/private-actions.js.map +1 -1
  313. package/build/store/private-selectors.js +9 -21
  314. package/build/store/private-selectors.js.map +1 -1
  315. package/build/store/reducer.js +18 -24
  316. package/build/store/reducer.js.map +1 -1
  317. package/build/store/selectors.js +66 -22
  318. package/build/store/selectors.js.map +1 -1
  319. package/build/utils/block-bindings.js +9 -6
  320. package/build/utils/block-bindings.js.map +1 -1
  321. package/build/utils/dom.js +16 -1
  322. package/build/utils/dom.js.map +1 -1
  323. package/build/utils/get-font-styles-and-weights.js +2 -2
  324. package/build/utils/get-font-styles-and-weights.js.map +1 -1
  325. package/build/utils/object.js +1 -0
  326. package/build/utils/object.js.map +1 -1
  327. package/build/utils/pasting.js.map +1 -1
  328. package/build/utils/transform-styles/index.js +4 -3
  329. package/build/utils/transform-styles/index.js.map +1 -1
  330. package/build-module/autocompleters/block.js +15 -9
  331. package/build-module/autocompleters/block.js.map +1 -1
  332. package/build-module/autocompleters/link.js +1 -3
  333. package/build-module/autocompleters/link.js.map +1 -1
  334. package/build-module/components/audio-player/index.native.js +1 -2
  335. package/build-module/components/audio-player/index.native.js.map +1 -1
  336. package/build-module/components/background-image-control/index.js +2 -3
  337. package/build-module/components/background-image-control/index.js.map +1 -1
  338. package/build-module/components/block-alignment-control/ui.js +1 -2
  339. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  340. package/build-module/components/block-breadcrumb/index.js +1 -2
  341. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  342. package/build-module/components/block-canvas/index.js +12 -3
  343. package/build-module/components/block-canvas/index.js.map +1 -1
  344. package/build-module/components/block-card/index.js +4 -5
  345. package/build-module/components/block-card/index.js.map +1 -1
  346. package/build-module/components/block-compare/block-view.js +1 -2
  347. package/build-module/components/block-compare/block-view.js.map +1 -1
  348. package/build-module/components/block-compare/index.js +1 -2
  349. package/build-module/components/block-compare/index.js.map +1 -1
  350. package/build-module/components/block-controls/fill.js +1 -3
  351. package/build-module/components/block-controls/fill.js.map +1 -1
  352. package/build-module/components/block-controls/slot.js.map +1 -1
  353. package/build-module/components/block-controls/slot.native.js.map +1 -1
  354. package/build-module/components/block-draggable/draggable-chip.js +2 -3
  355. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  356. package/build-module/components/block-draggable/draggable-chip.native.js +1 -2
  357. package/build-module/components/block-draggable/draggable-chip.native.js.map +1 -1
  358. package/build-module/components/block-draggable/index.native.js +1 -3
  359. package/build-module/components/block-draggable/index.native.js.map +1 -1
  360. package/build-module/components/block-edit/index.js +1 -2
  361. package/build-module/components/block-edit/index.js.map +1 -1
  362. package/build-module/components/block-edit/multiple-usage-warning.js +1 -2
  363. package/build-module/components/block-edit/multiple-usage-warning.js.map +1 -1
  364. package/build-module/components/block-full-height-alignment-control/index.js +1 -1
  365. package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
  366. package/build-module/components/block-inspector/index.js +1 -3
  367. package/build-module/components/block-inspector/index.js.map +1 -1
  368. package/build-module/components/block-list/block-crash-warning.js +1 -1
  369. package/build-module/components/block-list/block-crash-warning.js.map +1 -1
  370. package/build-module/components/block-list/block-crash-warning.native.js +1 -1
  371. package/build-module/components/block-list/block-crash-warning.native.js.map +1 -1
  372. package/build-module/components/block-list/block-invalid-warning.js +1 -3
  373. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  374. package/build-module/components/block-list/block-invalid-warning.native.js +1 -1
  375. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  376. package/build-module/components/block-list/block-list-item.native.js +1 -2
  377. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  378. package/build-module/components/block-list/block-selection-button.native.js +1 -2
  379. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  380. package/build-module/components/block-list/block.js +2 -4
  381. package/build-module/components/block-list/block.js.map +1 -1
  382. package/build-module/components/block-list/block.native.js +2 -9
  383. package/build-module/components/block-list/block.native.js.map +1 -1
  384. package/build-module/components/block-list/index.js +7 -7
  385. package/build-module/components/block-list/index.js.map +1 -1
  386. package/build-module/components/block-list/index.native.js +1 -3
  387. package/build-module/components/block-list/index.native.js.map +1 -1
  388. package/build-module/components/block-list/insertion-point.native.js +1 -2
  389. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  390. package/build-module/components/block-list/use-block-props/index.js +1 -2
  391. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  392. package/build-module/components/block-list/use-block-props/use-focus-first-element.js +4 -3
  393. package/build-module/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  394. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js +11 -6
  395. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  396. package/build-module/components/block-list/use-in-between-inserter.js +1 -1
  397. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  398. package/build-module/components/block-list/zoom-out-separator.js +10 -7
  399. package/build-module/components/block-list/zoom-out-separator.js.map +1 -1
  400. package/build-module/components/block-lock/menu-item.js +1 -3
  401. package/build-module/components/block-lock/menu-item.js.map +1 -1
  402. package/build-module/components/block-lock/modal.js +2 -3
  403. package/build-module/components/block-lock/modal.js.map +1 -1
  404. package/build-module/components/block-lock/toolbar.js +1 -3
  405. package/build-module/components/block-lock/toolbar.js.map +1 -1
  406. package/build-module/components/block-media-update-progress/index.native.js +1 -2
  407. package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
  408. package/build-module/components/block-mover/button.js +1 -3
  409. package/build-module/components/block-mover/button.js.map +1 -1
  410. package/build-module/components/block-mover/index.js +1 -2
  411. package/build-module/components/block-mover/index.js.map +1 -1
  412. package/build-module/components/block-mover/index.native.js +1 -2
  413. package/build-module/components/block-mover/index.native.js.map +1 -1
  414. package/build-module/components/block-navigation/dropdown.js +1 -2
  415. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  416. package/build-module/components/block-parent-selector/index.js +1 -1
  417. package/build-module/components/block-parent-selector/index.js.map +1 -1
  418. package/build-module/components/block-pattern-setup/index.js +1 -3
  419. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  420. package/build-module/components/block-pattern-setup/setup-toolbar.js +1 -2
  421. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  422. package/build-module/components/block-patterns-list/index.js +1 -3
  423. package/build-module/components/block-patterns-list/index.js.map +1 -1
  424. package/build-module/components/block-patterns-paging/index.js +2 -3
  425. package/build-module/components/block-patterns-paging/index.js.map +1 -1
  426. package/build-module/components/block-popover/index.js +1 -1
  427. package/build-module/components/block-popover/index.js.map +1 -1
  428. package/build-module/components/block-preview/auto.js +2 -7
  429. package/build-module/components/block-preview/auto.js.map +1 -1
  430. package/build-module/components/block-preview/index.js +3 -4
  431. package/build-module/components/block-preview/index.js.map +1 -1
  432. package/build-module/components/block-quick-navigation/index.js +1 -2
  433. package/build-module/components/block-quick-navigation/index.js.map +1 -1
  434. package/build-module/components/block-removal-warning-modal/index.js +1 -2
  435. package/build-module/components/block-removal-warning-modal/index.js.map +1 -1
  436. package/build-module/components/block-rename/modal.js +3 -4
  437. package/build-module/components/block-rename/modal.js.map +1 -1
  438. package/build-module/components/block-rename/rename-control.js +1 -3
  439. package/build-module/components/block-rename/rename-control.js.map +1 -1
  440. package/build-module/components/block-settings/container.native.js +1 -3
  441. package/build-module/components/block-settings/container.native.js.map +1 -1
  442. package/build-module/components/block-settings-menu/block-parent-selector-menu-item.js +1 -1
  443. package/build-module/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
  444. package/build-module/components/block-settings-menu/block-settings-dropdown.js +6 -3
  445. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  446. package/build-module/components/block-settings-menu/index.js +5 -4
  447. package/build-module/components/block-settings-menu/index.js.map +1 -1
  448. package/build-module/components/block-settings-menu-controls/index.js +1 -2
  449. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  450. package/build-module/components/block-styles/index.js +1 -2
  451. package/build-module/components/block-styles/index.js.map +1 -1
  452. package/build-module/components/block-styles/menu-items.js +1 -2
  453. package/build-module/components/block-styles/menu-items.js.map +1 -1
  454. package/build-module/components/block-styles/preview.native.js +1 -2
  455. package/build-module/components/block-styles/preview.native.js.map +1 -1
  456. package/build-module/components/block-switcher/block-transformations-menu.js +1 -3
  457. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  458. package/build-module/components/block-switcher/block-transformations-menu.native.js +1 -1
  459. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  460. package/build-module/components/block-switcher/block-variation-transformations.js +1 -3
  461. package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
  462. package/build-module/components/block-switcher/index.js +3 -4
  463. package/build-module/components/block-switcher/index.js.map +1 -1
  464. package/build-module/components/block-switcher/pattern-transformations-menu.js +1 -2
  465. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  466. package/build-module/components/block-switcher/preview-block-popover.js +1 -2
  467. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  468. package/build-module/components/block-switcher/use-transformed-patterns.js +1 -0
  469. package/build-module/components/block-switcher/use-transformed-patterns.js.map +1 -1
  470. package/build-module/components/block-switcher/utils.js +1 -0
  471. package/build-module/components/block-switcher/utils.js.map +1 -1
  472. package/build-module/components/block-toolbar/block-toolbar-menu.native.js +1 -2
  473. package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  474. package/build-module/components/block-toolbar/change-design.js +114 -0
  475. package/build-module/components/block-toolbar/change-design.js.map +1 -0
  476. package/build-module/components/block-toolbar/index.js +20 -10
  477. package/build-module/components/block-toolbar/index.js.map +1 -1
  478. package/build-module/components/block-toolbar/index.native.js +1 -3
  479. package/build-module/components/block-toolbar/index.native.js.map +1 -1
  480. package/build-module/components/block-tools/index.js +5 -19
  481. package/build-module/components/block-tools/index.js.map +1 -1
  482. package/build-module/components/block-tools/insertion-point.js +5 -5
  483. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  484. package/build-module/components/block-tools/use-show-block-tools.js +4 -6
  485. package/build-module/components/block-tools/use-show-block-tools.js.map +1 -1
  486. package/build-module/components/block-tools/zoom-out-mode-inserters.js +20 -29
  487. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  488. package/build-module/components/block-types-list/index.js +1 -2
  489. package/build-module/components/block-types-list/index.js.map +1 -1
  490. package/build-module/components/block-types-list/index.native.js +1 -2
  491. package/build-module/components/block-types-list/index.native.js.map +1 -1
  492. package/build-module/components/block-variation-picker/index.js +1 -2
  493. package/build-module/components/block-variation-picker/index.js.map +1 -1
  494. package/build-module/components/block-variation-picker/index.native.js +1 -2
  495. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  496. package/build-module/components/block-variation-transforms/index.js +4 -4
  497. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  498. package/build-module/components/block-vertical-alignment-control/ui.js +6 -10
  499. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  500. package/build-module/components/border-radius-control/index.js +1 -3
  501. package/build-module/components/border-radius-control/index.js.map +1 -1
  502. package/build-module/components/border-radius-control/linked-button.js +8 -11
  503. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  504. package/build-module/components/border-radius-control/utils.js.map +1 -1
  505. package/build-module/components/button-block-appender/index.js.map +1 -1
  506. package/build-module/components/button-block-appender/index.native.js +1 -2
  507. package/build-module/components/button-block-appender/index.native.js.map +1 -1
  508. package/build-module/components/child-layout-control/index.js +1 -3
  509. package/build-module/components/child-layout-control/index.js.map +1 -1
  510. package/build-module/components/collab/block-comment-icon-slot.js +11 -0
  511. package/build-module/components/collab/block-comment-icon-slot.js.map +1 -0
  512. package/build-module/components/collab/block-comment-icon-toolbar-slot.js +11 -0
  513. package/build-module/components/collab/block-comment-icon-toolbar-slot.js.map +1 -0
  514. package/build-module/components/color-style-selector/index.js.map +1 -1
  515. package/build-module/components/colors/utils.js.map +1 -1
  516. package/build-module/components/colors/with-colors.js.map +1 -1
  517. package/build-module/components/colors-gradients/control.js +1 -2
  518. package/build-module/components/colors-gradients/control.js.map +1 -1
  519. package/build-module/components/colors-gradients/dropdown.js +1 -3
  520. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  521. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +1 -3
  522. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  523. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +1 -3
  524. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  525. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +7 -1
  526. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  527. package/build-module/components/contrast-checker/index.native.js +1 -2
  528. package/build-module/components/contrast-checker/index.native.js.map +1 -1
  529. package/build-module/components/convert-to-group-buttons/index.js +1 -3
  530. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  531. package/build-module/components/convert-to-group-buttons/toolbar.js +5 -6
  532. package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
  533. package/build-module/components/date-format-picker/index.js +2 -2
  534. package/build-module/components/date-format-picker/index.js.map +1 -1
  535. package/build-module/components/default-block-appender/index.js +1 -2
  536. package/build-module/components/default-block-appender/index.js.map +1 -1
  537. package/build-module/components/dimensions-tool/index.js +1 -3
  538. package/build-module/components/dimensions-tool/index.js.map +1 -1
  539. package/build-module/components/dimensions-tool/width-height-tool.js +1 -3
  540. package/build-module/components/dimensions-tool/width-height-tool.js.map +1 -1
  541. package/build-module/components/duotone/utils.js.map +1 -1
  542. package/build-module/components/duotone-control/index.js +1 -2
  543. package/build-module/components/duotone-control/index.js.map +1 -1
  544. package/build-module/components/editor-styles/index.js +1 -3
  545. package/build-module/components/editor-styles/index.js.map +1 -1
  546. package/build-module/components/floating-toolbar/index.native.js +1 -2
  547. package/build-module/components/floating-toolbar/index.native.js.map +1 -1
  548. package/build-module/components/floating-toolbar/nav-up-icon.js +1 -2
  549. package/build-module/components/floating-toolbar/nav-up-icon.js.map +1 -1
  550. package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
  551. package/build-module/components/font-sizes/utils.js.map +1 -1
  552. package/build-module/components/font-sizes/with-font-sizes.js +2 -2
  553. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  554. package/build-module/components/global-styles/advanced-panel.js +1 -2
  555. package/build-module/components/global-styles/advanced-panel.js.map +1 -1
  556. package/build-module/components/global-styles/border-panel.js +1 -2
  557. package/build-module/components/global-styles/border-panel.js.map +1 -1
  558. package/build-module/components/global-styles/color-panel.js +3 -7
  559. package/build-module/components/global-styles/color-panel.js.map +1 -1
  560. package/build-module/components/global-styles/dimensions-panel.js +1 -2
  561. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  562. package/build-module/components/global-styles/filters-panel.js +1 -2
  563. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  564. package/build-module/components/global-styles/get-block-css-selector.js.map +1 -1
  565. package/build-module/components/global-styles/get-global-styles-changes.js +2 -1
  566. package/build-module/components/global-styles/get-global-styles-changes.js.map +1 -1
  567. package/build-module/components/global-styles/hooks.js.map +1 -1
  568. package/build-module/components/global-styles/image-settings-panel.js +1 -2
  569. package/build-module/components/global-styles/image-settings-panel.js.map +1 -1
  570. package/build-module/components/global-styles/shadow-panel-components.js +1 -2
  571. package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
  572. package/build-module/components/global-styles/typography-panel.js +1 -2
  573. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  574. package/build-module/components/global-styles/use-global-styles-context.native.js +6 -0
  575. package/build-module/components/global-styles/use-global-styles-context.native.js.map +1 -1
  576. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  577. package/build-module/components/global-styles/utils.js.map +1 -1
  578. package/build-module/components/gradients/use-gradient.js.map +1 -1
  579. package/build-module/components/grid/grid-item-movers.js +1 -3
  580. package/build-module/components/grid/grid-item-movers.js.map +1 -1
  581. package/build-module/components/grid/grid-visualizer.js.map +1 -1
  582. package/build-module/components/height-control/index.js +1 -2
  583. package/build-module/components/height-control/index.js.map +1 -1
  584. package/build-module/components/iframe/index.js +47 -14
  585. package/build-module/components/iframe/index.js.map +1 -1
  586. package/build-module/components/image-editor/aspect-ratio-dropdown.js +1 -3
  587. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  588. package/build-module/components/image-editor/cropper.js +1 -3
  589. package/build-module/components/image-editor/cropper.js.map +1 -1
  590. package/build-module/components/image-editor/form-controls.js +1 -3
  591. package/build-module/components/image-editor/form-controls.js.map +1 -1
  592. package/build-module/components/image-editor/index.js +1 -2
  593. package/build-module/components/image-editor/index.js.map +1 -1
  594. package/build-module/components/image-editor/use-save-image.js +1 -1
  595. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  596. package/build-module/components/image-link-destinations/index.native.js +1 -3
  597. package/build-module/components/image-link-destinations/index.native.js.map +1 -1
  598. package/build-module/components/image-size-control/index.js +63 -24
  599. package/build-module/components/image-size-control/index.js.map +1 -1
  600. package/build-module/components/inner-blocks/index.js +9 -5
  601. package/build-module/components/inner-blocks/index.js.map +1 -1
  602. package/build-module/components/inner-blocks/use-nested-settings-update.js +16 -9
  603. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  604. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js +1 -2
  605. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  606. package/build-module/components/inserter/block-patterns-explorer/index.js +1 -2
  607. package/build-module/components/inserter/block-patterns-explorer/index.js.map +1 -1
  608. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +2 -3
  609. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  610. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js +3 -5
  611. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  612. package/build-module/components/inserter/block-patterns-tab/index.js +1 -3
  613. package/build-module/components/inserter/block-patterns-tab/index.js.map +1 -1
  614. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +3 -5
  615. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  616. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js +2 -4
  617. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  618. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js +1 -1
  619. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  620. package/build-module/components/inserter/block-types-tab.js +1 -3
  621. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  622. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  623. package/build-module/components/inserter/category-tabs/index.js +18 -15
  624. package/build-module/components/inserter/category-tabs/index.js.map +1 -1
  625. package/build-module/components/inserter/hooks/use-block-types-state.js +1 -1
  626. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  627. package/build-module/components/inserter/hooks/use-patterns-state.js +1 -1
  628. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  629. package/build-module/components/inserter/index.native.js +1 -3
  630. package/build-module/components/inserter/index.native.js.map +1 -1
  631. package/build-module/components/inserter/media-tab/media-panel.js +1 -2
  632. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  633. package/build-module/components/inserter/media-tab/media-preview.js +2 -4
  634. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  635. package/build-module/components/inserter/media-tab/media-tab.js +1 -3
  636. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  637. package/build-module/components/inserter/media-tab/utils.js.map +1 -1
  638. package/build-module/components/inserter/menu.js +10 -7
  639. package/build-module/components/inserter/menu.js.map +1 -1
  640. package/build-module/components/inserter/menu.native.js +1 -3
  641. package/build-module/components/inserter/menu.native.js.map +1 -1
  642. package/build-module/components/inserter/mobile-tab-navigation.js +1 -2
  643. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  644. package/build-module/components/inserter/no-results.js +1 -2
  645. package/build-module/components/inserter/no-results.js.map +1 -1
  646. package/build-module/components/inserter/no-results.native.js +1 -2
  647. package/build-module/components/inserter/no-results.native.js.map +1 -1
  648. package/build-module/components/inserter/panel.js +1 -3
  649. package/build-module/components/inserter/panel.js.map +1 -1
  650. package/build-module/components/inserter/preview-panel.js +1 -2
  651. package/build-module/components/inserter/preview-panel.js.map +1 -1
  652. package/build-module/components/inserter/quick-inserter.js +2 -3
  653. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  654. package/build-module/components/inserter/search-results.js +2 -3
  655. package/build-module/components/inserter/search-results.js.map +1 -1
  656. package/build-module/components/inserter/tabs.native.js.map +1 -1
  657. package/build-module/components/inserter-button/index.native.js +2 -3
  658. package/build-module/components/inserter-button/index.native.js.map +1 -1
  659. package/build-module/components/inserter-list-item/index.js +1 -2
  660. package/build-module/components/inserter-list-item/index.js.map +1 -1
  661. package/build-module/components/inserter-listbox/index.js +1 -2
  662. package/build-module/components/inserter-listbox/index.js.map +1 -1
  663. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  664. package/build-module/components/inspector-controls/fill.js.map +1 -1
  665. package/build-module/components/inspector-controls/fill.native.js +1 -3
  666. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  667. package/build-module/components/inspector-controls/slot.js.map +1 -1
  668. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  669. package/build-module/components/inspector-controls-tabs/index.js +1 -4
  670. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  671. package/build-module/components/inspector-controls-tabs/settings-tab.js +1 -3
  672. package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  673. package/build-module/components/inspector-controls-tabs/styles-tab.js +1 -3
  674. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  675. package/build-module/components/inspector-controls-tabs/utils.js +3 -6
  676. package/build-module/components/inspector-controls-tabs/utils.js.map +1 -1
  677. package/build-module/components/inspector-popover-header/index.js +1 -2
  678. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  679. package/build-module/components/line-height-control/index.js.map +1 -1
  680. package/build-module/components/link-control/index.js +1 -3
  681. package/build-module/components/link-control/index.js.map +1 -1
  682. package/build-module/components/link-control/is-url-like.js.map +1 -1
  683. package/build-module/components/link-control/link-preview.js +14 -13
  684. package/build-module/components/link-control/link-preview.js.map +1 -1
  685. package/build-module/components/link-control/search-create-button.js +1 -1
  686. package/build-module/components/link-control/search-create-button.js.map +1 -1
  687. package/build-module/components/link-control/search-input.js +4 -7
  688. package/build-module/components/link-control/search-input.js.map +1 -1
  689. package/build-module/components/link-control/search-results.js +6 -17
  690. package/build-module/components/link-control/search-results.js.map +1 -1
  691. package/build-module/components/link-control/settings-drawer.js +1 -3
  692. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  693. package/build-module/components/link-control/settings.js +1 -2
  694. package/build-module/components/link-control/settings.js.map +1 -1
  695. package/build-module/components/link-control/use-rich-url-data.js.map +1 -1
  696. package/build-module/components/list-view/appender.js +6 -6
  697. package/build-module/components/list-view/appender.js.map +1 -1
  698. package/build-module/components/list-view/block-contents.js +1 -3
  699. package/build-module/components/list-view/block-contents.js.map +1 -1
  700. package/build-module/components/list-view/block-select-button.js +1 -2
  701. package/build-module/components/list-view/block-select-button.js.map +1 -1
  702. package/build-module/components/list-view/block.js +1 -3
  703. package/build-module/components/list-view/block.js.map +1 -1
  704. package/build-module/components/list-view/branch.js +8 -9
  705. package/build-module/components/list-view/branch.js.map +1 -1
  706. package/build-module/components/list-view/drop-indicator.js +1 -2
  707. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  708. package/build-module/components/list-view/index.js +2 -4
  709. package/build-module/components/list-view/index.js.map +1 -1
  710. package/build-module/components/list-view/use-block-selection.js +2 -2
  711. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  712. package/build-module/components/list-view/utils.js +1 -1
  713. package/build-module/components/list-view/utils.js.map +1 -1
  714. package/build-module/components/media-placeholder/index.js +1 -3
  715. package/build-module/components/media-placeholder/index.js.map +1 -1
  716. package/build-module/components/media-placeholder/index.native.js +2 -4
  717. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  718. package/build-module/components/media-replace-flow/index.js +1 -3
  719. package/build-module/components/media-replace-flow/index.js.map +1 -1
  720. package/build-module/components/media-upload/index.native.js +1 -3
  721. package/build-module/components/media-upload/index.native.js.map +1 -1
  722. package/build-module/components/media-upload-progress/index.native.js +1 -2
  723. package/build-module/components/media-upload-progress/index.native.js.map +1 -1
  724. package/build-module/components/multi-selection-inspector/index.js +3 -4
  725. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  726. package/build-module/components/observe-typing/index.js +1 -0
  727. package/build-module/components/observe-typing/index.js.map +1 -1
  728. package/build-module/components/provider/index.js +2 -3
  729. package/build-module/components/provider/index.js.map +1 -1
  730. package/build-module/components/publish-date-time-picker/index.js +1 -2
  731. package/build-module/components/publish-date-time-picker/index.js.map +1 -1
  732. package/build-module/components/recursion-provider/index.js +1 -0
  733. package/build-module/components/recursion-provider/index.js.map +1 -1
  734. package/build-module/components/responsive-block-control/index.js +4 -5
  735. package/build-module/components/responsive-block-control/index.js.map +1 -1
  736. package/build-module/components/responsive-block-control/label.js +2 -4
  737. package/build-module/components/responsive-block-control/label.js.map +1 -1
  738. package/build-module/components/rich-text/content.js.map +1 -1
  739. package/build-module/components/rich-text/event-listeners/before-input-rules.js +2 -2
  740. package/build-module/components/rich-text/event-listeners/before-input-rules.js.map +1 -1
  741. package/build-module/components/rich-text/event-listeners/delete.js +2 -2
  742. package/build-module/components/rich-text/event-listeners/delete.js.map +1 -1
  743. package/build-module/components/rich-text/event-listeners/enter.js +2 -2
  744. package/build-module/components/rich-text/event-listeners/enter.js.map +1 -1
  745. package/build-module/components/rich-text/event-listeners/firefox-compat.js +2 -2
  746. package/build-module/components/rich-text/event-listeners/firefox-compat.js.map +1 -1
  747. package/build-module/components/rich-text/event-listeners/index.js +4 -2
  748. package/build-module/components/rich-text/event-listeners/index.js.map +1 -1
  749. package/build-module/components/rich-text/event-listeners/input-events.js +2 -2
  750. package/build-module/components/rich-text/event-listeners/input-events.js.map +1 -1
  751. package/build-module/components/rich-text/event-listeners/input-rules.js +2 -2
  752. package/build-module/components/rich-text/event-listeners/input-rules.js.map +1 -1
  753. package/build-module/components/rich-text/event-listeners/insert-replacement-text.js +2 -2
  754. package/build-module/components/rich-text/event-listeners/insert-replacement-text.js.map +1 -1
  755. package/build-module/components/rich-text/event-listeners/paste-handler.js +2 -2
  756. package/build-module/components/rich-text/event-listeners/paste-handler.js.map +1 -1
  757. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.js +2 -2
  758. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.js.map +1 -1
  759. package/build-module/components/rich-text/event-listeners/shortcuts.js +2 -2
  760. package/build-module/components/rich-text/event-listeners/shortcuts.js.map +1 -1
  761. package/build-module/components/rich-text/event-listeners/undo-automatic-change.js +2 -2
  762. package/build-module/components/rich-text/event-listeners/undo-automatic-change.js.map +1 -1
  763. package/build-module/components/rich-text/file-paste-handler.native.js.map +1 -1
  764. package/build-module/components/rich-text/format-toolbar/index.js +1 -3
  765. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  766. package/build-module/components/rich-text/format-toolbar/index.native.js +1 -3
  767. package/build-module/components/rich-text/format-toolbar/index.native.js.map +1 -1
  768. package/build-module/components/rich-text/index.js +4 -5
  769. package/build-module/components/rich-text/index.js.map +1 -1
  770. package/build-module/components/rich-text/index.native.js +3 -9
  771. package/build-module/components/rich-text/index.native.js.map +1 -1
  772. package/build-module/components/rich-text/multiline.js.map +1 -1
  773. package/build-module/components/rich-text/native/get-format-colors.native.js.map +1 -1
  774. package/build-module/components/rich-text/native/index.js +1 -1
  775. package/build-module/components/rich-text/native/index.js.map +1 -1
  776. package/build-module/components/rich-text/native/index.native.js +1 -3
  777. package/build-module/components/rich-text/native/index.native.js.map +1 -1
  778. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js +1 -3
  779. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  780. package/build-module/components/rich-text/native/use-format-types.js +1 -0
  781. package/build-module/components/rich-text/native/use-format-types.js.map +1 -1
  782. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  783. package/build-module/components/rich-text/use-format-types.js +1 -0
  784. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  785. package/build-module/components/spacing-sizes-control/index.js +4 -5
  786. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  787. package/build-module/components/spacing-sizes-control/input-controls/axial.js +1 -2
  788. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  789. package/build-module/components/spacing-sizes-control/input-controls/separated.js +1 -2
  790. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  791. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +5 -7
  792. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  793. package/build-module/components/spacing-sizes-control/linked-button.js +2 -6
  794. package/build-module/components/spacing-sizes-control/linked-button.js.map +1 -1
  795. package/build-module/components/spacing-sizes-control/utils.js +1 -0
  796. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  797. package/build-module/components/tabbed-sidebar/index.js +1 -2
  798. package/build-module/components/tabbed-sidebar/index.js.map +1 -1
  799. package/build-module/components/tool-selector/index.js +9 -8
  800. package/build-module/components/tool-selector/index.js.map +1 -1
  801. package/build-module/components/typewriter/index.js +1 -0
  802. package/build-module/components/typewriter/index.js.map +1 -1
  803. package/build-module/components/unsupported-block-details/index.native.js +1 -2
  804. package/build-module/components/unsupported-block-details/index.native.js.map +1 -1
  805. package/build-module/components/url-input/button.js +1 -2
  806. package/build-module/components/url-input/button.js.map +1 -1
  807. package/build-module/components/url-input/index.js +2 -4
  808. package/build-module/components/url-input/index.js.map +1 -1
  809. package/build-module/components/url-popover/image-url-input-ui.js +1 -3
  810. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  811. package/build-module/components/url-popover/index.js +1 -2
  812. package/build-module/components/url-popover/index.js.map +1 -1
  813. package/build-module/components/url-popover/link-editor.js +1 -2
  814. package/build-module/components/url-popover/link-editor.js.map +1 -1
  815. package/build-module/components/url-popover/link-viewer.js +1 -2
  816. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  817. package/build-module/components/use-block-commands/index.js +1 -1
  818. package/build-module/components/use-block-commands/index.js.map +1 -1
  819. package/build-module/components/use-block-drop-zone/index.js +5 -5
  820. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  821. package/build-module/components/use-block-drop-zone/index.native.js +0 -1
  822. package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
  823. package/build-module/components/use-flash-editable-blocks/index.js.map +1 -1
  824. package/build-module/components/use-moving-animation/index.js +1 -3
  825. package/build-module/components/use-moving-animation/index.js.map +1 -1
  826. package/build-module/components/use-resize-canvas/index.js +1 -2
  827. package/build-module/components/use-resize-canvas/index.js.map +1 -1
  828. package/build-module/components/use-settings/index.js +1 -3
  829. package/build-module/components/use-settings/index.js.map +1 -1
  830. package/build-module/components/video-player/index.native.js +1 -2
  831. package/build-module/components/video-player/index.native.js.map +1 -1
  832. package/build-module/components/warning/index.js +1 -2
  833. package/build-module/components/warning/index.js.map +1 -1
  834. package/build-module/components/warning/index.native.js +1 -2
  835. package/build-module/components/warning/index.native.js.map +1 -1
  836. package/build-module/components/writing-flow/index.js +6 -6
  837. package/build-module/components/writing-flow/index.js.map +1 -1
  838. package/build-module/components/writing-flow/use-tab-nav.js +20 -5
  839. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  840. package/build-module/hooks/align.js.map +1 -1
  841. package/build-module/hooks/anchor.js +1 -3
  842. package/build-module/hooks/anchor.js.map +1 -1
  843. package/build-module/hooks/block-bindings.js +21 -12
  844. package/build-module/hooks/block-bindings.js.map +1 -1
  845. package/build-module/hooks/block-hooks.js +2 -3
  846. package/build-module/hooks/block-hooks.js.map +1 -1
  847. package/build-module/hooks/block-style-variation.js +1 -2
  848. package/build-module/hooks/block-style-variation.js.map +1 -1
  849. package/build-module/hooks/contrast-checker.js +0 -1
  850. package/build-module/hooks/contrast-checker.js.map +1 -1
  851. package/build-module/hooks/dimensions.js +1 -3
  852. package/build-module/hooks/dimensions.js.map +1 -1
  853. package/build-module/hooks/duotone.js +3 -5
  854. package/build-module/hooks/duotone.js.map +1 -1
  855. package/build-module/hooks/font-family.js.map +1 -1
  856. package/build-module/hooks/gap.js.map +1 -1
  857. package/build-module/hooks/generated-class-name.js +1 -0
  858. package/build-module/hooks/generated-class-name.js.map +1 -1
  859. package/build-module/hooks/grid-visualizer.js +14 -14
  860. package/build-module/hooks/grid-visualizer.js.map +1 -1
  861. package/build-module/hooks/layout-child.js +42 -6
  862. package/build-module/hooks/layout-child.js.map +1 -1
  863. package/build-module/hooks/layout.js +1 -3
  864. package/build-module/hooks/layout.js.map +1 -1
  865. package/build-module/hooks/position.js +1 -1
  866. package/build-module/hooks/position.js.map +1 -1
  867. package/build-module/hooks/spacing-visualizer.js.map +1 -1
  868. package/build-module/hooks/style.js +5 -4
  869. package/build-module/hooks/style.js.map +1 -1
  870. package/build-module/hooks/text-align.js.map +1 -1
  871. package/build-module/hooks/typography.native.js +1 -2
  872. package/build-module/hooks/typography.native.js.map +1 -1
  873. package/build-module/hooks/use-bindings-attributes.js +1 -2
  874. package/build-module/hooks/use-bindings-attributes.js.map +1 -1
  875. package/build-module/hooks/use-typography-props.js.map +1 -1
  876. package/build-module/hooks/use-zoom-out.js +18 -19
  877. package/build-module/hooks/use-zoom-out.js.map +1 -1
  878. package/build-module/index.js +1 -1
  879. package/build-module/index.js.map +1 -1
  880. package/build-module/layouts/constrained.js +1 -3
  881. package/build-module/layouts/constrained.js.map +1 -1
  882. package/build-module/layouts/flex.js +1 -3
  883. package/build-module/layouts/flex.js.map +1 -1
  884. package/build-module/layouts/grid.js +1 -3
  885. package/build-module/layouts/grid.js.map +1 -1
  886. package/build-module/layouts/utils.js.map +1 -1
  887. package/build-module/private-apis.js +7 -3
  888. package/build-module/private-apis.js.map +1 -1
  889. package/build-module/store/actions.js +6 -38
  890. package/build-module/store/actions.js.map +1 -1
  891. package/build-module/store/defaults.js +1 -1
  892. package/build-module/store/defaults.js.map +1 -1
  893. package/build-module/store/private-actions.js +54 -7
  894. package/build-module/store/private-actions.js.map +1 -1
  895. package/build-module/store/private-selectors.js +9 -20
  896. package/build-module/store/private-selectors.js.map +1 -1
  897. package/build-module/store/reducer.js +17 -22
  898. package/build-module/store/reducer.js.map +1 -1
  899. package/build-module/store/selectors.js +66 -20
  900. package/build-module/store/selectors.js.map +1 -1
  901. package/build-module/utils/block-bindings.js +9 -6
  902. package/build-module/utils/block-bindings.js.map +1 -1
  903. package/build-module/utils/dom.js +16 -1
  904. package/build-module/utils/dom.js.map +1 -1
  905. package/build-module/utils/get-font-styles-and-weights.js +3 -3
  906. package/build-module/utils/get-font-styles-and-weights.js.map +1 -1
  907. package/build-module/utils/get-px-from-css-unit.js +1 -1
  908. package/build-module/utils/get-px-from-css-unit.js.map +1 -1
  909. package/build-module/utils/object.js +1 -0
  910. package/build-module/utils/object.js.map +1 -1
  911. package/build-module/utils/pasting.js.map +1 -1
  912. package/build-module/utils/transform-styles/index.js +3 -2
  913. package/build-module/utils/transform-styles/index.js.map +1 -1
  914. package/build-style/content-rtl.css +19 -27
  915. package/build-style/content.css +19 -27
  916. package/build-style/style-rtl.css +47 -54
  917. package/build-style/style.css +47 -54
  918. package/build-types/utils/dom.d.ts.map +1 -1
  919. package/package.json +34 -33
  920. package/src/autocompleters/block.js +16 -7
  921. package/src/components/block-canvas/index.js +17 -1
  922. package/src/components/block-canvas/style.scss +1 -0
  923. package/src/components/block-card/index.js +3 -3
  924. package/src/components/block-full-height-alignment-control/index.js +1 -1
  925. package/src/components/block-inspector/style.scss +0 -6
  926. package/src/components/block-list/block.js +1 -2
  927. package/src/components/block-list/block.native.js +0 -4
  928. package/src/components/block-list/content.scss +4 -3
  929. package/src/components/block-list/index.js +4 -4
  930. package/src/components/block-list/use-block-props/index.js +0 -2
  931. package/src/components/block-list/use-block-props/use-focus-first-element.js +5 -3
  932. package/src/components/block-list/use-block-props/use-selected-block-event-handlers.js +12 -4
  933. package/src/components/block-list/use-in-between-inserter.js +1 -1
  934. package/src/components/block-list/zoom-out-separator.js +8 -6
  935. package/src/components/block-patterns-list/stories/fixtures.js +834 -0
  936. package/src/components/block-patterns-list/stories/index.story.js +81 -0
  937. package/src/components/block-patterns-list/style.scss +2 -0
  938. package/src/components/block-patterns-paging/index.js +1 -1
  939. package/src/components/block-popover/index.js +2 -2
  940. package/src/components/block-preview/auto.js +1 -4
  941. package/src/components/block-preview/index.js +2 -2
  942. package/src/components/block-settings-menu/block-settings-dropdown.js +4 -0
  943. package/src/components/block-settings-menu/index.js +3 -0
  944. package/src/components/block-toolbar/change-design.js +133 -0
  945. package/src/components/block-toolbar/index.js +25 -8
  946. package/src/components/block-toolbar/style.scss +16 -0
  947. package/src/components/block-tools/index.js +4 -28
  948. package/src/components/block-tools/insertion-point.js +4 -3
  949. package/src/components/block-tools/style.scss +0 -20
  950. package/src/components/block-tools/use-show-block-tools.js +2 -8
  951. package/src/components/block-tools/zoom-out-mode-inserters.js +25 -40
  952. package/src/components/block-variation-transforms/index.js +2 -2
  953. package/src/components/block-vertical-alignment-control/ui.js +11 -15
  954. package/src/components/border-radius-control/linked-button.js +9 -11
  955. package/src/components/collab/block-comment-icon-slot.js +12 -0
  956. package/src/components/collab/block-comment-icon-toolbar-slot.js +12 -0
  957. package/src/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +7 -1
  958. package/src/components/convert-to-group-buttons/toolbar.js +4 -4
  959. package/src/components/global-styles/color-panel.js +2 -10
  960. package/src/components/global-styles/test/use-global-styles-context.native.js +1 -0
  961. package/src/components/global-styles/use-global-styles-context.native.js +6 -0
  962. package/src/components/iframe/content.scss +22 -32
  963. package/src/components/iframe/index.js +62 -15
  964. package/src/components/iframe/style.scss +17 -0
  965. package/src/components/image-size-control/index.js +74 -43
  966. package/src/components/image-size-control/test/index.js +5 -63
  967. package/src/components/inner-blocks/index.js +12 -6
  968. package/src/components/inner-blocks/use-nested-settings-update.js +16 -10
  969. package/src/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +1 -1
  970. package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +2 -3
  971. package/src/components/inserter/block-patterns-tab/patterns-filter.js +1 -1
  972. package/src/components/inserter/category-tabs/index.js +17 -13
  973. package/src/components/inserter/menu.js +12 -5
  974. package/src/components/inserter/quick-inserter.js +1 -1
  975. package/src/components/inserter/style.scss +14 -41
  976. package/src/components/inserter-button/index.native.js +1 -1
  977. package/src/components/inspector-controls-tabs/index.js +1 -6
  978. package/src/components/inspector-controls-tabs/utils.js +0 -3
  979. package/src/components/link-control/link-preview.js +15 -8
  980. package/src/components/link-control/search-input.js +4 -5
  981. package/src/components/link-control/search-results.js +2 -13
  982. package/src/components/link-control/test/index.js +147 -70
  983. package/src/components/list-view/appender.js +5 -6
  984. package/src/components/list-view/branch.js +8 -6
  985. package/src/components/list-view/index.js +1 -2
  986. package/src/components/media-replace-flow/test/index.js +1 -1
  987. package/src/components/provider/index.js +1 -3
  988. package/src/components/provider/test/experimental-provider.js +43 -1
  989. package/src/components/responsive-block-control/style.scss +0 -1
  990. package/src/components/rich-text/event-listeners/index.js +4 -2
  991. package/src/components/rich-text/index.native.js +0 -2
  992. package/src/components/rich-text/style.scss +5 -0
  993. package/src/components/spacing-sizes-control/index.js +3 -3
  994. package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +4 -4
  995. package/src/components/spacing-sizes-control/linked-button.js +2 -12
  996. package/src/components/tool-selector/index.js +6 -5
  997. package/src/components/url-input/index.js +1 -1
  998. package/src/components/use-block-commands/index.js +1 -1
  999. package/src/components/use-block-drop-zone/index.js +5 -5
  1000. package/src/components/use-block-drop-zone/index.native.js +0 -1
  1001. package/src/components/use-moving-animation/index.js +0 -1
  1002. package/src/components/use-resize-canvas/index.js +1 -3
  1003. package/src/components/use-settings/index.js +0 -1
  1004. package/src/components/writing-flow/index.js +5 -3
  1005. package/src/components/writing-flow/use-tab-nav.js +27 -4
  1006. package/src/hooks/block-bindings.js +48 -31
  1007. package/src/hooks/contrast-checker.js +0 -1
  1008. package/src/hooks/duotone.js +2 -2
  1009. package/src/hooks/grid-visualizer.js +23 -9
  1010. package/src/hooks/layout-child.js +48 -3
  1011. package/src/hooks/style.js +7 -3
  1012. package/src/hooks/use-zoom-out.js +20 -24
  1013. package/src/index.js +0 -1
  1014. package/src/private-apis.js +6 -1
  1015. package/src/store/actions.js +5 -53
  1016. package/src/store/defaults.js +2 -1
  1017. package/src/store/private-actions.js +71 -8
  1018. package/src/store/private-selectors.js +9 -19
  1019. package/src/store/reducer.js +25 -28
  1020. package/src/store/selectors.js +82 -20
  1021. package/src/store/test/actions.js +41 -0
  1022. package/src/store/test/private-selectors.js +7 -1
  1023. package/src/store/test/reducer.js +23 -0
  1024. package/src/store/test/selectors.js +13 -2
  1025. package/src/style.scss +1 -0
  1026. package/src/utils/block-bindings.js +9 -6
  1027. package/src/utils/dom.js +22 -2
  1028. package/src/utils/get-font-styles-and-weights.js +2 -2
  1029. package/src/utils/test/use-block-bindings-utils.js +174 -0
  1030. package/src/utils/transform-styles/index.js +3 -2
  1031. package/tsconfig.tsbuildinfo +1 -1
  1032. package/build/components/block-list/use-block-props/use-zoom-out-mode-exit.js +0 -57
  1033. package/build/components/block-list/use-block-props/use-zoom-out-mode-exit.js.map +0 -1
  1034. package/build/components/block-toolbar/shuffle.js +0 -110
  1035. package/build/components/block-toolbar/shuffle.js.map +0 -1
  1036. package/build/components/block-tools/zoom-out-popover.js +0 -57
  1037. package/build/components/block-tools/zoom-out-popover.js.map +0 -1
  1038. package/build/components/block-tools/zoom-out-toolbar.js +0 -149
  1039. package/build/components/block-tools/zoom-out-toolbar.js.map +0 -1
  1040. package/build/components/block-vertical-alignment-control/icons.js +0 -48
  1041. package/build/components/block-vertical-alignment-control/icons.js.map +0 -1
  1042. package/build-module/components/block-list/use-block-props/use-zoom-out-mode-exit.js +0 -51
  1043. package/build-module/components/block-list/use-block-props/use-zoom-out-mode-exit.js.map +0 -1
  1044. package/build-module/components/block-toolbar/shuffle.js +0 -103
  1045. package/build-module/components/block-toolbar/shuffle.js.map +0 -1
  1046. package/build-module/components/block-tools/zoom-out-popover.js +0 -48
  1047. package/build-module/components/block-tools/zoom-out-popover.js.map +0 -1
  1048. package/build-module/components/block-tools/zoom-out-toolbar.js +0 -142
  1049. package/build-module/components/block-tools/zoom-out-toolbar.js.map +0 -1
  1050. package/build-module/components/block-vertical-alignment-control/icons.js +0 -41
  1051. package/build-module/components/block-vertical-alignment-control/icons.js.map +0 -1
  1052. package/src/components/block-list/use-block-props/use-zoom-out-mode-exit.js +0 -65
  1053. package/src/components/block-toolbar/shuffle.js +0 -111
  1054. package/src/components/block-tools/zoom-out-popover.js +0 -46
  1055. package/src/components/block-tools/zoom-out-toolbar.js +0 -156
  1056. package/src/components/block-vertical-alignment-control/icons.js +0 -34
@@ -1,3 +1,4 @@
1
+ /* wp:polyfill */
1
2
  "use strict";
2
3
 
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
@@ -165,11 +166,11 @@ function Items({
165
166
  __unstableGetVisibleBlocks,
166
167
  getTemplateLock,
167
168
  getBlockEditingMode,
168
- __unstableGetEditorMode,
169
- isSectionBlock
169
+ isSectionBlock,
170
+ isZoomOut: _isZoomOut
170
171
  } = (0, _lockUnlock.unlock)(select(_store.store));
171
172
  const _order = getBlockOrder(rootClientId);
172
- if (getSettings().__unstableIsPreviewMode) {
173
+ if (getSettings().isPreviewMode) {
173
174
  return {
174
175
  order: _order,
175
176
  selectedBlocks: EMPTY_ARRAY,
@@ -181,8 +182,8 @@ function Items({
181
182
  order: _order,
182
183
  selectedBlocks: getSelectedBlockClientIds(),
183
184
  visibleBlocks: __unstableGetVisibleBlocks(),
184
- isZoomOut: __unstableGetEditorMode() === 'zoom-out',
185
- shouldRenderAppender: !isSectionBlock(rootClientId) && getBlockEditingMode(rootClientId) !== 'disabled' && !getTemplateLock(rootClientId) && hasAppender && __unstableGetEditorMode() !== 'zoom-out' && (hasCustomAppender || rootClientId === selectedBlockClientId || !rootClientId && !selectedBlockClientId && !_order.length)
185
+ isZoomOut: _isZoomOut(),
186
+ shouldRenderAppender: !isSectionBlock(rootClientId) && getBlockEditingMode(rootClientId) !== 'disabled' && !getTemplateLock(rootClientId) && hasAppender && !_isZoomOut() && (hasCustomAppender || rootClientId === selectedBlockClientId || !rootClientId && !selectedBlockClientId && !_order.length)
186
187
  };
187
188
  }, [rootClientId, hasAppender, hasCustomAppender]);
188
189
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_layout.LayoutProvider, {
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_data","_compose","_element","_block","_blockListAppender","_useInBetweenInserter","_store","_layout","_blockSelectionClearer","_innerBlocks","_context","_observeTyping","_zoomOutSeparator","_lockUnlock","_jsxRuntime","IntersectionObserver","exports","createContext","pendingBlockVisibilityUpdatesPerRegistry","WeakMap","Root","className","settings","isLargeViewport","useViewportMatch","isOutlineMode","isFocusMode","temporarilyEditingAsBlocks","useSelect","select","getSettings","getTemporarilyEditingAsBlocks","isTyping","unlock","blockEditorStore","outlineMode","focusMode","registry","useRegistry","setBlockVisibility","useDispatch","delayedBlockVisibilityUpdates","useDebounce","useCallback","updates","get","forEach","id","isIntersecting","trailing","intersectionObserver","useMemo","Observer","window","entries","set","entry","clientId","target","getAttribute","push","innerBlocksProps","useInnerBlocksProps","ref","useMergeRefs","useBlockSelectionClearer","useInBetweenInserter","useTypingObserver","clsx","jsxs","Provider","value","children","jsx","StopEditingAsBlocksOnOutsideSelect","stopEditingAsBlocks","isBlockOrDescendantSelected","isBlockSelected","hasSelectedInnerBlock","useEffect","BlockList","BlockEditContextProvider","DEFAULT_BLOCK_EDIT_CONTEXT","EMPTY_ARRAY","EMPTY_SET","Set","Items","placeholder","rootClientId","renderAppender","CustomAppender","__experimentalAppenderTagName","layout","defaultLayout","hasAppender","hasCustomAppender","order","isZoomOut","selectedBlocks","visibleBlocks","shouldRenderAppender","getBlockOrder","getSelectedBlockClientId","getSelectedBlockClientIds","__unstableGetVisibleBlocks","getTemplateLock","getBlockEditingMode","__unstableGetEditorMode","isSectionBlock","_order","__unstableIsPreviewMode","selectedBlockClientId","length","LayoutProvider","map","AsyncModeProvider","has","includes","ZoomOutSeparator","position","default","tagName","BlockListItems","props"],"sources":["@wordpress/block-editor/src/components/block-list/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAsyncModeProvider,\n\tuseSelect,\n\tuseDispatch,\n\tuseRegistry,\n} from '@wordpress/data';\nimport {\n\tuseViewportMatch,\n\tuseMergeRefs,\n\tuseDebounce,\n} from '@wordpress/compose';\nimport {\n\tcreateContext,\n\tuseMemo,\n\tuseCallback,\n\tuseEffect,\n} from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport BlockListBlock from './block';\nimport BlockListAppender from '../block-list-appender';\nimport { useInBetweenInserter } from './use-in-between-inserter';\nimport { store as blockEditorStore } from '../../store';\nimport { LayoutProvider, defaultLayout } from './layout';\nimport { useBlockSelectionClearer } from '../block-selection-clearer';\nimport { useInnerBlocksProps } from '../inner-blocks';\nimport {\n\tBlockEditContextProvider,\n\tDEFAULT_BLOCK_EDIT_CONTEXT,\n} from '../block-edit/context';\nimport { useTypingObserver } from '../observe-typing';\nimport { ZoomOutSeparator } from './zoom-out-separator';\nimport { unlock } from '../../lock-unlock';\n\nexport const IntersectionObserver = createContext();\nconst pendingBlockVisibilityUpdatesPerRegistry = new WeakMap();\n\nfunction Root( { className, ...settings } ) {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst { isOutlineMode, isFocusMode, temporarilyEditingAsBlocks } =\n\t\tuseSelect( ( select ) => {\n\t\t\tconst { getSettings, getTemporarilyEditingAsBlocks, isTyping } =\n\t\t\t\tunlock( select( blockEditorStore ) );\n\t\t\tconst { outlineMode, focusMode } = getSettings();\n\t\t\treturn {\n\t\t\t\tisOutlineMode: outlineMode && ! isTyping(),\n\t\t\t\tisFocusMode: focusMode,\n\t\t\t\ttemporarilyEditingAsBlocks: getTemporarilyEditingAsBlocks(),\n\t\t\t};\n\t\t}, [] );\n\tconst registry = useRegistry();\n\tconst { setBlockVisibility } = useDispatch( blockEditorStore );\n\n\tconst delayedBlockVisibilityUpdates = useDebounce(\n\t\tuseCallback( () => {\n\t\t\tconst updates = {};\n\t\t\tpendingBlockVisibilityUpdatesPerRegistry\n\t\t\t\t.get( registry )\n\t\t\t\t.forEach( ( [ id, isIntersecting ] ) => {\n\t\t\t\t\tupdates[ id ] = isIntersecting;\n\t\t\t\t} );\n\t\t\tsetBlockVisibility( updates );\n\t\t}, [ registry ] ),\n\t\t300,\n\t\t{\n\t\t\ttrailing: true,\n\t\t}\n\t);\n\tconst intersectionObserver = useMemo( () => {\n\t\tconst { IntersectionObserver: Observer } = window;\n\n\t\tif ( ! Observer ) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn new Observer( ( entries ) => {\n\t\t\tif ( ! pendingBlockVisibilityUpdatesPerRegistry.get( registry ) ) {\n\t\t\t\tpendingBlockVisibilityUpdatesPerRegistry.set( registry, [] );\n\t\t\t}\n\t\t\tfor ( const entry of entries ) {\n\t\t\t\tconst clientId = entry.target.getAttribute( 'data-block' );\n\t\t\t\tpendingBlockVisibilityUpdatesPerRegistry\n\t\t\t\t\t.get( registry )\n\t\t\t\t\t.push( [ clientId, entry.isIntersecting ] );\n\t\t\t}\n\t\t\tdelayedBlockVisibilityUpdates();\n\t\t} );\n\t}, [] );\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tref: useMergeRefs( [\n\t\t\t\tuseBlockSelectionClearer(),\n\t\t\t\tuseInBetweenInserter(),\n\t\t\t\tuseTypingObserver(),\n\t\t\t] ),\n\t\t\tclassName: clsx( 'is-root-container', className, {\n\t\t\t\t'is-outline-mode': isOutlineMode,\n\t\t\t\t'is-focus-mode': isFocusMode && isLargeViewport,\n\t\t\t} ),\n\t\t},\n\t\tsettings\n\t);\n\treturn (\n\t\t<IntersectionObserver.Provider value={ intersectionObserver }>\n\t\t\t<div { ...innerBlocksProps } />\n\t\t\t{ !! temporarilyEditingAsBlocks && (\n\t\t\t\t<StopEditingAsBlocksOnOutsideSelect\n\t\t\t\t\tclientId={ temporarilyEditingAsBlocks }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</IntersectionObserver.Provider>\n\t);\n}\n\nfunction StopEditingAsBlocksOnOutsideSelect( { clientId } ) {\n\tconst { stopEditingAsBlocks } = unlock( useDispatch( blockEditorStore ) );\n\tconst isBlockOrDescendantSelected = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isBlockSelected, hasSelectedInnerBlock } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn (\n\t\t\t\tisBlockSelected( clientId ) ||\n\t\t\t\thasSelectedInnerBlock( clientId, true )\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\tuseEffect( () => {\n\t\tif ( ! isBlockOrDescendantSelected ) {\n\t\t\tstopEditingAsBlocks( clientId );\n\t\t}\n\t}, [ isBlockOrDescendantSelected, clientId, stopEditingAsBlocks ] );\n\treturn null;\n}\n\nexport default function BlockList( settings ) {\n\treturn (\n\t\t<BlockEditContextProvider value={ DEFAULT_BLOCK_EDIT_CONTEXT }>\n\t\t\t<Root { ...settings } />\n\t\t</BlockEditContextProvider>\n\t);\n}\n\nconst EMPTY_ARRAY = [];\nconst EMPTY_SET = new Set();\n\nfunction Items( {\n\tplaceholder,\n\trootClientId,\n\trenderAppender: CustomAppender,\n\t__experimentalAppenderTagName,\n\tlayout = defaultLayout,\n} ) {\n\t// Avoid passing CustomAppender to useSelect because it could be a new\n\t// function on every render.\n\tconst hasAppender = CustomAppender !== false;\n\tconst hasCustomAppender = !! CustomAppender;\n\tconst {\n\t\torder,\n\t\tisZoomOut,\n\t\tselectedBlocks,\n\t\tvisibleBlocks,\n\t\tshouldRenderAppender,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetSettings,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tgetSelectedBlockClientId,\n\t\t\t\tgetSelectedBlockClientIds,\n\t\t\t\t__unstableGetVisibleBlocks,\n\t\t\t\tgetTemplateLock,\n\t\t\t\tgetBlockEditingMode,\n\t\t\t\t__unstableGetEditorMode,\n\t\t\t\tisSectionBlock,\n\t\t\t} = unlock( select( blockEditorStore ) );\n\n\t\t\tconst _order = getBlockOrder( rootClientId );\n\n\t\t\tif ( getSettings().__unstableIsPreviewMode ) {\n\t\t\t\treturn {\n\t\t\t\t\torder: _order,\n\t\t\t\t\tselectedBlocks: EMPTY_ARRAY,\n\t\t\t\t\tvisibleBlocks: EMPTY_SET,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\t\t\treturn {\n\t\t\t\torder: _order,\n\t\t\t\tselectedBlocks: getSelectedBlockClientIds(),\n\t\t\t\tvisibleBlocks: __unstableGetVisibleBlocks(),\n\t\t\t\tisZoomOut: __unstableGetEditorMode() === 'zoom-out',\n\t\t\t\tshouldRenderAppender:\n\t\t\t\t\t! isSectionBlock( rootClientId ) &&\n\t\t\t\t\tgetBlockEditingMode( rootClientId ) !== 'disabled' &&\n\t\t\t\t\t! getTemplateLock( rootClientId ) &&\n\t\t\t\t\thasAppender &&\n\t\t\t\t\t__unstableGetEditorMode() !== 'zoom-out' &&\n\t\t\t\t\t( hasCustomAppender ||\n\t\t\t\t\t\trootClientId === selectedBlockClientId ||\n\t\t\t\t\t\t( ! rootClientId &&\n\t\t\t\t\t\t\t! selectedBlockClientId &&\n\t\t\t\t\t\t\t! _order.length ) ),\n\t\t\t};\n\t\t},\n\t\t[ rootClientId, hasAppender, hasCustomAppender ]\n\t);\n\n\treturn (\n\t\t<LayoutProvider value={ layout }>\n\t\t\t{ order.map( ( clientId ) => (\n\t\t\t\t<AsyncModeProvider\n\t\t\t\t\tkey={ clientId }\n\t\t\t\t\tvalue={\n\t\t\t\t\t\t// Only provide data asynchronously if the block is\n\t\t\t\t\t\t// not visible and not selected.\n\t\t\t\t\t\t! visibleBlocks.has( clientId ) &&\n\t\t\t\t\t\t! selectedBlocks.includes( clientId )\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t{ isZoomOut && (\n\t\t\t\t\t\t<ZoomOutSeparator\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\tposition=\"top\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<BlockListBlock\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isZoomOut && (\n\t\t\t\t\t\t<ZoomOutSeparator\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\tposition=\"bottom\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</AsyncModeProvider>\n\t\t\t) ) }\n\t\t\t{ order.length < 1 && placeholder }\n\t\t\t{ shouldRenderAppender && (\n\t\t\t\t<BlockListAppender\n\t\t\t\t\ttagName={ __experimentalAppenderTagName }\n\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\tCustomAppender={ CustomAppender }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</LayoutProvider>\n\t);\n}\n\nexport function BlockListItems( props ) {\n\t// This component needs to always be synchronous as it's the one changing\n\t// the async mode depending on the block selection.\n\treturn (\n\t\t<AsyncModeProvider value={ false }>\n\t\t\t<Items { ...props } />\n\t\t</AsyncModeProvider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_data","_compose","_element","_block","_blockListAppender","_useInBetweenInserter","_store","_layout","_blockSelectionClearer","_innerBlocks","_context","_observeTyping","_zoomOutSeparator","_lockUnlock","_jsxRuntime","IntersectionObserver","exports","createContext","pendingBlockVisibilityUpdatesPerRegistry","WeakMap","Root","className","settings","isLargeViewport","useViewportMatch","isOutlineMode","isFocusMode","temporarilyEditingAsBlocks","useSelect","select","getSettings","getTemporarilyEditingAsBlocks","isTyping","unlock","blockEditorStore","outlineMode","focusMode","registry","useRegistry","setBlockVisibility","useDispatch","delayedBlockVisibilityUpdates","useDebounce","useCallback","updates","get","forEach","id","isIntersecting","trailing","intersectionObserver","useMemo","Observer","window","entries","set","entry","clientId","target","getAttribute","push","innerBlocksProps","useInnerBlocksProps","ref","useMergeRefs","useBlockSelectionClearer","useInBetweenInserter","useTypingObserver","clsx","jsxs","Provider","value","children","jsx","StopEditingAsBlocksOnOutsideSelect","stopEditingAsBlocks","isBlockOrDescendantSelected","isBlockSelected","hasSelectedInnerBlock","useEffect","BlockList","BlockEditContextProvider","DEFAULT_BLOCK_EDIT_CONTEXT","EMPTY_ARRAY","EMPTY_SET","Set","Items","placeholder","rootClientId","renderAppender","CustomAppender","__experimentalAppenderTagName","layout","defaultLayout","hasAppender","hasCustomAppender","order","isZoomOut","selectedBlocks","visibleBlocks","shouldRenderAppender","getBlockOrder","getSelectedBlockClientId","getSelectedBlockClientIds","__unstableGetVisibleBlocks","getTemplateLock","getBlockEditingMode","isSectionBlock","_isZoomOut","_order","isPreviewMode","selectedBlockClientId","length","LayoutProvider","map","AsyncModeProvider","has","includes","ZoomOutSeparator","position","default","tagName","BlockListItems","props"],"sources":["@wordpress/block-editor/src/components/block-list/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAsyncModeProvider,\n\tuseSelect,\n\tuseDispatch,\n\tuseRegistry,\n} from '@wordpress/data';\nimport {\n\tuseViewportMatch,\n\tuseMergeRefs,\n\tuseDebounce,\n} from '@wordpress/compose';\nimport {\n\tcreateContext,\n\tuseMemo,\n\tuseCallback,\n\tuseEffect,\n} from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport BlockListBlock from './block';\nimport BlockListAppender from '../block-list-appender';\nimport { useInBetweenInserter } from './use-in-between-inserter';\nimport { store as blockEditorStore } from '../../store';\nimport { LayoutProvider, defaultLayout } from './layout';\nimport { useBlockSelectionClearer } from '../block-selection-clearer';\nimport { useInnerBlocksProps } from '../inner-blocks';\nimport {\n\tBlockEditContextProvider,\n\tDEFAULT_BLOCK_EDIT_CONTEXT,\n} from '../block-edit/context';\nimport { useTypingObserver } from '../observe-typing';\nimport { ZoomOutSeparator } from './zoom-out-separator';\nimport { unlock } from '../../lock-unlock';\n\nexport const IntersectionObserver = createContext();\nconst pendingBlockVisibilityUpdatesPerRegistry = new WeakMap();\n\nfunction Root( { className, ...settings } ) {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst { isOutlineMode, isFocusMode, temporarilyEditingAsBlocks } =\n\t\tuseSelect( ( select ) => {\n\t\t\tconst { getSettings, getTemporarilyEditingAsBlocks, isTyping } =\n\t\t\t\tunlock( select( blockEditorStore ) );\n\t\t\tconst { outlineMode, focusMode } = getSettings();\n\t\t\treturn {\n\t\t\t\tisOutlineMode: outlineMode && ! isTyping(),\n\t\t\t\tisFocusMode: focusMode,\n\t\t\t\ttemporarilyEditingAsBlocks: getTemporarilyEditingAsBlocks(),\n\t\t\t};\n\t\t}, [] );\n\tconst registry = useRegistry();\n\tconst { setBlockVisibility } = useDispatch( blockEditorStore );\n\n\tconst delayedBlockVisibilityUpdates = useDebounce(\n\t\tuseCallback( () => {\n\t\t\tconst updates = {};\n\t\t\tpendingBlockVisibilityUpdatesPerRegistry\n\t\t\t\t.get( registry )\n\t\t\t\t.forEach( ( [ id, isIntersecting ] ) => {\n\t\t\t\t\tupdates[ id ] = isIntersecting;\n\t\t\t\t} );\n\t\t\tsetBlockVisibility( updates );\n\t\t}, [ registry ] ),\n\t\t300,\n\t\t{\n\t\t\ttrailing: true,\n\t\t}\n\t);\n\tconst intersectionObserver = useMemo( () => {\n\t\tconst { IntersectionObserver: Observer } = window;\n\n\t\tif ( ! Observer ) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn new Observer( ( entries ) => {\n\t\t\tif ( ! pendingBlockVisibilityUpdatesPerRegistry.get( registry ) ) {\n\t\t\t\tpendingBlockVisibilityUpdatesPerRegistry.set( registry, [] );\n\t\t\t}\n\t\t\tfor ( const entry of entries ) {\n\t\t\t\tconst clientId = entry.target.getAttribute( 'data-block' );\n\t\t\t\tpendingBlockVisibilityUpdatesPerRegistry\n\t\t\t\t\t.get( registry )\n\t\t\t\t\t.push( [ clientId, entry.isIntersecting ] );\n\t\t\t}\n\t\t\tdelayedBlockVisibilityUpdates();\n\t\t} );\n\t}, [] );\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tref: useMergeRefs( [\n\t\t\t\tuseBlockSelectionClearer(),\n\t\t\t\tuseInBetweenInserter(),\n\t\t\t\tuseTypingObserver(),\n\t\t\t] ),\n\t\t\tclassName: clsx( 'is-root-container', className, {\n\t\t\t\t'is-outline-mode': isOutlineMode,\n\t\t\t\t'is-focus-mode': isFocusMode && isLargeViewport,\n\t\t\t} ),\n\t\t},\n\t\tsettings\n\t);\n\treturn (\n\t\t<IntersectionObserver.Provider value={ intersectionObserver }>\n\t\t\t<div { ...innerBlocksProps } />\n\t\t\t{ !! temporarilyEditingAsBlocks && (\n\t\t\t\t<StopEditingAsBlocksOnOutsideSelect\n\t\t\t\t\tclientId={ temporarilyEditingAsBlocks }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</IntersectionObserver.Provider>\n\t);\n}\n\nfunction StopEditingAsBlocksOnOutsideSelect( { clientId } ) {\n\tconst { stopEditingAsBlocks } = unlock( useDispatch( blockEditorStore ) );\n\tconst isBlockOrDescendantSelected = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isBlockSelected, hasSelectedInnerBlock } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn (\n\t\t\t\tisBlockSelected( clientId ) ||\n\t\t\t\thasSelectedInnerBlock( clientId, true )\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\tuseEffect( () => {\n\t\tif ( ! isBlockOrDescendantSelected ) {\n\t\t\tstopEditingAsBlocks( clientId );\n\t\t}\n\t}, [ isBlockOrDescendantSelected, clientId, stopEditingAsBlocks ] );\n\treturn null;\n}\n\nexport default function BlockList( settings ) {\n\treturn (\n\t\t<BlockEditContextProvider value={ DEFAULT_BLOCK_EDIT_CONTEXT }>\n\t\t\t<Root { ...settings } />\n\t\t</BlockEditContextProvider>\n\t);\n}\n\nconst EMPTY_ARRAY = [];\nconst EMPTY_SET = new Set();\n\nfunction Items( {\n\tplaceholder,\n\trootClientId,\n\trenderAppender: CustomAppender,\n\t__experimentalAppenderTagName,\n\tlayout = defaultLayout,\n} ) {\n\t// Avoid passing CustomAppender to useSelect because it could be a new\n\t// function on every render.\n\tconst hasAppender = CustomAppender !== false;\n\tconst hasCustomAppender = !! CustomAppender;\n\tconst {\n\t\torder,\n\t\tisZoomOut,\n\t\tselectedBlocks,\n\t\tvisibleBlocks,\n\t\tshouldRenderAppender,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetSettings,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tgetSelectedBlockClientId,\n\t\t\t\tgetSelectedBlockClientIds,\n\t\t\t\t__unstableGetVisibleBlocks,\n\t\t\t\tgetTemplateLock,\n\t\t\t\tgetBlockEditingMode,\n\t\t\t\tisSectionBlock,\n\t\t\t\tisZoomOut: _isZoomOut,\n\t\t\t} = unlock( select( blockEditorStore ) );\n\n\t\t\tconst _order = getBlockOrder( rootClientId );\n\n\t\t\tif ( getSettings().isPreviewMode ) {\n\t\t\t\treturn {\n\t\t\t\t\torder: _order,\n\t\t\t\t\tselectedBlocks: EMPTY_ARRAY,\n\t\t\t\t\tvisibleBlocks: EMPTY_SET,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\t\t\treturn {\n\t\t\t\torder: _order,\n\t\t\t\tselectedBlocks: getSelectedBlockClientIds(),\n\t\t\t\tvisibleBlocks: __unstableGetVisibleBlocks(),\n\t\t\t\tisZoomOut: _isZoomOut(),\n\t\t\t\tshouldRenderAppender:\n\t\t\t\t\t! isSectionBlock( rootClientId ) &&\n\t\t\t\t\tgetBlockEditingMode( rootClientId ) !== 'disabled' &&\n\t\t\t\t\t! getTemplateLock( rootClientId ) &&\n\t\t\t\t\thasAppender &&\n\t\t\t\t\t! _isZoomOut() &&\n\t\t\t\t\t( hasCustomAppender ||\n\t\t\t\t\t\trootClientId === selectedBlockClientId ||\n\t\t\t\t\t\t( ! rootClientId &&\n\t\t\t\t\t\t\t! selectedBlockClientId &&\n\t\t\t\t\t\t\t! _order.length ) ),\n\t\t\t};\n\t\t},\n\t\t[ rootClientId, hasAppender, hasCustomAppender ]\n\t);\n\n\treturn (\n\t\t<LayoutProvider value={ layout }>\n\t\t\t{ order.map( ( clientId ) => (\n\t\t\t\t<AsyncModeProvider\n\t\t\t\t\tkey={ clientId }\n\t\t\t\t\tvalue={\n\t\t\t\t\t\t// Only provide data asynchronously if the block is\n\t\t\t\t\t\t// not visible and not selected.\n\t\t\t\t\t\t! visibleBlocks.has( clientId ) &&\n\t\t\t\t\t\t! selectedBlocks.includes( clientId )\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t{ isZoomOut && (\n\t\t\t\t\t\t<ZoomOutSeparator\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\tposition=\"top\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<BlockListBlock\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isZoomOut && (\n\t\t\t\t\t\t<ZoomOutSeparator\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\tposition=\"bottom\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</AsyncModeProvider>\n\t\t\t) ) }\n\t\t\t{ order.length < 1 && placeholder }\n\t\t\t{ shouldRenderAppender && (\n\t\t\t\t<BlockListAppender\n\t\t\t\t\ttagName={ __experimentalAppenderTagName }\n\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\tCustomAppender={ CustomAppender }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</LayoutProvider>\n\t);\n}\n\nexport function BlockListItems( props ) {\n\t// This component needs to always be synchronous as it's the one changing\n\t// the async mode depending on the block selection.\n\treturn (\n\t\t<AsyncModeProvider value={ false }>\n\t\t\t<Items { ...props } />\n\t\t</AsyncModeProvider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_element","_data","_blocks","_components","_i18n","_style","_interopRequireDefault","_blockListAppender","_blockListItem","_blockListItemCell","_blockListContext","_blockDraggable","_useEditorWrapperStyles","_store","_jsxRuntime","identity","x","stylesMemo","getStyles","isStackedHorizontally","horizontalAlignment","styleName","computedStyles","styles","horizontal","overflowVisible","BlockList","blockWidth","initialBlockWidth","contentResizeMode","contentStyle","filterInnerBlocks","gridProperties","header","marginHorizontal","defaultBlock","marginLeft","marginVertical","marginTop","onAddBlock","onDeleteBlock","orientation","parentWidth","renderAppender","renderFooterAppender","rootClientId","withFooter","blockClientIds","blockCount","blockInsertionPointIsVisible","isReadOnly","isRootList","isFloatingToolbarVisible","maxWidth","isRTL","useSelect","select","getBlockCount","getBlockHierarchyRootClientId","getBlockOrder","getSelectedBlockClientId","isBlockInsertionPointVisible","getSettings","blockEditorStore","selectedBlockClientId","rootBlockId","blockOrder","isRTLSetting","maxWidthSetting","readOnly","Platform","OS","undefined","insertBlock","clearSelectedBlock","useDispatch","extraData","useRef","setBlockWidth","useState","addBlockToEndOfPost","newBlock","scrollRef","shouldFlatListPreventAutomaticScroll","shouldShowInnerBlockAppender","length","getExtraData","current","onLayout","nativeEvent","layout","layoutWidth","Math","floor","width","min","renderItem","item","clientId","index","isGridItem","gridItemProps","numOfColumns","numColumns","tileCount","tileIndex","indexOf","jsx","default","blockToolbar","floatingToolbar","containerStyle","flex","isContentStretch","isMultiBlocks","isWider","alignmentHelpers","extraScrollHeight","height","jsxs","View","style","onAccessibilityEscape","testID","children","BlockListProvider","value","DEFAULT_BLOCK_LIST_CONTEXT","BlockDraggableWrapper","onScroll","KeyboardAwareFlatList","accessibilityLabel","ref","keyboardShouldPersistTaps","scrollEnabled","contentContainerStyle","horizontalContentContainer","horizontalContentContainerStretch","horizontalContentContainerCenter","data","keyExtractor","CellRendererComponent","BlockListItemCell","shouldPreventAutomaticScroll","ListHeaderComponent","ListEmptyComponent","EmptyList","ListFooterComponent","Footer","Fragment","map","currentClientId","innerAppender","showSeparator","onAddParagraphBlock","useCallback","paragraphBlock","createBlock","Pressable","__","onPress","blockListFooter","shouldShowInsertionPoint","getBlockInsertionPoint","insertionPoint","align","WIDE_ALIGNMENTS","alignments","full","wrapperStyles","useEditorWrapperStyles","containerStyles","defaultAppender"],"sources":["@wordpress/block-editor/src/components/block-list/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, Platform, Pressable } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useRef, useState, useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { createBlock } from '@wordpress/blocks';\nimport {\n\tKeyboardAwareFlatList,\n\tWIDE_ALIGNMENTS,\n\talignmentHelpers,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport BlockListAppender from '../block-list-appender';\nimport BlockListItem from './block-list-item';\nimport BlockListItemCell from './block-list-item-cell';\nimport {\n\tBlockListProvider,\n\tDEFAULT_BLOCK_LIST_CONTEXT,\n} from './block-list-context';\nimport { BlockDraggableWrapper } from '../block-draggable';\nimport { useEditorWrapperStyles } from '../../hooks/use-editor-wrapper-styles';\nimport { store as blockEditorStore } from '../../store';\n\nconst identity = ( x ) => x;\n\nconst stylesMemo = {};\nconst getStyles = ( isStackedHorizontally, horizontalAlignment ) => {\n\tconst styleName = `${ isStackedHorizontally }-${ horizontalAlignment }`;\n\tif ( stylesMemo[ styleName ] ) {\n\t\treturn stylesMemo[ styleName ];\n\t}\n\tconst computedStyles = [\n\t\tisStackedHorizontally && styles.horizontal,\n\t\thorizontalAlignment && styles[ `is-aligned-${ horizontalAlignment }` ],\n\t\tstyles.overflowVisible,\n\t];\n\tstylesMemo[ styleName ] = computedStyles;\n\treturn computedStyles;\n};\n\nexport default function BlockList( {\n\tblockWidth: initialBlockWidth,\n\tcontentResizeMode,\n\tcontentStyle,\n\tfilterInnerBlocks,\n\tgridProperties,\n\theader,\n\thorizontal,\n\thorizontalAlignment,\n\tmarginHorizontal = styles.defaultBlock.marginLeft,\n\tmarginVertical = styles.defaultBlock.marginTop,\n\tonAddBlock,\n\tonDeleteBlock,\n\torientation,\n\tparentWidth,\n\trenderAppender,\n\trenderFooterAppender,\n\trootClientId,\n\twithFooter = true,\n} ) {\n\tconst {\n\t\tblockClientIds,\n\t\tblockCount,\n\t\tblockInsertionPointIsVisible,\n\t\tisReadOnly,\n\t\tisRootList,\n\t\tisFloatingToolbarVisible,\n\t\tisStackedHorizontally,\n\t\tmaxWidth,\n\t\tisRTL,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockHierarchyRootClientId,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tgetSelectedBlockClientId,\n\t\t\t\tisBlockInsertionPointVisible,\n\t\t\t\tgetSettings,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\t\t\tconst rootBlockId = getBlockHierarchyRootClientId(\n\t\t\t\tselectedBlockClientId\n\t\t\t);\n\n\t\t\tlet blockOrder = getBlockOrder( rootClientId );\n\t\t\t// Display only block which fulfill the condition in passed `filterInnerBlocks` function.\n\t\t\tif ( filterInnerBlocks ) {\n\t\t\t\tblockOrder = filterInnerBlocks( blockOrder );\n\t\t\t}\n\n\t\t\tconst {\n\t\t\t\tisRTL: isRTLSetting,\n\t\t\t\tmaxWidth: maxWidthSetting,\n\t\t\t\treadOnly,\n\t\t\t} = getSettings();\n\n\t\t\treturn {\n\t\t\t\tblockClientIds: blockOrder,\n\t\t\t\tblockCount: getBlockCount(),\n\t\t\t\tblockInsertionPointIsVisible:\n\t\t\t\t\tPlatform.OS === 'ios' && isBlockInsertionPointVisible(),\n\t\t\t\tisReadOnly: readOnly,\n\t\t\t\tisRootList: rootClientId === undefined,\n\t\t\t\tisFloatingToolbarVisible:\n\t\t\t\t\t!! selectedBlockClientId && !! getBlockCount( rootBlockId ),\n\t\t\t\tisStackedHorizontally: orientation === 'horizontal',\n\t\t\t\tmaxWidth: maxWidthSetting,\n\t\t\t\tisRTL: isRTLSetting,\n\t\t\t};\n\t\t},\n\t\t[ filterInnerBlocks, orientation, rootClientId ]\n\t);\n\n\tconst { insertBlock, clearSelectedBlock } = useDispatch( blockEditorStore );\n\n\tconst extraData = useRef( {\n\t\tparentWidth,\n\t\trenderFooterAppender,\n\t\trenderAppender,\n\t\tonDeleteBlock,\n\t\tcontentStyle,\n\t} );\n\n\tconst [ blockWidth, setBlockWidth ] = useState( initialBlockWidth || 0 );\n\n\tconst addBlockToEndOfPost = ( newBlock ) => {\n\t\tinsertBlock( newBlock, blockCount );\n\t};\n\n\tconst scrollRef = useRef( null );\n\n\tconst shouldFlatListPreventAutomaticScroll = () =>\n\t\tblockInsertionPointIsVisible;\n\n\tconst shouldShowInnerBlockAppender = () =>\n\t\trenderAppender && blockClientIds.length > 0;\n\n\tconst getExtraData = () => {\n\t\tif (\n\t\t\textraData.current.parentWidth !== parentWidth ||\n\t\t\textraData.current.renderFooterAppender !== renderFooterAppender ||\n\t\t\textraData.current.onDeleteBlock !== onDeleteBlock ||\n\t\t\textraData.current.contentStyle !== contentStyle ||\n\t\t\textraData.current.renderAppender !== renderAppender ||\n\t\t\textraData.current.blockWidth !== blockWidth ||\n\t\t\textraData.current.gridProperties !== gridProperties\n\t\t) {\n\t\t\textraData.current = {\n\t\t\t\tparentWidth,\n\t\t\t\trenderFooterAppender,\n\t\t\t\tonDeleteBlock,\n\t\t\t\tcontentStyle,\n\t\t\t\trenderAppender,\n\t\t\t\tblockWidth,\n\t\t\t\tgridProperties,\n\t\t\t};\n\t\t}\n\t\treturn extraData.current;\n\t};\n\n\tconst onLayout = ( { nativeEvent } ) => {\n\t\tconst { layout } = nativeEvent;\n\n\t\tconst layoutWidth = Math.floor( layout.width );\n\t\tif ( isRootList && blockWidth !== layoutWidth ) {\n\t\t\tsetBlockWidth( Math.min( layoutWidth, maxWidth ) );\n\t\t} else if ( ! isRootList && ! blockWidth ) {\n\t\t\tsetBlockWidth( Math.min( layoutWidth, maxWidth ) );\n\t\t}\n\t};\n\n\tconst renderItem = ( { item: clientId, index } ) => {\n\t\t// Extracting the grid item properties here to avoid\n\t\t// re-renders in the blockListItem component.\n\t\tconst isGridItem = !! gridProperties;\n\t\tconst gridItemProps = gridProperties && {\n\t\t\tnumOfColumns: gridProperties.numColumns,\n\t\t\ttileCount: blockClientIds.length,\n\t\t\ttileIndex: blockClientIds.indexOf( clientId ),\n\t\t};\n\t\treturn (\n\t\t\t<BlockListItem\n\t\t\t\tindex={ index }\n\t\t\t\tisStackedHorizontally={ isStackedHorizontally }\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tparentWidth={ parentWidth }\n\t\t\t\tcontentResizeMode={ contentResizeMode }\n\t\t\t\tcontentStyle={ contentStyle }\n\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\tmarginVertical={ marginVertical }\n\t\t\t\tmarginHorizontal={ marginHorizontal }\n\t\t\t\tonDeleteBlock={ onDeleteBlock }\n\t\t\t\tshouldShowInnerBlockAppender={ shouldShowInnerBlockAppender }\n\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\tisGridItem={ isGridItem }\n\t\t\t\t{ ...gridItemProps }\n\t\t\t/>\n\t\t);\n\t};\n\n\tconst { blockToolbar, floatingToolbar } = styles;\n\n\tconst containerStyle = {\n\t\tflex: isRootList ? 1 : 0,\n\t\t// We set negative margin in the parent to remove the edge spacing between parent block and child block in ineer blocks.\n\t\tmarginVertical: isRootList ? 0 : -marginVertical,\n\t\tmarginHorizontal: isRootList ? 0 : -marginHorizontal,\n\t};\n\n\tconst isContentStretch = contentResizeMode === 'stretch';\n\tconst isMultiBlocks = blockClientIds.length > 1;\n\tconst { isWider } = alignmentHelpers;\n\tconst extraScrollHeight =\n\t\tblockToolbar.height +\n\t\t( isFloatingToolbarVisible ? floatingToolbar.height : 0 );\n\n\treturn (\n\t\t<View\n\t\t\tstyle={ containerStyle }\n\t\t\tonAccessibilityEscape={ clearSelectedBlock }\n\t\t\tonLayout={ onLayout }\n\t\t\ttestID=\"block-list-wrapper\"\n\t\t>\n\t\t\t{ isRootList ? (\n\t\t\t\t<BlockListProvider\n\t\t\t\t\tvalue={ {\n\t\t\t\t\t\t...DEFAULT_BLOCK_LIST_CONTEXT,\n\t\t\t\t\t\tscrollRef: scrollRef.current,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<BlockDraggableWrapper isRTL={ isRTL }>\n\t\t\t\t\t\t{ ( { onScroll } ) => (\n\t\t\t\t\t\t\t<KeyboardAwareFlatList\n\t\t\t\t\t\t\t\taccessibilityLabel=\"block-list\"\n\t\t\t\t\t\t\t\tref={ scrollRef }\n\t\t\t\t\t\t\t\textraScrollHeight={ extraScrollHeight }\n\t\t\t\t\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\t\t\t\t\textraData={ getExtraData() }\n\t\t\t\t\t\t\t\tscrollEnabled={ isRootList }\n\t\t\t\t\t\t\t\tcontentContainerStyle={ [\n\t\t\t\t\t\t\t\t\thorizontal &&\n\t\t\t\t\t\t\t\t\t\tstyles.horizontalContentContainer,\n\t\t\t\t\t\t\t\t\tisWider( blockWidth, 'medium' ) &&\n\t\t\t\t\t\t\t\t\t\t( isContentStretch && isMultiBlocks\n\t\t\t\t\t\t\t\t\t\t\t? styles.horizontalContentContainerStretch\n\t\t\t\t\t\t\t\t\t\t\t: styles.horizontalContentContainerCenter ),\n\t\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\t\tdata={ blockClientIds }\n\t\t\t\t\t\t\t\tkeyExtractor={ identity }\n\t\t\t\t\t\t\t\trenderItem={ renderItem }\n\t\t\t\t\t\t\t\tCellRendererComponent={ BlockListItemCell }\n\t\t\t\t\t\t\t\tshouldPreventAutomaticScroll={\n\t\t\t\t\t\t\t\t\tshouldFlatListPreventAutomaticScroll\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tListHeaderComponent={ header }\n\t\t\t\t\t\t\t\tListEmptyComponent={\n\t\t\t\t\t\t\t\t\t! isReadOnly && (\n\t\t\t\t\t\t\t\t\t\t<EmptyList\n\t\t\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\t\t\t\t\t\trenderFooterAppender={\n\t\t\t\t\t\t\t\t\t\t\t\trenderFooterAppender\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tListFooterComponent={\n\t\t\t\t\t\t\t\t\t<Footer\n\t\t\t\t\t\t\t\t\t\taddBlockToEndOfPost={\n\t\t\t\t\t\t\t\t\t\t\taddBlockToEndOfPost\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tisReadOnly={ isReadOnly }\n\t\t\t\t\t\t\t\t\t\trenderFooterAppender={\n\t\t\t\t\t\t\t\t\t\t\trenderFooterAppender\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\twithFooter={ withFooter }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonScroll={ onScroll }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</BlockDraggableWrapper>\n\t\t\t\t</BlockListProvider>\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t{ blockClientIds.length > 0 ? (\n\t\t\t\t\t\t<View style={ [ { flex: 0 }, styles.overflowVisible ] }>\n\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\t\t...getStyles(\n\t\t\t\t\t\t\t\t\t\tisStackedHorizontally,\n\t\t\t\t\t\t\t\t\t\thorizontalAlignment\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\thorizontal &&\n\t\t\t\t\t\t\t\t\t\tstyles.horizontalContentContainer,\n\t\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ blockClientIds.map(\n\t\t\t\t\t\t\t\t\t( currentClientId, index ) => {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<View key={ currentClientId }>\n\t\t\t\t\t\t\t\t\t\t\t\t{ renderItem( {\n\t\t\t\t\t\t\t\t\t\t\t\t\titem: currentClientId,\n\t\t\t\t\t\t\t\t\t\t\t\t\tindex,\n\t\t\t\t\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<Footer\n\t\t\t\t\t\t\t\t\taddBlockToEndOfPost={ addBlockToEndOfPost }\n\t\t\t\t\t\t\t\t\tisReadOnly={ isReadOnly }\n\t\t\t\t\t\t\t\t\trenderFooterAppender={\n\t\t\t\t\t\t\t\t\t\trenderFooterAppender\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\twithFooter={ withFooter }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<EmptyList\n\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\t\trenderFooterAppender={ renderFooterAppender }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t{ shouldShowInnerBlockAppender() && (\n\t\t\t\t<View\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tmarginHorizontal:\n\t\t\t\t\t\t\tmarginHorizontal - styles.innerAppender.marginLeft,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<BlockListAppender\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\tshowSeparator\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t) }\n\t\t</View>\n\t);\n}\n\nfunction Footer( {\n\taddBlockToEndOfPost,\n\tisReadOnly,\n\trenderFooterAppender,\n\twithFooter,\n} ) {\n\tconst onAddParagraphBlock = useCallback( () => {\n\t\tconst paragraphBlock = createBlock( 'core/paragraph' );\n\t\taddBlockToEndOfPost( paragraphBlock );\n\t}, [ addBlockToEndOfPost ] );\n\n\tif ( ! isReadOnly && withFooter ) {\n\t\treturn (\n\t\t\t<Pressable\n\t\t\t\taccessibilityLabel={ __( 'Add paragraph block' ) }\n\t\t\t\ttestID={ __( 'Add paragraph block' ) }\n\t\t\t\tonPress={ onAddParagraphBlock }\n\t\t\t>\n\t\t\t\t<View style={ styles.blockListFooter } />\n\t\t\t</Pressable>\n\t\t);\n\t} else if ( renderFooterAppender ) {\n\t\treturn <View>{ renderFooterAppender() }</View>;\n\t}\n\n\treturn null;\n}\n\nfunction EmptyList( {\n\torientation,\n\trenderAppender,\n\trenderFooterAppender,\n\trootClientId,\n} ) {\n\tconst { shouldShowInsertionPoint } = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetBlockOrder,\n\t\t\tgetBlockInsertionPoint,\n\t\t\tisBlockInsertionPointVisible,\n\t\t} = select( blockEditorStore );\n\n\t\tconst isStackedHorizontally = orientation === 'horizontal';\n\t\tconst blockClientIds = getBlockOrder( rootClientId );\n\t\tconst insertionPoint = getBlockInsertionPoint();\n\t\tconst blockInsertionPointIsVisible = isBlockInsertionPointVisible();\n\n\t\treturn {\n\t\t\tshouldShowInsertionPoint:\n\t\t\t\t! isStackedHorizontally &&\n\t\t\t\tblockInsertionPointIsVisible &&\n\t\t\t\tinsertionPoint.rootClientId === rootClientId &&\n\t\t\t\t// If list is empty, show the insertion point (via the default appender)\n\t\t\t\t( blockClientIds.length === 0 ||\n\t\t\t\t\t// Or if the insertion point is right before the denoted block.\n\t\t\t\t\t! blockClientIds[ insertionPoint.index ] ),\n\t\t};\n\t} );\n\tconst align = renderAppender ? WIDE_ALIGNMENTS.alignments.full : undefined;\n\tconst [ wrapperStyles ] = useEditorWrapperStyles( { align } );\n\n\tif ( renderFooterAppender || renderAppender === false ) {\n\t\treturn null;\n\t}\n\n\tconst containerStyles = [ styles.defaultAppender, wrapperStyles ];\n\n\treturn (\n\t\t<View style={ containerStyles }>\n\t\t\t<BlockListAppender\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\tshowSeparator={ shouldShowInsertionPoint }\n\t\t\t/>\n\t\t</View>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AAKA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAKA,IAAAK,KAAA,GAAAL,OAAA;AAKA,IAAAM,MAAA,GAAAC,sBAAA,CAAAP,OAAA;AACA,IAAAQ,kBAAA,GAAAD,sBAAA,CAAAP,OAAA;AACA,IAAAS,cAAA,GAAAF,sBAAA,CAAAP,OAAA;AACA,IAAAU,kBAAA,GAAAH,sBAAA,CAAAP,OAAA;AACA,IAAAW,iBAAA,GAAAX,OAAA;AAIA,IAAAY,eAAA,GAAAZ,OAAA;AACA,IAAAa,uBAAA,GAAAb,OAAA;AACA,IAAAc,MAAA,GAAAd,OAAA;AAAwD,IAAAe,WAAA,GAAAf,OAAA;AA/BxD;AACA;AACA;;AAGA;AACA;AACA;;AAWA;AACA;AACA;;AAaA,MAAMgB,QAAQ,GAAKC,CAAC,IAAMA,CAAC;AAE3B,MAAMC,UAAU,GAAG,CAAC,CAAC;AACrB,MAAMC,SAAS,GAAGA,CAAEC,qBAAqB,EAAEC,mBAAmB,KAAM;EACnE,MAAMC,SAAS,GAAI,GAAGF,qBAAuB,IAAIC,mBAAqB,EAAC;EACvE,IAAKH,UAAU,CAAEI,SAAS,CAAE,EAAG;IAC9B,OAAOJ,UAAU,CAAEI,SAAS,CAAE;EAC/B;EACA,MAAMC,cAAc,GAAG,CACtBH,qBAAqB,IAAII,cAAM,CAACC,UAAU,EAC1CJ,mBAAmB,IAAIG,cAAM,CAAG,cAAcH,mBAAqB,EAAC,CAAE,EACtEG,cAAM,CAACE,eAAe,CACtB;EACDR,UAAU,CAAEI,SAAS,CAAE,GAAGC,cAAc;EACxC,OAAOA,cAAc;AACtB,CAAC;AAEc,SAASI,SAASA,CAAE;EAClCC,UAAU,EAAEC,iBAAiB;EAC7BC,iBAAiB;EACjBC,YAAY;EACZC,iBAAiB;EACjBC,cAAc;EACdC,MAAM;EACNT,UAAU;EACVJ,mBAAmB;EACnBc,gBAAgB,GAAGX,cAAM,CAACY,YAAY,CAACC,UAAU;EACjDC,cAAc,GAAGd,cAAM,CAACY,YAAY,CAACG,SAAS;EAC9CC,UAAU;EACVC,aAAa;EACbC,WAAW;EACXC,WAAW;EACXC,cAAc;EACdC,oBAAoB;EACpBC,YAAY;EACZC,UAAU,GAAG;AACd,CAAC,EAAG;EACH,MAAM;IACLC,cAAc;IACdC,UAAU;IACVC,4BAA4B;IAC5BC,UAAU;IACVC,UAAU;IACVC,wBAAwB;IACxBjC,qBAAqB;IACrBkC,QAAQ;IACRC;EACD,CAAC,GAAG,IAAAC,eAAS,EACVC,MAAM,IAAM;IACb,MAAM;MACLC,aAAa;MACbC,6BAA6B;MAC7BC,aAAa;MACbC,wBAAwB;MACxBC,4BAA4B;MAC5BC;IACD,CAAC,GAAGN,MAAM,CAAEO,YAAiB,CAAC;IAE9B,MAAMC,qBAAqB,GAAGJ,wBAAwB,CAAC,CAAC;IACxD,MAAMK,WAAW,GAAGP,6BAA6B,CAChDM,qBACD,CAAC;IAED,IAAIE,UAAU,GAAGP,aAAa,CAAEd,YAAa,CAAC;IAC9C;IACA,IAAKd,iBAAiB,EAAG;MACxBmC,UAAU,GAAGnC,iBAAiB,CAAEmC,UAAW,CAAC;IAC7C;IAEA,MAAM;MACLZ,KAAK,EAAEa,YAAY;MACnBd,QAAQ,EAAEe,eAAe;MACzBC;IACD,CAAC,GAAGP,WAAW,CAAC,CAAC;IAEjB,OAAO;MACNf,cAAc,EAAEmB,UAAU;MAC1BlB,UAAU,EAAES,aAAa,CAAC,CAAC;MAC3BR,4BAA4B,EAC3BqB,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAIV,4BAA4B,CAAC,CAAC;MACxDX,UAAU,EAAEmB,QAAQ;MACpBlB,UAAU,EAAEN,YAAY,KAAK2B,SAAS;MACtCpB,wBAAwB,EACvB,CAAC,CAAEY,qBAAqB,IAAI,CAAC,CAAEP,aAAa,CAAEQ,WAAY,CAAC;MAC5D9C,qBAAqB,EAAEsB,WAAW,KAAK,YAAY;MACnDY,QAAQ,EAAEe,eAAe;MACzBd,KAAK,EAAEa;IACR,CAAC;EACF,CAAC,EACD,CAAEpC,iBAAiB,EAAEU,WAAW,EAAEI,YAAY,CAC/C,CAAC;EAED,MAAM;IAAE4B,WAAW;IAAEC;EAAmB,CAAC,GAAG,IAAAC,iBAAW,EAAEZ,YAAiB,CAAC;EAE3E,MAAMa,SAAS,GAAG,IAAAC,eAAM,EAAE;IACzBnC,WAAW;IACXE,oBAAoB;IACpBD,cAAc;IACdH,aAAa;IACbV;EACD,CAAE,CAAC;EAEH,MAAM,CAAEH,UAAU,EAAEmD,aAAa,CAAE,GAAG,IAAAC,iBAAQ,EAAEnD,iBAAiB,IAAI,CAAE,CAAC;EAExE,MAAMoD,mBAAmB,GAAKC,QAAQ,IAAM;IAC3CR,WAAW,CAAEQ,QAAQ,EAAEjC,UAAW,CAAC;EACpC,CAAC;EAED,MAAMkC,SAAS,GAAG,IAAAL,eAAM,EAAE,IAAK,CAAC;EAEhC,MAAMM,oCAAoC,GAAGA,CAAA,KAC5ClC,4BAA4B;EAE7B,MAAMmC,4BAA4B,GAAGA,CAAA,KACpCzC,cAAc,IAAII,cAAc,CAACsC,MAAM,GAAG,CAAC;EAE5C,MAAMC,YAAY,GAAGA,CAAA,KAAM;IAC1B,IACCV,SAAS,CAACW,OAAO,CAAC7C,WAAW,KAAKA,WAAW,IAC7CkC,SAAS,CAACW,OAAO,CAAC3C,oBAAoB,KAAKA,oBAAoB,IAC/DgC,SAAS,CAACW,OAAO,CAAC/C,aAAa,KAAKA,aAAa,IACjDoC,SAAS,CAACW,OAAO,CAACzD,YAAY,KAAKA,YAAY,IAC/C8C,SAAS,CAACW,OAAO,CAAC5C,cAAc,KAAKA,cAAc,IACnDiC,SAAS,CAACW,OAAO,CAAC5D,UAAU,KAAKA,UAAU,IAC3CiD,SAAS,CAACW,OAAO,CAACvD,cAAc,KAAKA,cAAc,EAClD;MACD4C,SAAS,CAACW,OAAO,GAAG;QACnB7C,WAAW;QACXE,oBAAoB;QACpBJ,aAAa;QACbV,YAAY;QACZa,cAAc;QACdhB,UAAU;QACVK;MACD,CAAC;IACF;IACA,OAAO4C,SAAS,CAACW,OAAO;EACzB,CAAC;EAED,MAAMC,QAAQ,GAAGA,CAAE;IAAEC;EAAY,CAAC,KAAM;IACvC,MAAM;MAAEC;IAAO,CAAC,GAAGD,WAAW;IAE9B,MAAME,WAAW,GAAGC,IAAI,CAACC,KAAK,CAAEH,MAAM,CAACI,KAAM,CAAC;IAC9C,IAAK3C,UAAU,IAAIxB,UAAU,KAAKgE,WAAW,EAAG;MAC/Cb,aAAa,CAAEc,IAAI,CAACG,GAAG,CAAEJ,WAAW,EAAEtC,QAAS,CAAE,CAAC;IACnD,CAAC,MAAM,IAAK,CAAEF,UAAU,IAAI,CAAExB,UAAU,EAAG;MAC1CmD,aAAa,CAAEc,IAAI,CAACG,GAAG,CAAEJ,WAAW,EAAEtC,QAAS,CAAE,CAAC;IACnD;EACD,CAAC;EAED,MAAM2C,UAAU,GAAGA,CAAE;IAAEC,IAAI,EAAEC,QAAQ;IAAEC;EAAM,CAAC,KAAM;IACnD;IACA;IACA,MAAMC,UAAU,GAAG,CAAC,CAAEpE,cAAc;IACpC,MAAMqE,aAAa,GAAGrE,cAAc,IAAI;MACvCsE,YAAY,EAAEtE,cAAc,CAACuE,UAAU;MACvCC,SAAS,EAAEzD,cAAc,CAACsC,MAAM;MAChCoB,SAAS,EAAE1D,cAAc,CAAC2D,OAAO,CAAER,QAAS;IAC7C,CAAC;IACD,oBACC,IAAApF,WAAA,CAAA6F,GAAA,EAACnG,cAAA,CAAAoG,OAAa;MACbT,KAAK,EAAGA,KAAO;MACfhF,qBAAqB,EAAGA,qBAAuB;MAC/C0B,YAAY,EAAGA,YAAc;MAC7BqD,QAAQ,EAAGA,QAAU;MACrBxD,WAAW,EAAGA,WAAa;MAC3Bb,iBAAiB,EAAGA,iBAAmB;MACvCC,YAAY,EAAGA,YAAc;MAC7BS,UAAU,EAAGA,UAAY;MACzBF,cAAc,EAAGA,cAAgB;MACjCH,gBAAgB,EAAGA,gBAAkB;MACrCM,aAAa,EAAGA,aAAe;MAC/B4C,4BAA4B,EAAGA,4BAA8B;MAC7DzD,UAAU,EAAGA,UAAY;MACzByE,UAAU,EAAGA,UAAY;MAAA,GACpBC;IAAa,CAClB,CAAC;EAEJ,CAAC;EAED,MAAM;IAAEQ,YAAY;IAAEC;EAAgB,CAAC,GAAGvF,cAAM;EAEhD,MAAMwF,cAAc,GAAG;IACtBC,IAAI,EAAE7D,UAAU,GAAG,CAAC,GAAG,CAAC;IACxB;IACAd,cAAc,EAAEc,UAAU,GAAG,CAAC,GAAG,CAACd,cAAc;IAChDH,gBAAgB,EAAEiB,UAAU,GAAG,CAAC,GAAG,CAACjB;EACrC,CAAC;EAED,MAAM+E,gBAAgB,GAAGpF,iBAAiB,KAAK,SAAS;EACxD,MAAMqF,aAAa,GAAGnE,cAAc,CAACsC,MAAM,GAAG,CAAC;EAC/C,MAAM;IAAE8B;EAAQ,CAAC,GAAGC,4BAAgB;EACpC,MAAMC,iBAAiB,GACtBR,YAAY,CAACS,MAAM,IACjBlE,wBAAwB,GAAG0D,eAAe,CAACQ,MAAM,GAAG,CAAC,CAAE;EAE1D,oBACC,IAAAxG,WAAA,CAAAyG,IAAA,EAACzH,YAAA,CAAA0H,IAAI;IACJC,KAAK,EAAGV,cAAgB;IACxBW,qBAAqB,EAAGhD,kBAAoB;IAC5Cc,QAAQ,EAAGA,QAAU;IACrBmC,MAAM,EAAC,oBAAoB;IAAAC,QAAA,GAEzBzE,UAAU,gBACX,IAAArC,WAAA,CAAA6F,GAAA,EAACjG,iBAAA,CAAAmH,iBAAiB;MACjBC,KAAK,EAAG;QACP,GAAGC,4CAA0B;QAC7B7C,SAAS,EAAEA,SAAS,CAACK;MACtB,CAAG;MAAAqC,QAAA,eAEH,IAAA9G,WAAA,CAAA6F,GAAA,EAAChG,eAAA,CAAAqH,qBAAqB;QAAC1E,KAAK,EAAGA,KAAO;QAAAsE,QAAA,EACnCA,CAAE;UAAEK;QAAS,CAAC,kBACf,IAAAnH,WAAA,CAAA6F,GAAA,EAACxG,WAAA,CAAA+H,qBAAqB;UACrBC,kBAAkB,EAAC,YAAY;UAC/BC,GAAG,EAAGlD,SAAW;UACjBmC,iBAAiB,EAAGA,iBAAmB;UACvCgB,yBAAyB,EAAC,QAAQ;UAClCzD,SAAS,EAAGU,YAAY,CAAC,CAAG;UAC5BgD,aAAa,EAAGnF,UAAY;UAC5BoF,qBAAqB,EAAG,CACvB/G,UAAU,IACTD,cAAM,CAACiH,0BAA0B,EAClCrB,OAAO,CAAExF,UAAU,EAAE,QAAS,CAAC,KAC5BsF,gBAAgB,IAAIC,aAAa,GAChC3F,cAAM,CAACkH,iCAAiC,GACxClH,cAAM,CAACmH,gCAAgC,CAAE,CAC3C;UACHC,IAAI,EAAG5F,cAAgB;UACvB6F,YAAY,EAAG7H,QAAU;UACzBiF,UAAU,EAAGA,UAAY;UACzB6C,qBAAqB,EAAGC,0BAAmB;UAC3CC,4BAA4B,EAC3B5D,oCACA;UACD6D,mBAAmB,EAAG/G,MAAQ;UAC9BgH,kBAAkB,EACjB,CAAE/F,UAAU,iBACX,IAAApC,WAAA,CAAA6F,GAAA,EAACuC,SAAS;YACTzG,WAAW,EAAGA,WAAa;YAC3BI,YAAY,EAAGA,YAAc;YAC7BF,cAAc,EAAGA,cAAgB;YACjCC,oBAAoB,EACnBA;UACA,CACD,CAEF;UACDuG,mBAAmB,eAClB,IAAArI,WAAA,CAAA6F,GAAA,EAACyC,MAAM;YACNpE,mBAAmB,EAClBA,mBACA;YACD9B,UAAU,EAAGA,UAAY;YACzBN,oBAAoB,EACnBA,oBACA;YACDE,UAAU,EAAGA;UAAY,CACzB,CACD;UACDmF,QAAQ,EAAGA;QAAU,CACrB;MACD,CACqB;IAAC,CACN,CAAC,gBAEpB,IAAAnH,WAAA,CAAA6F,GAAA,EAAA7F,WAAA,CAAAuI,QAAA;MAAAzB,QAAA,EACG7E,cAAc,CAACsC,MAAM,GAAG,CAAC,gBAC1B,IAAAvE,WAAA,CAAA6F,GAAA,EAAC7G,YAAA,CAAA0H,IAAI;QAACC,KAAK,EAAG,CAAE;UAAET,IAAI,EAAE;QAAE,CAAC,EAAEzF,cAAM,CAACE,eAAe,CAAI;QAAAmG,QAAA,eACtD,IAAA9G,WAAA,CAAAyG,IAAA,EAACzH,YAAA,CAAA0H,IAAI;UACJC,KAAK,EAAG,CACP,GAAGvG,SAAS,CACXC,qBAAqB,EACrBC,mBACD,CAAC,EACDI,UAAU,IACTD,cAAM,CAACiH,0BAA0B,CAChC;UAAAZ,QAAA,GAED7E,cAAc,CAACuG,GAAG,CACnB,CAAEC,eAAe,EAAEpD,KAAK,KAAM;YAC7B,oBACC,IAAArF,WAAA,CAAA6F,GAAA,EAAC7G,YAAA,CAAA0H,IAAI;cAAAI,QAAA,EACF5B,UAAU,CAAE;gBACbC,IAAI,EAAEsD,eAAe;gBACrBpD;cACD,CAAE;YAAC,GAJQoD,eAKN,CAAC;UAET,CACD,CAAC,eACD,IAAAzI,WAAA,CAAA6F,GAAA,EAACyC,MAAM;YACNpE,mBAAmB,EAAGA,mBAAqB;YAC3C9B,UAAU,EAAGA,UAAY;YACzBN,oBAAoB,EACnBA,oBACA;YACDE,UAAU,EAAGA;UAAY,CACzB,CAAC;QAAA,CACG;MAAC,CACF,CAAC,gBAEP,IAAAhC,WAAA,CAAA6F,GAAA,EAACuC,SAAS;QACTzG,WAAW,EAAGA,WAAa;QAC3BI,YAAY,EAAGA,YAAc;QAC7BF,cAAc,EAAGA,cAAgB;QACjCC,oBAAoB,EAAGA;MAAsB,CAC7C;IACD,CACA,CACF,EACCwC,4BAA4B,CAAC,CAAC,iBAC/B,IAAAtE,WAAA,CAAA6F,GAAA,EAAC7G,YAAA,CAAA0H,IAAI;MACJC,KAAK,EAAG;QACPvF,gBAAgB,EACfA,gBAAgB,GAAGX,cAAM,CAACiI,aAAa,CAACpH;MAC1C,CAAG;MAAAwF,QAAA,eAEH,IAAA9G,WAAA,CAAA6F,GAAA,EAACpG,kBAAA,CAAAqG,OAAiB;QACjB/D,YAAY,EAAGA,YAAc;QAC7BF,cAAc,EAAGA,cAAgB;QACjC8G,aAAa;MAAA,CACb;IAAC,CACG,CACN;EAAA,CACI,CAAC;AAET;AAEA,SAASL,MAAMA,CAAE;EAChBpE,mBAAmB;EACnB9B,UAAU;EACVN,oBAAoB;EACpBE;AACD,CAAC,EAAG;EACH,MAAM4G,mBAAmB,GAAG,IAAAC,oBAAW,EAAE,MAAM;IAC9C,MAAMC,cAAc,GAAG,IAAAC,mBAAW,EAAE,gBAAiB,CAAC;IACtD7E,mBAAmB,CAAE4E,cAAe,CAAC;EACtC,CAAC,EAAE,CAAE5E,mBAAmB,CAAG,CAAC;EAE5B,IAAK,CAAE9B,UAAU,IAAIJ,UAAU,EAAG;IACjC,oBACC,IAAAhC,WAAA,CAAA6F,GAAA,EAAC7G,YAAA,CAAAgK,SAAS;MACT3B,kBAAkB,EAAG,IAAA4B,QAAE,EAAE,qBAAsB,CAAG;MAClDpC,MAAM,EAAG,IAAAoC,QAAE,EAAE,qBAAsB,CAAG;MACtCC,OAAO,EAAGN,mBAAqB;MAAA9B,QAAA,eAE/B,IAAA9G,WAAA,CAAA6F,GAAA,EAAC7G,YAAA,CAAA0H,IAAI;QAACC,KAAK,EAAGlG,cAAM,CAAC0I;MAAiB,CAAE;IAAC,CAC/B,CAAC;EAEd,CAAC,MAAM,IAAKrH,oBAAoB,EAAG;IAClC,oBAAO,IAAA9B,WAAA,CAAA6F,GAAA,EAAC7G,YAAA,CAAA0H,IAAI;MAAAI,QAAA,EAAGhF,oBAAoB,CAAC;IAAC,CAAQ,CAAC;EAC/C;EAEA,OAAO,IAAI;AACZ;AAEA,SAASsG,SAASA,CAAE;EACnBzG,WAAW;EACXE,cAAc;EACdC,oBAAoB;EACpBC;AACD,CAAC,EAAG;EACH,MAAM;IAAEqH;EAAyB,CAAC,GAAG,IAAA3G,eAAS,EAAIC,MAAM,IAAM;IAC7D,MAAM;MACLG,aAAa;MACbwG,sBAAsB;MACtBtG;IACD,CAAC,GAAGL,MAAM,CAAEO,YAAiB,CAAC;IAE9B,MAAM5C,qBAAqB,GAAGsB,WAAW,KAAK,YAAY;IAC1D,MAAMM,cAAc,GAAGY,aAAa,CAAEd,YAAa,CAAC;IACpD,MAAMuH,cAAc,GAAGD,sBAAsB,CAAC,CAAC;IAC/C,MAAMlH,4BAA4B,GAAGY,4BAA4B,CAAC,CAAC;IAEnE,OAAO;MACNqG,wBAAwB,EACvB,CAAE/I,qBAAqB,IACvB8B,4BAA4B,IAC5BmH,cAAc,CAACvH,YAAY,KAAKA,YAAY;MAC5C;MACEE,cAAc,CAACsC,MAAM,KAAK,CAAC;MAC5B;MACA,CAAEtC,cAAc,CAAEqH,cAAc,CAACjE,KAAK,CAAE;IAC3C,CAAC;EACF,CAAE,CAAC;EACH,MAAMkE,KAAK,GAAG1H,cAAc,GAAG2H,2BAAe,CAACC,UAAU,CAACC,IAAI,GAAGhG,SAAS;EAC1E,MAAM,CAAEiG,aAAa,CAAE,GAAG,IAAAC,8CAAsB,EAAE;IAAEL;EAAM,CAAE,CAAC;EAE7D,IAAKzH,oBAAoB,IAAID,cAAc,KAAK,KAAK,EAAG;IACvD,OAAO,IAAI;EACZ;EAEA,MAAMgI,eAAe,GAAG,CAAEpJ,cAAM,CAACqJ,eAAe,EAAEH,aAAa,CAAE;EAEjE,oBACC,IAAA3J,WAAA,CAAA6F,GAAA,EAAC7G,YAAA,CAAA0H,IAAI;IAACC,KAAK,EAAGkD,eAAiB;IAAA/C,QAAA,eAC9B,IAAA9G,WAAA,CAAA6F,GAAA,EAACpG,kBAAA,CAAAqG,OAAiB;MACjB/D,YAAY,EAAGA,YAAc;MAC7BF,cAAc,EAAGA,cAAgB;MACjC8G,aAAa,EAAGS;IAA0B,CAC1C;EAAC,CACG,CAAC;AAET","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_element","_data","_blocks","_components","_i18n","_style","_interopRequireDefault","_blockListAppender","_blockListItem","_blockListItemCell","_blockListContext","_blockDraggable","_useEditorWrapperStyles","_store","_jsxRuntime","identity","x","stylesMemo","getStyles","isStackedHorizontally","horizontalAlignment","styleName","computedStyles","styles","horizontal","overflowVisible","BlockList","blockWidth","initialBlockWidth","contentResizeMode","contentStyle","filterInnerBlocks","gridProperties","header","marginHorizontal","defaultBlock","marginLeft","marginVertical","marginTop","onAddBlock","onDeleteBlock","orientation","parentWidth","renderAppender","renderFooterAppender","rootClientId","withFooter","blockClientIds","blockCount","blockInsertionPointIsVisible","isReadOnly","isRootList","isFloatingToolbarVisible","maxWidth","isRTL","useSelect","select","getBlockCount","getBlockHierarchyRootClientId","getBlockOrder","getSelectedBlockClientId","isBlockInsertionPointVisible","getSettings","blockEditorStore","selectedBlockClientId","rootBlockId","blockOrder","isRTLSetting","maxWidthSetting","readOnly","Platform","OS","undefined","insertBlock","clearSelectedBlock","useDispatch","extraData","useRef","setBlockWidth","useState","addBlockToEndOfPost","newBlock","scrollRef","shouldFlatListPreventAutomaticScroll","shouldShowInnerBlockAppender","length","getExtraData","current","onLayout","nativeEvent","layout","layoutWidth","Math","floor","width","min","renderItem","item","clientId","index","isGridItem","gridItemProps","numOfColumns","numColumns","tileCount","tileIndex","indexOf","jsx","default","blockToolbar","floatingToolbar","containerStyle","flex","isContentStretch","isMultiBlocks","isWider","alignmentHelpers","extraScrollHeight","height","jsxs","View","style","onAccessibilityEscape","testID","children","BlockListProvider","value","DEFAULT_BLOCK_LIST_CONTEXT","BlockDraggableWrapper","onScroll","KeyboardAwareFlatList","accessibilityLabel","ref","keyboardShouldPersistTaps","scrollEnabled","contentContainerStyle","horizontalContentContainer","horizontalContentContainerStretch","horizontalContentContainerCenter","data","keyExtractor","CellRendererComponent","BlockListItemCell","shouldPreventAutomaticScroll","ListHeaderComponent","ListEmptyComponent","EmptyList","ListFooterComponent","Footer","Fragment","map","currentClientId","innerAppender","showSeparator","onAddParagraphBlock","useCallback","paragraphBlock","createBlock","Pressable","__","onPress","blockListFooter","shouldShowInsertionPoint","getBlockInsertionPoint","insertionPoint","align","WIDE_ALIGNMENTS","alignments","full","wrapperStyles","useEditorWrapperStyles","containerStyles","defaultAppender"],"sources":["@wordpress/block-editor/src/components/block-list/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, Platform, Pressable } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useRef, useState, useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { createBlock } from '@wordpress/blocks';\nimport {\n\tKeyboardAwareFlatList,\n\tWIDE_ALIGNMENTS,\n\talignmentHelpers,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport BlockListAppender from '../block-list-appender';\nimport BlockListItem from './block-list-item';\nimport BlockListItemCell from './block-list-item-cell';\nimport {\n\tBlockListProvider,\n\tDEFAULT_BLOCK_LIST_CONTEXT,\n} from './block-list-context';\nimport { BlockDraggableWrapper } from '../block-draggable';\nimport { useEditorWrapperStyles } from '../../hooks/use-editor-wrapper-styles';\nimport { store as blockEditorStore } from '../../store';\n\nconst identity = ( x ) => x;\n\nconst stylesMemo = {};\nconst getStyles = ( isStackedHorizontally, horizontalAlignment ) => {\n\tconst styleName = `${ isStackedHorizontally }-${ horizontalAlignment }`;\n\tif ( stylesMemo[ styleName ] ) {\n\t\treturn stylesMemo[ styleName ];\n\t}\n\tconst computedStyles = [\n\t\tisStackedHorizontally && styles.horizontal,\n\t\thorizontalAlignment && styles[ `is-aligned-${ horizontalAlignment }` ],\n\t\tstyles.overflowVisible,\n\t];\n\tstylesMemo[ styleName ] = computedStyles;\n\treturn computedStyles;\n};\n\nexport default function BlockList( {\n\tblockWidth: initialBlockWidth,\n\tcontentResizeMode,\n\tcontentStyle,\n\tfilterInnerBlocks,\n\tgridProperties,\n\theader,\n\thorizontal,\n\thorizontalAlignment,\n\tmarginHorizontal = styles.defaultBlock.marginLeft,\n\tmarginVertical = styles.defaultBlock.marginTop,\n\tonAddBlock,\n\tonDeleteBlock,\n\torientation,\n\tparentWidth,\n\trenderAppender,\n\trenderFooterAppender,\n\trootClientId,\n\twithFooter = true,\n} ) {\n\tconst {\n\t\tblockClientIds,\n\t\tblockCount,\n\t\tblockInsertionPointIsVisible,\n\t\tisReadOnly,\n\t\tisRootList,\n\t\tisFloatingToolbarVisible,\n\t\tisStackedHorizontally,\n\t\tmaxWidth,\n\t\tisRTL,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockHierarchyRootClientId,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tgetSelectedBlockClientId,\n\t\t\t\tisBlockInsertionPointVisible,\n\t\t\t\tgetSettings,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\t\t\tconst rootBlockId = getBlockHierarchyRootClientId(\n\t\t\t\tselectedBlockClientId\n\t\t\t);\n\n\t\t\tlet blockOrder = getBlockOrder( rootClientId );\n\t\t\t// Display only block which fulfill the condition in passed `filterInnerBlocks` function.\n\t\t\tif ( filterInnerBlocks ) {\n\t\t\t\tblockOrder = filterInnerBlocks( blockOrder );\n\t\t\t}\n\n\t\t\tconst {\n\t\t\t\tisRTL: isRTLSetting,\n\t\t\t\tmaxWidth: maxWidthSetting,\n\t\t\t\treadOnly,\n\t\t\t} = getSettings();\n\n\t\t\treturn {\n\t\t\t\tblockClientIds: blockOrder,\n\t\t\t\tblockCount: getBlockCount(),\n\t\t\t\tblockInsertionPointIsVisible:\n\t\t\t\t\tPlatform.OS === 'ios' && isBlockInsertionPointVisible(),\n\t\t\t\tisReadOnly: readOnly,\n\t\t\t\tisRootList: rootClientId === undefined,\n\t\t\t\tisFloatingToolbarVisible:\n\t\t\t\t\t!! selectedBlockClientId && !! getBlockCount( rootBlockId ),\n\t\t\t\tisStackedHorizontally: orientation === 'horizontal',\n\t\t\t\tmaxWidth: maxWidthSetting,\n\t\t\t\tisRTL: isRTLSetting,\n\t\t\t};\n\t\t},\n\t\t[ filterInnerBlocks, orientation, rootClientId ]\n\t);\n\n\tconst { insertBlock, clearSelectedBlock } = useDispatch( blockEditorStore );\n\n\tconst extraData = useRef( {\n\t\tparentWidth,\n\t\trenderFooterAppender,\n\t\trenderAppender,\n\t\tonDeleteBlock,\n\t\tcontentStyle,\n\t} );\n\n\tconst [ blockWidth, setBlockWidth ] = useState( initialBlockWidth || 0 );\n\n\tconst addBlockToEndOfPost = ( newBlock ) => {\n\t\tinsertBlock( newBlock, blockCount );\n\t};\n\n\tconst scrollRef = useRef( null );\n\n\tconst shouldFlatListPreventAutomaticScroll = () =>\n\t\tblockInsertionPointIsVisible;\n\n\tconst shouldShowInnerBlockAppender = () =>\n\t\trenderAppender && blockClientIds.length > 0;\n\n\tconst getExtraData = () => {\n\t\tif (\n\t\t\textraData.current.parentWidth !== parentWidth ||\n\t\t\textraData.current.renderFooterAppender !== renderFooterAppender ||\n\t\t\textraData.current.onDeleteBlock !== onDeleteBlock ||\n\t\t\textraData.current.contentStyle !== contentStyle ||\n\t\t\textraData.current.renderAppender !== renderAppender ||\n\t\t\textraData.current.blockWidth !== blockWidth ||\n\t\t\textraData.current.gridProperties !== gridProperties\n\t\t) {\n\t\t\textraData.current = {\n\t\t\t\tparentWidth,\n\t\t\t\trenderFooterAppender,\n\t\t\t\tonDeleteBlock,\n\t\t\t\tcontentStyle,\n\t\t\t\trenderAppender,\n\t\t\t\tblockWidth,\n\t\t\t\tgridProperties,\n\t\t\t};\n\t\t}\n\t\treturn extraData.current;\n\t};\n\n\tconst onLayout = ( { nativeEvent } ) => {\n\t\tconst { layout } = nativeEvent;\n\n\t\tconst layoutWidth = Math.floor( layout.width );\n\t\tif ( isRootList && blockWidth !== layoutWidth ) {\n\t\t\tsetBlockWidth( Math.min( layoutWidth, maxWidth ) );\n\t\t} else if ( ! isRootList && ! blockWidth ) {\n\t\t\tsetBlockWidth( Math.min( layoutWidth, maxWidth ) );\n\t\t}\n\t};\n\n\tconst renderItem = ( { item: clientId, index } ) => {\n\t\t// Extracting the grid item properties here to avoid\n\t\t// re-renders in the blockListItem component.\n\t\tconst isGridItem = !! gridProperties;\n\t\tconst gridItemProps = gridProperties && {\n\t\t\tnumOfColumns: gridProperties.numColumns,\n\t\t\ttileCount: blockClientIds.length,\n\t\t\ttileIndex: blockClientIds.indexOf( clientId ),\n\t\t};\n\t\treturn (\n\t\t\t<BlockListItem\n\t\t\t\tindex={ index }\n\t\t\t\tisStackedHorizontally={ isStackedHorizontally }\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tparentWidth={ parentWidth }\n\t\t\t\tcontentResizeMode={ contentResizeMode }\n\t\t\t\tcontentStyle={ contentStyle }\n\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\tmarginVertical={ marginVertical }\n\t\t\t\tmarginHorizontal={ marginHorizontal }\n\t\t\t\tonDeleteBlock={ onDeleteBlock }\n\t\t\t\tshouldShowInnerBlockAppender={ shouldShowInnerBlockAppender }\n\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\tisGridItem={ isGridItem }\n\t\t\t\t{ ...gridItemProps }\n\t\t\t/>\n\t\t);\n\t};\n\n\tconst { blockToolbar, floatingToolbar } = styles;\n\n\tconst containerStyle = {\n\t\tflex: isRootList ? 1 : 0,\n\t\t// We set negative margin in the parent to remove the edge spacing between parent block and child block in ineer blocks.\n\t\tmarginVertical: isRootList ? 0 : -marginVertical,\n\t\tmarginHorizontal: isRootList ? 0 : -marginHorizontal,\n\t};\n\n\tconst isContentStretch = contentResizeMode === 'stretch';\n\tconst isMultiBlocks = blockClientIds.length > 1;\n\tconst { isWider } = alignmentHelpers;\n\tconst extraScrollHeight =\n\t\tblockToolbar.height +\n\t\t( isFloatingToolbarVisible ? floatingToolbar.height : 0 );\n\n\treturn (\n\t\t<View\n\t\t\tstyle={ containerStyle }\n\t\t\tonAccessibilityEscape={ clearSelectedBlock }\n\t\t\tonLayout={ onLayout }\n\t\t\ttestID=\"block-list-wrapper\"\n\t\t>\n\t\t\t{ isRootList ? (\n\t\t\t\t<BlockListProvider\n\t\t\t\t\tvalue={ {\n\t\t\t\t\t\t...DEFAULT_BLOCK_LIST_CONTEXT,\n\t\t\t\t\t\tscrollRef: scrollRef.current,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<BlockDraggableWrapper isRTL={ isRTL }>\n\t\t\t\t\t\t{ ( { onScroll } ) => (\n\t\t\t\t\t\t\t<KeyboardAwareFlatList\n\t\t\t\t\t\t\t\taccessibilityLabel=\"block-list\"\n\t\t\t\t\t\t\t\tref={ scrollRef }\n\t\t\t\t\t\t\t\textraScrollHeight={ extraScrollHeight }\n\t\t\t\t\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\t\t\t\t\textraData={ getExtraData() }\n\t\t\t\t\t\t\t\tscrollEnabled={ isRootList }\n\t\t\t\t\t\t\t\tcontentContainerStyle={ [\n\t\t\t\t\t\t\t\t\thorizontal &&\n\t\t\t\t\t\t\t\t\t\tstyles.horizontalContentContainer,\n\t\t\t\t\t\t\t\t\tisWider( blockWidth, 'medium' ) &&\n\t\t\t\t\t\t\t\t\t\t( isContentStretch && isMultiBlocks\n\t\t\t\t\t\t\t\t\t\t\t? styles.horizontalContentContainerStretch\n\t\t\t\t\t\t\t\t\t\t\t: styles.horizontalContentContainerCenter ),\n\t\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\t\tdata={ blockClientIds }\n\t\t\t\t\t\t\t\tkeyExtractor={ identity }\n\t\t\t\t\t\t\t\trenderItem={ renderItem }\n\t\t\t\t\t\t\t\tCellRendererComponent={ BlockListItemCell }\n\t\t\t\t\t\t\t\tshouldPreventAutomaticScroll={\n\t\t\t\t\t\t\t\t\tshouldFlatListPreventAutomaticScroll\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tListHeaderComponent={ header }\n\t\t\t\t\t\t\t\tListEmptyComponent={\n\t\t\t\t\t\t\t\t\t! isReadOnly && (\n\t\t\t\t\t\t\t\t\t\t<EmptyList\n\t\t\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\t\t\t\t\t\trenderFooterAppender={\n\t\t\t\t\t\t\t\t\t\t\t\trenderFooterAppender\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tListFooterComponent={\n\t\t\t\t\t\t\t\t\t<Footer\n\t\t\t\t\t\t\t\t\t\taddBlockToEndOfPost={\n\t\t\t\t\t\t\t\t\t\t\taddBlockToEndOfPost\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tisReadOnly={ isReadOnly }\n\t\t\t\t\t\t\t\t\t\trenderFooterAppender={\n\t\t\t\t\t\t\t\t\t\t\trenderFooterAppender\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\twithFooter={ withFooter }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonScroll={ onScroll }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</BlockDraggableWrapper>\n\t\t\t\t</BlockListProvider>\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t{ blockClientIds.length > 0 ? (\n\t\t\t\t\t\t<View style={ [ { flex: 0 }, styles.overflowVisible ] }>\n\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\t\t...getStyles(\n\t\t\t\t\t\t\t\t\t\tisStackedHorizontally,\n\t\t\t\t\t\t\t\t\t\thorizontalAlignment\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\thorizontal &&\n\t\t\t\t\t\t\t\t\t\tstyles.horizontalContentContainer,\n\t\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ blockClientIds.map(\n\t\t\t\t\t\t\t\t\t( currentClientId, index ) => {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<View key={ currentClientId }>\n\t\t\t\t\t\t\t\t\t\t\t\t{ renderItem( {\n\t\t\t\t\t\t\t\t\t\t\t\t\titem: currentClientId,\n\t\t\t\t\t\t\t\t\t\t\t\t\tindex,\n\t\t\t\t\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<Footer\n\t\t\t\t\t\t\t\t\taddBlockToEndOfPost={ addBlockToEndOfPost }\n\t\t\t\t\t\t\t\t\tisReadOnly={ isReadOnly }\n\t\t\t\t\t\t\t\t\trenderFooterAppender={\n\t\t\t\t\t\t\t\t\t\trenderFooterAppender\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\twithFooter={ withFooter }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<EmptyList\n\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\t\trenderFooterAppender={ renderFooterAppender }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t{ shouldShowInnerBlockAppender() && (\n\t\t\t\t<View\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tmarginHorizontal:\n\t\t\t\t\t\t\tmarginHorizontal - styles.innerAppender.marginLeft,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<BlockListAppender\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\tshowSeparator\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t) }\n\t\t</View>\n\t);\n}\n\nfunction Footer( {\n\taddBlockToEndOfPost,\n\tisReadOnly,\n\trenderFooterAppender,\n\twithFooter,\n} ) {\n\tconst onAddParagraphBlock = useCallback( () => {\n\t\tconst paragraphBlock = createBlock( 'core/paragraph' );\n\t\taddBlockToEndOfPost( paragraphBlock );\n\t}, [ addBlockToEndOfPost ] );\n\n\tif ( ! isReadOnly && withFooter ) {\n\t\treturn (\n\t\t\t<Pressable\n\t\t\t\taccessibilityLabel={ __( 'Add paragraph block' ) }\n\t\t\t\ttestID={ __( 'Add paragraph block' ) }\n\t\t\t\tonPress={ onAddParagraphBlock }\n\t\t\t>\n\t\t\t\t<View style={ styles.blockListFooter } />\n\t\t\t</Pressable>\n\t\t);\n\t} else if ( renderFooterAppender ) {\n\t\treturn <View>{ renderFooterAppender() }</View>;\n\t}\n\n\treturn null;\n}\n\nfunction EmptyList( {\n\torientation,\n\trenderAppender,\n\trenderFooterAppender,\n\trootClientId,\n} ) {\n\tconst { shouldShowInsertionPoint } = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetBlockOrder,\n\t\t\tgetBlockInsertionPoint,\n\t\t\tisBlockInsertionPointVisible,\n\t\t} = select( blockEditorStore );\n\n\t\tconst isStackedHorizontally = orientation === 'horizontal';\n\t\tconst blockClientIds = getBlockOrder( rootClientId );\n\t\tconst insertionPoint = getBlockInsertionPoint();\n\t\tconst blockInsertionPointIsVisible = isBlockInsertionPointVisible();\n\n\t\treturn {\n\t\t\tshouldShowInsertionPoint:\n\t\t\t\t! isStackedHorizontally &&\n\t\t\t\tblockInsertionPointIsVisible &&\n\t\t\t\tinsertionPoint.rootClientId === rootClientId &&\n\t\t\t\t// If list is empty, show the insertion point (via the default appender)\n\t\t\t\t( blockClientIds.length === 0 ||\n\t\t\t\t\t// Or if the insertion point is right before the denoted block.\n\t\t\t\t\t! blockClientIds[ insertionPoint.index ] ),\n\t\t};\n\t} );\n\tconst align = renderAppender ? WIDE_ALIGNMENTS.alignments.full : undefined;\n\tconst [ wrapperStyles ] = useEditorWrapperStyles( { align } );\n\n\tif ( renderFooterAppender || renderAppender === false ) {\n\t\treturn null;\n\t}\n\n\tconst containerStyles = [ styles.defaultAppender, wrapperStyles ];\n\n\treturn (\n\t\t<View style={ containerStyles }>\n\t\t\t<BlockListAppender\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\tshowSeparator={ shouldShowInsertionPoint }\n\t\t\t/>\n\t\t</View>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -18,7 +18,6 @@ var _useIsHovered = require("./use-is-hovered");
18
18
  var _context = require("../../block-edit/context");
19
19
  var _useFocusHandler = require("./use-focus-handler");
20
20
  var _useSelectedBlockEventHandlers = require("./use-selected-block-event-handlers");
21
- var _useZoomOutModeExit = require("./use-zoom-out-mode-exit");
22
21
  var _useBlockRefs = require("./use-block-refs");
23
22
  var _useIntersectionObserver = require("./use-intersection-observer");
24
23
  var _useScrollIntoView = require("./use-scroll-into-view");
@@ -118,7 +117,7 @@ function useBlockProps(props = {}, {
118
117
  }), (0, _useBlockRefs.useBlockRefProvider)(clientId), (0, _useFocusHandler.useFocusHandler)(clientId), (0, _useSelectedBlockEventHandlers.useEventHandlers)({
119
118
  clientId,
120
119
  isSelected
121
- }), (0, _useZoomOutModeExit.useZoomOutModeExit)(), (0, _useIsHovered.useIsHovered)({
120
+ }), (0, _useIsHovered.useIsHovered)({
122
121
  clientId
123
122
  }), (0, _useIntersectionObserver.useIntersectionObserver)(), (0, _useMovingAnimation.default)({
124
123
  triggerAnimationOnChange: index,
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_element","_i18n","_blocks","_compose","_warning","_useMovingAnimation","_privateBlockContext","_useFocusFirstElement","_useIsHovered","_context","_useFocusHandler","_useSelectedBlockEventHandlers","_useZoomOutModeExit","_useBlockRefs","_useIntersectionObserver","_useScrollIntoView","_useFlashEditableBlocks","_useBindingsAttributes","useBlockProps","props","__unstableIsHtml","clientId","className","wrapperProps","isAligned","index","mode","name","blockApiVersion","blockTitle","isSelected","isSubtreeDisabled","hasOverlay","initialPosition","blockEditingMode","isHighlighted","isMultiSelected","isPartiallySelected","isReusable","isDragging","hasChildSelected","isEditingDisabled","hasEditableOutline","isTemporarilyEditingAsBlocks","defaultClassName","isSectionBlock","useContext","PrivateBlockContext","blockLabel","sprintf","__","htmlSuffix","mergedRefs","useMergeRefs","ref","useFocusFirstElement","useBlockRefProvider","useFocusHandler","useEventHandlers","useZoomOutModeExit","useIsHovered","useIntersectionObserver","useMovingAnimation","triggerAnimationOnChange","useDisabled","isDisabled","useFlashEditableBlocks","isEnabled","useScrollIntoView","blockEditContext","useBlockEditContext","hasBlockBindings","blockBindingsKey","bindingsStyle","canBindBlock","globalThis","SCRIPT_DEBUG","warning","hasNegativeMargin","style","marginTop","charAt","marginBottom","marginLeft","marginRight","tabIndex","id","role","inert","undefined","clsx","save","getBlockProps"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useContext } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { __unstableGetBlockProps as getBlockProps } from '@wordpress/blocks';\nimport { useMergeRefs, useDisabled } from '@wordpress/compose';\nimport warning from '@wordpress/warning';\n\n/**\n * Internal dependencies\n */\nimport useMovingAnimation from '../../use-moving-animation';\nimport { PrivateBlockContext } from '../private-block-context';\nimport { useFocusFirstElement } from './use-focus-first-element';\nimport { useIsHovered } from './use-is-hovered';\nimport {\n\tblockBindingsKey,\n\tuseBlockEditContext,\n} from '../../block-edit/context';\nimport { useFocusHandler } from './use-focus-handler';\nimport { useEventHandlers } from './use-selected-block-event-handlers';\nimport { useZoomOutModeExit } from './use-zoom-out-mode-exit';\nimport { useBlockRefProvider } from './use-block-refs';\nimport { useIntersectionObserver } from './use-intersection-observer';\nimport { useScrollIntoView } from './use-scroll-into-view';\nimport { useFlashEditableBlocks } from '../../use-flash-editable-blocks';\nimport { canBindBlock } from '../../../hooks/use-bindings-attributes';\n\n/**\n * This hook is used to lightly mark an element as a block element. The element\n * should be the outermost element of a block. Call this hook and pass the\n * returned props to the element to mark as a block. If you define a ref for the\n * element, it is important to pass the ref to this hook, which the hook in turn\n * will pass to the component through the props it returns. Optionally, you can\n * also pass any other props through this hook, and they will be merged and\n * returned.\n *\n * Use of this hook on the outermost element of a block is required if using API >= v2.\n *\n * @example\n * ```js\n * import { useBlockProps } from '@wordpress/block-editor';\n *\n * export default function Edit() {\n *\n * const blockProps = useBlockProps( {\n * className: 'my-custom-class',\n * style: {\n * color: '#222222',\n * backgroundColor: '#eeeeee'\n * }\n * } )\n *\n * return (\n *\t <div { ...blockProps }>\n *\n * </div>\n * )\n * }\n *\n * ```\n *\n *\n * @param {Object} props Optional. Props to pass to the element. Must contain\n * the ref if one is defined.\n * @param {Object} options Options for internal use only.\n * @param {boolean} options.__unstableIsHtml\n *\n * @return {Object} Props to pass to the element to mark as a block.\n */\nexport function useBlockProps( props = {}, { __unstableIsHtml } = {} ) {\n\tconst {\n\t\tclientId,\n\t\tclassName,\n\t\twrapperProps = {},\n\t\tisAligned,\n\t\tindex,\n\t\tmode,\n\t\tname,\n\t\tblockApiVersion,\n\t\tblockTitle,\n\t\tisSelected,\n\t\tisSubtreeDisabled,\n\t\thasOverlay,\n\t\tinitialPosition,\n\t\tblockEditingMode,\n\t\tisHighlighted,\n\t\tisMultiSelected,\n\t\tisPartiallySelected,\n\t\tisReusable,\n\t\tisDragging,\n\t\thasChildSelected,\n\t\tisEditingDisabled,\n\t\thasEditableOutline,\n\t\tisTemporarilyEditingAsBlocks,\n\t\tdefaultClassName,\n\t\tisSectionBlock,\n\t} = useContext( PrivateBlockContext );\n\n\t// translators: %s: Type of block (i.e. Text, Image etc)\n\tconst blockLabel = sprintf( __( 'Block: %s' ), blockTitle );\n\tconst htmlSuffix = mode === 'html' && ! __unstableIsHtml ? '-visual' : '';\n\tconst mergedRefs = useMergeRefs( [\n\t\tprops.ref,\n\t\tuseFocusFirstElement( { clientId, initialPosition } ),\n\t\tuseBlockRefProvider( clientId ),\n\t\tuseFocusHandler( clientId ),\n\t\tuseEventHandlers( { clientId, isSelected } ),\n\t\tuseZoomOutModeExit(),\n\t\tuseIsHovered( { clientId } ),\n\t\tuseIntersectionObserver(),\n\t\tuseMovingAnimation( { triggerAnimationOnChange: index, clientId } ),\n\t\tuseDisabled( { isDisabled: ! hasOverlay } ),\n\t\tuseFlashEditableBlocks( {\n\t\t\tclientId,\n\t\t\tisEnabled: isSectionBlock,\n\t\t} ),\n\t\tuseScrollIntoView( { isSelected } ),\n\t] );\n\n\tconst blockEditContext = useBlockEditContext();\n\tconst hasBlockBindings = !! blockEditContext[ blockBindingsKey ];\n\tconst bindingsStyle =\n\t\thasBlockBindings && canBindBlock( name )\n\t\t\t? {\n\t\t\t\t\t'--wp-admin-theme-color': 'var(--wp-block-synced-color)',\n\t\t\t\t\t'--wp-admin-theme-color--rgb':\n\t\t\t\t\t\t'var(--wp-block-synced-color--rgb)',\n\t\t\t }\n\t\t\t: {};\n\n\t// Ensures it warns only inside the `edit` implementation for the block.\n\tif ( blockApiVersion < 2 && clientId === blockEditContext.clientId ) {\n\t\twarning(\n\t\t\t`Block type \"${ name }\" must support API version 2 or higher to work correctly with \"useBlockProps\" method.`\n\t\t);\n\t}\n\n\tlet hasNegativeMargin = false;\n\tif (\n\t\twrapperProps?.style?.marginTop?.charAt( 0 ) === '-' ||\n\t\twrapperProps?.style?.marginBottom?.charAt( 0 ) === '-' ||\n\t\twrapperProps?.style?.marginLeft?.charAt( 0 ) === '-' ||\n\t\twrapperProps?.style?.marginRight?.charAt( 0 ) === '-'\n\t) {\n\t\thasNegativeMargin = true;\n\t}\n\n\treturn {\n\t\ttabIndex: blockEditingMode === 'disabled' ? -1 : 0,\n\t\t...wrapperProps,\n\t\t...props,\n\t\tref: mergedRefs,\n\t\tid: `block-${ clientId }${ htmlSuffix }`,\n\t\trole: 'document',\n\t\t'aria-label': blockLabel,\n\t\t'data-block': clientId,\n\t\t'data-type': name,\n\t\t'data-title': blockTitle,\n\t\tinert: isSubtreeDisabled ? 'true' : undefined,\n\t\tclassName: clsx(\n\t\t\t'block-editor-block-list__block',\n\t\t\t{\n\t\t\t\t// The wp-block className is important for editor styles.\n\t\t\t\t'wp-block': ! isAligned,\n\t\t\t\t'has-block-overlay': hasOverlay,\n\t\t\t\t'is-selected': isSelected,\n\t\t\t\t'is-highlighted': isHighlighted,\n\t\t\t\t'is-multi-selected': isMultiSelected,\n\t\t\t\t'is-partially-selected': isPartiallySelected,\n\t\t\t\t'is-reusable': isReusable,\n\t\t\t\t'is-dragging': isDragging,\n\t\t\t\t'has-child-selected': hasChildSelected,\n\t\t\t\t'is-editing-disabled': isEditingDisabled,\n\t\t\t\t'has-editable-outline': hasEditableOutline,\n\t\t\t\t'has-negative-margin': hasNegativeMargin,\n\t\t\t\t'is-content-locked-temporarily-editing-as-blocks':\n\t\t\t\t\tisTemporarilyEditingAsBlocks,\n\t\t\t},\n\t\t\tclassName,\n\t\t\tprops.className,\n\t\t\twrapperProps.className,\n\t\t\tdefaultClassName\n\t\t),\n\t\tstyle: { ...wrapperProps.style, ...props.style, ...bindingsStyle },\n\t};\n}\n\n/**\n * Call within a save function to get the props for the block wrapper.\n *\n * @param {Object} props Optional. Props to pass to the element.\n */\nuseBlockProps.save = getBlockProps;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_element","_i18n","_blocks","_compose","_warning","_useMovingAnimation","_privateBlockContext","_useFocusFirstElement","_useIsHovered","_context","_useFocusHandler","_useSelectedBlockEventHandlers","_useBlockRefs","_useIntersectionObserver","_useScrollIntoView","_useFlashEditableBlocks","_useBindingsAttributes","useBlockProps","props","__unstableIsHtml","clientId","className","wrapperProps","isAligned","index","mode","name","blockApiVersion","blockTitle","isSelected","isSubtreeDisabled","hasOverlay","initialPosition","blockEditingMode","isHighlighted","isMultiSelected","isPartiallySelected","isReusable","isDragging","hasChildSelected","isEditingDisabled","hasEditableOutline","isTemporarilyEditingAsBlocks","defaultClassName","isSectionBlock","useContext","PrivateBlockContext","blockLabel","sprintf","__","htmlSuffix","mergedRefs","useMergeRefs","ref","useFocusFirstElement","useBlockRefProvider","useFocusHandler","useEventHandlers","useIsHovered","useIntersectionObserver","useMovingAnimation","triggerAnimationOnChange","useDisabled","isDisabled","useFlashEditableBlocks","isEnabled","useScrollIntoView","blockEditContext","useBlockEditContext","hasBlockBindings","blockBindingsKey","bindingsStyle","canBindBlock","globalThis","SCRIPT_DEBUG","warning","hasNegativeMargin","style","marginTop","charAt","marginBottom","marginLeft","marginRight","tabIndex","id","role","inert","undefined","clsx","save","getBlockProps"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useContext } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { __unstableGetBlockProps as getBlockProps } from '@wordpress/blocks';\nimport { useMergeRefs, useDisabled } from '@wordpress/compose';\nimport warning from '@wordpress/warning';\n\n/**\n * Internal dependencies\n */\nimport useMovingAnimation from '../../use-moving-animation';\nimport { PrivateBlockContext } from '../private-block-context';\nimport { useFocusFirstElement } from './use-focus-first-element';\nimport { useIsHovered } from './use-is-hovered';\nimport {\n\tblockBindingsKey,\n\tuseBlockEditContext,\n} from '../../block-edit/context';\nimport { useFocusHandler } from './use-focus-handler';\nimport { useEventHandlers } from './use-selected-block-event-handlers';\nimport { useBlockRefProvider } from './use-block-refs';\nimport { useIntersectionObserver } from './use-intersection-observer';\nimport { useScrollIntoView } from './use-scroll-into-view';\nimport { useFlashEditableBlocks } from '../../use-flash-editable-blocks';\nimport { canBindBlock } from '../../../hooks/use-bindings-attributes';\n\n/**\n * This hook is used to lightly mark an element as a block element. The element\n * should be the outermost element of a block. Call this hook and pass the\n * returned props to the element to mark as a block. If you define a ref for the\n * element, it is important to pass the ref to this hook, which the hook in turn\n * will pass to the component through the props it returns. Optionally, you can\n * also pass any other props through this hook, and they will be merged and\n * returned.\n *\n * Use of this hook on the outermost element of a block is required if using API >= v2.\n *\n * @example\n * ```js\n * import { useBlockProps } from '@wordpress/block-editor';\n *\n * export default function Edit() {\n *\n * const blockProps = useBlockProps( {\n * className: 'my-custom-class',\n * style: {\n * color: '#222222',\n * backgroundColor: '#eeeeee'\n * }\n * } )\n *\n * return (\n *\t <div { ...blockProps }>\n *\n * </div>\n * )\n * }\n *\n * ```\n *\n *\n * @param {Object} props Optional. Props to pass to the element. Must contain\n * the ref if one is defined.\n * @param {Object} options Options for internal use only.\n * @param {boolean} options.__unstableIsHtml\n *\n * @return {Object} Props to pass to the element to mark as a block.\n */\nexport function useBlockProps( props = {}, { __unstableIsHtml } = {} ) {\n\tconst {\n\t\tclientId,\n\t\tclassName,\n\t\twrapperProps = {},\n\t\tisAligned,\n\t\tindex,\n\t\tmode,\n\t\tname,\n\t\tblockApiVersion,\n\t\tblockTitle,\n\t\tisSelected,\n\t\tisSubtreeDisabled,\n\t\thasOverlay,\n\t\tinitialPosition,\n\t\tblockEditingMode,\n\t\tisHighlighted,\n\t\tisMultiSelected,\n\t\tisPartiallySelected,\n\t\tisReusable,\n\t\tisDragging,\n\t\thasChildSelected,\n\t\tisEditingDisabled,\n\t\thasEditableOutline,\n\t\tisTemporarilyEditingAsBlocks,\n\t\tdefaultClassName,\n\t\tisSectionBlock,\n\t} = useContext( PrivateBlockContext );\n\n\t// translators: %s: Type of block (i.e. Text, Image etc)\n\tconst blockLabel = sprintf( __( 'Block: %s' ), blockTitle );\n\tconst htmlSuffix = mode === 'html' && ! __unstableIsHtml ? '-visual' : '';\n\tconst mergedRefs = useMergeRefs( [\n\t\tprops.ref,\n\t\tuseFocusFirstElement( { clientId, initialPosition } ),\n\t\tuseBlockRefProvider( clientId ),\n\t\tuseFocusHandler( clientId ),\n\t\tuseEventHandlers( { clientId, isSelected } ),\n\t\tuseIsHovered( { clientId } ),\n\t\tuseIntersectionObserver(),\n\t\tuseMovingAnimation( { triggerAnimationOnChange: index, clientId } ),\n\t\tuseDisabled( { isDisabled: ! hasOverlay } ),\n\t\tuseFlashEditableBlocks( {\n\t\t\tclientId,\n\t\t\tisEnabled: isSectionBlock,\n\t\t} ),\n\t\tuseScrollIntoView( { isSelected } ),\n\t] );\n\n\tconst blockEditContext = useBlockEditContext();\n\tconst hasBlockBindings = !! blockEditContext[ blockBindingsKey ];\n\tconst bindingsStyle =\n\t\thasBlockBindings && canBindBlock( name )\n\t\t\t? {\n\t\t\t\t\t'--wp-admin-theme-color': 'var(--wp-block-synced-color)',\n\t\t\t\t\t'--wp-admin-theme-color--rgb':\n\t\t\t\t\t\t'var(--wp-block-synced-color--rgb)',\n\t\t\t }\n\t\t\t: {};\n\n\t// Ensures it warns only inside the `edit` implementation for the block.\n\tif ( blockApiVersion < 2 && clientId === blockEditContext.clientId ) {\n\t\twarning(\n\t\t\t`Block type \"${ name }\" must support API version 2 or higher to work correctly with \"useBlockProps\" method.`\n\t\t);\n\t}\n\n\tlet hasNegativeMargin = false;\n\tif (\n\t\twrapperProps?.style?.marginTop?.charAt( 0 ) === '-' ||\n\t\twrapperProps?.style?.marginBottom?.charAt( 0 ) === '-' ||\n\t\twrapperProps?.style?.marginLeft?.charAt( 0 ) === '-' ||\n\t\twrapperProps?.style?.marginRight?.charAt( 0 ) === '-'\n\t) {\n\t\thasNegativeMargin = true;\n\t}\n\n\treturn {\n\t\ttabIndex: blockEditingMode === 'disabled' ? -1 : 0,\n\t\t...wrapperProps,\n\t\t...props,\n\t\tref: mergedRefs,\n\t\tid: `block-${ clientId }${ htmlSuffix }`,\n\t\trole: 'document',\n\t\t'aria-label': blockLabel,\n\t\t'data-block': clientId,\n\t\t'data-type': name,\n\t\t'data-title': blockTitle,\n\t\tinert: isSubtreeDisabled ? 'true' : undefined,\n\t\tclassName: clsx(\n\t\t\t'block-editor-block-list__block',\n\t\t\t{\n\t\t\t\t// The wp-block className is important for editor styles.\n\t\t\t\t'wp-block': ! isAligned,\n\t\t\t\t'has-block-overlay': hasOverlay,\n\t\t\t\t'is-selected': isSelected,\n\t\t\t\t'is-highlighted': isHighlighted,\n\t\t\t\t'is-multi-selected': isMultiSelected,\n\t\t\t\t'is-partially-selected': isPartiallySelected,\n\t\t\t\t'is-reusable': isReusable,\n\t\t\t\t'is-dragging': isDragging,\n\t\t\t\t'has-child-selected': hasChildSelected,\n\t\t\t\t'is-editing-disabled': isEditingDisabled,\n\t\t\t\t'has-editable-outline': hasEditableOutline,\n\t\t\t\t'has-negative-margin': hasNegativeMargin,\n\t\t\t\t'is-content-locked-temporarily-editing-as-blocks':\n\t\t\t\t\tisTemporarilyEditingAsBlocks,\n\t\t\t},\n\t\t\tclassName,\n\t\t\tprops.className,\n\t\t\twrapperProps.className,\n\t\t\tdefaultClassName\n\t\t),\n\t\tstyle: { ...wrapperProps.style, ...props.style, ...bindingsStyle },\n\t};\n}\n\n/**\n * Call within a save function to get the props for the block wrapper.\n *\n * @param {Object} props Optional. Props to pass to the element.\n */\nuseBlockProps.save = getBlockProps;\n"],"mappings":"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","ignoreList":[]}
@@ -9,6 +9,7 @@ var _dom = require("@wordpress/dom");
9
9
  var _data = require("@wordpress/data");
10
10
  var _dom2 = require("../../../utils/dom");
11
11
  var _store = require("../../../store");
12
+ var _lockUnlock = require("../../../lock-unlock");
12
13
  /**
13
14
  * WordPress dependencies
14
15
  */
@@ -35,11 +36,11 @@ function useFocusFirstElement({
35
36
  const {
36
37
  isBlockSelected,
37
38
  isMultiSelecting,
38
- __unstableGetEditorMode
39
- } = (0, _data.useSelect)(_store.store);
39
+ isZoomOut
40
+ } = (0, _lockUnlock.unlock)((0, _data.useSelect)(_store.store));
40
41
  (0, _element.useEffect)(() => {
41
42
  // Check if the block is still selected at the time this effect runs.
42
- if (!isBlockSelected(clientId) || isMultiSelecting() || __unstableGetEditorMode() === 'zoom-out') {
43
+ if (!isBlockSelected(clientId) || isMultiSelecting() || isZoomOut()) {
43
44
  return;
44
45
  }
45
46
  if (initialPosition === undefined || initialPosition === null) {
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_dom","_data","_dom2","_store","useFocusFirstElement","clientId","initialPosition","ref","useRef","isBlockSelected","isMultiSelecting","__unstableGetEditorMode","useSelect","blockEditorStore","useEffect","undefined","current","ownerDocument","isInsideRootBlock","activeElement","textInputs","focus","tabbable","find","filter","node","isTextField","isReverse","target","length","getAttribute","focusElement","findNext","isFormElement","placeCaretAtHorizontalEdge"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-focus-first-element.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\nimport {\n\tfocus,\n\tisFormElement,\n\tisTextField,\n\tplaceCaretAtHorizontalEdge,\n} from '@wordpress/dom';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { isInsideRootBlock } from '../../../utils/dom';\nimport { store as blockEditorStore } from '../../../store';\n\n/** @typedef {import('@wordpress/element').RefObject} RefObject */\n\n/**\n * Transitions focus to the block or inner tabbable when the block becomes\n * selected and an initial position is set.\n *\n * @param {string} clientId Block client ID.\n *\n * @return {RefObject} React ref with the block element.\n */\nexport function useFocusFirstElement( { clientId, initialPosition } ) {\n\tconst ref = useRef();\n\tconst { isBlockSelected, isMultiSelecting, __unstableGetEditorMode } =\n\t\tuseSelect( blockEditorStore );\n\n\tuseEffect( () => {\n\t\t// Check if the block is still selected at the time this effect runs.\n\t\tif (\n\t\t\t! isBlockSelected( clientId ) ||\n\t\t\tisMultiSelecting() ||\n\t\t\t__unstableGetEditorMode() === 'zoom-out'\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( initialPosition === undefined || initialPosition === null ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! ref.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { ownerDocument } = ref.current;\n\n\t\t// Do not focus the block if it already contains the active element.\n\t\tif ( isInsideRootBlock( ref.current, ownerDocument.activeElement ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Find all tabbables within node.\n\t\tconst textInputs = focus.tabbable\n\t\t\t.find( ref.current )\n\t\t\t.filter( ( node ) => isTextField( node ) );\n\n\t\t// If reversed (e.g. merge via backspace), use the last in the set of\n\t\t// tabbables.\n\t\tconst isReverse = -1 === initialPosition;\n\t\tconst target =\n\t\t\ttextInputs[ isReverse ? textInputs.length - 1 : 0 ] || ref.current;\n\n\t\tif ( ! isInsideRootBlock( ref.current, target ) ) {\n\t\t\tref.current.focus();\n\t\t\treturn;\n\t\t}\n\n\t\t// Check to see if element is focussable before a generic caret insert.\n\t\tif ( ! ref.current.getAttribute( 'contenteditable' ) ) {\n\t\t\tconst focusElement = focus.tabbable.findNext( ref.current );\n\t\t\t// Make sure focusElement is valid, contained in the same block, and a form field.\n\t\t\tif (\n\t\t\t\tfocusElement &&\n\t\t\t\tisInsideRootBlock( ref.current, focusElement ) &&\n\t\t\t\tisFormElement( focusElement )\n\t\t\t) {\n\t\t\t\tfocusElement.focus();\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tplaceCaretAtHorizontalEdge( target, isReverse );\n\t}, [ initialPosition, clientId ] );\n\n\treturn ref;\n}\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAMA,IAAAE,KAAA,GAAAF,OAAA;AAKA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AAhBA;AACA;AACA;;AAUA;AACA;AACA;;AAIA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASK,oBAAoBA,CAAE;EAAEC,QAAQ;EAAEC;AAAgB,CAAC,EAAG;EACrE,MAAMC,GAAG,GAAG,IAAAC,eAAM,EAAC,CAAC;EACpB,MAAM;IAAEC,eAAe;IAAEC,gBAAgB;IAAEC;EAAwB,CAAC,GACnE,IAAAC,eAAS,EAAEC,YAAiB,CAAC;EAE9B,IAAAC,kBAAS,EAAE,MAAM;IAChB;IACA,IACC,CAAEL,eAAe,CAAEJ,QAAS,CAAC,IAC7BK,gBAAgB,CAAC,CAAC,IAClBC,uBAAuB,CAAC,CAAC,KAAK,UAAU,EACvC;MACD;IACD;IAEA,IAAKL,eAAe,KAAKS,SAAS,IAAIT,eAAe,KAAK,IAAI,EAAG;MAChE;IACD;IAEA,IAAK,CAAEC,GAAG,CAACS,OAAO,EAAG;MACpB;IACD;IAEA,MAAM;MAAEC;IAAc,CAAC,GAAGV,GAAG,CAACS,OAAO;;IAErC;IACA,IAAK,IAAAE,uBAAiB,EAAEX,GAAG,CAACS,OAAO,EAAEC,aAAa,CAACE,aAAc,CAAC,EAAG;MACpE;IACD;;IAEA;IACA,MAAMC,UAAU,GAAGC,UAAK,CAACC,QAAQ,CAC/BC,IAAI,CAAEhB,GAAG,CAACS,OAAQ,CAAC,CACnBQ,MAAM,CAAIC,IAAI,IAAM,IAAAC,gBAAW,EAAED,IAAK,CAAE,CAAC;;IAE3C;IACA;IACA,MAAME,SAAS,GAAG,CAAC,CAAC,KAAKrB,eAAe;IACxC,MAAMsB,MAAM,GACXR,UAAU,CAAEO,SAAS,GAAGP,UAAU,CAACS,MAAM,GAAG,CAAC,GAAG,CAAC,CAAE,IAAItB,GAAG,CAACS,OAAO;IAEnE,IAAK,CAAE,IAAAE,uBAAiB,EAAEX,GAAG,CAACS,OAAO,EAAEY,MAAO,CAAC,EAAG;MACjDrB,GAAG,CAACS,OAAO,CAACK,KAAK,CAAC,CAAC;MACnB;IACD;;IAEA;IACA,IAAK,CAAEd,GAAG,CAACS,OAAO,CAACc,YAAY,CAAE,iBAAkB,CAAC,EAAG;MACtD,MAAMC,YAAY,GAAGV,UAAK,CAACC,QAAQ,CAACU,QAAQ,CAAEzB,GAAG,CAACS,OAAQ,CAAC;MAC3D;MACA,IACCe,YAAY,IACZ,IAAAb,uBAAiB,EAAEX,GAAG,CAACS,OAAO,EAAEe,YAAa,CAAC,IAC9C,IAAAE,kBAAa,EAAEF,YAAa,CAAC,EAC5B;QACDA,YAAY,CAACV,KAAK,CAAC,CAAC;QACpB;MACD;IACD;IACA,IAAAa,+BAA0B,EAAEN,MAAM,EAAED,SAAU,CAAC;EAChD,CAAC,EAAE,CAAErB,eAAe,EAAED,QAAQ,CAAG,CAAC;EAElC,OAAOE,GAAG;AACX","ignoreList":[]}
1
+ {"version":3,"names":["_element","require","_dom","_data","_dom2","_store","_lockUnlock","useFocusFirstElement","clientId","initialPosition","ref","useRef","isBlockSelected","isMultiSelecting","isZoomOut","unlock","useSelect","blockEditorStore","useEffect","undefined","current","ownerDocument","isInsideRootBlock","activeElement","textInputs","focus","tabbable","find","filter","node","isTextField","isReverse","target","length","getAttribute","focusElement","findNext","isFormElement","placeCaretAtHorizontalEdge"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-focus-first-element.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\nimport {\n\tfocus,\n\tisFormElement,\n\tisTextField,\n\tplaceCaretAtHorizontalEdge,\n} from '@wordpress/dom';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { isInsideRootBlock } from '../../../utils/dom';\nimport { store as blockEditorStore } from '../../../store';\nimport { unlock } from '../../../lock-unlock';\n\n/** @typedef {import('@wordpress/element').RefObject} RefObject */\n\n/**\n * Transitions focus to the block or inner tabbable when the block becomes\n * selected and an initial position is set.\n *\n * @param {string} clientId Block client ID.\n *\n * @return {RefObject} React ref with the block element.\n */\nexport function useFocusFirstElement( { clientId, initialPosition } ) {\n\tconst ref = useRef();\n\tconst { isBlockSelected, isMultiSelecting, isZoomOut } = unlock(\n\t\tuseSelect( blockEditorStore )\n\t);\n\n\tuseEffect( () => {\n\t\t// Check if the block is still selected at the time this effect runs.\n\t\tif (\n\t\t\t! isBlockSelected( clientId ) ||\n\t\t\tisMultiSelecting() ||\n\t\t\tisZoomOut()\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( initialPosition === undefined || initialPosition === null ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! ref.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { ownerDocument } = ref.current;\n\n\t\t// Do not focus the block if it already contains the active element.\n\t\tif ( isInsideRootBlock( ref.current, ownerDocument.activeElement ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Find all tabbables within node.\n\t\tconst textInputs = focus.tabbable\n\t\t\t.find( ref.current )\n\t\t\t.filter( ( node ) => isTextField( node ) );\n\n\t\t// If reversed (e.g. merge via backspace), use the last in the set of\n\t\t// tabbables.\n\t\tconst isReverse = -1 === initialPosition;\n\t\tconst target =\n\t\t\ttextInputs[ isReverse ? textInputs.length - 1 : 0 ] || ref.current;\n\n\t\tif ( ! isInsideRootBlock( ref.current, target ) ) {\n\t\t\tref.current.focus();\n\t\t\treturn;\n\t\t}\n\n\t\t// Check to see if element is focussable before a generic caret insert.\n\t\tif ( ! ref.current.getAttribute( 'contenteditable' ) ) {\n\t\t\tconst focusElement = focus.tabbable.findNext( ref.current );\n\t\t\t// Make sure focusElement is valid, contained in the same block, and a form field.\n\t\t\tif (\n\t\t\t\tfocusElement &&\n\t\t\t\tisInsideRootBlock( ref.current, focusElement ) &&\n\t\t\t\tisFormElement( focusElement )\n\t\t\t) {\n\t\t\t\tfocusElement.focus();\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tplaceCaretAtHorizontalEdge( target, isReverse );\n\t}, [ initialPosition, clientId ] );\n\n\treturn ref;\n}\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAMA,IAAAE,KAAA,GAAAF,OAAA;AAKA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AAjBA;AACA;AACA;;AAUA;AACA;AACA;;AAKA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASM,oBAAoBA,CAAE;EAAEC,QAAQ;EAAEC;AAAgB,CAAC,EAAG;EACrE,MAAMC,GAAG,GAAG,IAAAC,eAAM,EAAC,CAAC;EACpB,MAAM;IAAEC,eAAe;IAAEC,gBAAgB;IAAEC;EAAU,CAAC,GAAG,IAAAC,kBAAM,EAC9D,IAAAC,eAAS,EAAEC,YAAiB,CAC7B,CAAC;EAED,IAAAC,kBAAS,EAAE,MAAM;IAChB;IACA,IACC,CAAEN,eAAe,CAAEJ,QAAS,CAAC,IAC7BK,gBAAgB,CAAC,CAAC,IAClBC,SAAS,CAAC,CAAC,EACV;MACD;IACD;IAEA,IAAKL,eAAe,KAAKU,SAAS,IAAIV,eAAe,KAAK,IAAI,EAAG;MAChE;IACD;IAEA,IAAK,CAAEC,GAAG,CAACU,OAAO,EAAG;MACpB;IACD;IAEA,MAAM;MAAEC;IAAc,CAAC,GAAGX,GAAG,CAACU,OAAO;;IAErC;IACA,IAAK,IAAAE,uBAAiB,EAAEZ,GAAG,CAACU,OAAO,EAAEC,aAAa,CAACE,aAAc,CAAC,EAAG;MACpE;IACD;;IAEA;IACA,MAAMC,UAAU,GAAGC,UAAK,CAACC,QAAQ,CAC/BC,IAAI,CAAEjB,GAAG,CAACU,OAAQ,CAAC,CACnBQ,MAAM,CAAIC,IAAI,IAAM,IAAAC,gBAAW,EAAED,IAAK,CAAE,CAAC;;IAE3C;IACA;IACA,MAAME,SAAS,GAAG,CAAC,CAAC,KAAKtB,eAAe;IACxC,MAAMuB,MAAM,GACXR,UAAU,CAAEO,SAAS,GAAGP,UAAU,CAACS,MAAM,GAAG,CAAC,GAAG,CAAC,CAAE,IAAIvB,GAAG,CAACU,OAAO;IAEnE,IAAK,CAAE,IAAAE,uBAAiB,EAAEZ,GAAG,CAACU,OAAO,EAAEY,MAAO,CAAC,EAAG;MACjDtB,GAAG,CAACU,OAAO,CAACK,KAAK,CAAC,CAAC;MACnB;IACD;;IAEA;IACA,IAAK,CAAEf,GAAG,CAACU,OAAO,CAACc,YAAY,CAAE,iBAAkB,CAAC,EAAG;MACtD,MAAMC,YAAY,GAAGV,UAAK,CAACC,QAAQ,CAACU,QAAQ,CAAE1B,GAAG,CAACU,OAAQ,CAAC;MAC3D;MACA,IACCe,YAAY,IACZ,IAAAb,uBAAiB,EAAEZ,GAAG,CAACU,OAAO,EAAEe,YAAa,CAAC,IAC9C,IAAAE,kBAAa,EAAEF,YAAa,CAAC,EAC5B;QACDA,YAAY,CAACV,KAAK,CAAC,CAAC;QACpB;MACD;IACD;IACA,IAAAa,+BAA0B,EAAEN,MAAM,EAAED,SAAU,CAAC;EAChD,CAAC,EAAE,CAAEtB,eAAe,EAAED,QAAQ,CAAG,CAAC;EAElC,OAAOE,GAAG;AACX","ignoreList":[]}
@@ -9,6 +9,7 @@ var _keycodes = require("@wordpress/keycodes");
9
9
  var _data = require("@wordpress/data");
10
10
  var _compose = require("@wordpress/compose");
11
11
  var _store = require("../../../store");
12
+ var _lockUnlock = require("../../../lock-unlock");
12
13
  /**
13
14
  * WordPress dependencies
14
15
  */
@@ -31,12 +32,14 @@ function useEventHandlers({
31
32
  }) {
32
33
  const {
33
34
  getBlockRootClientId,
34
- getBlockIndex
35
- } = (0, _data.useSelect)(_store.store);
35
+ getBlockIndex,
36
+ isZoomOut
37
+ } = (0, _lockUnlock.unlock)((0, _data.useSelect)(_store.store));
36
38
  const {
37
39
  insertAfterBlock,
38
- removeBlock
39
- } = (0, _data.useDispatch)(_store.store);
40
+ removeBlock,
41
+ resetZoomLevel
42
+ } = (0, _lockUnlock.unlock)((0, _data.useDispatch)(_store.store));
40
43
  return (0, _compose.useRefEffect)(node => {
41
44
  if (!isSelected) {
42
45
  return;
@@ -63,7 +66,9 @@ function useEventHandlers({
63
66
  return;
64
67
  }
65
68
  event.preventDefault();
66
- if (keyCode === _keycodes.ENTER) {
69
+ if (keyCode === _keycodes.ENTER && isZoomOut()) {
70
+ resetZoomLevel();
71
+ } else if (keyCode === _keycodes.ENTER) {
67
72
  insertAfterBlock(clientId);
68
73
  } else {
69
74
  removeBlock(clientId);
@@ -85,6 +90,6 @@ function useEventHandlers({
85
90
  node.removeEventListener('keydown', onKeyDown);
86
91
  node.removeEventListener('dragstart', onDragStart);
87
92
  };
88
- }, [clientId, isSelected, getBlockRootClientId, getBlockIndex, insertAfterBlock, removeBlock]);
93
+ }, [clientId, isSelected, getBlockRootClientId, getBlockIndex, insertAfterBlock, removeBlock, isZoomOut, resetZoomLevel]);
89
94
  }
90
95
  //# sourceMappingURL=use-selected-block-event-handlers.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_dom","require","_keycodes","_data","_compose","_store","useEventHandlers","clientId","isSelected","getBlockRootClientId","getBlockIndex","useSelect","blockEditorStore","insertAfterBlock","removeBlock","useDispatch","useRefEffect","node","onKeyDown","event","keyCode","target","ENTER","BACKSPACE","DELETE","isTextField","preventDefault","onDragStart","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-selected-block-event-handlers.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isTextField } from '@wordpress/dom';\nimport { ENTER, BACKSPACE, DELETE } from '@wordpress/keycodes';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../../store';\n\n/**\n * Adds block behaviour:\n * - Removes the block on BACKSPACE.\n * - Inserts a default block on ENTER.\n * - Disables dragging of block contents.\n *\n * @param {string} clientId Block client ID.\n */\nexport function useEventHandlers( { clientId, isSelected } ) {\n\tconst { getBlockRootClientId, getBlockIndex } =\n\t\tuseSelect( blockEditorStore );\n\tconst { insertAfterBlock, removeBlock } = useDispatch( blockEditorStore );\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( ! isSelected ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Interprets keydown event intent to remove or insert after block if\n\t\t\t * key event occurs on wrapper node. This can occur when the block has\n\t\t\t * no text fields of its own, particularly after initial insertion, to\n\t\t\t * allow for easy deletion and continuous writing flow to add additional\n\t\t\t * content.\n\t\t\t *\n\t\t\t * @param {KeyboardEvent} event Keydown event.\n\t\t\t */\n\t\t\tfunction onKeyDown( event ) {\n\t\t\t\tconst { keyCode, target } = event;\n\n\t\t\t\tif (\n\t\t\t\t\tkeyCode !== ENTER &&\n\t\t\t\t\tkeyCode !== BACKSPACE &&\n\t\t\t\t\tkeyCode !== DELETE\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( target !== node || isTextField( target ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\tif ( keyCode === ENTER ) {\n\t\t\t\t\tinsertAfterBlock( clientId );\n\t\t\t\t} else {\n\t\t\t\t\tremoveBlock( clientId );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Prevents default dragging behavior within a block. To do: we must\n\t\t\t * handle this in the future and clean up the drag target.\n\t\t\t *\n\t\t\t * @param {DragEvent} event Drag event.\n\t\t\t */\n\t\t\tfunction onDragStart( event ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'keydown', onKeyDown );\n\t\t\tnode.addEventListener( 'dragstart', onDragStart );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'keydown', onKeyDown );\n\t\t\t\tnode.removeEventListener( 'dragstart', onDragStart );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tclientId,\n\t\t\tisSelected,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockIndex,\n\t\t\tinsertAfterBlock,\n\t\t\tremoveBlock,\n\t\t]\n\t);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,IAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAKA,IAAAI,MAAA,GAAAJ,OAAA;AAXA;AACA;AACA;;AAMA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASK,gBAAgBA,CAAE;EAAEC,QAAQ;EAAEC;AAAW,CAAC,EAAG;EAC5D,MAAM;IAAEC,oBAAoB;IAAEC;EAAc,CAAC,GAC5C,IAAAC,eAAS,EAAEC,YAAiB,CAAC;EAC9B,MAAM;IAAEC,gBAAgB;IAAEC;EAAY,CAAC,GAAG,IAAAC,iBAAW,EAAEH,YAAiB,CAAC;EAEzE,OAAO,IAAAI,qBAAY,EAChBC,IAAI,IAAM;IACX,IAAK,CAAET,UAAU,EAAG;MACnB;IACD;;IAEA;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACG,SAASU,SAASA,CAAEC,KAAK,EAAG;MAC3B,MAAM;QAAEC,OAAO;QAAEC;MAAO,CAAC,GAAGF,KAAK;MAEjC,IACCC,OAAO,KAAKE,eAAK,IACjBF,OAAO,KAAKG,mBAAS,IACrBH,OAAO,KAAKI,gBAAM,EACjB;QACD;MACD;MAEA,IAAKH,MAAM,KAAKJ,IAAI,IAAI,IAAAQ,gBAAW,EAAEJ,MAAO,CAAC,EAAG;QAC/C;MACD;MAEAF,KAAK,CAACO,cAAc,CAAC,CAAC;MAEtB,IAAKN,OAAO,KAAKE,eAAK,EAAG;QACxBT,gBAAgB,CAAEN,QAAS,CAAC;MAC7B,CAAC,MAAM;QACNO,WAAW,CAAEP,QAAS,CAAC;MACxB;IACD;;IAEA;AACH;AACA;AACA;AACA;AACA;IACG,SAASoB,WAAWA,CAAER,KAAK,EAAG;MAC7BA,KAAK,CAACO,cAAc,CAAC,CAAC;IACvB;IAEAT,IAAI,CAACW,gBAAgB,CAAE,SAAS,EAAEV,SAAU,CAAC;IAC7CD,IAAI,CAACW,gBAAgB,CAAE,WAAW,EAAED,WAAY,CAAC;IAEjD,OAAO,MAAM;MACZV,IAAI,CAACY,mBAAmB,CAAE,SAAS,EAAEX,SAAU,CAAC;MAChDD,IAAI,CAACY,mBAAmB,CAAE,WAAW,EAAEF,WAAY,CAAC;IACrD,CAAC;EACF,CAAC,EACD,CACCpB,QAAQ,EACRC,UAAU,EACVC,oBAAoB,EACpBC,aAAa,EACbG,gBAAgB,EAChBC,WAAW,CAEb,CAAC;AACF","ignoreList":[]}
1
+ {"version":3,"names":["_dom","require","_keycodes","_data","_compose","_store","_lockUnlock","useEventHandlers","clientId","isSelected","getBlockRootClientId","getBlockIndex","isZoomOut","unlock","useSelect","blockEditorStore","insertAfterBlock","removeBlock","resetZoomLevel","useDispatch","useRefEffect","node","onKeyDown","event","keyCode","target","ENTER","BACKSPACE","DELETE","isTextField","preventDefault","onDragStart","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/block-list/use-block-props/use-selected-block-event-handlers.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isTextField } from '@wordpress/dom';\nimport { ENTER, BACKSPACE, DELETE } from '@wordpress/keycodes';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../../store';\nimport { unlock } from '../../../lock-unlock';\n\n/**\n * Adds block behaviour:\n * - Removes the block on BACKSPACE.\n * - Inserts a default block on ENTER.\n * - Disables dragging of block contents.\n *\n * @param {string} clientId Block client ID.\n */\nexport function useEventHandlers( { clientId, isSelected } ) {\n\tconst { getBlockRootClientId, getBlockIndex, isZoomOut } = unlock(\n\t\tuseSelect( blockEditorStore )\n\t);\n\tconst { insertAfterBlock, removeBlock, resetZoomLevel } = unlock(\n\t\tuseDispatch( blockEditorStore )\n\t);\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( ! isSelected ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Interprets keydown event intent to remove or insert after block if\n\t\t\t * key event occurs on wrapper node. This can occur when the block has\n\t\t\t * no text fields of its own, particularly after initial insertion, to\n\t\t\t * allow for easy deletion and continuous writing flow to add additional\n\t\t\t * content.\n\t\t\t *\n\t\t\t * @param {KeyboardEvent} event Keydown event.\n\t\t\t */\n\t\t\tfunction onKeyDown( event ) {\n\t\t\t\tconst { keyCode, target } = event;\n\n\t\t\t\tif (\n\t\t\t\t\tkeyCode !== ENTER &&\n\t\t\t\t\tkeyCode !== BACKSPACE &&\n\t\t\t\t\tkeyCode !== DELETE\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( target !== node || isTextField( target ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\tif ( keyCode === ENTER && isZoomOut() ) {\n\t\t\t\t\tresetZoomLevel();\n\t\t\t\t} else if ( keyCode === ENTER ) {\n\t\t\t\t\tinsertAfterBlock( clientId );\n\t\t\t\t} else {\n\t\t\t\t\tremoveBlock( clientId );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Prevents default dragging behavior within a block. To do: we must\n\t\t\t * handle this in the future and clean up the drag target.\n\t\t\t *\n\t\t\t * @param {DragEvent} event Drag event.\n\t\t\t */\n\t\t\tfunction onDragStart( event ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'keydown', onKeyDown );\n\t\t\tnode.addEventListener( 'dragstart', onDragStart );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'keydown', onKeyDown );\n\t\t\t\tnode.removeEventListener( 'dragstart', onDragStart );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tclientId,\n\t\t\tisSelected,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockIndex,\n\t\t\tinsertAfterBlock,\n\t\t\tremoveBlock,\n\t\t\tisZoomOut,\n\t\t\tresetZoomLevel,\n\t\t]\n\t);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,IAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAKA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AAZA;AACA;AACA;;AAMA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASM,gBAAgBA,CAAE;EAAEC,QAAQ;EAAEC;AAAW,CAAC,EAAG;EAC5D,MAAM;IAAEC,oBAAoB;IAAEC,aAAa;IAAEC;EAAU,CAAC,GAAG,IAAAC,kBAAM,EAChE,IAAAC,eAAS,EAAEC,YAAiB,CAC7B,CAAC;EACD,MAAM;IAAEC,gBAAgB;IAAEC,WAAW;IAAEC;EAAe,CAAC,GAAG,IAAAL,kBAAM,EAC/D,IAAAM,iBAAW,EAAEJ,YAAiB,CAC/B,CAAC;EAED,OAAO,IAAAK,qBAAY,EAChBC,IAAI,IAAM;IACX,IAAK,CAAEZ,UAAU,EAAG;MACnB;IACD;;IAEA;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACG,SAASa,SAASA,CAAEC,KAAK,EAAG;MAC3B,MAAM;QAAEC,OAAO;QAAEC;MAAO,CAAC,GAAGF,KAAK;MAEjC,IACCC,OAAO,KAAKE,eAAK,IACjBF,OAAO,KAAKG,mBAAS,IACrBH,OAAO,KAAKI,gBAAM,EACjB;QACD;MACD;MAEA,IAAKH,MAAM,KAAKJ,IAAI,IAAI,IAAAQ,gBAAW,EAAEJ,MAAO,CAAC,EAAG;QAC/C;MACD;MAEAF,KAAK,CAACO,cAAc,CAAC,CAAC;MAEtB,IAAKN,OAAO,KAAKE,eAAK,IAAId,SAAS,CAAC,CAAC,EAAG;QACvCM,cAAc,CAAC,CAAC;MACjB,CAAC,MAAM,IAAKM,OAAO,KAAKE,eAAK,EAAG;QAC/BV,gBAAgB,CAAER,QAAS,CAAC;MAC7B,CAAC,MAAM;QACNS,WAAW,CAAET,QAAS,CAAC;MACxB;IACD;;IAEA;AACH;AACA;AACA;AACA;AACA;IACG,SAASuB,WAAWA,CAAER,KAAK,EAAG;MAC7BA,KAAK,CAACO,cAAc,CAAC,CAAC;IACvB;IAEAT,IAAI,CAACW,gBAAgB,CAAE,SAAS,EAAEV,SAAU,CAAC;IAC7CD,IAAI,CAACW,gBAAgB,CAAE,WAAW,EAAED,WAAY,CAAC;IAEjD,OAAO,MAAM;MACZV,IAAI,CAACY,mBAAmB,CAAE,SAAS,EAAEX,SAAU,CAAC;MAChDD,IAAI,CAACY,mBAAmB,CAAE,WAAW,EAAEF,WAAY,CAAC;IACrD,CAAC;EACF,CAAC,EACD,CACCvB,QAAQ,EACRC,UAAU,EACVC,oBAAoB,EACpBC,aAAa,EACbK,gBAAgB,EAChBC,WAAW,EACXL,SAAS,EACTM,cAAc,CAEhB,CAAC;AACF","ignoreList":[]}
@@ -21,7 +21,7 @@ var _lockUnlock = require("../../lock-unlock");
21
21
 
22
22
  function useInBetweenInserter() {
23
23
  const openRef = (0, _element.useContext)(_insertionPoint.InsertionPointOpenRef);
24
- const isInBetweenInserterDisabled = (0, _data.useSelect)(select => select(_store.store).getSettings().isDistractionFree || select(_store.store).__unstableGetEditorMode() === 'zoom-out', []);
24
+ const isInBetweenInserterDisabled = (0, _data.useSelect)(select => select(_store.store).getSettings().isDistractionFree || (0, _lockUnlock.unlock)(select(_store.store)).isZoomOut(), []);
25
25
  const {
26
26
  getBlockListSettings,
27
27
  getBlockIndex,
@@ -1 +1 @@
1
- {"version":3,"names":["_compose","require","_data","_element","_i18n","_store","_insertionPoint","_lockUnlock","useInBetweenInserter","openRef","useContext","InsertionPointOpenRef","isInBetweenInserterDisabled","useSelect","select","blockEditorStore","getSettings","isDistractionFree","__unstableGetEditorMode","getBlockListSettings","getBlockIndex","isMultiSelecting","getSelectedBlockClientIds","getTemplateLock","__unstableIsWithinBlockOverlay","getBlockEditingMode","getBlockName","getBlockAttributes","getParentSectionBlock","unlock","showInsertionPoint","hideInsertionPoint","useDispatch","useRefEffect","node","onMouseMove","event","undefined","current","target","nodeType","TEXT_NODE","classList","contains","rootClientId","blockElement","getAttribute","closest","layout","isManualPlacement","blockListSettings","orientation","captureToolbars","__experimentalCaptureToolbars","offsetTop","clientY","offsetLeft","clientX","children","Array","from","element","find","blockEl","blockElRect","getBoundingClientRect","top","isRTL","right","left","id","firstElementChild","clientId","slice","length","includes","hasFixedToolbar","elementRect","bottom","index","__unstableWithInserter","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/block-list/use-in-between-inserter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRefEffect } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useContext } from '@wordpress/element';\nimport { isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { InsertionPointOpenRef } from '../block-tools/insertion-point';\nimport { unlock } from '../../lock-unlock';\n\nexport function useInBetweenInserter() {\n\tconst openRef = useContext( InsertionPointOpenRef );\n\tconst isInBetweenInserterDisabled = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getSettings().isDistractionFree ||\n\t\t\tselect( blockEditorStore ).__unstableGetEditorMode() === 'zoom-out',\n\t\t[]\n\t);\n\tconst {\n\t\tgetBlockListSettings,\n\t\tgetBlockIndex,\n\t\tisMultiSelecting,\n\t\tgetSelectedBlockClientIds,\n\t\tgetSettings,\n\t\tgetTemplateLock,\n\t\t__unstableIsWithinBlockOverlay,\n\t\tgetBlockEditingMode,\n\t\tgetBlockName,\n\t\tgetBlockAttributes,\n\t\tgetParentSectionBlock,\n\t} = unlock( useSelect( blockEditorStore ) );\n\tconst { showInsertionPoint, hideInsertionPoint } =\n\t\tuseDispatch( blockEditorStore );\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( isInBetweenInserterDisabled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tfunction onMouseMove( event ) {\n\t\t\t\t// openRef is the reference to the insertion point between blocks.\n\t\t\t\t// If the reference is not set or the insertion point is already open, return.\n\t\t\t\tif ( openRef === undefined || openRef.current ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Ignore text nodes sometimes detected in FireFox.\n\t\t\t\tif ( event.target.nodeType === event.target.TEXT_NODE ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( isMultiSelecting() ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\t! event.target.classList.contains(\n\t\t\t\t\t\t'block-editor-block-list__layout'\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tlet rootClientId;\n\t\t\t\tif (\n\t\t\t\t\t! event.target.classList.contains( 'is-root-container' )\n\t\t\t\t) {\n\t\t\t\t\tconst blockElement = !! event.target.getAttribute(\n\t\t\t\t\t\t'data-block'\n\t\t\t\t\t)\n\t\t\t\t\t\t? event.target\n\t\t\t\t\t\t: event.target.closest( '[data-block]' );\n\t\t\t\t\trootClientId = blockElement.getAttribute( 'data-block' );\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\tgetTemplateLock( rootClientId ) ||\n\t\t\t\t\tgetBlockEditingMode( rootClientId ) === 'disabled' ||\n\t\t\t\t\tgetBlockName( rootClientId ) === 'core/block' ||\n\t\t\t\t\t( rootClientId &&\n\t\t\t\t\t\tgetBlockAttributes( rootClientId ).layout\n\t\t\t\t\t\t\t?.isManualPlacement )\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst blockListSettings = getBlockListSettings( rootClientId );\n\t\t\t\tconst orientation =\n\t\t\t\t\tblockListSettings?.orientation || 'vertical';\n\t\t\t\tconst captureToolbars =\n\t\t\t\t\t!! blockListSettings?.__experimentalCaptureToolbars;\n\t\t\t\tconst offsetTop = event.clientY;\n\t\t\t\tconst offsetLeft = event.clientX;\n\n\t\t\t\tconst children = Array.from( event.target.children );\n\t\t\t\tlet element = children.find( ( blockEl ) => {\n\t\t\t\t\tconst blockElRect = blockEl.getBoundingClientRect();\n\t\t\t\t\treturn (\n\t\t\t\t\t\t( blockEl.classList.contains( 'wp-block' ) &&\n\t\t\t\t\t\t\torientation === 'vertical' &&\n\t\t\t\t\t\t\tblockElRect.top > offsetTop ) ||\n\t\t\t\t\t\t( blockEl.classList.contains( 'wp-block' ) &&\n\t\t\t\t\t\t\torientation === 'horizontal' &&\n\t\t\t\t\t\t\t( isRTL()\n\t\t\t\t\t\t\t\t? blockElRect.right < offsetLeft\n\t\t\t\t\t\t\t\t: blockElRect.left > offsetLeft ) )\n\t\t\t\t\t);\n\t\t\t\t} );\n\n\t\t\t\tif ( ! element ) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// The block may be in an alignment wrapper, so check the first direct\n\t\t\t\t// child if the element has no ID.\n\t\t\t\tif ( ! element.id ) {\n\t\t\t\t\telement = element.firstElementChild;\n\n\t\t\t\t\tif ( ! element ) {\n\t\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Don't show the insertion point if a parent block has an \"overlay\"\n\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/34012#pullrequestreview-727762337\n\t\t\t\tconst clientId = element.id.slice( 'block-'.length );\n\t\t\t\tif (\n\t\t\t\t\t! clientId ||\n\t\t\t\t\t__unstableIsWithinBlockOverlay( clientId ) ||\n\t\t\t\t\t!! getParentSectionBlock( clientId )\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Don't show the inserter if the following conditions are met,\n\t\t\t\t// as it conflicts with the block toolbar:\n\t\t\t\t// 1. when hovering above or inside selected block(s)\n\t\t\t\t// 2. when the orientation is vertical\n\t\t\t\t// 3. when the __experimentalCaptureToolbars is not enabled\n\t\t\t\t// 4. when the Top Toolbar is not disabled\n\t\t\t\tif (\n\t\t\t\t\tgetSelectedBlockClientIds().includes( clientId ) &&\n\t\t\t\t\torientation === 'vertical' &&\n\t\t\t\t\t! captureToolbars &&\n\t\t\t\t\t! getSettings().hasFixedToolbar\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst elementRect = element.getBoundingClientRect();\n\n\t\t\t\tif (\n\t\t\t\t\t( orientation === 'horizontal' &&\n\t\t\t\t\t\t( event.clientY > elementRect.bottom ||\n\t\t\t\t\t\t\tevent.clientY < elementRect.top ) ) ||\n\t\t\t\t\t( orientation === 'vertical' &&\n\t\t\t\t\t\t( event.clientX > elementRect.right ||\n\t\t\t\t\t\t\tevent.clientX < elementRect.left ) )\n\t\t\t\t) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst index = getBlockIndex( clientId );\n\n\t\t\t\t// Don't show the in-between inserter before the first block in\n\t\t\t\t// the list (preserves the original behaviour).\n\t\t\t\tif ( index === 0 ) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tshowInsertionPoint( rootClientId, index, {\n\t\t\t\t\t__unstableWithInserter: true,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'mousemove', onMouseMove );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'mousemove', onMouseMove );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\topenRef,\n\t\t\tgetBlockListSettings,\n\t\t\tgetBlockIndex,\n\t\t\tisMultiSelecting,\n\t\t\tshowInsertionPoint,\n\t\t\thideInsertionPoint,\n\t\t\tgetSelectedBlockClientIds,\n\t\t\tisInBetweenInserterDisabled,\n\t\t]\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_compose","require","_data","_element","_i18n","_store","_insertionPoint","_lockUnlock","useInBetweenInserter","openRef","useContext","InsertionPointOpenRef","isInBetweenInserterDisabled","useSelect","select","blockEditorStore","getSettings","isDistractionFree","unlock","isZoomOut","getBlockListSettings","getBlockIndex","isMultiSelecting","getSelectedBlockClientIds","getTemplateLock","__unstableIsWithinBlockOverlay","getBlockEditingMode","getBlockName","getBlockAttributes","getParentSectionBlock","showInsertionPoint","hideInsertionPoint","useDispatch","useRefEffect","node","onMouseMove","event","undefined","current","target","nodeType","TEXT_NODE","classList","contains","rootClientId","blockElement","getAttribute","closest","layout","isManualPlacement","blockListSettings","orientation","captureToolbars","__experimentalCaptureToolbars","offsetTop","clientY","offsetLeft","clientX","children","Array","from","element","find","blockEl","blockElRect","getBoundingClientRect","top","isRTL","right","left","id","firstElementChild","clientId","slice","length","includes","hasFixedToolbar","elementRect","bottom","index","__unstableWithInserter","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/block-list/use-in-between-inserter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRefEffect } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useContext } from '@wordpress/element';\nimport { isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { InsertionPointOpenRef } from '../block-tools/insertion-point';\nimport { unlock } from '../../lock-unlock';\n\nexport function useInBetweenInserter() {\n\tconst openRef = useContext( InsertionPointOpenRef );\n\tconst isInBetweenInserterDisabled = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getSettings().isDistractionFree ||\n\t\t\tunlock( select( blockEditorStore ) ).isZoomOut(),\n\t\t[]\n\t);\n\tconst {\n\t\tgetBlockListSettings,\n\t\tgetBlockIndex,\n\t\tisMultiSelecting,\n\t\tgetSelectedBlockClientIds,\n\t\tgetSettings,\n\t\tgetTemplateLock,\n\t\t__unstableIsWithinBlockOverlay,\n\t\tgetBlockEditingMode,\n\t\tgetBlockName,\n\t\tgetBlockAttributes,\n\t\tgetParentSectionBlock,\n\t} = unlock( useSelect( blockEditorStore ) );\n\tconst { showInsertionPoint, hideInsertionPoint } =\n\t\tuseDispatch( blockEditorStore );\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( isInBetweenInserterDisabled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tfunction onMouseMove( event ) {\n\t\t\t\t// openRef is the reference to the insertion point between blocks.\n\t\t\t\t// If the reference is not set or the insertion point is already open, return.\n\t\t\t\tif ( openRef === undefined || openRef.current ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Ignore text nodes sometimes detected in FireFox.\n\t\t\t\tif ( event.target.nodeType === event.target.TEXT_NODE ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( isMultiSelecting() ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\t! event.target.classList.contains(\n\t\t\t\t\t\t'block-editor-block-list__layout'\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tlet rootClientId;\n\t\t\t\tif (\n\t\t\t\t\t! event.target.classList.contains( 'is-root-container' )\n\t\t\t\t) {\n\t\t\t\t\tconst blockElement = !! event.target.getAttribute(\n\t\t\t\t\t\t'data-block'\n\t\t\t\t\t)\n\t\t\t\t\t\t? event.target\n\t\t\t\t\t\t: event.target.closest( '[data-block]' );\n\t\t\t\t\trootClientId = blockElement.getAttribute( 'data-block' );\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\tgetTemplateLock( rootClientId ) ||\n\t\t\t\t\tgetBlockEditingMode( rootClientId ) === 'disabled' ||\n\t\t\t\t\tgetBlockName( rootClientId ) === 'core/block' ||\n\t\t\t\t\t( rootClientId &&\n\t\t\t\t\t\tgetBlockAttributes( rootClientId ).layout\n\t\t\t\t\t\t\t?.isManualPlacement )\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst blockListSettings = getBlockListSettings( rootClientId );\n\t\t\t\tconst orientation =\n\t\t\t\t\tblockListSettings?.orientation || 'vertical';\n\t\t\t\tconst captureToolbars =\n\t\t\t\t\t!! blockListSettings?.__experimentalCaptureToolbars;\n\t\t\t\tconst offsetTop = event.clientY;\n\t\t\t\tconst offsetLeft = event.clientX;\n\n\t\t\t\tconst children = Array.from( event.target.children );\n\t\t\t\tlet element = children.find( ( blockEl ) => {\n\t\t\t\t\tconst blockElRect = blockEl.getBoundingClientRect();\n\t\t\t\t\treturn (\n\t\t\t\t\t\t( blockEl.classList.contains( 'wp-block' ) &&\n\t\t\t\t\t\t\torientation === 'vertical' &&\n\t\t\t\t\t\t\tblockElRect.top > offsetTop ) ||\n\t\t\t\t\t\t( blockEl.classList.contains( 'wp-block' ) &&\n\t\t\t\t\t\t\torientation === 'horizontal' &&\n\t\t\t\t\t\t\t( isRTL()\n\t\t\t\t\t\t\t\t? blockElRect.right < offsetLeft\n\t\t\t\t\t\t\t\t: blockElRect.left > offsetLeft ) )\n\t\t\t\t\t);\n\t\t\t\t} );\n\n\t\t\t\tif ( ! element ) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// The block may be in an alignment wrapper, so check the first direct\n\t\t\t\t// child if the element has no ID.\n\t\t\t\tif ( ! element.id ) {\n\t\t\t\t\telement = element.firstElementChild;\n\n\t\t\t\t\tif ( ! element ) {\n\t\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Don't show the insertion point if a parent block has an \"overlay\"\n\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/34012#pullrequestreview-727762337\n\t\t\t\tconst clientId = element.id.slice( 'block-'.length );\n\t\t\t\tif (\n\t\t\t\t\t! clientId ||\n\t\t\t\t\t__unstableIsWithinBlockOverlay( clientId ) ||\n\t\t\t\t\t!! getParentSectionBlock( clientId )\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Don't show the inserter if the following conditions are met,\n\t\t\t\t// as it conflicts with the block toolbar:\n\t\t\t\t// 1. when hovering above or inside selected block(s)\n\t\t\t\t// 2. when the orientation is vertical\n\t\t\t\t// 3. when the __experimentalCaptureToolbars is not enabled\n\t\t\t\t// 4. when the Top Toolbar is not disabled\n\t\t\t\tif (\n\t\t\t\t\tgetSelectedBlockClientIds().includes( clientId ) &&\n\t\t\t\t\torientation === 'vertical' &&\n\t\t\t\t\t! captureToolbars &&\n\t\t\t\t\t! getSettings().hasFixedToolbar\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst elementRect = element.getBoundingClientRect();\n\n\t\t\t\tif (\n\t\t\t\t\t( orientation === 'horizontal' &&\n\t\t\t\t\t\t( event.clientY > elementRect.bottom ||\n\t\t\t\t\t\t\tevent.clientY < elementRect.top ) ) ||\n\t\t\t\t\t( orientation === 'vertical' &&\n\t\t\t\t\t\t( event.clientX > elementRect.right ||\n\t\t\t\t\t\t\tevent.clientX < elementRect.left ) )\n\t\t\t\t) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst index = getBlockIndex( clientId );\n\n\t\t\t\t// Don't show the in-between inserter before the first block in\n\t\t\t\t// the list (preserves the original behaviour).\n\t\t\t\tif ( index === 0 ) {\n\t\t\t\t\thideInsertionPoint();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tshowInsertionPoint( rootClientId, index, {\n\t\t\t\t\t__unstableWithInserter: true,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'mousemove', onMouseMove );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'mousemove', onMouseMove );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\topenRef,\n\t\t\tgetBlockListSettings,\n\t\t\tgetBlockIndex,\n\t\t\tisMultiSelecting,\n\t\t\tshowInsertionPoint,\n\t\t\thideInsertionPoint,\n\t\t\tgetSelectedBlockClientIds,\n\t\t\tisInBetweenInserterDisabled,\n\t\t]\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -79,20 +79,19 @@ function ZoomOutSeparator({
79
79
  }
80
80
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__unstableAnimatePresence, {
81
81
  children: isVisible && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__unstableMotion.div, {
82
- as: "button",
83
- layout: !isReducedMotion,
84
82
  initial: {
85
83
  height: 0
86
84
  },
87
85
  animate: {
88
- height: '120px'
86
+ // Use a height equal to that of the zoom out frame size.
87
+ height: 'calc(1 * var(--wp-block-editor-iframe-zoom-out-frame-size) / var(--wp-block-editor-iframe-zoom-out-scale)'
89
88
  },
90
89
  exit: {
91
90
  height: 0
92
91
  },
93
92
  transition: {
94
93
  type: 'tween',
95
- duration: 0.2,
94
+ duration: isReducedMotion ? 0 : 0.2,
96
95
  ease: [0.6, 0, 0.4, 1]
97
96
  },
98
97
  className: (0, _clsx.default)('block-editor-block-list__zoom-out-separator', {
@@ -109,11 +108,15 @@ function ZoomOutSeparator({
109
108
  opacity: 1
110
109
  },
111
110
  exit: {
112
- opacity: 0
111
+ opacity: 0,
112
+ transition: {
113
+ delay: -0.125
114
+ }
113
115
  },
114
116
  transition: {
115
- type: 'tween',
116
- duration: 0.1
117
+ ease: 'linear',
118
+ duration: 0.1,
119
+ delay: 0.125
117
120
  },
118
121
  children: (0, _i18n.__)('Drop pattern.')
119
122
  })