@wordpress/block-editor 12.6.0 → 12.8.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 (2320) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +44 -2
  3. package/build/autocompleters/block.js +9 -24
  4. package/build/autocompleters/block.js.map +1 -1
  5. package/build/autocompleters/link.js +3 -14
  6. package/build/autocompleters/link.js.map +1 -1
  7. package/build/components/alignment-control/index.js +6 -10
  8. package/build/components/alignment-control/index.js.map +1 -1
  9. package/build/components/alignment-control/ui.js +3 -11
  10. package/build/components/alignment-control/ui.js.map +1 -1
  11. package/build/components/autocomplete/index.js +8 -22
  12. package/build/components/autocomplete/index.js.map +1 -1
  13. package/build/components/block-actions/index.js +3 -26
  14. package/build/components/block-actions/index.js.map +1 -1
  15. package/build/components/block-alignment-control/constants.js +1 -3
  16. package/build/components/block-alignment-control/constants.js.map +1 -1
  17. package/build/components/block-alignment-control/index.js +6 -10
  18. package/build/components/block-alignment-control/index.js.map +1 -1
  19. package/build/components/block-alignment-control/ui.js +7 -16
  20. package/build/components/block-alignment-control/ui.js.map +1 -1
  21. package/build/components/block-alignment-control/ui.native.js +5 -13
  22. package/build/components/block-alignment-control/ui.native.js.map +1 -1
  23. package/build/components/block-alignment-control/use-available-alignments.js +10 -18
  24. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  25. package/build/components/block-alignment-matrix-control/index.js +1 -8
  26. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  27. package/build/components/block-breadcrumb/index.js +2 -15
  28. package/build/components/block-breadcrumb/index.js.map +1 -1
  29. package/build/components/block-caption/index.native.js +7 -16
  30. package/build/components/block-caption/index.native.js.map +1 -1
  31. package/build/components/block-card/index.js +5 -17
  32. package/build/components/block-card/index.js.map +1 -1
  33. package/build/components/block-compare/block-view.js +1 -4
  34. package/build/components/block-compare/block-view.js.map +1 -1
  35. package/build/components/block-compare/index.js +4 -12
  36. package/build/components/block-compare/index.js.map +1 -1
  37. package/build/components/block-content-overlay/index.js +1 -3
  38. package/build/components/block-content-overlay/index.js.map +1 -1
  39. package/build/components/block-context/index.js +3 -5
  40. package/build/components/block-context/index.js.map +1 -1
  41. package/build/components/block-controls/fill.js +3 -8
  42. package/build/components/block-controls/fill.js.map +1 -1
  43. package/build/components/block-controls/groups.js +1 -2
  44. package/build/components/block-controls/groups.js.map +1 -1
  45. package/build/components/block-controls/hook.js +1 -11
  46. package/build/components/block-controls/hook.js.map +1 -1
  47. package/build/components/block-controls/index.js +3 -9
  48. package/build/components/block-controls/index.js.map +1 -1
  49. package/build/components/block-controls/slot.js +3 -14
  50. package/build/components/block-controls/slot.js.map +1 -1
  51. package/build/components/block-controls/slot.native.js +5 -12
  52. package/build/components/block-controls/slot.native.js.map +1 -1
  53. package/build/components/block-controls/use-has-block-controls.js +43 -0
  54. package/build/components/block-controls/use-has-block-controls.js.map +1 -0
  55. package/build/components/block-draggable/draggable-chip.js +2 -9
  56. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  57. package/build/components/block-draggable/draggable-chip.native.js +2 -9
  58. package/build/components/block-draggable/draggable-chip.native.js.map +1 -1
  59. package/build/components/block-draggable/dropping-insertion-point.native.js +2 -23
  60. package/build/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  61. package/build/components/block-draggable/index.js +3 -15
  62. package/build/components/block-draggable/index.js.map +1 -1
  63. package/build/components/block-draggable/index.native.js +7 -56
  64. package/build/components/block-draggable/index.native.js.map +1 -1
  65. package/build/components/block-draggable/use-scroll-when-dragging.js +9 -13
  66. package/build/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
  67. package/build/components/block-draggable/use-scroll-when-dragging.native.js +2 -14
  68. package/build/components/block-draggable/use-scroll-when-dragging.native.js.map +1 -1
  69. package/build/components/block-edit/context.js +1 -3
  70. package/build/components/block-edit/context.js.map +1 -1
  71. package/build/components/block-edit/edit.js +13 -23
  72. package/build/components/block-edit/edit.js.map +1 -1
  73. package/build/components/block-edit/edit.native.js +4 -14
  74. package/build/components/block-edit/edit.native.js.map +1 -1
  75. package/build/components/block-edit/index.js +5 -8
  76. package/build/components/block-edit/index.js.map +1 -1
  77. package/build/components/block-edit-visually-button/index.js +1 -8
  78. package/build/components/block-edit-visually-button/index.js.map +1 -1
  79. package/build/components/block-editing-mode/index.js +3 -12
  80. package/build/components/block-editing-mode/index.js.map +1 -1
  81. package/build/components/block-full-height-alignment-control/index.js +1 -6
  82. package/build/components/block-full-height-alignment-control/index.js.map +1 -1
  83. package/build/components/block-heading-level-dropdown/heading-level-icon.js +2 -6
  84. package/build/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  85. package/build/components/block-heading-level-dropdown/index.js +4 -10
  86. package/build/components/block-heading-level-dropdown/index.js.map +1 -1
  87. package/build/components/block-heading-level-dropdown/index.native.js +2 -8
  88. package/build/components/block-heading-level-dropdown/index.native.js.map +1 -1
  89. package/build/components/block-icon/index.js +2 -10
  90. package/build/components/block-icon/index.js.map +1 -1
  91. package/build/components/block-icon/index.native.js +1 -10
  92. package/build/components/block-icon/index.native.js.map +1 -1
  93. package/build/components/block-info-slot-fill/index.js +5 -13
  94. package/build/components/block-info-slot-fill/index.js.map +1 -1
  95. package/build/components/block-inspector/index.js +11 -46
  96. package/build/components/block-inspector/index.js.map +1 -1
  97. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js +7 -10
  98. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  99. package/build/components/block-list/block-crash-boundary.js +1 -7
  100. package/build/components/block-list/block-crash-boundary.js.map +1 -1
  101. package/build/components/block-list/block-crash-warning.js +1 -7
  102. package/build/components/block-list/block-crash-warning.js.map +1 -1
  103. package/build/components/block-list/block-html.js +7 -15
  104. package/build/components/block-list/block-html.js.map +1 -1
  105. package/build/components/block-list/block-invalid-warning.js +3 -16
  106. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  107. package/build/components/block-list/block-invalid-warning.native.js +4 -16
  108. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  109. package/build/components/block-list/block-list-block-context.js +1 -2
  110. package/build/components/block-list/block-list-block-context.js.map +1 -1
  111. package/build/components/block-list/block-list-context.native.js +10 -25
  112. package/build/components/block-list/block-list-context.native.js.map +1 -1
  113. package/build/components/block-list/block-list-item-cell.native.js +1 -8
  114. package/build/components/block-list/block-list-item-cell.native.js.map +1 -1
  115. package/build/components/block-list/block-list-item.native.js +5 -18
  116. package/build/components/block-list/block-list-item.native.js.map +1 -1
  117. package/build/components/block-list/block-outline.native.js +2 -9
  118. package/build/components/block-list/block-outline.native.js.map +1 -1
  119. package/build/components/block-list/block-selection-button.native.js +2 -21
  120. package/build/components/block-list/block-selection-button.native.js.map +1 -1
  121. package/build/components/block-list/block.js +39 -80
  122. package/build/components/block-list/block.js.map +1 -1
  123. package/build/components/block-list/block.native.js +40 -71
  124. package/build/components/block-list/block.native.js.map +1 -1
  125. package/build/components/block-list/grid-item.native.js +1 -6
  126. package/build/components/block-list/grid-item.native.js.map +1 -1
  127. package/build/components/block-list/index.js +11 -32
  128. package/build/components/block-list/index.js.map +1 -1
  129. package/build/components/block-list/index.native.js +18 -49
  130. package/build/components/block-list/index.native.js.map +1 -1
  131. package/build/components/block-list/insertion-point.native.js +1 -9
  132. package/build/components/block-list/insertion-point.native.js.map +1 -1
  133. package/build/components/block-list/layout.js +3 -13
  134. package/build/components/block-list/layout.js.map +1 -1
  135. package/build/components/block-list/subdirectory-icon.js +3 -6
  136. package/build/components/block-list/subdirectory-icon.js.map +1 -1
  137. package/build/components/block-list/use-block-props/index.js +10 -35
  138. package/build/components/block-list/use-block-props/index.js.map +1 -1
  139. package/build/components/block-list/use-block-props/index.native.js +5 -5
  140. package/build/components/block-list/use-block-props/index.native.js.map +1 -1
  141. package/build/components/block-list/use-block-props/use-block-class-names.js +2 -8
  142. package/build/components/block-list/use-block-props/use-block-class-names.js.map +1 -1
  143. package/build/components/block-list/use-block-props/use-block-custom-class-name.js +0 -8
  144. package/build/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
  145. package/build/components/block-list/use-block-props/use-block-default-class-name.js +0 -6
  146. package/build/components/block-list/use-block-props/use-block-default-class-name.js.map +1 -1
  147. package/build/components/block-list/use-block-props/use-block-moving-mode-class-names.js +3 -10
  148. package/build/components/block-list/use-block-props/use-block-moving-mode-class-names.js.map +1 -1
  149. package/build/components/block-list/use-block-props/use-block-refs.js +9 -18
  150. package/build/components/block-list/use-block-props/use-block-refs.js.map +1 -1
  151. package/build/components/block-list/use-block-props/use-focus-first-element.js +13 -27
  152. package/build/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  153. package/build/components/block-list/use-block-props/use-focus-handler.js +6 -14
  154. package/build/components/block-list/use-block-props/use-focus-handler.js.map +1 -1
  155. package/build/components/block-list/use-block-props/use-intersection-observer.js +1 -4
  156. package/build/components/block-list/use-block-props/use-intersection-observer.js.map +1 -1
  157. package/build/components/block-list/use-block-props/use-is-hovered.js +4 -8
  158. package/build/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  159. package/build/components/block-list/use-block-props/use-nav-mode-exit.js +2 -6
  160. package/build/components/block-list/use-block-props/use-nav-mode-exit.js.map +1 -1
  161. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js +2 -15
  162. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  163. package/build/components/block-list/use-in-between-inserter.js +15 -37
  164. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  165. package/build/components/block-list-appender/index.js +12 -32
  166. package/build/components/block-list-appender/index.js.map +1 -1
  167. package/build/components/block-list-appender/index.native.js +1 -14
  168. package/build/components/block-list-appender/index.native.js.map +1 -1
  169. package/build/components/block-lock/index.js +0 -5
  170. package/build/components/block-lock/index.js.map +1 -1
  171. package/build/components/block-lock/menu-item.js +1 -10
  172. package/build/components/block-lock/menu-item.js.map +1 -1
  173. package/build/components/block-lock/modal.js +10 -22
  174. package/build/components/block-lock/modal.js.map +1 -1
  175. package/build/components/block-lock/toolbar.js +6 -16
  176. package/build/components/block-lock/toolbar.js.map +1 -1
  177. package/build/components/block-lock/use-block-lock.js +0 -3
  178. package/build/components/block-lock/use-block-lock.js.map +1 -1
  179. package/build/components/block-media-update-progress/index.native.js +9 -64
  180. package/build/components/block-media-update-progress/index.native.js.map +1 -1
  181. package/build/components/block-mover/button.js +1 -23
  182. package/build/components/block-mover/button.js.map +1 -1
  183. package/build/components/block-mover/index.js +4 -18
  184. package/build/components/block-mover/index.js.map +1 -1
  185. package/build/components/block-mover/index.native.js +3 -21
  186. package/build/components/block-mover/index.native.js.map +1 -1
  187. package/build/components/block-mover/mover-description.js +41 -63
  188. package/build/components/block-mover/mover-description.js.map +1 -1
  189. package/build/components/block-mover/mover-description.native.js +1 -20
  190. package/build/components/block-mover/mover-description.native.js.map +1 -1
  191. package/build/components/block-navigation/dropdown.js +6 -17
  192. package/build/components/block-navigation/dropdown.js.map +1 -1
  193. package/build/components/block-parent-selector/index.js +11 -43
  194. package/build/components/block-parent-selector/index.js.map +1 -1
  195. package/build/components/block-pattern-setup/constants.js.map +1 -1
  196. package/build/components/block-pattern-setup/index.js +3 -23
  197. package/build/components/block-pattern-setup/index.js.map +1 -1
  198. package/build/components/block-pattern-setup/setup-toolbar.js +1 -9
  199. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  200. package/build/components/block-pattern-setup/use-patterns-setup.js +1 -6
  201. package/build/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  202. package/build/components/block-patterns-list/index.js +3 -17
  203. package/build/components/block-patterns-list/index.js.map +1 -1
  204. package/build/components/block-popover/drop-zone.js +1 -12
  205. package/build/components/block-popover/drop-zone.js.map +1 -1
  206. package/build/components/block-popover/inbetween.js +16 -33
  207. package/build/components/block-popover/inbetween.js.map +1 -1
  208. package/build/components/block-popover/index.js +15 -26
  209. package/build/components/block-popover/index.js.map +1 -1
  210. package/build/components/block-popover/use-popover-scroll.js +2 -7
  211. package/build/components/block-popover/use-popover-scroll.js.map +1 -1
  212. package/build/components/block-preview/auto.js +15 -19
  213. package/build/components/block-preview/auto.js.map +1 -1
  214. package/build/components/block-preview/index.js +8 -24
  215. package/build/components/block-preview/index.js.map +1 -1
  216. package/build/components/block-quick-navigation/index.js +2 -13
  217. package/build/components/block-quick-navigation/index.js.map +1 -1
  218. package/build/components/block-removal-warning-modal/index.js +5 -15
  219. package/build/components/block-removal-warning-modal/index.js.map +1 -1
  220. package/build/components/block-selection-clearer/index.js +2 -11
  221. package/build/components/block-selection-clearer/index.js.map +1 -1
  222. package/build/components/block-settings/button.native.js +3 -10
  223. package/build/components/block-settings/button.native.js.map +1 -1
  224. package/build/components/block-settings/container.native.js +3 -9
  225. package/build/components/block-settings/container.native.js.map +1 -1
  226. package/build/components/block-settings/index.native.js +0 -5
  227. package/build/components/block-settings/index.native.js.map +1 -1
  228. package/build/components/block-settings-menu/block-convert-button.js +1 -5
  229. package/build/components/block-settings-menu/block-convert-button.js.map +1 -1
  230. package/build/components/block-settings-menu/block-html-convert-button.js +0 -9
  231. package/build/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  232. package/build/components/block-settings-menu/block-mode-toggle.js +1 -13
  233. package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  234. package/build/components/block-settings-menu/block-settings-dropdown.js +16 -53
  235. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  236. package/build/components/block-settings-menu/block-settings-menu-first-item.js +1 -2
  237. package/build/components/block-settings-menu/block-settings-menu-first-item.js.map +1 -1
  238. package/build/components/block-settings-menu/index.js +1 -6
  239. package/build/components/block-settings-menu/index.js.map +1 -1
  240. package/build/components/block-settings-menu-controls/index.js +13 -22
  241. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  242. package/build/components/block-styles/index.js +2 -20
  243. package/build/components/block-styles/index.js.map +1 -1
  244. package/build/components/block-styles/index.native.js +1 -17
  245. package/build/components/block-styles/index.native.js.map +1 -1
  246. package/build/components/block-styles/menu-items.js +1 -9
  247. package/build/components/block-styles/menu-items.js.map +1 -1
  248. package/build/components/block-styles/preview-panel.js +5 -8
  249. package/build/components/block-styles/preview-panel.js.map +1 -1
  250. package/build/components/block-styles/preview.native.js +3 -19
  251. package/build/components/block-styles/preview.native.js.map +1 -1
  252. package/build/components/block-styles/use-styles-for-block.js +1 -15
  253. package/build/components/block-styles/use-styles-for-block.js.map +1 -1
  254. package/build/components/block-styles/utils.js +3 -16
  255. package/build/components/block-styles/utils.js.map +1 -1
  256. package/build/components/block-switcher/block-styles-menu.js +1 -6
  257. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  258. package/build/components/block-switcher/block-transformations-menu.js +4 -18
  259. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  260. package/build/components/block-switcher/block-transformations-menu.native.js +4 -18
  261. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  262. package/build/components/block-switcher/block-variation-transformations.js +3 -16
  263. package/build/components/block-switcher/block-variation-transformations.js.map +1 -1
  264. package/build/components/block-switcher/index.js +12 -43
  265. package/build/components/block-switcher/index.js.map +1 -1
  266. package/build/components/block-switcher/pattern-transformations-menu.js +3 -14
  267. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  268. package/build/components/block-switcher/preview-block-popover.js +1 -6
  269. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  270. package/build/components/block-switcher/use-transformed-patterns.js +12 -27
  271. package/build/components/block-switcher/use-transformed-patterns.js.map +1 -1
  272. package/build/components/block-switcher/utils.js +5 -10
  273. package/build/components/block-switcher/utils.js.map +1 -1
  274. package/build/components/block-title/index.js +0 -3
  275. package/build/components/block-title/index.js.map +1 -1
  276. package/build/components/block-title/use-block-display-title.js +2 -15
  277. package/build/components/block-title/use-block-display-title.js.map +1 -1
  278. package/build/components/block-toolbar/block-name-context.js +1 -3
  279. package/build/components/block-toolbar/block-name-context.js.map +1 -1
  280. package/build/components/block-toolbar/block-toolbar-last-item.js +1 -2
  281. package/build/components/block-toolbar/block-toolbar-last-item.js.map +1 -1
  282. package/build/components/block-toolbar/block-toolbar-menu.native.js +24 -43
  283. package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  284. package/build/components/block-toolbar/index.js +10 -64
  285. package/build/components/block-toolbar/index.js.map +1 -1
  286. package/build/components/block-toolbar/index.native.js +1 -15
  287. package/build/components/block-toolbar/index.native.js.map +1 -1
  288. package/build/components/block-toolbar/utils.js +58 -74
  289. package/build/components/block-toolbar/utils.js.map +1 -1
  290. package/build/components/block-tools/back-compat.js +3 -11
  291. package/build/components/block-tools/back-compat.js.map +1 -1
  292. package/build/components/block-tools/block-contextual-toolbar.js +50 -23
  293. package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
  294. package/build/components/block-tools/block-selection-button.js +8 -43
  295. package/build/components/block-tools/block-selection-button.js.map +1 -1
  296. package/build/components/block-tools/index.js +9 -32
  297. package/build/components/block-tools/index.js.map +1 -1
  298. package/build/components/block-tools/insertion-point.js +8 -30
  299. package/build/components/block-tools/insertion-point.js.map +1 -1
  300. package/build/components/block-tools/selected-block-popover.js +12 -35
  301. package/build/components/block-tools/selected-block-popover.js.map +1 -1
  302. package/build/components/block-tools/use-block-toolbar-popover-props.js +35 -36
  303. package/build/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  304. package/build/components/block-tools/zoom-out-mode-inserters.js +3 -12
  305. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  306. package/build/components/block-types-list/index.js +1 -10
  307. package/build/components/block-types-list/index.js.map +1 -1
  308. package/build/components/block-types-list/index.native.js +3 -22
  309. package/build/components/block-types-list/index.native.js.map +1 -1
  310. package/build/components/block-variation-picker/index.js +1 -8
  311. package/build/components/block-variation-picker/index.js.map +1 -1
  312. package/build/components/block-variation-picker/index.native.js +11 -36
  313. package/build/components/block-variation-picker/index.native.js.map +1 -1
  314. package/build/components/block-variation-transforms/index.js +8 -22
  315. package/build/components/block-variation-transforms/index.js.map +1 -1
  316. package/build/components/block-vertical-alignment-control/icons.js +1 -3
  317. package/build/components/block-vertical-alignment-control/icons.js.map +1 -1
  318. package/build/components/block-vertical-alignment-control/index.js +6 -10
  319. package/build/components/block-vertical-alignment-control/index.js.map +1 -1
  320. package/build/components/block-vertical-alignment-control/ui.js +4 -10
  321. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  322. package/build/components/border-radius-control/all-input-control.js +8 -13
  323. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  324. package/build/components/border-radius-control/index.js +5 -16
  325. package/build/components/border-radius-control/index.js.map +1 -1
  326. package/build/components/border-radius-control/input-controls.js +14 -15
  327. package/build/components/border-radius-control/input-controls.js.map +1 -1
  328. package/build/components/border-radius-control/linked-button.js +5 -7
  329. package/build/components/border-radius-control/linked-button.js.map +1 -1
  330. package/build/components/border-radius-control/utils.js +9 -17
  331. package/build/components/border-radius-control/utils.js.map +1 -1
  332. package/build/components/button-block-appender/index.js +5 -19
  333. package/build/components/button-block-appender/index.js.map +1 -1
  334. package/build/components/button-block-appender/index.native.js +4 -13
  335. package/build/components/button-block-appender/index.native.js.map +1 -1
  336. package/build/components/caption/index.native.js +1 -7
  337. package/build/components/caption/index.native.js.map +1 -1
  338. package/build/components/child-layout-control/index.js +8 -13
  339. package/build/components/child-layout-control/index.js.map +1 -1
  340. package/build/components/color-palette/control.js +3 -5
  341. package/build/components/color-palette/control.js.map +1 -1
  342. package/build/components/color-palette/index.js +0 -6
  343. package/build/components/color-palette/index.js.map +1 -1
  344. package/build/components/color-palette/with-color-context.js +2 -8
  345. package/build/components/color-palette/with-color-context.js.map +1 -1
  346. package/build/components/color-style-selector/index.js +3 -14
  347. package/build/components/color-style-selector/index.js.map +1 -1
  348. package/build/components/colors/index.js +0 -4
  349. package/build/components/colors/index.js.map +1 -1
  350. package/build/components/colors/utils.js +5 -20
  351. package/build/components/colors/utils.js.map +1 -1
  352. package/build/components/colors/with-colors.js +15 -30
  353. package/build/components/colors/with-colors.js.map +1 -1
  354. package/build/components/colors-gradients/control.js +7 -19
  355. package/build/components/colors-gradients/control.js.map +1 -1
  356. package/build/components/colors-gradients/dropdown.js +15 -21
  357. package/build/components/colors-gradients/dropdown.js.map +1 -1
  358. package/build/components/colors-gradients/panel-color-gradient-settings.js +7 -20
  359. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  360. package/build/components/colors-gradients/panel-color-gradient-settings.native.js +1 -5
  361. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  362. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +0 -13
  363. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  364. package/build/components/contrast-checker/index.js +20 -31
  365. package/build/components/contrast-checker/index.js.map +1 -1
  366. package/build/components/contrast-checker/index.native.js +4 -21
  367. package/build/components/contrast-checker/index.native.js.map +1 -1
  368. package/build/components/convert-to-group-buttons/index.js +1 -18
  369. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  370. package/build/components/convert-to-group-buttons/index.native.js +5 -17
  371. package/build/components/convert-to-group-buttons/index.native.js.map +1 -1
  372. package/build/components/convert-to-group-buttons/toolbar.js +3 -19
  373. package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
  374. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js +4 -7
  375. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  376. package/build/components/copy-handler/index.js +24 -53
  377. package/build/components/copy-handler/index.js.map +1 -1
  378. package/build/components/date-format-picker/index.js +2 -8
  379. package/build/components/date-format-picker/index.js.map +1 -1
  380. package/build/components/default-block-appender/index.js +4 -18
  381. package/build/components/default-block-appender/index.js.map +1 -1
  382. package/build/components/default-block-appender/index.native.js +14 -21
  383. package/build/components/default-block-appender/index.native.js.map +1 -1
  384. package/build/components/default-style-picker/index.js +4 -12
  385. package/build/components/default-style-picker/index.js.map +1 -1
  386. package/build/components/dimensions-tool/aspect-ratio-tool.js +1 -6
  387. package/build/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
  388. package/build/components/dimensions-tool/index.js +37 -36
  389. package/build/components/dimensions-tool/index.js.map +1 -1
  390. package/build/components/dimensions-tool/scale-tool.js +1 -5
  391. package/build/components/dimensions-tool/scale-tool.js.map +1 -1
  392. package/build/components/dimensions-tool/width-height-tool.js +5 -15
  393. package/build/components/dimensions-tool/width-height-tool.js.map +1 -1
  394. package/build/components/duotone/components.js +5 -11
  395. package/build/components/duotone/components.js.map +1 -1
  396. package/build/components/duotone/index.js +0 -2
  397. package/build/components/duotone/index.js.map +1 -1
  398. package/build/components/duotone/utils.js +0 -2
  399. package/build/components/duotone/utils.js.map +1 -1
  400. package/build/components/duotone-control/index.js +1 -10
  401. package/build/components/duotone-control/index.js.map +1 -1
  402. package/build/components/editable-text/index.js +4 -8
  403. package/build/components/editable-text/index.js.map +1 -1
  404. package/build/components/editor-styles/index.js +5 -17
  405. package/build/components/editor-styles/index.js.map +1 -1
  406. package/build/components/floating-toolbar/index.native.js +3 -18
  407. package/build/components/floating-toolbar/index.native.js.map +1 -1
  408. package/build/components/floating-toolbar/nav-up-icon.js +1 -5
  409. package/build/components/floating-toolbar/nav-up-icon.js.map +1 -1
  410. package/build/components/font-appearance-control/index.js +25 -30
  411. package/build/components/font-appearance-control/index.js.map +1 -1
  412. package/build/components/font-family/index.js +1 -9
  413. package/build/components/font-family/index.js.map +1 -1
  414. package/build/components/font-sizes/fluid-utils.js +52 -51
  415. package/build/components/font-sizes/fluid-utils.js.map +1 -1
  416. package/build/components/font-sizes/font-size-picker.js +4 -8
  417. package/build/components/font-sizes/font-size-picker.js.map +1 -1
  418. package/build/components/font-sizes/index.js +0 -5
  419. package/build/components/font-sizes/index.js.map +1 -1
  420. package/build/components/font-sizes/index.native.js +0 -4
  421. package/build/components/font-sizes/index.native.js.map +1 -1
  422. package/build/components/font-sizes/utils.js +2 -12
  423. package/build/components/font-sizes/utils.js.map +1 -1
  424. package/build/components/font-sizes/with-font-sizes.js +15 -27
  425. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  426. package/build/components/global-styles/advanced-panel.js +3 -14
  427. package/build/components/global-styles/advanced-panel.js.map +1 -1
  428. package/build/components/global-styles/behaviors-panel.js +64 -0
  429. package/build/components/global-styles/behaviors-panel.js.map +1 -0
  430. package/build/components/global-styles/border-panel.js +22 -43
  431. package/build/components/global-styles/border-panel.js.map +1 -1
  432. package/build/components/global-styles/color-panel.js +30 -69
  433. package/build/components/global-styles/color-panel.js.map +1 -1
  434. package/build/components/global-styles/color-panel.native.js +5 -19
  435. package/build/components/global-styles/color-panel.native.js.map +1 -1
  436. package/build/components/global-styles/context.js +1 -2
  437. package/build/components/global-styles/context.js.map +1 -1
  438. package/build/components/global-styles/dimensions-panel.js +33 -92
  439. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  440. package/build/components/global-styles/effects-panel.js +7 -27
  441. package/build/components/global-styles/effects-panel.js.map +1 -1
  442. package/build/components/global-styles/filters-panel.js +9 -25
  443. package/build/components/global-styles/filters-panel.js.map +1 -1
  444. package/build/components/global-styles/get-block-css-selector.js +33 -31
  445. package/build/components/global-styles/get-block-css-selector.js.map +1 -1
  446. package/build/components/global-styles/hooks.js +136 -71
  447. package/build/components/global-styles/hooks.js.map +1 -1
  448. package/build/components/global-styles/index.js +19 -15
  449. package/build/components/global-styles/index.js.map +1 -1
  450. package/build/components/global-styles/typography-panel.js +25 -87
  451. package/build/components/global-styles/typography-panel.js.map +1 -1
  452. package/build/components/global-styles/typography-utils.js +8 -16
  453. package/build/components/global-styles/typography-utils.js.map +1 -1
  454. package/build/components/global-styles/use-global-styles-output.js +96 -190
  455. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  456. package/build/components/global-styles/utils.js +12 -49
  457. package/build/components/global-styles/utils.js.map +1 -1
  458. package/build/components/gradients/index.js +0 -2
  459. package/build/components/gradients/index.js.map +1 -1
  460. package/build/components/gradients/index.native.js +0 -4
  461. package/build/components/gradients/index.native.js.map +1 -1
  462. package/build/components/gradients/use-gradient.js +3 -21
  463. package/build/components/gradients/use-gradient.js.map +1 -1
  464. package/build/components/gradients/with-gradient.js +3 -5
  465. package/build/components/gradients/with-gradient.js.map +1 -1
  466. package/build/components/height-control/index.js +2 -12
  467. package/build/components/height-control/index.js.map +1 -1
  468. package/build/components/iframe/index.js +23 -46
  469. package/build/components/iframe/index.js.map +1 -1
  470. package/build/components/iframe/use-compatibility-styles.js +8 -20
  471. package/build/components/iframe/use-compatibility-styles.js.map +1 -1
  472. package/build/components/image-editor/aspect-ratio-dropdown.js +3 -9
  473. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  474. package/build/components/image-editor/constants.js.map +1 -1
  475. package/build/components/image-editor/context.js +3 -9
  476. package/build/components/image-editor/context.js.map +1 -1
  477. package/build/components/image-editor/cropper.js +3 -11
  478. package/build/components/image-editor/cropper.js.map +1 -1
  479. package/build/components/image-editor/form-controls.js +1 -5
  480. package/build/components/image-editor/form-controls.js.map +1 -1
  481. package/build/components/image-editor/index.js +1 -11
  482. package/build/components/image-editor/index.js.map +1 -1
  483. package/build/components/image-editor/rotation-button.js +1 -6
  484. package/build/components/image-editor/rotation-button.js.map +1 -1
  485. package/build/components/image-editor/use-save-image.js +5 -15
  486. package/build/components/image-editor/use-save-image.js.map +1 -1
  487. package/build/components/image-editor/use-transform-image.js +1 -12
  488. package/build/components/image-editor/use-transform-image.js.map +1 -1
  489. package/build/components/image-editor/zoom-dropdown.js +1 -7
  490. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  491. package/build/components/image-size-control/index.js +1 -9
  492. package/build/components/image-size-control/index.js.map +1 -1
  493. package/build/components/image-size-control/use-dimension-handler.js +7 -14
  494. package/build/components/image-size-control/use-dimension-handler.js.map +1 -1
  495. package/build/components/index.js +25 -115
  496. package/build/components/index.js.map +1 -1
  497. package/build/components/index.native.js +0 -53
  498. package/build/components/index.native.js.map +1 -1
  499. package/build/components/inner-blocks/button-block-appender.js +1 -9
  500. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  501. package/build/components/inner-blocks/default-block-appender.js +1 -11
  502. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  503. package/build/components/inner-blocks/index.js +22 -38
  504. package/build/components/inner-blocks/index.js.map +1 -1
  505. package/build/components/inner-blocks/index.native.js +18 -31
  506. package/build/components/inner-blocks/index.native.js.map +1 -1
  507. package/build/components/inner-blocks/use-block-context.js +0 -9
  508. package/build/components/inner-blocks/use-block-context.js.map +1 -1
  509. package/build/components/inner-blocks/use-inner-block-template-sync.js +10 -18
  510. package/build/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  511. package/build/components/inner-blocks/use-nested-settings-update.js +18 -27
  512. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  513. package/build/components/inner-blocks/with-client-id.js +3 -5
  514. package/build/components/inner-blocks/with-client-id.js.map +1 -1
  515. package/build/components/inserter/block-patterns-explorer/explorer.js +3 -10
  516. package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  517. package/build/components/inserter/block-patterns-explorer/patterns-list.js +5 -24
  518. package/build/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  519. package/build/components/inserter/block-patterns-explorer/sidebar.js +1 -7
  520. package/build/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  521. package/build/components/inserter/block-patterns-tab.js +12 -33
  522. package/build/components/inserter/block-patterns-tab.js.map +1 -1
  523. package/build/components/inserter/block-types-tab.js +9 -25
  524. package/build/components/inserter/block-types-tab.js.map +1 -1
  525. package/build/components/inserter/block-types-tab.native.js +1 -14
  526. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  527. package/build/components/inserter/hooks/use-block-type-impressions.native.js +9 -12
  528. package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  529. package/build/components/inserter/hooks/use-block-types-state.js +6 -8
  530. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  531. package/build/components/inserter/hooks/use-clipboard-block.native.js +1 -7
  532. package/build/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  533. package/build/components/inserter/hooks/use-debounced-input.js +6 -10
  534. package/build/components/inserter/hooks/use-debounced-input.js.map +1 -1
  535. package/build/components/inserter/hooks/use-insertion-point.js +2 -15
  536. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  537. package/build/components/inserter/hooks/use-patterns-state.js +6 -13
  538. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  539. package/build/components/inserter/index.js +29 -66
  540. package/build/components/inserter/index.js.map +1 -1
  541. package/build/components/inserter/index.native.js +23 -71
  542. package/build/components/inserter/index.native.js.map +1 -1
  543. package/build/components/inserter/library.js +1 -11
  544. package/build/components/inserter/library.js.map +1 -1
  545. package/build/components/inserter/media-tab/hooks.js +12 -27
  546. package/build/components/inserter/media-tab/hooks.js.map +1 -1
  547. package/build/components/inserter/media-tab/index.js +0 -4
  548. package/build/components/inserter/media-tab/index.js.map +1 -1
  549. package/build/components/inserter/media-tab/media-list.js +3 -7
  550. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  551. package/build/components/inserter/media-tab/media-panel.js +1 -13
  552. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  553. package/build/components/inserter/media-tab/media-preview.js +10 -35
  554. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  555. package/build/components/inserter/media-tab/media-tab.js +3 -18
  556. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  557. package/build/components/inserter/media-tab/utils.js +2 -6
  558. package/build/components/inserter/media-tab/utils.js.map +1 -1
  559. package/build/components/inserter/menu.js +2 -22
  560. package/build/components/inserter/menu.js.map +1 -1
  561. package/build/components/inserter/menu.native.js +5 -24
  562. package/build/components/inserter/menu.native.js.map +1 -1
  563. package/build/components/inserter/mobile-tab-navigation.js +3 -7
  564. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  565. package/build/components/inserter/no-results.js +1 -5
  566. package/build/components/inserter/no-results.js.map +1 -1
  567. package/build/components/inserter/no-results.native.js +1 -8
  568. package/build/components/inserter/no-results.native.js.map +1 -1
  569. package/build/components/inserter/panel.js +1 -4
  570. package/build/components/inserter/panel.js.map +1 -1
  571. package/build/components/inserter/preview-panel.js +14 -15
  572. package/build/components/inserter/preview-panel.js.map +1 -1
  573. package/build/components/inserter/quick-inserter.js +4 -18
  574. package/build/components/inserter/quick-inserter.js.map +1 -1
  575. package/build/components/inserter/reusable-block-rename-hint.js +2 -16
  576. package/build/components/inserter/reusable-block-rename-hint.js.map +1 -1
  577. package/build/components/inserter/reusable-blocks-tab.js +6 -19
  578. package/build/components/inserter/reusable-blocks-tab.js.map +1 -1
  579. package/build/components/inserter/reusable-blocks-tab.native.js +1 -9
  580. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  581. package/build/components/inserter/search-items.js +21 -41
  582. package/build/components/inserter/search-items.js.map +1 -1
  583. package/build/components/inserter/search-results.js +6 -37
  584. package/build/components/inserter/search-results.js.map +1 -1
  585. package/build/components/inserter/search-results.native.js +1 -15
  586. package/build/components/inserter/search-results.native.js.map +1 -1
  587. package/build/components/inserter/tabs.js +1 -17
  588. package/build/components/inserter/tabs.js.map +1 -1
  589. package/build/components/inserter/tabs.native.js +5 -20
  590. package/build/components/inserter/tabs.native.js.map +1 -1
  591. package/build/components/inserter/tips.js +3 -7
  592. package/build/components/inserter/tips.js.map +1 -1
  593. package/build/components/inserter/utils.native.js +2 -9
  594. package/build/components/inserter/utils.native.js.map +1 -1
  595. package/build/components/inserter-draggable-blocks/index.js +1 -8
  596. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  597. package/build/components/inserter-list-item/index.js +2 -17
  598. package/build/components/inserter-list-item/index.js.map +1 -1
  599. package/build/components/inserter-listbox/context.js +1 -2
  600. package/build/components/inserter-listbox/context.js.map +1 -1
  601. package/build/components/inserter-listbox/group.js +1 -7
  602. package/build/components/inserter-listbox/group.js.map +1 -1
  603. package/build/components/inserter-listbox/index.js +1 -9
  604. package/build/components/inserter-listbox/index.js.map +1 -1
  605. package/build/components/inserter-listbox/item.js +9 -14
  606. package/build/components/inserter-listbox/item.js.map +1 -1
  607. package/build/components/inserter-listbox/row.js +1 -7
  608. package/build/components/inserter-listbox/row.js.map +1 -1
  609. package/build/components/inserter-menu-extension/index.js +1 -2
  610. package/build/components/inserter-menu-extension/index.js.map +1 -1
  611. package/build/components/inspector-controls/block-support-slot-container.js +3 -4
  612. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  613. package/build/components/inspector-controls/block-support-tools-panel.js +7 -9
  614. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  615. package/build/components/inspector-controls/fill.js +4 -16
  616. package/build/components/inspector-controls/fill.js.map +1 -1
  617. package/build/components/inspector-controls/fill.native.js +3 -15
  618. package/build/components/inspector-controls/fill.native.js.map +1 -1
  619. package/build/components/inspector-controls/groups.js +1 -2
  620. package/build/components/inspector-controls/groups.js.map +1 -1
  621. package/build/components/inspector-controls/index.js +8 -12
  622. package/build/components/inspector-controls/index.js.map +1 -1
  623. package/build/components/inspector-controls/slot.js +5 -16
  624. package/build/components/inspector-controls/slot.js.map +1 -1
  625. package/build/components/inspector-controls/slot.native.js +3 -10
  626. package/build/components/inspector-controls/slot.native.js.map +1 -1
  627. package/build/components/inspector-controls-tabs/advanced-controls-panel.js +1 -10
  628. package/build/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  629. package/build/components/inspector-controls-tabs/index.js +1 -11
  630. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  631. package/build/components/inspector-controls-tabs/position-controls-panel.js +3 -14
  632. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  633. package/build/components/inspector-controls-tabs/settings-tab-hint.js +1 -13
  634. package/build/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  635. package/build/components/inspector-controls-tabs/settings-tab.js +1 -8
  636. package/build/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  637. package/build/components/inspector-controls-tabs/styles-tab.js +1 -10
  638. package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  639. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js +14 -24
  640. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  641. package/build/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js +0 -2
  642. package/build/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js.map +1 -1
  643. package/build/components/inspector-controls-tabs/utils.js +1 -3
  644. package/build/components/inspector-controls-tabs/utils.js.map +1 -1
  645. package/build/components/inspector-popover-header/index.js +1 -5
  646. package/build/components/inspector-popover-header/index.js.map +1 -1
  647. package/build/components/justify-content-control/index.js +6 -10
  648. package/build/components/justify-content-control/index.js.map +1 -1
  649. package/build/components/justify-content-control/ui.js +1 -8
  650. package/build/components/justify-content-control/ui.js.map +1 -1
  651. package/build/components/keyboard-shortcuts/index.js +10 -7
  652. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  653. package/build/components/letter-spacing-control/index.js +2 -7
  654. package/build/components/letter-spacing-control/index.js.map +1 -1
  655. package/build/components/line-height-control/index.js +21 -37
  656. package/build/components/line-height-control/index.js.map +1 -1
  657. package/build/components/line-height-control/index.native.js +5 -7
  658. package/build/components/line-height-control/index.native.js.map +1 -1
  659. package/build/components/line-height-control/utils.js +10 -6
  660. package/build/components/line-height-control/utils.js.map +1 -1
  661. package/build/components/link-control/constants.js +1 -2
  662. package/build/components/link-control/constants.js.map +1 -1
  663. package/build/components/link-control/index.js +79 -52
  664. package/build/components/link-control/index.js.map +1 -1
  665. package/build/components/link-control/is-url-like.js +4 -8
  666. package/build/components/link-control/is-url-like.js.map +1 -1
  667. package/build/components/link-control/link-preview.js +11 -19
  668. package/build/components/link-control/link-preview.js.map +1 -1
  669. package/build/components/link-control/search-create-button.js +4 -12
  670. package/build/components/link-control/search-create-button.js.map +1 -1
  671. package/build/components/link-control/search-input.js +15 -28
  672. package/build/components/link-control/search-input.js.map +1 -1
  673. package/build/components/link-control/search-item.js +7 -19
  674. package/build/components/link-control/search-item.js.map +1 -1
  675. package/build/components/link-control/search-results.js +13 -22
  676. package/build/components/link-control/search-results.js.map +1 -1
  677. package/build/components/link-control/settings-drawer.js +1 -7
  678. package/build/components/link-control/settings-drawer.js.map +1 -1
  679. package/build/components/link-control/settings.js +3 -9
  680. package/build/components/link-control/settings.js.map +1 -1
  681. package/build/components/link-control/use-create-page.js +5 -12
  682. package/build/components/link-control/use-create-page.js.map +1 -1
  683. package/build/components/link-control/use-internal-value.js +9 -12
  684. package/build/components/link-control/use-internal-value.js.map +1 -1
  685. package/build/components/link-control/use-rich-url-data.js +9 -14
  686. package/build/components/link-control/use-rich-url-data.js.map +1 -1
  687. package/build/components/link-control/use-search-handler.js +10 -24
  688. package/build/components/link-control/use-search-handler.js.map +1 -1
  689. package/build/components/link-control/viewer-slot.js +1 -2
  690. package/build/components/link-control/viewer-slot.js.map +1 -1
  691. package/build/components/list-view/appender.js +4 -18
  692. package/build/components/list-view/appender.js.map +1 -1
  693. package/build/components/list-view/aria-referenced-text.js +0 -2
  694. package/build/components/list-view/aria-referenced-text.js.map +1 -1
  695. package/build/components/list-view/block-contents.js +4 -11
  696. package/build/components/list-view/block-contents.js.map +1 -1
  697. package/build/components/list-view/block-select-button.js +31 -32
  698. package/build/components/list-view/block-select-button.js.map +1 -1
  699. package/build/components/list-view/block.js +24 -46
  700. package/build/components/list-view/block.js.map +1 -1
  701. package/build/components/list-view/branch.js +7 -37
  702. package/build/components/list-view/branch.js.map +1 -1
  703. package/build/components/list-view/context.js +1 -4
  704. package/build/components/list-view/context.js.map +1 -1
  705. package/build/components/list-view/drop-indicator.js +35 -47
  706. package/build/components/list-view/drop-indicator.js.map +1 -1
  707. package/build/components/list-view/expander.js +3 -5
  708. package/build/components/list-view/expander.js.map +1 -1
  709. package/build/components/list-view/index.js +18 -39
  710. package/build/components/list-view/index.js.map +1 -1
  711. package/build/components/list-view/leaf.js +1 -8
  712. package/build/components/list-view/leaf.js.map +1 -1
  713. package/build/components/list-view/use-block-selection.js +15 -30
  714. package/build/components/list-view/use-block-selection.js.map +1 -1
  715. package/build/components/list-view/use-list-view-client-ids.js +1 -4
  716. package/build/components/list-view/use-list-view-client-ids.js.map +1 -1
  717. package/build/components/list-view/use-list-view-drop-zone.js +38 -63
  718. package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
  719. package/build/components/list-view/use-list-view-expand-selected-item.js +5 -7
  720. package/build/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  721. package/build/components/list-view/use-list-view-images.js +84 -0
  722. package/build/components/list-view/use-list-view-images.js.map +1 -0
  723. package/build/components/list-view/use-list-view-scroll-into-view.js +6 -8
  724. package/build/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  725. package/build/components/list-view/utils.js +4 -10
  726. package/build/components/list-view/utils.js.map +1 -1
  727. package/build/components/media-placeholder/index.js +11 -71
  728. package/build/components/media-placeholder/index.js.map +1 -1
  729. package/build/components/media-placeholder/index.native.js +7 -30
  730. package/build/components/media-placeholder/index.native.js.map +1 -1
  731. package/build/components/media-replace-flow/index.js +8 -39
  732. package/build/components/media-replace-flow/index.js.map +1 -1
  733. package/build/components/media-replace-flow/index.native.js +13 -4
  734. package/build/components/media-replace-flow/index.native.js.map +1 -1
  735. package/build/components/media-upload/check.js +2 -5
  736. package/build/components/media-upload/check.js.map +1 -1
  737. package/build/components/media-upload/index.js +1 -5
  738. package/build/components/media-upload/index.js.map +1 -1
  739. package/build/components/media-upload/index.native.js +18 -43
  740. package/build/components/media-upload/index.native.js.map +1 -1
  741. package/build/components/media-upload-progress/index.native.js +3 -33
  742. package/build/components/media-upload-progress/index.native.js.map +1 -1
  743. package/build/components/multi-selection-inspector/index.js +3 -16
  744. package/build/components/multi-selection-inspector/index.js.map +1 -1
  745. package/build/components/navigable-toolbar/index.js +10 -32
  746. package/build/components/navigable-toolbar/index.js.map +1 -1
  747. package/build/components/observe-typing/index.js +24 -43
  748. package/build/components/observe-typing/index.js.map +1 -1
  749. package/build/components/panel-color-settings/index.js +3 -7
  750. package/build/components/panel-color-settings/index.js.map +1 -1
  751. package/build/components/plain-text/index.js +0 -7
  752. package/build/components/plain-text/index.js.map +1 -1
  753. package/build/components/plain-text/index.native.js +7 -27
  754. package/build/components/plain-text/index.native.js.map +1 -1
  755. package/build/components/preview-options/index.js +1 -8
  756. package/build/components/preview-options/index.js.map +1 -1
  757. package/build/components/provider/block-refs-provider.js +1 -3
  758. package/build/components/provider/block-refs-provider.js.map +1 -1
  759. package/build/components/provider/index.js +7 -14
  760. package/build/components/provider/index.js.map +1 -1
  761. package/build/components/provider/index.native.js +3 -9
  762. package/build/components/provider/index.native.js.map +1 -1
  763. package/build/components/provider/use-block-sync.js +23 -41
  764. package/build/components/provider/use-block-sync.js.map +1 -1
  765. package/build/components/provider/with-registry-provider.js +1 -9
  766. package/build/components/provider/with-registry-provider.js.map +1 -1
  767. package/build/components/publish-date-time-picker/index.js +1 -9
  768. package/build/components/publish-date-time-picker/index.js.map +1 -1
  769. package/build/components/recursion-provider/index.js +6 -9
  770. package/build/components/recursion-provider/index.js.map +1 -1
  771. package/build/components/resizable-box-popover/index.js +3 -6
  772. package/build/components/resizable-box-popover/index.js.map +1 -1
  773. package/build/components/resolution-tool/index.js +1 -5
  774. package/build/components/resolution-tool/index.js.map +1 -1
  775. package/build/components/responsive-block-control/index.js +3 -16
  776. package/build/components/responsive-block-control/index.js.map +1 -1
  777. package/build/components/responsive-block-control/label.js +2 -7
  778. package/build/components/responsive-block-control/label.js.map +1 -1
  779. package/build/components/rich-text/content.js +3 -13
  780. package/build/components/rich-text/content.js.map +1 -1
  781. package/build/components/rich-text/embed-handler-picker.native.js +1 -7
  782. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  783. package/build/components/rich-text/file-paste-handler.native.js +0 -1
  784. package/build/components/rich-text/file-paste-handler.native.js.map +1 -1
  785. package/build/components/rich-text/format-edit.js +52 -30
  786. package/build/components/rich-text/format-edit.js.map +1 -1
  787. package/build/components/rich-text/format-toolbar/index.js +4 -14
  788. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  789. package/build/components/rich-text/format-toolbar/index.native.js +1 -4
  790. package/build/components/rich-text/format-toolbar/index.native.js.map +1 -1
  791. package/build/components/rich-text/format-toolbar-container.js +4 -22
  792. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  793. package/build/components/rich-text/format-toolbar-container.native.js +1 -6
  794. package/build/components/rich-text/format-toolbar-container.native.js.map +1 -1
  795. package/build/components/rich-text/get-rich-text-values.js +12 -38
  796. package/build/components/rich-text/get-rich-text-values.js.map +1 -1
  797. package/build/components/rich-text/index.js +18 -68
  798. package/build/components/rich-text/index.js.map +1 -1
  799. package/build/components/rich-text/index.native.js +48 -94
  800. package/build/components/rich-text/index.native.js.map +1 -1
  801. package/build/components/rich-text/input-event.js +1 -4
  802. package/build/components/rich-text/input-event.js.map +1 -1
  803. package/build/components/rich-text/input-event.native.js +1 -4
  804. package/build/components/rich-text/input-event.native.js.map +1 -1
  805. package/build/components/rich-text/prevent-event-discovery.js +1 -6
  806. package/build/components/rich-text/prevent-event-discovery.js.map +1 -1
  807. package/build/components/rich-text/remove-browser-shortcuts.native.js +0 -2
  808. package/build/components/rich-text/remove-browser-shortcuts.native.js.map +1 -1
  809. package/build/components/rich-text/shortcut.js +1 -5
  810. package/build/components/rich-text/shortcut.js.map +1 -1
  811. package/build/components/rich-text/shortcut.native.js +1 -4
  812. package/build/components/rich-text/shortcut.native.js.map +1 -1
  813. package/build/components/rich-text/split-value.js +18 -17
  814. package/build/components/rich-text/split-value.js.map +1 -1
  815. package/build/components/rich-text/toolbar-button.js +3 -8
  816. package/build/components/rich-text/toolbar-button.js.map +1 -1
  817. package/build/components/rich-text/use-before-input-rules.js +5 -22
  818. package/build/components/rich-text/use-before-input-rules.js.map +1 -1
  819. package/build/components/rich-text/use-delete.js +6 -15
  820. package/build/components/rich-text/use-delete.js.map +1 -1
  821. package/build/components/rich-text/use-enter.js +3 -18
  822. package/build/components/rich-text/use-enter.js.map +1 -1
  823. package/build/components/rich-text/use-firefox-compat.js +5 -41
  824. package/build/components/rich-text/use-firefox-compat.js.map +1 -1
  825. package/build/components/rich-text/use-format-types.js +10 -23
  826. package/build/components/rich-text/use-format-types.js.map +1 -1
  827. package/build/components/rich-text/use-input-events.js +1 -3
  828. package/build/components/rich-text/use-input-events.js.map +1 -1
  829. package/build/components/rich-text/use-input-rules.js +10 -35
  830. package/build/components/rich-text/use-input-rules.js.map +1 -1
  831. package/build/components/rich-text/use-insert-replacement-text.js +0 -5
  832. package/build/components/rich-text/use-insert-replacement-text.js.map +1 -1
  833. package/build/components/rich-text/use-mark-persistent.js +6 -9
  834. package/build/components/rich-text/use-mark-persistent.js.map +1 -1
  835. package/build/components/rich-text/use-paste-handler.js +24 -71
  836. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  837. package/build/components/rich-text/use-remove-browser-shortcuts.js +0 -4
  838. package/build/components/rich-text/use-remove-browser-shortcuts.js.map +1 -1
  839. package/build/components/rich-text/use-shortcuts.js +1 -3
  840. package/build/components/rich-text/use-shortcuts.js.map +1 -1
  841. package/build/components/rich-text/use-undo-automatic-change.js +1 -13
  842. package/build/components/rich-text/use-undo-automatic-change.js.map +1 -1
  843. package/build/components/rich-text/utils.js +3 -15
  844. package/build/components/rich-text/utils.js.map +1 -1
  845. package/build/components/selection-scroll-into-view/index.js +0 -3
  846. package/build/components/selection-scroll-into-view/index.js.map +1 -1
  847. package/build/components/skip-to-selected-block/index.js +2 -12
  848. package/build/components/skip-to-selected-block/index.js.map +1 -1
  849. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js +1 -6
  850. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  851. package/build/components/spacing-sizes-control/index.js +13 -23
  852. package/build/components/spacing-sizes-control/index.js.map +1 -1
  853. package/build/components/spacing-sizes-control/input-controls/axial.js +7 -14
  854. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  855. package/build/components/spacing-sizes-control/input-controls/separated.js +3 -8
  856. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  857. package/build/components/spacing-sizes-control/input-controls/single.js +3 -7
  858. package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  859. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +6 -29
  860. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  861. package/build/components/spacing-sizes-control/sides-dropdown/index.js +1 -7
  862. package/build/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  863. package/build/components/spacing-sizes-control/utils.js +36 -68
  864. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  865. package/build/components/text-decoration-control/index.js +2 -8
  866. package/build/components/text-decoration-control/index.js.map +1 -1
  867. package/build/components/text-transform-control/index.js +2 -8
  868. package/build/components/text-transform-control/index.js.map +1 -1
  869. package/build/components/tool-selector/index.js +4 -13
  870. package/build/components/tool-selector/index.js.map +1 -1
  871. package/build/components/typewriter/index.js +30 -52
  872. package/build/components/typewriter/index.js.map +1 -1
  873. package/build/components/ungroup-button/index.native.js +1 -16
  874. package/build/components/ungroup-button/index.native.js.map +1 -1
  875. package/build/components/unit-control/index.js +1 -5
  876. package/build/components/unit-control/index.js.map +1 -1
  877. package/build/components/url-input/button.js +2 -13
  878. package/build/components/url-input/button.js.map +1 -1
  879. package/build/components/url-input/index.js +38 -91
  880. package/build/components/url-input/index.js.map +1 -1
  881. package/build/components/url-input/index.native.js +1 -4
  882. package/build/components/url-input/index.native.js.map +1 -1
  883. package/build/components/url-popover/image-url-input-ui.js +3 -36
  884. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  885. package/build/components/url-popover/index.js +5 -20
  886. package/build/components/url-popover/index.js.map +1 -1
  887. package/build/components/url-popover/link-editor.js +1 -8
  888. package/build/components/url-popover/link-editor.js.map +1 -1
  889. package/build/components/url-popover/link-viewer-url.js +1 -8
  890. package/build/components/url-popover/link-viewer-url.js.map +1 -1
  891. package/build/components/url-popover/link-viewer.js +1 -8
  892. package/build/components/url-popover/link-viewer.js.map +1 -1
  893. package/build/components/use-block-commands/index.js +247 -0
  894. package/build/components/use-block-commands/index.js.map +1 -0
  895. package/build/components/use-block-display-information/index.js +1 -9
  896. package/build/components/use-block-display-information/index.js.map +1 -1
  897. package/build/components/use-block-drop-zone/index.js +12 -29
  898. package/build/components/use-block-drop-zone/index.js.map +1 -1
  899. package/build/components/use-block-drop-zone/index.native.js +12 -24
  900. package/build/components/use-block-drop-zone/index.native.js.map +1 -1
  901. package/build/components/use-display-block-controls/index.js +1 -7
  902. package/build/components/use-display-block-controls/index.js.map +1 -1
  903. package/build/components/use-display-block-controls/index.native.js +1 -7
  904. package/build/components/use-display-block-controls/index.native.js.map +1 -1
  905. package/build/components/use-moving-animation/index.js +4 -20
  906. package/build/components/use-moving-animation/index.js.map +1 -1
  907. package/build/components/use-on-block-drop/index.js +19 -38
  908. package/build/components/use-on-block-drop/index.js.map +1 -1
  909. package/build/components/use-on-block-drop/index.native.js +11 -15
  910. package/build/components/use-on-block-drop/index.native.js.map +1 -1
  911. package/build/components/use-on-block-drop/types.js.map +1 -1
  912. package/build/components/use-paste-styles/index.js +10 -27
  913. package/build/components/use-paste-styles/index.js.map +1 -1
  914. package/build/components/use-resize-canvas/index.js +0 -14
  915. package/build/components/use-resize-canvas/index.js.map +1 -1
  916. package/build/components/use-setting/index.js +17 -39
  917. package/build/components/use-setting/index.js.map +1 -1
  918. package/build/components/video-player/gridicon-play.native.js +0 -4
  919. package/build/components/video-player/gridicon-play.native.js.map +1 -1
  920. package/build/components/video-player/index.native.js +9 -24
  921. package/build/components/video-player/index.native.js.map +1 -1
  922. package/build/components/warning/index.js +2 -9
  923. package/build/components/warning/index.js.map +1 -1
  924. package/build/components/warning/index.native.js +1 -10
  925. package/build/components/warning/index.native.js.map +1 -1
  926. package/build/components/writing-flow/index.js +4 -23
  927. package/build/components/writing-flow/index.js.map +1 -1
  928. package/build/components/writing-flow/use-arrow-nav.js +35 -60
  929. package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
  930. package/build/components/writing-flow/use-click-selection.js +3 -10
  931. package/build/components/writing-flow/use-click-selection.js.map +1 -1
  932. package/build/components/writing-flow/use-drag-selection.js +25 -31
  933. package/build/components/writing-flow/use-drag-selection.js.map +1 -1
  934. package/build/components/writing-flow/use-input.js +6 -21
  935. package/build/components/writing-flow/use-input.js.map +1 -1
  936. package/build/components/writing-flow/use-multi-selection.js +10 -16
  937. package/build/components/writing-flow/use-multi-selection.js.map +1 -1
  938. package/build/components/writing-flow/use-select-all.js +4 -14
  939. package/build/components/writing-flow/use-select-all.js.map +1 -1
  940. package/build/components/writing-flow/use-selection-observer.js +18 -47
  941. package/build/components/writing-flow/use-selection-observer.js.map +1 -1
  942. package/build/components/writing-flow/use-tab-nav.js +28 -44
  943. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  944. package/build/components/writing-mode-control/index.js +2 -8
  945. package/build/components/writing-mode-control/index.js.map +1 -1
  946. package/build/elements/index.js +0 -2
  947. package/build/elements/index.js.map +1 -1
  948. package/build/hooks/align.js +22 -46
  949. package/build/hooks/align.js.map +1 -1
  950. package/build/hooks/align.native.js +5 -9
  951. package/build/hooks/align.native.js.map +1 -1
  952. package/build/hooks/anchor.js +9 -24
  953. package/build/hooks/anchor.js.map +1 -1
  954. package/build/hooks/aria-label.js +5 -11
  955. package/build/hooks/aria-label.js.map +1 -1
  956. package/build/hooks/behaviors.js +14 -32
  957. package/build/hooks/behaviors.js.map +1 -1
  958. package/build/hooks/border.js +47 -80
  959. package/build/hooks/border.js.map +1 -1
  960. package/build/hooks/color.js +31 -69
  961. package/build/hooks/color.js.map +1 -1
  962. package/build/hooks/compat.js +1 -5
  963. package/build/hooks/compat.js.map +1 -1
  964. package/build/hooks/content-lock-ui.js +5 -19
  965. package/build/hooks/content-lock-ui.js.map +1 -1
  966. package/build/hooks/contrast-checker.js +4 -13
  967. package/build/hooks/contrast-checker.js.map +1 -1
  968. package/build/hooks/custom-class-name.js +21 -37
  969. package/build/hooks/custom-class-name.js.map +1 -1
  970. package/build/hooks/custom-class-name.native.js +3 -11
  971. package/build/hooks/custom-class-name.native.js.map +1 -1
  972. package/build/hooks/custom-fields.js +115 -0
  973. package/build/hooks/custom-fields.js.map +1 -0
  974. package/build/hooks/dimensions.js +6 -23
  975. package/build/hooks/dimensions.js.map +1 -1
  976. package/build/hooks/duotone.js +42 -64
  977. package/build/hooks/duotone.js.map +1 -1
  978. package/build/hooks/font-family.js +9 -29
  979. package/build/hooks/font-family.js.map +1 -1
  980. package/build/hooks/font-size.js +36 -62
  981. package/build/hooks/font-size.js.map +1 -1
  982. package/build/hooks/gap.js +1 -7
  983. package/build/hooks/gap.js.map +1 -1
  984. package/build/hooks/generated-class-name.js +1 -5
  985. package/build/hooks/generated-class-name.js.map +1 -1
  986. package/build/hooks/index.js +1 -27
  987. package/build/hooks/index.js.map +1 -1
  988. package/build/hooks/index.native.js +0 -14
  989. package/build/hooks/index.native.js.map +1 -1
  990. package/build/hooks/layout.js +45 -72
  991. package/build/hooks/layout.js.map +1 -1
  992. package/build/hooks/layout.native.js +4 -4
  993. package/build/hooks/layout.native.js.map +1 -1
  994. package/build/hooks/line-height.js +7 -15
  995. package/build/hooks/line-height.js.map +1 -1
  996. package/build/hooks/lock.js +4 -8
  997. package/build/hooks/lock.js.map +1 -1
  998. package/build/hooks/margin.js +1 -13
  999. package/build/hooks/margin.js.map +1 -1
  1000. package/build/hooks/metadata-name.js +4 -8
  1001. package/build/hooks/metadata-name.js.map +1 -1
  1002. package/build/hooks/metadata.js +4 -14
  1003. package/build/hooks/metadata.js.map +1 -1
  1004. package/build/hooks/padding.js +1 -13
  1005. package/build/hooks/padding.js.map +1 -1
  1006. package/build/hooks/position.js +35 -61
  1007. package/build/hooks/position.js.map +1 -1
  1008. package/build/hooks/settings.js +5 -8
  1009. package/build/hooks/settings.js.map +1 -1
  1010. package/build/hooks/style.js +38 -61
  1011. package/build/hooks/style.js.map +1 -1
  1012. package/build/hooks/supports.js +23 -76
  1013. package/build/hooks/supports.js.map +1 -1
  1014. package/build/hooks/typography.js +11 -27
  1015. package/build/hooks/typography.js.map +1 -1
  1016. package/build/hooks/typography.native.js +5 -14
  1017. package/build/hooks/typography.native.js.map +1 -1
  1018. package/build/hooks/use-border-props.js +5 -10
  1019. package/build/hooks/use-border-props.js.map +1 -1
  1020. package/build/hooks/use-cached-truthy.js +0 -2
  1021. package/build/hooks/use-cached-truthy.js.map +1 -1
  1022. package/build/hooks/use-color-props.js +14 -20
  1023. package/build/hooks/use-color-props.js.map +1 -1
  1024. package/build/hooks/use-editor-wrapper-styles.native.js +7 -30
  1025. package/build/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  1026. package/build/hooks/use-spacing-props.js +3 -3
  1027. package/build/hooks/use-spacing-props.js.map +1 -1
  1028. package/build/hooks/use-typography-props.js +2 -9
  1029. package/build/hooks/use-typography-props.js.map +1 -1
  1030. package/build/hooks/utils.js +10 -26
  1031. package/build/hooks/utils.js.map +1 -1
  1032. package/build/index.js +0 -10
  1033. package/build/index.js.map +1 -1
  1034. package/build/index.native.js +0 -3
  1035. package/build/index.native.js.map +1 -1
  1036. package/build/layouts/constrained.js +13 -37
  1037. package/build/layouts/constrained.js.map +1 -1
  1038. package/build/layouts/definitions.js.map +1 -1
  1039. package/build/layouts/flex.js +16 -48
  1040. package/build/layouts/flex.js.map +1 -1
  1041. package/build/layouts/flow.js +7 -23
  1042. package/build/layouts/flow.js.map +1 -1
  1043. package/build/layouts/grid.js +18 -32
  1044. package/build/layouts/grid.js.map +1 -1
  1045. package/build/layouts/index.js +3 -9
  1046. package/build/layouts/index.js.map +1 -1
  1047. package/build/layouts/utils.js +3 -12
  1048. package/build/layouts/utils.js.map +1 -1
  1049. package/build/lock-unlock.js +1 -2
  1050. package/build/lock-unlock.js.map +1 -1
  1051. package/build/private-apis.js +5 -27
  1052. package/build/private-apis.js.map +1 -1
  1053. package/build/private-apis.native.js +2 -8
  1054. package/build/private-apis.native.js.map +1 -1
  1055. package/build/store/actions.js +188 -287
  1056. package/build/store/actions.js.map +1 -1
  1057. package/build/store/array.js +1 -3
  1058. package/build/store/array.js.map +1 -1
  1059. package/build/store/constants.js.map +1 -1
  1060. package/build/store/defaults.js +2 -3
  1061. package/build/store/defaults.js.map +1 -1
  1062. package/build/store/defaults.native.js +3 -3
  1063. package/build/store/defaults.native.js.map +1 -1
  1064. package/build/store/index.js +11 -19
  1065. package/build/store/index.js.map +1 -1
  1066. package/build/store/private-actions.js +26 -91
  1067. package/build/store/private-actions.js.map +1 -1
  1068. package/build/store/private-selectors.js +8 -90
  1069. package/build/store/private-selectors.js.map +1 -1
  1070. package/build/store/reducer.js +161 -358
  1071. package/build/store/reducer.js.map +1 -1
  1072. package/build/store/selectors.js +257 -522
  1073. package/build/store/selectors.js.map +1 -1
  1074. package/build/store/utils.js +0 -1
  1075. package/build/store/utils.js.map +1 -1
  1076. package/build/utils/block-variation-transforms.js +2 -5
  1077. package/build/utils/block-variation-transforms.js.map +1 -1
  1078. package/build/utils/dom.js +4 -12
  1079. package/build/utils/dom.js.map +1 -1
  1080. package/build/utils/index.js +0 -5
  1081. package/build/utils/index.js.map +1 -1
  1082. package/build/utils/math.js +5 -10
  1083. package/build/utils/math.js.map +1 -1
  1084. package/build/utils/object.js +14 -25
  1085. package/build/utils/object.js.map +1 -1
  1086. package/build/utils/order-inserter-block-items.js +2 -5
  1087. package/build/utils/order-inserter-block-items.js.map +1 -1
  1088. package/build/utils/parse-css-unit-to-px.js +14 -66
  1089. package/build/utils/parse-css-unit-to-px.js.map +1 -1
  1090. package/build/utils/pasting.js +9 -15
  1091. package/build/utils/pasting.js.map +1 -1
  1092. package/build/utils/pre-parse-patterns.js +1 -16
  1093. package/build/utils/pre-parse-patterns.js.map +1 -1
  1094. package/build/utils/selection.js +1 -4
  1095. package/build/utils/selection.js.map +1 -1
  1096. package/build/utils/sorting.js +3 -8
  1097. package/build/utils/sorting.js.map +1 -1
  1098. package/build/utils/transform-styles/ast/index.js +0 -3
  1099. package/build/utils/transform-styles/ast/index.js.map +1 -1
  1100. package/build/utils/transform-styles/ast/parse.js +95 -137
  1101. package/build/utils/transform-styles/ast/parse.js.map +1 -1
  1102. package/build/utils/transform-styles/ast/stringify/compiler.js +3 -9
  1103. package/build/utils/transform-styles/ast/stringify/compiler.js.map +1 -1
  1104. package/build/utils/transform-styles/ast/stringify/compress.js +25 -27
  1105. package/build/utils/transform-styles/ast/stringify/compress.js.map +1 -1
  1106. package/build/utils/transform-styles/ast/stringify/identity.js +28 -33
  1107. package/build/utils/transform-styles/ast/stringify/identity.js.map +1 -1
  1108. package/build/utils/transform-styles/ast/stringify/index.js +1 -4
  1109. package/build/utils/transform-styles/ast/stringify/index.js.map +1 -1
  1110. package/build/utils/transform-styles/index.js +0 -11
  1111. package/build/utils/transform-styles/index.js.map +1 -1
  1112. package/build/utils/transform-styles/transforms/url-rewrite.js +12 -25
  1113. package/build/utils/transform-styles/transforms/url-rewrite.js.map +1 -1
  1114. package/build/utils/transform-styles/transforms/wrap.js +7 -9
  1115. package/build/utils/transform-styles/transforms/wrap.js.map +1 -1
  1116. package/build/utils/transform-styles/traverse.js +1 -8
  1117. package/build/utils/transform-styles/traverse.js.map +1 -1
  1118. package/build/utils/use-should-contextual-toolbar-show.js +0 -9
  1119. package/build/utils/use-should-contextual-toolbar-show.js.map +1 -1
  1120. package/build-module/autocompleters/block.js +10 -16
  1121. package/build-module/autocompleters/block.js.map +1 -1
  1122. package/build-module/autocompleters/link.js +2 -8
  1123. package/build-module/autocompleters/link.js.map +1 -1
  1124. package/build-module/components/alignment-control/index.js +5 -7
  1125. package/build-module/components/alignment-control/index.js.map +1 -1
  1126. package/build-module/components/alignment-control/ui.js +2 -7
  1127. package/build-module/components/alignment-control/ui.js.map +1 -1
  1128. package/build-module/components/autocomplete/index.js +10 -15
  1129. package/build-module/components/autocomplete/index.js.map +1 -1
  1130. package/build-module/components/block-actions/index.js +3 -20
  1131. package/build-module/components/block-actions/index.js.map +1 -1
  1132. package/build-module/components/block-alignment-control/constants.js.map +1 -1
  1133. package/build-module/components/block-alignment-control/index.js +5 -7
  1134. package/build-module/components/block-alignment-control/index.js.map +1 -1
  1135. package/build-module/components/block-alignment-control/ui.js +8 -12
  1136. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  1137. package/build-module/components/block-alignment-control/ui.native.js +5 -9
  1138. package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
  1139. package/build-module/components/block-alignment-control/use-available-alignments.js +10 -13
  1140. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  1141. package/build-module/components/block-alignment-matrix-control/index.js +0 -5
  1142. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  1143. package/build-module/components/block-breadcrumb/index.js +4 -9
  1144. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  1145. package/build-module/components/block-caption/index.native.js +8 -9
  1146. package/build-module/components/block-caption/index.native.js.map +1 -1
  1147. package/build-module/components/block-card/index.js +6 -10
  1148. package/build-module/components/block-card/index.js.map +1 -1
  1149. package/build-module/components/block-compare/block-view.js +0 -1
  1150. package/build-module/components/block-compare/block-view.js.map +1 -1
  1151. package/build-module/components/block-compare/index.js +6 -10
  1152. package/build-module/components/block-compare/index.js.map +1 -1
  1153. package/build-module/components/block-content-overlay/index.js +1 -1
  1154. package/build-module/components/block-content-overlay/index.js.map +1 -1
  1155. package/build-module/components/block-context/index.js +4 -4
  1156. package/build-module/components/block-context/index.js.map +1 -1
  1157. package/build-module/components/block-controls/fill.js +3 -5
  1158. package/build-module/components/block-controls/fill.js.map +1 -1
  1159. package/build-module/components/block-controls/groups.js.map +1 -1
  1160. package/build-module/components/block-controls/hook.js +1 -4
  1161. package/build-module/components/block-controls/hook.js.map +1 -1
  1162. package/build-module/components/block-controls/index.js +2 -4
  1163. package/build-module/components/block-controls/index.js.map +1 -1
  1164. package/build-module/components/block-controls/slot.js +3 -8
  1165. package/build-module/components/block-controls/slot.js.map +1 -1
  1166. package/build-module/components/block-controls/slot.native.js +5 -8
  1167. package/build-module/components/block-controls/slot.native.js.map +1 -1
  1168. package/build-module/components/block-controls/use-has-block-controls.js +34 -0
  1169. package/build-module/components/block-controls/use-has-block-controls.js.map +1 -0
  1170. package/build-module/components/block-draggable/draggable-chip.js +2 -5
  1171. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  1172. package/build-module/components/block-draggable/draggable-chip.native.js +3 -4
  1173. package/build-module/components/block-draggable/draggable-chip.native.js.map +1 -1
  1174. package/build-module/components/block-draggable/dropping-insertion-point.native.js +5 -15
  1175. package/build-module/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  1176. package/build-module/components/block-draggable/index.js +3 -9
  1177. package/build-module/components/block-draggable/index.js.map +1 -1
  1178. package/build-module/components/block-draggable/index.native.js +8 -34
  1179. package/build-module/components/block-draggable/index.native.js.map +1 -1
  1180. package/build-module/components/block-draggable/use-scroll-when-dragging.js +8 -10
  1181. package/build-module/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
  1182. package/build-module/components/block-draggable/use-scroll-when-dragging.native.js +2 -11
  1183. package/build-module/components/block-draggable/use-scroll-when-dragging.native.js.map +1 -1
  1184. package/build-module/components/block-edit/context.js +1 -1
  1185. package/build-module/components/block-edit/context.js.map +1 -1
  1186. package/build-module/components/block-edit/edit.js +16 -20
  1187. package/build-module/components/block-edit/edit.js.map +1 -1
  1188. package/build-module/components/block-edit/edit.native.js +6 -7
  1189. package/build-module/components/block-edit/edit.native.js.map +1 -1
  1190. package/build-module/components/block-edit/index.js +5 -5
  1191. package/build-module/components/block-edit/index.js.map +1 -1
  1192. package/build-module/components/block-edit-visually-button/index.js +1 -4
  1193. package/build-module/components/block-edit-visually-button/index.js.map +1 -1
  1194. package/build-module/components/block-editing-mode/index.js +5 -8
  1195. package/build-module/components/block-editing-mode/index.js.map +1 -1
  1196. package/build-module/components/block-full-height-alignment-control/index.js +0 -3
  1197. package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
  1198. package/build-module/components/block-heading-level-dropdown/heading-level-icon.js +2 -3
  1199. package/build-module/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  1200. package/build-module/components/block-heading-level-dropdown/index.js +4 -6
  1201. package/build-module/components/block-heading-level-dropdown/index.js.map +1 -1
  1202. package/build-module/components/block-heading-level-dropdown/index.native.js +2 -4
  1203. package/build-module/components/block-heading-level-dropdown/index.native.js.map +1 -1
  1204. package/build-module/components/block-icon/index.js +2 -6
  1205. package/build-module/components/block-icon/index.js.map +1 -1
  1206. package/build-module/components/block-icon/index.native.js +2 -4
  1207. package/build-module/components/block-icon/index.native.js.map +1 -1
  1208. package/build-module/components/block-info-slot-fill/index.js +5 -9
  1209. package/build-module/components/block-info-slot-fill/index.js.map +1 -1
  1210. package/build-module/components/block-inspector/index.js +11 -25
  1211. package/build-module/components/block-inspector/index.js.map +1 -1
  1212. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js +7 -8
  1213. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  1214. package/build-module/components/block-list/block-crash-boundary.js +0 -6
  1215. package/build-module/components/block-list/block-crash-boundary.js.map +1 -1
  1216. package/build-module/components/block-list/block-crash-warning.js +1 -2
  1217. package/build-module/components/block-list/block-crash-warning.js.map +1 -1
  1218. package/build-module/components/block-list/block-html.js +8 -12
  1219. package/build-module/components/block-list/block-html.js.map +1 -1
  1220. package/build-module/components/block-list/block-invalid-warning.js +3 -9
  1221. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  1222. package/build-module/components/block-list/block-invalid-warning.native.js +5 -10
  1223. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  1224. package/build-module/components/block-list/block-list-block-context.js.map +1 -1
  1225. package/build-module/components/block-list/block-list-context.native.js +11 -21
  1226. package/build-module/components/block-list/block-list-context.native.js.map +1 -1
  1227. package/build-module/components/block-list/block-list-item-cell.native.js +2 -6
  1228. package/build-module/components/block-list/block-list-item-cell.native.js.map +1 -1
  1229. package/build-module/components/block-list/block-list-item.native.js +8 -12
  1230. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  1231. package/build-module/components/block-list/block-outline.native.js +4 -7
  1232. package/build-module/components/block-list/block-outline.native.js.map +1 -1
  1233. package/build-module/components/block-list/block-selection-button.native.js +3 -10
  1234. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  1235. package/build-module/components/block-list/block.js +42 -63
  1236. package/build-module/components/block-list/block.js.map +1 -1
  1237. package/build-module/components/block-list/block.native.js +41 -57
  1238. package/build-module/components/block-list/block.native.js.map +1 -1
  1239. package/build-module/components/block-list/grid-item.native.js +1 -4
  1240. package/build-module/components/block-list/grid-item.native.js.map +1 -1
  1241. package/build-module/components/block-list/index.js +12 -18
  1242. package/build-module/components/block-list/index.js.map +1 -1
  1243. package/build-module/components/block-list/index.native.js +21 -39
  1244. package/build-module/components/block-list/index.native.js.map +1 -1
  1245. package/build-module/components/block-list/insertion-point.native.js +2 -5
  1246. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  1247. package/build-module/components/block-list/layout.js +3 -8
  1248. package/build-module/components/block-list/layout.js.map +1 -1
  1249. package/build-module/components/block-list/subdirectory-icon.js +2 -4
  1250. package/build-module/components/block-list/subdirectory-icon.js.map +1 -1
  1251. package/build-module/components/block-list/use-block-props/index.js +13 -11
  1252. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  1253. package/build-module/components/block-list/use-block-props/index.native.js +4 -2
  1254. package/build-module/components/block-list/use-block-props/index.native.js.map +1 -1
  1255. package/build-module/components/block-list/use-block-props/use-block-class-names.js +5 -5
  1256. package/build-module/components/block-list/use-block-props/use-block-class-names.js.map +1 -1
  1257. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js +2 -6
  1258. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
  1259. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js +2 -4
  1260. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js.map +1 -1
  1261. package/build-module/components/block-list/use-block-props/use-block-moving-mode-class-names.js +6 -8
  1262. package/build-module/components/block-list/use-block-props/use-block-moving-mode-class-names.js.map +1 -1
  1263. package/build-module/components/block-list/use-block-props/use-block-refs.js +11 -16
  1264. package/build-module/components/block-list/use-block-props/use-block-refs.js.map +1 -1
  1265. package/build-module/components/block-list/use-block-props/use-focus-first-element.js +15 -21
  1266. package/build-module/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  1267. package/build-module/components/block-list/use-block-props/use-focus-handler.js +8 -11
  1268. package/build-module/components/block-list/use-block-props/use-focus-handler.js.map +1 -1
  1269. package/build-module/components/block-list/use-block-props/use-intersection-observer.js +1 -1
  1270. package/build-module/components/block-list/use-block-props/use-intersection-observer.js.map +1 -1
  1271. package/build-module/components/block-list/use-block-props/use-is-hovered.js +4 -6
  1272. package/build-module/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  1273. package/build-module/components/block-list/use-block-props/use-nav-mode-exit.js +4 -4
  1274. package/build-module/components/block-list/use-block-props/use-nav-mode-exit.js.map +1 -1
  1275. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js +4 -11
  1276. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  1277. package/build-module/components/block-list/use-in-between-inserter.js +15 -30
  1278. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  1279. package/build-module/components/block-list-appender/index.js +13 -26
  1280. package/build-module/components/block-list-appender/index.js.map +1 -1
  1281. package/build-module/components/block-list-appender/index.native.js +1 -9
  1282. package/build-module/components/block-list-appender/index.native.js.map +1 -1
  1283. package/build-module/components/block-lock/index.js.map +1 -1
  1284. package/build-module/components/block-lock/menu-item.js +1 -4
  1285. package/build-module/components/block-lock/menu-item.js.map +1 -1
  1286. package/build-module/components/block-lock/modal.js +12 -13
  1287. package/build-module/components/block-lock/modal.js.map +1 -1
  1288. package/build-module/components/block-lock/toolbar.js +6 -9
  1289. package/build-module/components/block-lock/toolbar.js.map +1 -1
  1290. package/build-module/components/block-lock/use-block-lock.js +2 -2
  1291. package/build-module/components/block-lock/use-block-lock.js.map +1 -1
  1292. package/build-module/components/block-media-update-progress/index.native.js +10 -59
  1293. package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
  1294. package/build-module/components/block-mover/button.js +2 -15
  1295. package/build-module/components/block-mover/button.js.map +1 -1
  1296. package/build-module/components/block-mover/index.js +5 -11
  1297. package/build-module/components/block-mover/index.js.map +1 -1
  1298. package/build-module/components/block-mover/index.native.js +4 -11
  1299. package/build-module/components/block-mover/index.native.js.map +1 -1
  1300. package/build-module/components/block-mover/mover-description.js +40 -61
  1301. package/build-module/components/block-mover/mover-description.js.map +1 -1
  1302. package/build-module/components/block-mover/mover-description.native.js +0 -16
  1303. package/build-module/components/block-mover/mover-description.native.js.map +1 -1
  1304. package/build-module/components/block-navigation/dropdown.js +7 -10
  1305. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  1306. package/build-module/components/block-parent-selector/index.js +14 -35
  1307. package/build-module/components/block-parent-selector/index.js.map +1 -1
  1308. package/build-module/components/block-pattern-setup/constants.js.map +1 -1
  1309. package/build-module/components/block-pattern-setup/index.js +3 -13
  1310. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  1311. package/build-module/components/block-pattern-setup/setup-toolbar.js +1 -6
  1312. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  1313. package/build-module/components/block-pattern-setup/use-patterns-setup.js +1 -5
  1314. package/build-module/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  1315. package/build-module/components/block-patterns-list/index.js +3 -12
  1316. package/build-module/components/block-patterns-list/index.js.map +1 -1
  1317. package/build-module/components/block-popover/drop-zone.js +1 -6
  1318. package/build-module/components/block-popover/drop-zone.js.map +1 -1
  1319. package/build-module/components/block-popover/inbetween.js +17 -25
  1320. package/build-module/components/block-popover/inbetween.js.map +1 -1
  1321. package/build-module/components/block-popover/index.js +16 -20
  1322. package/build-module/components/block-popover/index.js.map +1 -1
  1323. package/build-module/components/block-popover/use-popover-scroll.js +3 -6
  1324. package/build-module/components/block-popover/use-popover-scroll.js.map +1 -1
  1325. package/build-module/components/block-preview/auto.js +17 -12
  1326. package/build-module/components/block-preview/auto.js.map +1 -1
  1327. package/build-module/components/block-preview/index.js +10 -13
  1328. package/build-module/components/block-preview/index.js.map +1 -1
  1329. package/build-module/components/block-quick-navigation/index.js +2 -7
  1330. package/build-module/components/block-quick-navigation/index.js.map +1 -1
  1331. package/build-module/components/block-removal-warning-modal/index.js +5 -10
  1332. package/build-module/components/block-removal-warning-modal/index.js.map +1 -1
  1333. package/build-module/components/block-selection-clearer/index.js +4 -8
  1334. package/build-module/components/block-selection-clearer/index.js.map +1 -1
  1335. package/build-module/components/block-settings/button.native.js +2 -5
  1336. package/build-module/components/block-settings/button.native.js.map +1 -1
  1337. package/build-module/components/block-settings/container.native.js +3 -3
  1338. package/build-module/components/block-settings/container.native.js.map +1 -1
  1339. package/build-module/components/block-settings/index.native.js.map +1 -1
  1340. package/build-module/components/block-settings-menu/block-convert-button.js +0 -3
  1341. package/build-module/components/block-settings-menu/block-convert-button.js.map +1 -1
  1342. package/build-module/components/block-settings-menu/block-html-convert-button.js +1 -1
  1343. package/build-module/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  1344. package/build-module/components/block-settings-menu/block-mode-toggle.js +1 -6
  1345. package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  1346. package/build-module/components/block-settings-menu/block-settings-dropdown.js +17 -40
  1347. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  1348. package/build-module/components/block-settings-menu/block-settings-menu-first-item.js.map +1 -1
  1349. package/build-module/components/block-settings-menu/index.js +1 -2
  1350. package/build-module/components/block-settings-menu/index.js.map +1 -1
  1351. package/build-module/components/block-settings-menu-controls/index.js +13 -13
  1352. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  1353. package/build-module/components/block-styles/index.js +4 -15
  1354. package/build-module/components/block-styles/index.js.map +1 -1
  1355. package/build-module/components/block-styles/index.native.js +2 -10
  1356. package/build-module/components/block-styles/index.native.js.map +1 -1
  1357. package/build-module/components/block-styles/menu-items.js +1 -6
  1358. package/build-module/components/block-styles/menu-items.js.map +1 -1
  1359. package/build-module/components/block-styles/preview-panel.js +5 -4
  1360. package/build-module/components/block-styles/preview-panel.js.map +1 -1
  1361. package/build-module/components/block-styles/preview.native.js +4 -12
  1362. package/build-module/components/block-styles/preview.native.js.map +1 -1
  1363. package/build-module/components/block-styles/use-styles-for-block.js +3 -11
  1364. package/build-module/components/block-styles/use-styles-for-block.js.map +1 -1
  1365. package/build-module/components/block-styles/utils.js +4 -10
  1366. package/build-module/components/block-styles/utils.js.map +1 -1
  1367. package/build-module/components/block-switcher/block-styles-menu.js +1 -2
  1368. package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
  1369. package/build-module/components/block-switcher/block-transformations-menu.js +6 -12
  1370. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  1371. package/build-module/components/block-switcher/block-transformations-menu.native.js +5 -13
  1372. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  1373. package/build-module/components/block-switcher/block-variation-transformations.js +3 -8
  1374. package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
  1375. package/build-module/components/block-switcher/index.js +12 -26
  1376. package/build-module/components/block-switcher/index.js.map +1 -1
  1377. package/build-module/components/block-switcher/pattern-transformations-menu.js +3 -8
  1378. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  1379. package/build-module/components/block-switcher/preview-block-popover.js +1 -2
  1380. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  1381. package/build-module/components/block-switcher/use-transformed-patterns.js +14 -21
  1382. package/build-module/components/block-switcher/use-transformed-patterns.js.map +1 -1
  1383. package/build-module/components/block-switcher/utils.js +6 -6
  1384. package/build-module/components/block-switcher/utils.js.map +1 -1
  1385. package/build-module/components/block-title/index.js +2 -1
  1386. package/build-module/components/block-title/index.js.map +1 -1
  1387. package/build-module/components/block-title/use-block-display-title.js +4 -11
  1388. package/build-module/components/block-title/use-block-display-title.js.map +1 -1
  1389. package/build-module/components/block-toolbar/block-name-context.js +0 -2
  1390. package/build-module/components/block-toolbar/block-name-context.js.map +1 -1
  1391. package/build-module/components/block-toolbar/block-toolbar-last-item.js.map +1 -1
  1392. package/build-module/components/block-toolbar/block-toolbar-menu.native.js +26 -31
  1393. package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  1394. package/build-module/components/block-toolbar/index.js +13 -49
  1395. package/build-module/components/block-toolbar/index.js.map +1 -1
  1396. package/build-module/components/block-toolbar/index.native.js +1 -6
  1397. package/build-module/components/block-toolbar/index.native.js.map +1 -1
  1398. package/build-module/components/block-toolbar/utils.js +56 -69
  1399. package/build-module/components/block-toolbar/utils.js.map +1 -1
  1400. package/build-module/components/block-tools/back-compat.js +3 -4
  1401. package/build-module/components/block-tools/back-compat.js.map +1 -1
  1402. package/build-module/components/block-tools/block-contextual-toolbar.js +51 -13
  1403. package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
  1404. package/build-module/components/block-tools/block-selection-button.js +11 -30
  1405. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  1406. package/build-module/components/block-tools/index.js +9 -20
  1407. package/build-module/components/block-tools/index.js.map +1 -1
  1408. package/build-module/components/block-tools/insertion-point.js +9 -22
  1409. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  1410. package/build-module/components/block-tools/selected-block-popover.js +13 -25
  1411. package/build-module/components/block-tools/selected-block-popover.js.map +1 -1
  1412. package/build-module/components/block-tools/use-block-toolbar-popover-props.js +35 -29
  1413. package/build-module/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  1414. package/build-module/components/block-tools/zoom-out-mode-inserters.js +3 -8
  1415. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  1416. package/build-module/components/block-types-list/index.js +1 -7
  1417. package/build-module/components/block-types-list/index.js.map +1 -1
  1418. package/build-module/components/block-types-list/index.native.js +4 -14
  1419. package/build-module/components/block-types-list/index.native.js.map +1 -1
  1420. package/build-module/components/block-variation-picker/index.js +1 -4
  1421. package/build-module/components/block-variation-picker/index.js.map +1 -1
  1422. package/build-module/components/block-variation-picker/index.native.js +15 -30
  1423. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  1424. package/build-module/components/block-variation-transforms/index.js +8 -15
  1425. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  1426. package/build-module/components/block-vertical-alignment-control/icons.js +0 -1
  1427. package/build-module/components/block-vertical-alignment-control/icons.js.map +1 -1
  1428. package/build-module/components/block-vertical-alignment-control/index.js +5 -7
  1429. package/build-module/components/block-vertical-alignment-control/index.js.map +1 -1
  1430. package/build-module/components/block-vertical-alignment-control/ui.js +4 -7
  1431. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  1432. package/build-module/components/border-radius-control/all-input-control.js +8 -10
  1433. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  1434. package/build-module/components/border-radius-control/index.js +5 -8
  1435. package/build-module/components/border-radius-control/index.js.map +1 -1
  1436. package/build-module/components/border-radius-control/input-controls.js +13 -11
  1437. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  1438. package/build-module/components/border-radius-control/linked-button.js +4 -3
  1439. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  1440. package/build-module/components/border-radius-control/utils.js +10 -12
  1441. package/build-module/components/border-radius-control/utils.js.map +1 -1
  1442. package/build-module/components/button-block-appender/index.js +6 -12
  1443. package/build-module/components/button-block-appender/index.js.map +1 -1
  1444. package/build-module/components/button-block-appender/index.native.js +5 -7
  1445. package/build-module/components/button-block-appender/index.native.js.map +1 -1
  1446. package/build-module/components/caption/index.native.js +1 -4
  1447. package/build-module/components/caption/index.native.js.map +1 -1
  1448. package/build-module/components/child-layout-control/index.js +7 -10
  1449. package/build-module/components/child-layout-control/index.js.map +1 -1
  1450. package/build-module/components/color-palette/control.js +2 -2
  1451. package/build-module/components/color-palette/control.js.map +1 -1
  1452. package/build-module/components/color-palette/index.js +1 -1
  1453. package/build-module/components/color-palette/index.js.map +1 -1
  1454. package/build-module/components/color-palette/with-color-context.js +3 -3
  1455. package/build-module/components/color-palette/with-color-context.js.map +1 -1
  1456. package/build-module/components/color-style-selector/index.js +2 -9
  1457. package/build-module/components/color-style-selector/index.js.map +1 -1
  1458. package/build-module/components/colors/index.js.map +1 -1
  1459. package/build-module/components/colors/utils.js +5 -10
  1460. package/build-module/components/colors/utils.js.map +1 -1
  1461. package/build-module/components/colors/with-colors.js +17 -25
  1462. package/build-module/components/colors/with-colors.js.map +1 -1
  1463. package/build-module/components/colors-gradients/control.js +8 -15
  1464. package/build-module/components/colors-gradients/control.js.map +1 -1
  1465. package/build-module/components/colors-gradients/dropdown.js +18 -19
  1466. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  1467. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +8 -12
  1468. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  1469. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +2 -3
  1470. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  1471. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +2 -10
  1472. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  1473. package/build-module/components/contrast-checker/index.js +20 -24
  1474. package/build-module/components/contrast-checker/index.js.map +1 -1
  1475. package/build-module/components/contrast-checker/index.native.js +4 -12
  1476. package/build-module/components/contrast-checker/index.native.js.map +1 -1
  1477. package/build-module/components/convert-to-group-buttons/index.js +1 -12
  1478. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  1479. package/build-module/components/convert-to-group-buttons/index.native.js +5 -12
  1480. package/build-module/components/convert-to-group-buttons/index.native.js.map +1 -1
  1481. package/build-module/components/convert-to-group-buttons/toolbar.js +3 -12
  1482. package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
  1483. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js +6 -5
  1484. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  1485. package/build-module/components/copy-handler/index.js +24 -44
  1486. package/build-module/components/copy-handler/index.js.map +1 -1
  1487. package/build-module/components/date-format-picker/index.js +4 -6
  1488. package/build-module/components/date-format-picker/index.js.map +1 -1
  1489. package/build-module/components/default-block-appender/index.js +7 -9
  1490. package/build-module/components/default-block-appender/index.js.map +1 -1
  1491. package/build-module/components/default-block-appender/index.native.js +16 -10
  1492. package/build-module/components/default-block-appender/index.native.js.map +1 -1
  1493. package/build-module/components/default-style-picker/index.js +4 -6
  1494. package/build-module/components/default-style-picker/index.js.map +1 -1
  1495. package/build-module/components/dimensions-tool/aspect-ratio-tool.js +2 -2
  1496. package/build-module/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
  1497. package/build-module/components/dimensions-tool/index.js +39 -33
  1498. package/build-module/components/dimensions-tool/index.js.map +1 -1
  1499. package/build-module/components/dimensions-tool/scale-tool.js +2 -3
  1500. package/build-module/components/dimensions-tool/scale-tool.js.map +1 -1
  1501. package/build-module/components/dimensions-tool/width-height-tool.js +5 -12
  1502. package/build-module/components/dimensions-tool/width-height-tool.js.map +1 -1
  1503. package/build-module/components/duotone/components.js +7 -7
  1504. package/build-module/components/duotone/components.js.map +1 -1
  1505. package/build-module/components/duotone/index.js.map +1 -1
  1506. package/build-module/components/duotone/utils.js +1 -1
  1507. package/build-module/components/duotone/utils.js.map +1 -1
  1508. package/build-module/components/duotone-control/index.js +0 -6
  1509. package/build-module/components/duotone-control/index.js.map +1 -1
  1510. package/build-module/components/editable-text/index.js +4 -6
  1511. package/build-module/components/editable-text/index.js.map +1 -1
  1512. package/build-module/components/editor-styles/index.js +6 -12
  1513. package/build-module/components/editor-styles/index.js.map +1 -1
  1514. package/build-module/components/floating-toolbar/index.native.js +4 -8
  1515. package/build-module/components/floating-toolbar/index.native.js.map +1 -1
  1516. package/build-module/components/floating-toolbar/nav-up-icon.js +0 -3
  1517. package/build-module/components/floating-toolbar/nav-up-icon.js.map +1 -1
  1518. package/build-module/components/font-appearance-control/index.js +24 -27
  1519. package/build-module/components/font-appearance-control/index.js.map +1 -1
  1520. package/build-module/components/font-family/index.js +1 -5
  1521. package/build-module/components/font-family/index.js.map +1 -1
  1522. package/build-module/components/font-sizes/fluid-utils.js +52 -48
  1523. package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
  1524. package/build-module/components/font-sizes/font-size-picker.js +4 -6
  1525. package/build-module/components/font-sizes/font-size-picker.js.map +1 -1
  1526. package/build-module/components/font-sizes/index.js.map +1 -1
  1527. package/build-module/components/font-sizes/index.native.js.map +1 -1
  1528. package/build-module/components/font-sizes/utils.js +3 -8
  1529. package/build-module/components/font-sizes/utils.js.map +1 -1
  1530. package/build-module/components/font-sizes/with-font-sizes.js +15 -22
  1531. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  1532. package/build-module/components/global-styles/advanced-panel.js +3 -9
  1533. package/build-module/components/global-styles/advanced-panel.js.map +1 -1
  1534. package/build-module/components/global-styles/behaviors-panel.js +57 -0
  1535. package/build-module/components/global-styles/behaviors-panel.js.map +1 -0
  1536. package/build-module/components/global-styles/border-panel.js +22 -36
  1537. package/build-module/components/global-styles/border-panel.js.map +1 -1
  1538. package/build-module/components/global-styles/color-panel.js +31 -56
  1539. package/build-module/components/global-styles/color-panel.js.map +1 -1
  1540. package/build-module/components/global-styles/color-panel.native.js +5 -8
  1541. package/build-module/components/global-styles/color-panel.native.js.map +1 -1
  1542. package/build-module/components/global-styles/context.js.map +1 -1
  1543. package/build-module/components/global-styles/dimensions-panel.js +34 -80
  1544. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  1545. package/build-module/components/global-styles/effects-panel.js +8 -20
  1546. package/build-module/components/global-styles/effects-panel.js.map +1 -1
  1547. package/build-module/components/global-styles/filters-panel.js +10 -20
  1548. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  1549. package/build-module/components/global-styles/get-block-css-selector.js +34 -29
  1550. package/build-module/components/global-styles/get-block-css-selector.js.map +1 -1
  1551. package/build-module/components/global-styles/hooks.js +136 -56
  1552. package/build-module/components/global-styles/hooks.js.map +1 -1
  1553. package/build-module/components/global-styles/index.js +2 -1
  1554. package/build-module/components/global-styles/index.js.map +1 -1
  1555. package/build-module/components/global-styles/typography-panel.js +25 -73
  1556. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  1557. package/build-module/components/global-styles/typography-utils.js +10 -16
  1558. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  1559. package/build-module/components/global-styles/use-global-styles-output.js +99 -163
  1560. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  1561. package/build-module/components/global-styles/utils.js +14 -44
  1562. package/build-module/components/global-styles/utils.js.map +1 -1
  1563. package/build-module/components/gradients/index.js.map +1 -1
  1564. package/build-module/components/gradients/index.native.js.map +1 -1
  1565. package/build-module/components/gradients/use-gradient.js +3 -11
  1566. package/build-module/components/gradients/use-gradient.js.map +1 -1
  1567. package/build-module/components/gradients/with-gradient.js +2 -3
  1568. package/build-module/components/gradients/with-gradient.js.map +1 -1
  1569. package/build-module/components/height-control/index.js +2 -8
  1570. package/build-module/components/height-control/index.js.map +1 -1
  1571. package/build-module/components/iframe/index.js +26 -37
  1572. package/build-module/components/iframe/index.js.map +1 -1
  1573. package/build-module/components/iframe/use-compatibility-styles.js +9 -19
  1574. package/build-module/components/iframe/use-compatibility-styles.js.map +1 -1
  1575. package/build-module/components/image-editor/aspect-ratio-dropdown.js +3 -5
  1576. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  1577. package/build-module/components/image-editor/constants.js.map +1 -1
  1578. package/build-module/components/image-editor/context.js +3 -3
  1579. package/build-module/components/image-editor/context.js.map +1 -1
  1580. package/build-module/components/image-editor/cropper.js +4 -6
  1581. package/build-module/components/image-editor/cropper.js.map +1 -1
  1582. package/build-module/components/image-editor/form-controls.js +1 -2
  1583. package/build-module/components/image-editor/form-controls.js.map +1 -1
  1584. package/build-module/components/image-editor/index.js +1 -2
  1585. package/build-module/components/image-editor/index.js.map +1 -1
  1586. package/build-module/components/image-editor/rotation-button.js +2 -2
  1587. package/build-module/components/image-editor/rotation-button.js.map +1 -1
  1588. package/build-module/components/image-editor/use-save-image.js +4 -7
  1589. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  1590. package/build-module/components/image-editor/use-transform-image.js +0 -9
  1591. package/build-module/components/image-editor/use-transform-image.js.map +1 -1
  1592. package/build-module/components/image-editor/zoom-dropdown.js +1 -2
  1593. package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
  1594. package/build-module/components/image-size-control/index.js +1 -4
  1595. package/build-module/components/image-size-control/index.js.map +1 -1
  1596. package/build-module/components/image-size-control/use-dimension-handler.js +6 -12
  1597. package/build-module/components/image-size-control/use-dimension-handler.js.map +1 -1
  1598. package/build-module/components/index.js +11 -1
  1599. package/build-module/components/index.js.map +1 -1
  1600. package/build-module/components/index.native.js +4 -3
  1601. package/build-module/components/index.native.js.map +1 -1
  1602. package/build-module/components/inner-blocks/button-block-appender.js +1 -2
  1603. package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
  1604. package/build-module/components/inner-blocks/default-block-appender.js +1 -2
  1605. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  1606. package/build-module/components/inner-blocks/index.js +23 -21
  1607. package/build-module/components/inner-blocks/index.js.map +1 -1
  1608. package/build-module/components/inner-blocks/index.native.js +21 -20
  1609. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  1610. package/build-module/components/inner-blocks/use-block-context.js +2 -7
  1611. package/build-module/components/inner-blocks/use-block-context.js.map +1 -1
  1612. package/build-module/components/inner-blocks/use-inner-block-template-sync.js +13 -14
  1613. package/build-module/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  1614. package/build-module/components/inner-blocks/use-nested-settings-update.js +19 -21
  1615. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  1616. package/build-module/components/inner-blocks/with-client-id.js +3 -3
  1617. package/build-module/components/inner-blocks/with-client-id.js.map +1 -1
  1618. package/build-module/components/inserter/block-patterns-explorer/explorer.js +3 -6
  1619. package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  1620. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js +5 -13
  1621. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  1622. package/build-module/components/inserter/block-patterns-explorer/sidebar.js +0 -5
  1623. package/build-module/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  1624. package/build-module/components/inserter/block-patterns-tab.js +12 -22
  1625. package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
  1626. package/build-module/components/inserter/block-types-tab.js +9 -16
  1627. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  1628. package/build-module/components/inserter/block-types-tab.native.js +1 -8
  1629. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  1630. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js +9 -10
  1631. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  1632. package/build-module/components/inserter/hooks/use-block-types-state.js +9 -6
  1633. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  1634. package/build-module/components/inserter/hooks/use-clipboard-block.native.js +1 -3
  1635. package/build-module/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  1636. package/build-module/components/inserter/hooks/use-debounced-input.js +5 -7
  1637. package/build-module/components/inserter/hooks/use-debounced-input.js.map +1 -1
  1638. package/build-module/components/inserter/hooks/use-insertion-point.js +4 -10
  1639. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  1640. package/build-module/components/inserter/hooks/use-patterns-state.js +6 -7
  1641. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  1642. package/build-module/components/inserter/index.js +30 -56
  1643. package/build-module/components/inserter/index.js.map +1 -1
  1644. package/build-module/components/inserter/index.native.js +24 -56
  1645. package/build-module/components/inserter/index.native.js.map +1 -1
  1646. package/build-module/components/inserter/library.js +1 -7
  1647. package/build-module/components/inserter/library.js.map +1 -1
  1648. package/build-module/components/inserter/media-tab/hooks.js +14 -25
  1649. package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
  1650. package/build-module/components/inserter/media-tab/index.js.map +1 -1
  1651. package/build-module/components/inserter/media-tab/media-list.js +3 -5
  1652. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  1653. package/build-module/components/inserter/media-tab/media-panel.js +1 -4
  1654. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  1655. package/build-module/components/inserter/media-tab/media-preview.js +11 -24
  1656. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  1657. package/build-module/components/inserter/media-tab/media-tab.js +4 -7
  1658. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  1659. package/build-module/components/inserter/media-tab/utils.js +1 -4
  1660. package/build-module/components/inserter/media-tab/utils.js.map +1 -1
  1661. package/build-module/components/inserter/menu.js +3 -5
  1662. package/build-module/components/inserter/menu.js.map +1 -1
  1663. package/build-module/components/inserter/menu.native.js +6 -15
  1664. package/build-module/components/inserter/menu.native.js.map +1 -1
  1665. package/build-module/components/inserter/mobile-tab-navigation.js +2 -4
  1666. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  1667. package/build-module/components/inserter/no-results.js +0 -3
  1668. package/build-module/components/inserter/no-results.js.map +1 -1
  1669. package/build-module/components/inserter/no-results.native.js +2 -5
  1670. package/build-module/components/inserter/no-results.native.js.map +1 -1
  1671. package/build-module/components/inserter/panel.js +0 -3
  1672. package/build-module/components/inserter/panel.js.map +1 -1
  1673. package/build-module/components/inserter/preview-panel.js +15 -11
  1674. package/build-module/components/inserter/preview-panel.js.map +1 -1
  1675. package/build-module/components/inserter/quick-inserter.js +5 -8
  1676. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  1677. package/build-module/components/inserter/reusable-block-rename-hint.js +1 -7
  1678. package/build-module/components/inserter/reusable-block-rename-hint.js.map +1 -1
  1679. package/build-module/components/inserter/reusable-blocks-tab.js +6 -10
  1680. package/build-module/components/inserter/reusable-blocks-tab.js.map +1 -1
  1681. package/build-module/components/inserter/reusable-blocks-tab.native.js +1 -4
  1682. package/build-module/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  1683. package/build-module/components/inserter/search-items.js +22 -33
  1684. package/build-module/components/inserter/search-items.js.map +1 -1
  1685. package/build-module/components/inserter/search-results.js +6 -18
  1686. package/build-module/components/inserter/search-results.js.map +1 -1
  1687. package/build-module/components/inserter/search-results.native.js +1 -7
  1688. package/build-module/components/inserter/search-results.native.js.map +1 -1
  1689. package/build-module/components/inserter/tabs.js +0 -13
  1690. package/build-module/components/inserter/tabs.js.map +1 -1
  1691. package/build-module/components/inserter/tabs.native.js +6 -13
  1692. package/build-module/components/inserter/tabs.native.js.map +1 -1
  1693. package/build-module/components/inserter/tips.js +2 -4
  1694. package/build-module/components/inserter/tips.js.map +1 -1
  1695. package/build-module/components/inserter/utils.native.js +2 -6
  1696. package/build-module/components/inserter/utils.native.js.map +1 -1
  1697. package/build-module/components/inserter-draggable-blocks/index.js +0 -4
  1698. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  1699. package/build-module/components/inserter-list-item/index.js +3 -10
  1700. package/build-module/components/inserter-list-item/index.js.map +1 -1
  1701. package/build-module/components/inserter-listbox/context.js.map +1 -1
  1702. package/build-module/components/inserter-listbox/group.js +0 -4
  1703. package/build-module/components/inserter-listbox/group.js.map +1 -1
  1704. package/build-module/components/inserter-listbox/index.js +1 -4
  1705. package/build-module/components/inserter-listbox/index.js.map +1 -1
  1706. package/build-module/components/inserter-listbox/item.js +9 -11
  1707. package/build-module/components/inserter-listbox/item.js.map +1 -1
  1708. package/build-module/components/inserter-listbox/row.js +1 -4
  1709. package/build-module/components/inserter-listbox/row.js.map +1 -1
  1710. package/build-module/components/inserter-menu-extension/index.js.map +1 -1
  1711. package/build-module/components/inspector-controls/block-support-slot-container.js +2 -2
  1712. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  1713. package/build-module/components/inspector-controls/block-support-tools-panel.js +7 -5
  1714. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  1715. package/build-module/components/inspector-controls/fill.js +4 -10
  1716. package/build-module/components/inspector-controls/fill.js.map +1 -1
  1717. package/build-module/components/inspector-controls/fill.native.js +4 -8
  1718. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  1719. package/build-module/components/inspector-controls/groups.js.map +1 -1
  1720. package/build-module/components/inspector-controls/index.js +7 -7
  1721. package/build-module/components/inspector-controls/index.js.map +1 -1
  1722. package/build-module/components/inspector-controls/slot.js +5 -9
  1723. package/build-module/components/inspector-controls/slot.js.map +1 -1
  1724. package/build-module/components/inspector-controls/slot.native.js +3 -6
  1725. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  1726. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js +1 -6
  1727. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  1728. package/build-module/components/inspector-controls-tabs/index.js +1 -4
  1729. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  1730. package/build-module/components/inspector-controls-tabs/position-controls-panel.js +3 -8
  1731. package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  1732. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js +0 -4
  1733. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  1734. package/build-module/components/inspector-controls-tabs/settings-tab.js +0 -3
  1735. package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  1736. package/build-module/components/inspector-controls-tabs/styles-tab.js +1 -4
  1737. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  1738. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js +14 -16
  1739. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  1740. package/build-module/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js.map +1 -1
  1741. package/build-module/components/inspector-controls-tabs/utils.js.map +1 -1
  1742. package/build-module/components/inspector-popover-header/index.js +0 -1
  1743. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  1744. package/build-module/components/justify-content-control/index.js +5 -7
  1745. package/build-module/components/justify-content-control/index.js.map +1 -1
  1746. package/build-module/components/justify-content-control/ui.js +0 -4
  1747. package/build-module/components/justify-content-control/ui.js.map +1 -1
  1748. package/build-module/components/keyboard-shortcuts/index.js +9 -3
  1749. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  1750. package/build-module/components/letter-spacing-control/index.js +4 -4
  1751. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  1752. package/build-module/components/line-height-control/index.js +22 -34
  1753. package/build-module/components/line-height-control/index.js.map +1 -1
  1754. package/build-module/components/line-height-control/index.native.js +4 -4
  1755. package/build-module/components/line-height-control/index.native.js.map +1 -1
  1756. package/build-module/components/line-height-control/utils.js +7 -3
  1757. package/build-module/components/line-height-control/utils.js.map +1 -1
  1758. package/build-module/components/link-control/constants.js +3 -2
  1759. package/build-module/components/link-control/constants.js.map +1 -1
  1760. package/build-module/components/link-control/index.js +81 -38
  1761. package/build-module/components/link-control/index.js.map +1 -1
  1762. package/build-module/components/link-control/is-url-like.js +5 -6
  1763. package/build-module/components/link-control/is-url-like.js.map +1 -1
  1764. package/build-module/components/link-control/link-preview.js +12 -11
  1765. package/build-module/components/link-control/link-preview.js.map +1 -1
  1766. package/build-module/components/link-control/search-create-button.js +3 -7
  1767. package/build-module/components/link-control/search-create-button.js.map +1 -1
  1768. package/build-module/components/link-control/search-input.js +18 -23
  1769. package/build-module/components/link-control/search-input.js.map +1 -1
  1770. package/build-module/components/link-control/search-item.js +6 -12
  1771. package/build-module/components/link-control/search-item.js.map +1 -1
  1772. package/build-module/components/link-control/search-results.js +14 -14
  1773. package/build-module/components/link-control/search-results.js.map +1 -1
  1774. package/build-module/components/link-control/settings-drawer.js +0 -3
  1775. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  1776. package/build-module/components/link-control/settings.js +2 -7
  1777. package/build-module/components/link-control/settings.js.map +1 -1
  1778. package/build-module/components/link-control/use-create-page.js +4 -8
  1779. package/build-module/components/link-control/use-create-page.js.map +1 -1
  1780. package/build-module/components/link-control/use-internal-value.js +8 -10
  1781. package/build-module/components/link-control/use-internal-value.js.map +1 -1
  1782. package/build-module/components/link-control/use-rich-url-data.js +9 -12
  1783. package/build-module/components/link-control/use-rich-url-data.js.map +1 -1
  1784. package/build-module/components/link-control/use-search-handler.js +10 -14
  1785. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  1786. package/build-module/components/link-control/viewer-slot.js.map +1 -1
  1787. package/build-module/components/list-view/appender.js +4 -8
  1788. package/build-module/components/list-view/appender.js.map +1 -1
  1789. package/build-module/components/list-view/aria-referenced-text.js +1 -2
  1790. package/build-module/components/list-view/aria-referenced-text.js.map +1 -1
  1791. package/build-module/components/list-view/block-contents.js +5 -5
  1792. package/build-module/components/list-view/block-contents.js.map +1 -1
  1793. package/build-module/components/list-view/block-select-button.js +32 -19
  1794. package/build-module/components/list-view/block-select-button.js.map +1 -1
  1795. package/build-module/components/list-view/block.js +25 -29
  1796. package/build-module/components/list-view/block.js.map +1 -1
  1797. package/build-module/components/list-view/branch.js +9 -28
  1798. package/build-module/components/list-view/branch.js.map +1 -1
  1799. package/build-module/components/list-view/context.js.map +1 -1
  1800. package/build-module/components/list-view/drop-indicator.js +34 -43
  1801. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  1802. package/build-module/components/list-view/expander.js +2 -2
  1803. package/build-module/components/list-view/expander.js.map +1 -1
  1804. package/build-module/components/list-view/index.js +18 -22
  1805. package/build-module/components/list-view/index.js.map +1 -1
  1806. package/build-module/components/list-view/leaf.js +2 -3
  1807. package/build-module/components/list-view/leaf.js.map +1 -1
  1808. package/build-module/components/list-view/use-block-selection.js +15 -22
  1809. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  1810. package/build-module/components/list-view/use-list-view-client-ids.js +2 -1
  1811. package/build-module/components/list-view/use-list-view-client-ids.js.map +1 -1
  1812. package/build-module/components/list-view/use-list-view-drop-zone.js +40 -54
  1813. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  1814. package/build-module/components/list-view/use-list-view-expand-selected-item.js +5 -4
  1815. package/build-module/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  1816. package/build-module/components/list-view/use-list-view-images.js +78 -0
  1817. package/build-module/components/list-view/use-list-view-images.js.map +1 -0
  1818. package/build-module/components/list-view/use-list-view-scroll-into-view.js +5 -5
  1819. package/build-module/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  1820. package/build-module/components/list-view/utils.js +3 -4
  1821. package/build-module/components/list-view/utils.js.map +1 -1
  1822. package/build-module/components/media-placeholder/index.js +12 -59
  1823. package/build-module/components/media-placeholder/index.js.map +1 -1
  1824. package/build-module/components/media-placeholder/index.native.js +9 -24
  1825. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  1826. package/build-module/components/media-replace-flow/index.js +9 -25
  1827. package/build-module/components/media-replace-flow/index.js.map +1 -1
  1828. package/build-module/components/media-replace-flow/index.native.js +14 -3
  1829. package/build-module/components/media-replace-flow/index.native.js.map +1 -1
  1830. package/build-module/components/media-upload/check.js +2 -2
  1831. package/build-module/components/media-upload/check.js.map +1 -1
  1832. package/build-module/components/media-upload/index.js +2 -3
  1833. package/build-module/components/media-upload/index.js.map +1 -1
  1834. package/build-module/components/media-upload/index.native.js +18 -29
  1835. package/build-module/components/media-upload/index.native.js.map +1 -1
  1836. package/build-module/components/media-upload-progress/index.native.js +4 -27
  1837. package/build-module/components/media-upload-progress/index.native.js.map +1 -1
  1838. package/build-module/components/multi-selection-inspector/index.js +3 -8
  1839. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  1840. package/build-module/components/navigable-toolbar/index.js +9 -26
  1841. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  1842. package/build-module/components/observe-typing/index.js +26 -38
  1843. package/build-module/components/observe-typing/index.js.map +1 -1
  1844. package/build-module/components/panel-color-settings/index.js +2 -5
  1845. package/build-module/components/panel-color-settings/index.js.map +1 -1
  1846. package/build-module/components/plain-text/index.js +3 -5
  1847. package/build-module/components/plain-text/index.js.map +1 -1
  1848. package/build-module/components/plain-text/index.native.js +8 -22
  1849. package/build-module/components/plain-text/index.native.js.map +1 -1
  1850. package/build-module/components/preview-options/index.js +1 -2
  1851. package/build-module/components/preview-options/index.js.map +1 -1
  1852. package/build-module/components/provider/block-refs-provider.js +0 -1
  1853. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  1854. package/build-module/components/provider/index.js +8 -5
  1855. package/build-module/components/provider/index.js.map +1 -1
  1856. package/build-module/components/provider/index.native.js +4 -3
  1857. package/build-module/components/provider/index.native.js.map +1 -1
  1858. package/build-module/components/provider/use-block-sync.js +23 -38
  1859. package/build-module/components/provider/use-block-sync.js.map +1 -1
  1860. package/build-module/components/provider/with-registry-provider.js +1 -5
  1861. package/build-module/components/provider/with-registry-provider.js.map +1 -1
  1862. package/build-module/components/publish-date-time-picker/index.js +1 -4
  1863. package/build-module/components/publish-date-time-picker/index.js.map +1 -1
  1864. package/build-module/components/recursion-provider/index.js +6 -7
  1865. package/build-module/components/recursion-provider/index.js.map +1 -1
  1866. package/build-module/components/resizable-box-popover/index.js +3 -3
  1867. package/build-module/components/resizable-box-popover/index.js.map +1 -1
  1868. package/build-module/components/resolution-tool/index.js +0 -1
  1869. package/build-module/components/resolution-tool/index.js.map +1 -1
  1870. package/build-module/components/responsive-block-control/index.js +4 -14
  1871. package/build-module/components/responsive-block-control/index.js.map +1 -1
  1872. package/build-module/components/responsive-block-control/label.js +1 -3
  1873. package/build-module/components/responsive-block-control/label.js.map +1 -1
  1874. package/build-module/components/rich-text/content.js +3 -8
  1875. package/build-module/components/rich-text/content.js.map +1 -1
  1876. package/build-module/components/rich-text/embed-handler-picker.native.js +0 -3
  1877. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  1878. package/build-module/components/rich-text/file-paste-handler.native.js.map +1 -1
  1879. package/build-module/components/rich-text/format-edit.js +49 -28
  1880. package/build-module/components/rich-text/format-edit.js.map +1 -1
  1881. package/build-module/components/rich-text/format-toolbar/index.js +5 -9
  1882. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  1883. package/build-module/components/rich-text/format-toolbar/index.native.js +1 -3
  1884. package/build-module/components/rich-text/format-toolbar/index.native.js.map +1 -1
  1885. package/build-module/components/rich-text/format-toolbar-container.js +4 -14
  1886. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  1887. package/build-module/components/rich-text/format-toolbar-container.native.js +0 -3
  1888. package/build-module/components/rich-text/format-toolbar-container.native.js.map +1 -1
  1889. package/build-module/components/rich-text/get-rich-text-values.js +15 -34
  1890. package/build-module/components/rich-text/get-rich-text-values.js.map +1 -1
  1891. package/build-module/components/rich-text/index.js +19 -37
  1892. package/build-module/components/rich-text/index.js.map +1 -1
  1893. package/build-module/components/rich-text/index.native.js +49 -76
  1894. package/build-module/components/rich-text/index.native.js.map +1 -1
  1895. package/build-module/components/rich-text/input-event.js +1 -2
  1896. package/build-module/components/rich-text/input-event.js.map +1 -1
  1897. package/build-module/components/rich-text/input-event.native.js +0 -1
  1898. package/build-module/components/rich-text/input-event.native.js.map +1 -1
  1899. package/build-module/components/rich-text/prevent-event-discovery.js +0 -4
  1900. package/build-module/components/rich-text/prevent-event-discovery.js.map +1 -1
  1901. package/build-module/components/rich-text/remove-browser-shortcuts.native.js.map +1 -1
  1902. package/build-module/components/rich-text/shortcut.js +1 -2
  1903. package/build-module/components/rich-text/shortcut.js.map +1 -1
  1904. package/build-module/components/rich-text/shortcut.native.js +0 -1
  1905. package/build-module/components/rich-text/shortcut.native.js.map +1 -1
  1906. package/build-module/components/rich-text/split-value.js +19 -16
  1907. package/build-module/components/rich-text/split-value.js.map +1 -1
  1908. package/build-module/components/rich-text/toolbar-button.js +2 -5
  1909. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  1910. package/build-module/components/rich-text/use-before-input-rules.js +7 -16
  1911. package/build-module/components/rich-text/use-before-input-rules.js.map +1 -1
  1912. package/build-module/components/rich-text/use-delete.js +5 -10
  1913. package/build-module/components/rich-text/use-delete.js.map +1 -1
  1914. package/build-module/components/rich-text/use-enter.js +3 -10
  1915. package/build-module/components/rich-text/use-enter.js.map +1 -1
  1916. package/build-module/components/rich-text/use-firefox-compat.js +5 -35
  1917. package/build-module/components/rich-text/use-firefox-compat.js.map +1 -1
  1918. package/build-module/components/rich-text/use-format-types.js +9 -20
  1919. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  1920. package/build-module/components/rich-text/use-input-events.js +0 -1
  1921. package/build-module/components/rich-text/use-input-events.js.map +1 -1
  1922. package/build-module/components/rich-text/use-input-rules.js +10 -28
  1923. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  1924. package/build-module/components/rich-text/use-insert-replacement-text.js +2 -3
  1925. package/build-module/components/rich-text/use-insert-replacement-text.js.map +1 -1
  1926. package/build-module/components/rich-text/use-mark-persistent.js +6 -6
  1927. package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
  1928. package/build-module/components/rich-text/use-paste-handler.js +26 -62
  1929. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  1930. package/build-module/components/rich-text/use-remove-browser-shortcuts.js +1 -2
  1931. package/build-module/components/rich-text/use-remove-browser-shortcuts.js.map +1 -1
  1932. package/build-module/components/rich-text/use-shortcuts.js +0 -1
  1933. package/build-module/components/rich-text/use-shortcuts.js.map +1 -1
  1934. package/build-module/components/rich-text/use-undo-automatic-change.js +1 -9
  1935. package/build-module/components/rich-text/use-undo-automatic-change.js.map +1 -1
  1936. package/build-module/components/rich-text/utils.js +2 -6
  1937. package/build-module/components/rich-text/utils.js.map +1 -1
  1938. package/build-module/components/selection-scroll-into-view/index.js +1 -1
  1939. package/build-module/components/selection-scroll-into-view/index.js.map +1 -1
  1940. package/build-module/components/skip-to-selected-block/index.js +2 -7
  1941. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  1942. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js +1 -3
  1943. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  1944. package/build-module/components/spacing-sizes-control/index.js +13 -14
  1945. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  1946. package/build-module/components/spacing-sizes-control/input-controls/axial.js +6 -9
  1947. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  1948. package/build-module/components/spacing-sizes-control/input-controls/separated.js +2 -4
  1949. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  1950. package/build-module/components/spacing-sizes-control/input-controls/single.js +2 -3
  1951. package/build-module/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  1952. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +6 -19
  1953. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  1954. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js +1 -3
  1955. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  1956. package/build-module/components/spacing-sizes-control/utils.js +35 -52
  1957. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  1958. package/build-module/components/text-decoration-control/index.js +2 -3
  1959. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1960. package/build-module/components/text-transform-control/index.js +2 -3
  1961. package/build-module/components/text-transform-control/index.js.map +1 -1
  1962. package/build-module/components/tool-selector/index.js +4 -7
  1963. package/build-module/components/tool-selector/index.js.map +1 -1
  1964. package/build-module/components/typewriter/index.js +30 -46
  1965. package/build-module/components/typewriter/index.js.map +1 -1
  1966. package/build-module/components/ungroup-button/index.native.js +1 -7
  1967. package/build-module/components/ungroup-button/index.native.js.map +1 -1
  1968. package/build-module/components/unit-control/index.js +1 -2
  1969. package/build-module/components/unit-control/index.js.map +1 -1
  1970. package/build-module/components/url-input/button.js +2 -9
  1971. package/build-module/components/url-input/button.js.map +1 -1
  1972. package/build-module/components/url-input/index.js +41 -81
  1973. package/build-module/components/url-input/index.js.map +1 -1
  1974. package/build-module/components/url-input/index.native.js +1 -2
  1975. package/build-module/components/url-input/index.native.js.map +1 -1
  1976. package/build-module/components/url-popover/image-url-input-ui.js +3 -31
  1977. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  1978. package/build-module/components/url-popover/index.js +5 -12
  1979. package/build-module/components/url-popover/index.js.map +1 -1
  1980. package/build-module/components/url-popover/link-editor.js +2 -3
  1981. package/build-module/components/url-popover/link-editor.js.map +1 -1
  1982. package/build-module/components/url-popover/link-viewer-url.js +1 -4
  1983. package/build-module/components/url-popover/link-viewer-url.js.map +1 -1
  1984. package/build-module/components/url-popover/link-viewer.js +2 -3
  1985. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  1986. package/build-module/components/use-block-commands/index.js +238 -0
  1987. package/build-module/components/use-block-commands/index.js.map +1 -0
  1988. package/build-module/components/use-block-display-information/index.js +3 -6
  1989. package/build-module/components/use-block-display-information/index.js.map +1 -1
  1990. package/build-module/components/use-block-drop-zone/index.js +14 -19
  1991. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  1992. package/build-module/components/use-block-drop-zone/index.native.js +13 -16
  1993. package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
  1994. package/build-module/components/use-display-block-controls/index.js +1 -4
  1995. package/build-module/components/use-display-block-controls/index.js.map +1 -1
  1996. package/build-module/components/use-display-block-controls/index.native.js +1 -3
  1997. package/build-module/components/use-display-block-controls/index.native.js.map +1 -1
  1998. package/build-module/components/use-moving-animation/index.js +6 -17
  1999. package/build-module/components/use-moving-animation/index.js.map +1 -1
  2000. package/build-module/components/use-on-block-drop/index.js +21 -30
  2001. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  2002. package/build-module/components/use-on-block-drop/index.native.js +13 -12
  2003. package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
  2004. package/build-module/components/use-on-block-drop/types.js.map +1 -1
  2005. package/build-module/components/use-paste-styles/index.js +12 -21
  2006. package/build-module/components/use-paste-styles/index.js.map +1 -1
  2007. package/build-module/components/use-resize-canvas/index.js +1 -13
  2008. package/build-module/components/use-resize-canvas/index.js.map +1 -1
  2009. package/build-module/components/use-setting/index.js +17 -33
  2010. package/build-module/components/use-setting/index.js.map +1 -1
  2011. package/build-module/components/video-player/gridicon-play.native.js +0 -1
  2012. package/build-module/components/video-player/gridicon-play.native.js.map +1 -1
  2013. package/build-module/components/video-player/index.native.js +12 -17
  2014. package/build-module/components/video-player/index.native.js.map +1 -1
  2015. package/build-module/components/warning/index.js +2 -5
  2016. package/build-module/components/warning/index.js.map +1 -1
  2017. package/build-module/components/warning/index.native.js +2 -5
  2018. package/build-module/components/warning/index.native.js.map +1 -1
  2019. package/build-module/components/writing-flow/index.js +5 -9
  2020. package/build-module/components/writing-flow/index.js.map +1 -1
  2021. package/build-module/components/writing-flow/use-arrow-nav.js +37 -53
  2022. package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
  2023. package/build-module/components/writing-flow/use-click-selection.js +3 -6
  2024. package/build-module/components/writing-flow/use-click-selection.js.map +1 -1
  2025. package/build-module/components/writing-flow/use-drag-selection.js +27 -29
  2026. package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
  2027. package/build-module/components/writing-flow/use-input.js +8 -17
  2028. package/build-module/components/writing-flow/use-input.js.map +1 -1
  2029. package/build-module/components/writing-flow/use-multi-selection.js +10 -14
  2030. package/build-module/components/writing-flow/use-multi-selection.js.map +1 -1
  2031. package/build-module/components/writing-flow/use-select-all.js +4 -9
  2032. package/build-module/components/writing-flow/use-select-all.js.map +1 -1
  2033. package/build-module/components/writing-flow/use-selection-observer.js +20 -44
  2034. package/build-module/components/writing-flow/use-selection-observer.js.map +1 -1
  2035. package/build-module/components/writing-flow/use-tab-nav.js +28 -34
  2036. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  2037. package/build-module/components/writing-mode-control/index.js +2 -3
  2038. package/build-module/components/writing-mode-control/index.js.map +1 -1
  2039. package/build-module/elements/index.js.map +1 -1
  2040. package/build-module/hooks/align.js +25 -36
  2041. package/build-module/hooks/align.js.map +1 -1
  2042. package/build-module/hooks/align.native.js +6 -4
  2043. package/build-module/hooks/align.native.js.map +1 -1
  2044. package/build-module/hooks/anchor.js +11 -15
  2045. package/build-module/hooks/anchor.js.map +1 -1
  2046. package/build-module/hooks/aria-label.js +4 -6
  2047. package/build-module/hooks/aria-label.js.map +1 -1
  2048. package/build-module/hooks/behaviors.js +14 -25
  2049. package/build-module/hooks/behaviors.js.map +1 -1
  2050. package/build-module/hooks/border.js +48 -65
  2051. package/build-module/hooks/border.js.map +1 -1
  2052. package/build-module/hooks/color.js +32 -52
  2053. package/build-module/hooks/color.js.map +1 -1
  2054. package/build-module/hooks/compat.js +0 -4
  2055. package/build-module/hooks/compat.js.map +1 -1
  2056. package/build-module/hooks/content-lock-ui.js +5 -13
  2057. package/build-module/hooks/content-lock-ui.js.map +1 -1
  2058. package/build-module/hooks/contrast-checker.js +4 -11
  2059. package/build-module/hooks/contrast-checker.js.map +1 -1
  2060. package/build-module/hooks/custom-class-name.js +24 -26
  2061. package/build-module/hooks/custom-class-name.js.map +1 -1
  2062. package/build-module/hooks/custom-class-name.native.js +5 -6
  2063. package/build-module/hooks/custom-class-name.native.js.map +1 -1
  2064. package/build-module/hooks/custom-fields.js +113 -0
  2065. package/build-module/hooks/custom-fields.js.map +1 -0
  2066. package/build-module/hooks/dimensions.js +6 -11
  2067. package/build-module/hooks/dimensions.js.map +1 -1
  2068. package/build-module/hooks/duotone.js +43 -49
  2069. package/build-module/hooks/duotone.js.map +1 -1
  2070. package/build-module/hooks/font-family.js +9 -20
  2071. package/build-module/hooks/font-family.js.map +1 -1
  2072. package/build-module/hooks/font-size.js +36 -47
  2073. package/build-module/hooks/font-size.js.map +1 -1
  2074. package/build-module/hooks/gap.js +2 -5
  2075. package/build-module/hooks/gap.js.map +1 -1
  2076. package/build-module/hooks/generated-class-name.js +2 -2
  2077. package/build-module/hooks/generated-class-name.js.map +1 -1
  2078. package/build-module/hooks/index.js +1 -0
  2079. package/build-module/hooks/index.js.map +1 -1
  2080. package/build-module/hooks/index.native.js.map +1 -1
  2081. package/build-module/hooks/layout.js +46 -54
  2082. package/build-module/hooks/layout.js.map +1 -1
  2083. package/build-module/hooks/layout.native.js +5 -3
  2084. package/build-module/hooks/layout.native.js.map +1 -1
  2085. package/build-module/hooks/line-height.js +7 -8
  2086. package/build-module/hooks/line-height.js.map +1 -1
  2087. package/build-module/hooks/lock.js +5 -6
  2088. package/build-module/hooks/lock.js.map +1 -1
  2089. package/build-module/hooks/margin.js +1 -10
  2090. package/build-module/hooks/margin.js.map +1 -1
  2091. package/build-module/hooks/metadata-name.js +5 -6
  2092. package/build-module/hooks/metadata-name.js.map +1 -1
  2093. package/build-module/hooks/metadata.js +3 -7
  2094. package/build-module/hooks/metadata.js.map +1 -1
  2095. package/build-module/hooks/padding.js +1 -10
  2096. package/build-module/hooks/padding.js.map +1 -1
  2097. package/build-module/hooks/position.js +36 -38
  2098. package/build-module/hooks/position.js.map +1 -1
  2099. package/build-module/hooks/settings.js +4 -7
  2100. package/build-module/hooks/settings.js.map +1 -1
  2101. package/build-module/hooks/style.js +39 -44
  2102. package/build-module/hooks/style.js.map +1 -1
  2103. package/build-module/hooks/supports.js +22 -33
  2104. package/build-module/hooks/supports.js.map +1 -1
  2105. package/build-module/hooks/typography.js +11 -16
  2106. package/build-module/hooks/typography.js.map +1 -1
  2107. package/build-module/hooks/typography.native.js +5 -7
  2108. package/build-module/hooks/typography.native.js.map +1 -1
  2109. package/build-module/hooks/use-border-props.js +7 -6
  2110. package/build-module/hooks/use-border-props.js.map +1 -1
  2111. package/build-module/hooks/use-cached-truthy.js +1 -1
  2112. package/build-module/hooks/use-cached-truthy.js.map +1 -1
  2113. package/build-module/hooks/use-color-props.js +18 -17
  2114. package/build-module/hooks/use-color-props.js.map +1 -1
  2115. package/build-module/hooks/use-editor-wrapper-styles.native.js +8 -26
  2116. package/build-module/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  2117. package/build-module/hooks/use-spacing-props.js +5 -3
  2118. package/build-module/hooks/use-spacing-props.js.map +1 -1
  2119. package/build-module/hooks/use-typography-props.js +4 -4
  2120. package/build-module/hooks/use-typography-props.js.map +1 -1
  2121. package/build-module/hooks/utils.js +12 -18
  2122. package/build-module/hooks/utils.js.map +1 -1
  2123. package/build-module/index.js.map +1 -1
  2124. package/build-module/index.native.js.map +1 -1
  2125. package/build-module/layouts/constrained.js +14 -26
  2126. package/build-module/layouts/constrained.js.map +1 -1
  2127. package/build-module/layouts/definitions.js.map +1 -1
  2128. package/build-module/layouts/flex.js +18 -41
  2129. package/build-module/layouts/flex.js.map +1 -1
  2130. package/build-module/layouts/flow.js +8 -17
  2131. package/build-module/layouts/flow.js.map +1 -1
  2132. package/build-module/layouts/grid.js +20 -25
  2133. package/build-module/layouts/grid.js.map +1 -1
  2134. package/build-module/layouts/index.js +2 -2
  2135. package/build-module/layouts/index.js.map +1 -1
  2136. package/build-module/layouts/utils.js +5 -9
  2137. package/build-module/layouts/utils.js.map +1 -1
  2138. package/build-module/lock-unlock.js.map +1 -1
  2139. package/build-module/private-apis.js +6 -5
  2140. package/build-module/private-apis.js.map +1 -1
  2141. package/build-module/private-apis.native.js +3 -2
  2142. package/build-module/private-apis.native.js.map +1 -1
  2143. package/build-module/store/actions.js +189 -198
  2144. package/build-module/store/actions.js.map +1 -1
  2145. package/build-module/store/array.js +1 -1
  2146. package/build-module/store/array.js.map +1 -1
  2147. package/build-module/store/constants.js.map +1 -1
  2148. package/build-module/store/defaults.js +1 -1
  2149. package/build-module/store/defaults.js.map +1 -1
  2150. package/build-module/store/defaults.native.js +2 -1
  2151. package/build-module/store/defaults.native.js.map +1 -1
  2152. package/build-module/store/index.js +13 -9
  2153. package/build-module/store/index.js.map +1 -1
  2154. package/build-module/store/private-actions.js +25 -78
  2155. package/build-module/store/private-actions.js.map +1 -1
  2156. package/build-module/store/private-selectors.js +6 -76
  2157. package/build-module/store/private-selectors.js.map +1 -1
  2158. package/build-module/store/reducer.js +161 -328
  2159. package/build-module/store/reducer.js.map +1 -1
  2160. package/build-module/store/selectors.js +255 -398
  2161. package/build-module/store/selectors.js.map +1 -1
  2162. package/build-module/store/utils.js.map +1 -1
  2163. package/build-module/utils/block-variation-transforms.js +2 -3
  2164. package/build-module/utils/block-variation-transforms.js.map +1 -1
  2165. package/build-module/utils/dom.js +4 -10
  2166. package/build-module/utils/dom.js.map +1 -1
  2167. package/build-module/utils/index.js.map +1 -1
  2168. package/build-module/utils/math.js +5 -7
  2169. package/build-module/utils/math.js.map +1 -1
  2170. package/build-module/utils/object.js +15 -21
  2171. package/build-module/utils/object.js.map +1 -1
  2172. package/build-module/utils/order-inserter-block-items.js +2 -3
  2173. package/build-module/utils/order-inserter-block-items.js.map +1 -1
  2174. package/build-module/utils/parse-css-unit-to-px.js +14 -64
  2175. package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
  2176. package/build-module/utils/pasting.js +8 -12
  2177. package/build-module/utils/pasting.js.map +1 -1
  2178. package/build-module/utils/pre-parse-patterns.js +1 -14
  2179. package/build-module/utils/pre-parse-patterns.js.map +1 -1
  2180. package/build-module/utils/selection.js +1 -2
  2181. package/build-module/utils/selection.js.map +1 -1
  2182. package/build-module/utils/sorting.js +3 -7
  2183. package/build-module/utils/sorting.js.map +1 -1
  2184. package/build-module/utils/transform-styles/ast/index.js +1 -0
  2185. package/build-module/utils/transform-styles/ast/index.js.map +1 -1
  2186. package/build-module/utils/transform-styles/ast/parse.js +95 -134
  2187. package/build-module/utils/transform-styles/ast/parse.js.map +1 -1
  2188. package/build-module/utils/transform-styles/ast/stringify/compiler.js +5 -6
  2189. package/build-module/utils/transform-styles/ast/stringify/compiler.js.map +1 -1
  2190. package/build-module/utils/transform-styles/ast/stringify/compress.js +28 -19
  2191. package/build-module/utils/transform-styles/ast/stringify/compress.js.map +1 -1
  2192. package/build-module/utils/transform-styles/ast/stringify/identity.js +32 -23
  2193. package/build-module/utils/transform-styles/ast/stringify/identity.js.map +1 -1
  2194. package/build-module/utils/transform-styles/ast/stringify/index.js +1 -0
  2195. package/build-module/utils/transform-styles/ast/stringify/index.js.map +1 -1
  2196. package/build-module/utils/transform-styles/index.js +2 -7
  2197. package/build-module/utils/transform-styles/index.js.map +1 -1
  2198. package/build-module/utils/transform-styles/transforms/url-rewrite.js +12 -24
  2199. package/build-module/utils/transform-styles/transforms/url-rewrite.js.map +1 -1
  2200. package/build-module/utils/transform-styles/transforms/wrap.js +7 -8
  2201. package/build-module/utils/transform-styles/transforms/wrap.js.map +1 -1
  2202. package/build-module/utils/transform-styles/traverse.js +1 -4
  2203. package/build-module/utils/transform-styles/traverse.js.map +1 -1
  2204. package/build-module/utils/use-should-contextual-toolbar-show.js +2 -5
  2205. package/build-module/utils/use-should-contextual-toolbar-show.js.map +1 -1
  2206. package/build-style/style-rtl.css +69 -10
  2207. package/build-style/style.css +69 -10
  2208. package/package.json +33 -32
  2209. package/src/autocompleters/block.js +21 -6
  2210. package/src/components/block-caption/README.md +109 -0
  2211. package/src/components/block-controls/use-has-block-controls.js +35 -0
  2212. package/src/components/block-draggable/test/index.native.js +2 -3
  2213. package/src/components/block-editing-mode/index.js +4 -8
  2214. package/src/components/block-inspector/index.js +1 -2
  2215. package/src/components/block-list/block-outline.native.js +2 -2
  2216. package/src/components/block-list/block.js +7 -3
  2217. package/src/components/block-list/index.js +3 -6
  2218. package/src/components/block-list/index.native.js +14 -14
  2219. package/src/components/block-list/test/block-invalid-warning.native.js +15 -1
  2220. package/src/components/block-list/use-in-between-inserter.js +1 -2
  2221. package/src/components/block-list-appender/index.js +1 -2
  2222. package/src/components/block-mover/test/__snapshots__/index.native.js.snap +24 -0
  2223. package/src/components/block-parent-selector/index.js +30 -43
  2224. package/src/components/block-preview/auto.js +8 -1
  2225. package/src/components/block-preview/index.js +0 -1
  2226. package/src/components/block-preview/style.scss +2 -1
  2227. package/src/components/block-settings-menu/block-settings-dropdown.js +4 -13
  2228. package/src/components/block-toolbar/index.js +36 -64
  2229. package/src/components/block-toolbar/style.scss +10 -0
  2230. package/src/components/block-toolbar/utils.js +57 -45
  2231. package/src/components/block-tools/block-contextual-toolbar.js +124 -38
  2232. package/src/components/block-tools/style.scss +49 -13
  2233. package/src/components/block-variation-picker/index.native.js +52 -72
  2234. package/src/components/color-palette/test/__snapshots__/control.js.snap +1 -1
  2235. package/src/components/copy-handler/index.js +1 -0
  2236. package/src/components/default-block-appender/index.native.js +13 -11
  2237. package/src/components/dimensions-tool/index.js +1 -1
  2238. package/src/components/editor-styles/index.js +2 -2
  2239. package/src/components/font-sizes/fluid-utils.js +17 -17
  2240. package/src/components/font-sizes/test/fluid-utils.js +6 -6
  2241. package/src/components/global-styles/behaviors-panel.js +71 -0
  2242. package/src/components/global-styles/hooks.js +114 -5
  2243. package/src/components/global-styles/index.js +3 -0
  2244. package/src/components/global-styles/test/typography-utils.js +61 -6
  2245. package/src/components/global-styles/typography-utils.js +15 -6
  2246. package/src/components/global-styles/use-global-styles-output.js +1 -2
  2247. package/src/components/global-styles/utils.js +2 -1
  2248. package/src/components/iframe/index.js +1 -0
  2249. package/src/components/index.js +7 -0
  2250. package/src/components/inserter/hooks/use-block-types-state.js +15 -6
  2251. package/src/components/inserter/hooks/use-debounced-input.js +8 -7
  2252. package/src/components/inserter/hooks/use-patterns-state.js +2 -1
  2253. package/src/components/inserter/menu.js +1 -0
  2254. package/src/components/inserter/preview-panel.js +15 -11
  2255. package/src/components/inserter/reusable-blocks-tab.js +4 -1
  2256. package/src/components/inserter/search-results.js +2 -1
  2257. package/src/components/inserter/stories/{index.js → index.story.js} +4 -4
  2258. package/src/components/inserter/test/search-items.js +4 -1
  2259. package/src/components/inserter-list-item/index.js +3 -1
  2260. package/src/components/keyboard-shortcuts/index.js +10 -0
  2261. package/src/components/line-height-control/index.js +14 -11
  2262. package/src/components/line-height-control/test/index.js +7 -5
  2263. package/src/components/line-height-control/utils.js +6 -1
  2264. package/src/components/link-control/README.md +12 -3
  2265. package/src/components/link-control/index.js +70 -13
  2266. package/src/components/link-control/link-preview.js +10 -4
  2267. package/src/components/link-control/style.scss +12 -2
  2268. package/src/components/link-control/test/index.js +64 -4
  2269. package/src/components/list-view/block-select-button.js +19 -0
  2270. package/src/components/list-view/block.js +1 -4
  2271. package/src/components/list-view/style.scss +25 -0
  2272. package/src/components/list-view/use-list-view-drop-zone.js +5 -1
  2273. package/src/components/list-view/use-list-view-images.js +79 -0
  2274. package/src/components/media-replace-flow/index.native.js +12 -3
  2275. package/src/components/media-upload/test/index.native.js +1 -0
  2276. package/src/components/rich-text/format-edit.js +62 -38
  2277. package/src/components/rich-text/get-rich-text-values.js +22 -28
  2278. package/src/components/rich-text/index.js +8 -1
  2279. package/src/components/rich-text/use-firefox-compat.js +1 -27
  2280. package/src/components/rich-text/use-format-types.js +3 -3
  2281. package/src/components/rich-text/use-paste-handler.js +4 -23
  2282. package/src/components/spacing-sizes-control/test/utils.js +9 -1
  2283. package/src/components/spacing-sizes-control/utils.js +2 -2
  2284. package/src/components/use-block-commands/index.js +284 -0
  2285. package/src/components/use-block-drop-zone/index.js +1 -2
  2286. package/src/components/use-setting/README.md +39 -0
  2287. package/src/components/writing-flow/use-drag-selection.js +5 -1
  2288. package/src/hooks/behaviors.js +10 -16
  2289. package/src/hooks/border.js +2 -1
  2290. package/src/hooks/custom-fields.js +139 -0
  2291. package/src/hooks/index.js +1 -0
  2292. package/src/hooks/layout.js +13 -4
  2293. package/src/hooks/style.js +7 -3
  2294. package/src/private-apis.js +2 -2
  2295. package/src/store/actions.js +71 -30
  2296. package/src/store/private-actions.js +0 -39
  2297. package/src/store/private-selectors.js +1 -67
  2298. package/src/store/selectors.js +66 -81
  2299. package/src/store/test/actions.js +28 -0
  2300. package/src/store/test/private-actions.js +0 -28
  2301. package/src/store/test/private-selectors.js +88 -261
  2302. package/src/store/test/selectors.js +209 -6
  2303. package/src/utils/transform-styles/ast/parse.js +31 -0
  2304. package/src/utils/transform-styles/ast/stringify/compress.js +13 -0
  2305. package/src/utils/transform-styles/ast/stringify/identity.js +13 -0
  2306. package/src/utils/transform-styles/transforms/test/__snapshots__/wrap.js.snap +8 -0
  2307. package/src/utils/transform-styles/transforms/test/wrap.js +11 -0
  2308. package/tsconfig.tsbuildinfo +1 -1
  2309. /package/src/components/block-draggable/stories/{index.js → index.story.js} +0 -0
  2310. /package/src/components/block-mover/stories/{index.js → index.story.js} +0 -0
  2311. /package/src/components/dimensions-tool/stories/{aspect-ratio-tool.js → aspect-ratio-tool.story.js} +0 -0
  2312. /package/src/components/dimensions-tool/stories/{index.js → index.story.js} +0 -0
  2313. /package/src/components/dimensions-tool/stories/{scale-tool.js → scale-tool.story.js} +0 -0
  2314. /package/src/components/dimensions-tool/stories/{width-height-tool.js → width-height-tool.story.js} +0 -0
  2315. /package/src/components/height-control/stories/{index.js → index.story.js} +0 -0
  2316. /package/src/components/line-height-control/stories/{index.js → index.story.js} +0 -0
  2317. /package/src/components/resolution-tool/stories/{index.js → index.story.js} +0 -0
  2318. /package/src/components/text-decoration-control/stories/{index.js → index.story.js} +0 -0
  2319. /package/src/components/text-transform-control/stories/{index.js → index.story.js} +0 -0
  2320. /package/src/components/url-popover/stories/{index.js → index.story.js} +0 -0
@@ -1,28 +1,19 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.NESTING_LEVEL_INDENTATION = void 0;
9
8
  exports.default = useListViewDropZone;
10
9
  exports.getListViewDropTarget = getListViewDropTarget;
11
-
12
10
  var _data = require("@wordpress/data");
13
-
14
11
  var _element = require("@wordpress/element");
15
-
16
12
  var _compose = require("@wordpress/compose");
17
-
18
13
  var _i18n = require("@wordpress/i18n");
19
-
20
14
  var _math = require("../../utils/math");
21
-
22
15
  var _useOnBlockDrop = _interopRequireDefault(require("../use-on-block-drop"));
23
-
24
16
  var _store = require("../../store");
25
-
26
17
  /**
27
18
  * WordPress dependencies
28
19
  */
@@ -70,9 +61,11 @@ var _store = require("../../store");
70
61
  * @property {'top'|'bottom'|'inside'} dropPosition The position relative to the block that the user is dropping to.
71
62
  * 'inside' refers to nesting as an inner block.
72
63
  */
64
+
73
65
  // When the indentation level, the corresponding left margin in `style.scss`
74
66
  // must be updated as well to ensure the drop zone is aligned with the indentation.
75
67
  const NESTING_LEVEL_INDENTATION = 28;
68
+
76
69
  /**
77
70
  * Determines whether the user is positioning the dragged block to be
78
71
  * moved up to a parent level.
@@ -85,15 +78,14 @@ const NESTING_LEVEL_INDENTATION = 28;
85
78
  * @param {boolean} rtl Whether the editor is in RTL mode.
86
79
  * @return {boolean} Whether the gesture is an upward gesture.
87
80
  */
88
-
89
81
  exports.NESTING_LEVEL_INDENTATION = NESTING_LEVEL_INDENTATION;
90
-
91
82
  function isUpGesture(point, rect, nestingLevel = 1, rtl = false) {
92
83
  // If the block is nested, and the user is dragging to the bottom
93
84
  // left of the block (or bottom right in RTL languages), then it is an upward gesture.
94
85
  const blockIndentPosition = rtl ? rect.right - nestingLevel * NESTING_LEVEL_INDENTATION : rect.left + nestingLevel * NESTING_LEVEL_INDENTATION;
95
86
  return rtl ? point.x > blockIndentPosition : point.x < blockIndentPosition;
96
87
  }
88
+
97
89
  /**
98
90
  * Returns how many nesting levels up the user is attempting to drag to.
99
91
  *
@@ -112,8 +104,6 @@ function isUpGesture(point, rect, nestingLevel = 1, rtl = false) {
112
104
  * @param {boolean} rtl Whether the editor is in RTL mode.
113
105
  * @return {number} The desired relative parent level.
114
106
  */
115
-
116
-
117
107
  function getDesiredRelativeParentLevel(point, rect, nestingLevel = 1, rtl = false) {
118
108
  // In RTL languages, the block indent position is from the right edge of the block.
119
109
  // In LTR languages, the block indent position is from the left edge of the block.
@@ -122,6 +112,7 @@ function getDesiredRelativeParentLevel(point, rect, nestingLevel = 1, rtl = fals
122
112
  const desiredParentLevel = Math.round(distanceBetweenPointAndBlockIndentPosition / NESTING_LEVEL_INDENTATION);
123
113
  return Math.abs(desiredParentLevel);
124
114
  }
115
+
125
116
  /**
126
117
  * Returns an array of the parent blocks of the block the user is dropping to.
127
118
  *
@@ -129,20 +120,18 @@ function getDesiredRelativeParentLevel(point, rect, nestingLevel = 1, rtl = fals
129
120
  * @param {WPListViewDropZoneBlocks} blocksData Data about the blocks in list view.
130
121
  * @return {WPListViewDropZoneBlocks} An array of block parents, including the block the user is dropping to.
131
122
  */
132
-
133
-
134
123
  function getCandidateBlockParents(candidateBlockData, blocksData) {
135
124
  const candidateBlockParents = [];
136
125
  let currentBlockData = candidateBlockData;
137
-
138
126
  while (currentBlockData) {
139
- candidateBlockParents.push({ ...currentBlockData
127
+ candidateBlockParents.push({
128
+ ...currentBlockData
140
129
  });
141
130
  currentBlockData = blocksData.find(blockData => blockData.clientId === currentBlockData.rootClientId);
142
131
  }
143
-
144
132
  return candidateBlockParents;
145
133
  }
134
+
146
135
  /**
147
136
  * Given a list of blocks data and a block index, return the next non-dragged
148
137
  * block. This is used to determine the block that the user is dropping to,
@@ -152,17 +141,14 @@ function getCandidateBlockParents(candidateBlockData, blocksData) {
152
141
  * @param {number} index The index to begin searching from.
153
142
  * @return {WPListViewDropZoneBlock | undefined} The next non-dragged block.
154
143
  */
155
-
156
-
157
144
  function getNextNonDraggedBlock(blocksData, index) {
158
145
  const nextBlockData = blocksData[index + 1];
159
-
160
146
  if (nextBlockData && nextBlockData.isDraggedBlock) {
161
147
  return getNextNonDraggedBlock(blocksData, index + 1);
162
148
  }
163
-
164
149
  return nextBlockData;
165
150
  }
151
+
166
152
  /**
167
153
  * Determines whether the user positioning the dragged block to nest as an
168
154
  * inner block.
@@ -176,17 +162,16 @@ function getNextNonDraggedBlock(blocksData, index) {
176
162
  * @param {number} nestingLevel The nesting level of the block.
177
163
  * @param {boolean} rtl Whether the editor is in RTL mode.
178
164
  */
179
-
180
-
181
165
  function isNestingGesture(point, rect, nestingLevel = 1, rtl = false) {
182
166
  const blockIndentPosition = rtl ? rect.right - nestingLevel * NESTING_LEVEL_INDENTATION : rect.left + nestingLevel * NESTING_LEVEL_INDENTATION;
183
167
  const isNestingHorizontalGesture = rtl ? point.x < blockIndentPosition - NESTING_LEVEL_INDENTATION : point.x > blockIndentPosition + NESTING_LEVEL_INDENTATION;
184
168
  return isNestingHorizontalGesture && point.y < rect.bottom;
185
- } // Block navigation is always a vertical list, so only allow dropping
186
- // to the above or below a block.
187
-
169
+ }
188
170
 
171
+ // Block navigation is always a vertical list, so only allow dropping
172
+ // to the above or below a block.
189
173
  const ALLOWED_DROP_EDGES = ['top', 'bottom'];
174
+
190
175
  /**
191
176
  * Given blocks data and the cursor position, compute the drop target.
192
177
  *
@@ -196,32 +181,28 @@ const ALLOWED_DROP_EDGES = ['top', 'bottom'];
196
181
  *
197
182
  * @return {WPListViewDropZoneTarget | undefined} An object containing data about the drop target.
198
183
  */
199
-
200
184
  function getListViewDropTarget(blocksData, position, rtl = false) {
201
185
  let candidateEdge;
202
186
  let candidateBlockData;
203
187
  let candidateDistance;
204
188
  let candidateRect;
205
189
  let candidateBlockIndex;
206
-
207
190
  for (let i = 0; i < blocksData.length; i++) {
208
191
  const blockData = blocksData[i];
209
-
210
192
  if (blockData.isDraggedBlock) {
211
193
  continue;
212
194
  }
213
-
214
195
  const rect = blockData.element.getBoundingClientRect();
215
196
  const [distance, edge] = (0, _math.getDistanceToNearestEdge)(position, rect, ALLOWED_DROP_EDGES);
216
197
  const isCursorWithinBlock = (0, _math.isPointContainedByRect)(position, rect);
217
-
218
198
  if (candidateDistance === undefined || distance < candidateDistance || isCursorWithinBlock) {
219
199
  candidateDistance = distance;
220
200
  const index = blocksData.indexOf(blockData);
221
- const previousBlockData = blocksData[index - 1]; // If dragging near the top of a block and the preceding block
201
+ const previousBlockData = blocksData[index - 1];
202
+
203
+ // If dragging near the top of a block and the preceding block
222
204
  // is at the same level, use the preceding block as the candidate
223
205
  // instead, as later it makes determining a nesting drop easier.
224
-
225
206
  if (edge === 'top' && previousBlockData && previousBlockData.rootClientId === blockData.rootClientId && !previousBlockData.isDraggedBlock) {
226
207
  candidateBlockData = previousBlockData;
227
208
  candidateEdge = 'bottom';
@@ -232,32 +213,31 @@ function getListViewDropTarget(blocksData, position, rtl = false) {
232
213
  candidateEdge = edge;
233
214
  candidateRect = rect;
234
215
  candidateBlockIndex = index;
235
- } // If the mouse position is within the block, break early
216
+ }
217
+
218
+ // If the mouse position is within the block, break early
236
219
  // as the user would intend to drop either before or after
237
220
  // this block.
238
221
  //
239
222
  // This solves an issue where some rows in the list view
240
223
  // tree overlap slightly due to sub-pixel rendering.
241
-
242
-
243
224
  if (isCursorWithinBlock) {
244
225
  break;
245
226
  }
246
227
  }
247
228
  }
248
-
249
229
  if (!candidateBlockData) {
250
230
  return;
251
231
  }
252
-
253
232
  const candidateBlockParents = getCandidateBlockParents(candidateBlockData, blocksData);
254
- const isDraggingBelow = candidateEdge === 'bottom'; // If the user is dragging towards the bottom of the block check whether
233
+ const isDraggingBelow = candidateEdge === 'bottom';
234
+
235
+ // If the user is dragging towards the bottom of the block check whether
255
236
  // they might be trying to nest the block as a child.
256
237
  // If the block already has inner blocks, and is expanded, this should be treated
257
238
  // as nesting since the next block in the tree will be the first child.
258
239
  // However, if the block is collapsed, dragging beneath the block should
259
240
  // still be allowed, as the next visible block in the tree will be a sibling.
260
-
261
241
  if (isDraggingBelow && candidateBlockData.canInsertDraggedBlocksAsChild && (candidateBlockData.innerBlockCount > 0 && candidateBlockData.isExpanded || isNestingGesture(position, candidateRect, candidateBlockParents.length, rtl))) {
262
242
  // If the block is expanded, insert the block as the first child.
263
243
  // Otherwise, for collapsed blocks, insert the block as the last child.
@@ -267,26 +247,25 @@ function getListViewDropTarget(blocksData, position, rtl = false) {
267
247
  blockIndex: newBlockIndex,
268
248
  dropPosition: 'inside'
269
249
  };
270
- } // If the user is dragging towards the bottom of the block check whether
271
- // they might be trying to move the block to be at a parent level.
272
-
250
+ }
273
251
 
252
+ // If the user is dragging towards the bottom of the block check whether
253
+ // they might be trying to move the block to be at a parent level.
274
254
  if (isDraggingBelow && candidateBlockData.rootClientId && isUpGesture(position, candidateRect, candidateBlockParents.length, rtl)) {
275
255
  const nextBlock = getNextNonDraggedBlock(blocksData, candidateBlockIndex);
276
256
  const currentLevel = candidateBlockData.nestingLevel;
277
257
  const nextLevel = nextBlock ? nextBlock.nestingLevel : 1;
278
-
279
258
  if (currentLevel && nextLevel) {
280
259
  // Determine the desired relative level of the block to be dropped.
281
260
  const desiredRelativeLevel = getDesiredRelativeParentLevel(position, candidateRect, candidateBlockParents.length, rtl);
282
261
  const targetParentIndex = Math.max(Math.min(desiredRelativeLevel, currentLevel - nextLevel), 0);
283
-
284
262
  if (candidateBlockParents[targetParentIndex]) {
285
263
  // Default to the block index of the candidate block.
286
- let newBlockIndex = candidateBlockData.blockIndex; // If the next block is at the same level, use that as the default
264
+ let newBlockIndex = candidateBlockData.blockIndex;
265
+
266
+ // If the next block is at the same level, use that as the default
287
267
  // block index. This ensures that the block is dropped in the correct
288
268
  // position when dragging to the bottom of a block.
289
-
290
269
  if (candidateBlockParents[targetParentIndex].nestingLevel === nextBlock?.nestingLevel) {
291
270
  newBlockIndex = nextBlock?.blockIndex;
292
271
  } else {
@@ -294,14 +273,12 @@ function getListViewDropTarget(blocksData, position, rtl = false) {
294
273
  // to find the last block index within the same target parent.
295
274
  for (let i = candidateBlockIndex; i >= 0; i--) {
296
275
  const blockData = blocksData[i];
297
-
298
276
  if (blockData.rootClientId === candidateBlockParents[targetParentIndex].rootClientId) {
299
277
  newBlockIndex = blockData.blockIndex + 1;
300
278
  break;
301
279
  }
302
280
  }
303
281
  }
304
-
305
282
  return {
306
283
  rootClientId: candidateBlockParents[targetParentIndex].rootClientId,
307
284
  clientId: candidateBlockData.clientId,
@@ -310,14 +287,13 @@ function getListViewDropTarget(blocksData, position, rtl = false) {
310
287
  };
311
288
  }
312
289
  }
313
- } // If dropping as a sibling, but block cannot be inserted in
314
- // this context, return early.
315
-
290
+ }
316
291
 
292
+ // If dropping as a sibling, but block cannot be inserted in
293
+ // this context, return early.
317
294
  if (!candidateBlockData.canInsertDraggedBlocksAsSibling) {
318
295
  return;
319
296
  }
320
-
321
297
  const offset = isDraggingBelow ? 1 : 0;
322
298
  return {
323
299
  rootClientId: candidateBlockData.rootClientId,
@@ -326,6 +302,7 @@ function getListViewDropTarget(blocksData, position, rtl = false) {
326
302
  dropPosition: candidateEdge
327
303
  };
328
304
  }
305
+
329
306
  /**
330
307
  * A react hook for implementing a drop zone in list view.
331
308
  *
@@ -334,8 +311,6 @@ function getListViewDropTarget(blocksData, position, rtl = false) {
334
311
  *
335
312
  * @return {WPListViewDropZoneTarget} The drop target.
336
313
  */
337
-
338
-
339
314
  function useListViewDropZone({
340
315
  dropZoneElement
341
316
  }) {
@@ -364,8 +339,9 @@ function useListViewDropZone({
364
339
  const blocksData = blockElements.map(blockElement => {
365
340
  const clientId = blockElement.dataset.block;
366
341
  const isExpanded = blockElement.dataset.expanded === 'true';
367
- const isDraggedBlock = blockElement.classList.contains('is-dragging'); // Get nesting level from `aria-level` attribute because Firefox does not support `element.ariaLevel`.
342
+ const isDraggedBlock = blockElement.classList.contains('is-dragging');
368
343
 
344
+ // Get nesting level from `aria-level` attribute because Firefox does not support `element.ariaLevel`.
369
345
  const nestingLevel = parseInt(blockElement.getAttribute('aria-level'), 10);
370
346
  const rootClientId = getBlockRootClientId(clientId);
371
347
  return {
@@ -382,32 +358,31 @@ function useListViewDropZone({
382
358
  };
383
359
  });
384
360
  const newTarget = getListViewDropTarget(blocksData, position, rtl);
385
-
386
361
  if (newTarget) {
387
362
  setTarget(newTarget);
388
363
  }
389
364
  }, [canInsertBlocks, draggedBlockClientIds, getBlockCount, getBlockIndex, getBlockRootClientId, rtl]), 200);
390
365
  const ref = (0, _compose.__experimentalUseDropZone)({
391
366
  dropZoneElement,
392
- onDrop: onBlockDrop,
393
-
367
+ onDrop(event) {
368
+ if (target) {
369
+ onBlockDrop(event);
370
+ }
371
+ },
394
372
  onDragLeave() {
395
373
  throttled.cancel();
396
374
  setTarget(null);
397
375
  },
398
-
399
376
  onDragOver(event) {
400
377
  // `currentTarget` is only available while the event is being
401
378
  // handled, so get it now and pass it to the thottled function.
402
379
  // https://developer.mozilla.org/en-US/docs/Web/API/Event/currentTarget
403
380
  throttled(event, event.currentTarget);
404
381
  },
405
-
406
382
  onDragEnd() {
407
383
  throttled.cancel();
408
384
  setTarget(null);
409
385
  }
410
-
411
386
  });
412
387
  return {
413
388
  ref,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/list-view/use-list-view-drop-zone.js"],"names":["NESTING_LEVEL_INDENTATION","isUpGesture","point","rect","nestingLevel","rtl","blockIndentPosition","right","left","x","getDesiredRelativeParentLevel","distanceBetweenPointAndBlockIndentPosition","desiredParentLevel","Math","round","abs","getCandidateBlockParents","candidateBlockData","blocksData","candidateBlockParents","currentBlockData","push","find","blockData","clientId","rootClientId","getNextNonDraggedBlock","index","nextBlockData","isDraggedBlock","isNestingGesture","isNestingHorizontalGesture","y","bottom","ALLOWED_DROP_EDGES","getListViewDropTarget","position","candidateEdge","candidateDistance","candidateRect","candidateBlockIndex","i","length","element","getBoundingClientRect","distance","edge","isCursorWithinBlock","undefined","indexOf","previousBlockData","isDraggingBelow","canInsertDraggedBlocksAsChild","innerBlockCount","isExpanded","newBlockIndex","blockIndex","dropPosition","nextBlock","currentLevel","nextLevel","desiredRelativeLevel","targetParentIndex","max","min","canInsertDraggedBlocksAsSibling","offset","useListViewDropZone","dropZoneElement","getBlockRootClientId","getBlockIndex","getBlockCount","getDraggedBlockClientIds","canInsertBlocks","blockEditorStore","target","setTarget","targetRootClientId","targetBlockIndex","onBlockDrop","draggedBlockClientIds","throttled","event","currentTarget","clientX","clientY","isBlockDrag","blockElements","Array","from","querySelectorAll","map","blockElement","dataset","block","expanded","classList","contains","parseInt","getAttribute","newTarget","ref","onDrop","onDragLeave","cancel","onDragOver","onDragEnd"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AACA;;AAIA;;AAKA;;AAIA;;AACA;;AAnBA;AACA;AACA;;AASA;AACA;AACA;;AAQA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACO,MAAMA,yBAAyB,GAAG,EAAlC;AAEP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AACA,SAASC,WAAT,CAAsBC,KAAtB,EAA6BC,IAA7B,EAAmCC,YAAY,GAAG,CAAlD,EAAqDC,GAAG,GAAG,KAA3D,EAAmE;AAClE;AACA;AACA,QAAMC,mBAAmB,GAAGD,GAAG,GAC5BF,IAAI,CAACI,KAAL,GAAaH,YAAY,GAAGJ,yBADA,GAE5BG,IAAI,CAACK,IAAL,GAAYJ,YAAY,GAAGJ,yBAF9B;AAGA,SAAOK,GAAG,GAAGH,KAAK,CAACO,CAAN,GAAUH,mBAAb,GAAmCJ,KAAK,CAACO,CAAN,GAAUH,mBAAvD;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASI,6BAAT,CACCR,KADD,EAECC,IAFD,EAGCC,YAAY,GAAG,CAHhB,EAICC,GAAG,GAAG,KAJP,EAKE;AACD;AACA;AACA,QAAMC,mBAAmB,GAAGD,GAAG,GAC5BF,IAAI,CAACI,KAAL,GAAaH,YAAY,GAAGJ,yBADA,GAE5BG,IAAI,CAACK,IAAL,GAAYJ,YAAY,GAAGJ,yBAF9B;AAIA,QAAMW,0CAA0C,GAAGN,GAAG,GACnDC,mBAAmB,GAAGJ,KAAK,CAACO,CADuB,GAEnDP,KAAK,CAACO,CAAN,GAAUH,mBAFb;AAIA,QAAMM,kBAAkB,GAAGC,IAAI,CAACC,KAAL,CAC1BH,0CAA0C,GAAGX,yBADnB,CAA3B;AAIA,SAAOa,IAAI,CAACE,GAAL,CAAUH,kBAAV,CAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASI,wBAAT,CAAmCC,kBAAnC,EAAuDC,UAAvD,EAAoE;AACnE,QAAMC,qBAAqB,GAAG,EAA9B;AACA,MAAIC,gBAAgB,GAAGH,kBAAvB;;AAEA,SAAQG,gBAAR,EAA2B;AAC1BD,IAAAA,qBAAqB,CAACE,IAAtB,CAA4B,EAAE,GAAGD;AAAL,KAA5B;AACAA,IAAAA,gBAAgB,GAAGF,UAAU,CAACI,IAAX,CAChBC,SAAF,IACCA,SAAS,CAACC,QAAV,KAAuBJ,gBAAgB,CAACK,YAFvB,CAAnB;AAIA;;AAED,SAAON,qBAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASO,sBAAT,CAAiCR,UAAjC,EAA6CS,KAA7C,EAAqD;AACpD,QAAMC,aAAa,GAAGV,UAAU,CAAES,KAAK,GAAG,CAAV,CAAhC;;AACA,MAAKC,aAAa,IAAIA,aAAa,CAACC,cAApC,EAAqD;AACpD,WAAOH,sBAAsB,CAAER,UAAF,EAAcS,KAAK,GAAG,CAAtB,CAA7B;AACA;;AAED,SAAOC,aAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASE,gBAAT,CAA2B5B,KAA3B,EAAkCC,IAAlC,EAAwCC,YAAY,GAAG,CAAvD,EAA0DC,GAAG,GAAG,KAAhE,EAAwE;AACvE,QAAMC,mBAAmB,GAAGD,GAAG,GAC5BF,IAAI,CAACI,KAAL,GAAaH,YAAY,GAAGJ,yBADA,GAE5BG,IAAI,CAACK,IAAL,GAAYJ,YAAY,GAAGJ,yBAF9B;AAIA,QAAM+B,0BAA0B,GAAG1B,GAAG,GACnCH,KAAK,CAACO,CAAN,GAAUH,mBAAmB,GAAGN,yBADG,GAEnCE,KAAK,CAACO,CAAN,GAAUH,mBAAmB,GAAGN,yBAFnC;AAIA,SAAO+B,0BAA0B,IAAI7B,KAAK,CAAC8B,CAAN,GAAU7B,IAAI,CAAC8B,MAApD;AACA,C,CAED;AACA;;;AACA,MAAMC,kBAAkB,GAAG,CAAE,KAAF,EAAS,QAAT,CAA3B;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACO,SAASC,qBAAT,CAAgCjB,UAAhC,EAA4CkB,QAA5C,EAAsD/B,GAAG,GAAG,KAA5D,EAAoE;AAC1E,MAAIgC,aAAJ;AACA,MAAIpB,kBAAJ;AACA,MAAIqB,iBAAJ;AACA,MAAIC,aAAJ;AACA,MAAIC,mBAAJ;;AAEA,OAAM,IAAIC,CAAC,GAAG,CAAd,EAAiBA,CAAC,GAAGvB,UAAU,CAACwB,MAAhC,EAAwCD,CAAC,EAAzC,EAA8C;AAC7C,UAAMlB,SAAS,GAAGL,UAAU,CAAEuB,CAAF,CAA5B;;AACA,QAAKlB,SAAS,CAACM,cAAf,EAAgC;AAC/B;AACA;;AAED,UAAM1B,IAAI,GAAGoB,SAAS,CAACoB,OAAV,CAAkBC,qBAAlB,EAAb;AACA,UAAM,CAAEC,QAAF,EAAYC,IAAZ,IAAqB,oCAC1BV,QAD0B,EAE1BjC,IAF0B,EAG1B+B,kBAH0B,CAA3B;AAMA,UAAMa,mBAAmB,GAAG,kCAAwBX,QAAxB,EAAkCjC,IAAlC,CAA5B;;AACA,QACCmC,iBAAiB,KAAKU,SAAtB,IACAH,QAAQ,GAAGP,iBADX,IAEAS,mBAHD,EAIE;AACDT,MAAAA,iBAAiB,GAAGO,QAApB;AAEA,YAAMlB,KAAK,GAAGT,UAAU,CAAC+B,OAAX,CAAoB1B,SAApB,CAAd;AACA,YAAM2B,iBAAiB,GAAGhC,UAAU,CAAES,KAAK,GAAG,CAAV,CAApC,CAJC,CAMD;AACA;AACA;;AACA,UACCmB,IAAI,KAAK,KAAT,IACAI,iBADA,IAEAA,iBAAiB,CAACzB,YAAlB,KAAmCF,SAAS,CAACE,YAF7C,IAGA,CAAEyB,iBAAiB,CAACrB,cAJrB,EAKE;AACDZ,QAAAA,kBAAkB,GAAGiC,iBAArB;AACAb,QAAAA,aAAa,GAAG,QAAhB;AACAE,QAAAA,aAAa,GACZW,iBAAiB,CAACP,OAAlB,CAA0BC,qBAA1B,EADD;AAEAJ,QAAAA,mBAAmB,GAAGb,KAAK,GAAG,CAA9B;AACA,OAXD,MAWO;AACNV,QAAAA,kBAAkB,GAAGM,SAArB;AACAc,QAAAA,aAAa,GAAGS,IAAhB;AACAP,QAAAA,aAAa,GAAGpC,IAAhB;AACAqC,QAAAA,mBAAmB,GAAGb,KAAtB;AACA,OAzBA,CA2BD;AACA;AACA;AACA;AACA;AACA;;;AACA,UAAKoB,mBAAL,EAA2B;AAC1B;AACA;AACD;AACD;;AAED,MAAK,CAAE9B,kBAAP,EAA4B;AAC3B;AACA;;AAED,QAAME,qBAAqB,GAAGH,wBAAwB,CACrDC,kBADqD,EAErDC,UAFqD,CAAtD;AAKA,QAAMiC,eAAe,GAAGd,aAAa,KAAK,QAA1C,CAzE0E,CA2E1E;AACA;AACA;AACA;AACA;AACA;;AACA,MACCc,eAAe,IACflC,kBAAkB,CAACmC,6BADnB,KAEInC,kBAAkB,CAACoC,eAAnB,GAAqC,CAArC,IACHpC,kBAAkB,CAACqC,UADlB,IAEDxB,gBAAgB,CACfM,QADe,EAEfG,aAFe,EAGfpB,qBAAqB,CAACuB,MAHP,EAIfrC,GAJe,CAJjB,CADD,EAWE;AACD;AACA;AACA,UAAMkD,aAAa,GAAGtC,kBAAkB,CAACqC,UAAnB,GACnB,CADmB,GAEnBrC,kBAAkB,CAACoC,eAAnB,IAAsC,CAFzC;AAIA,WAAO;AACN5B,MAAAA,YAAY,EAAER,kBAAkB,CAACO,QAD3B;AAENgC,MAAAA,UAAU,EAAED,aAFN;AAGNE,MAAAA,YAAY,EAAE;AAHR,KAAP;AAKA,GAxGyE,CA0G1E;AACA;;;AACA,MACCN,eAAe,IACflC,kBAAkB,CAACQ,YADnB,IAEAxB,WAAW,CACVmC,QADU,EAEVG,aAFU,EAGVpB,qBAAqB,CAACuB,MAHZ,EAIVrC,GAJU,CAHZ,EASE;AACD,UAAMqD,SAAS,GAAGhC,sBAAsB,CACvCR,UADuC,EAEvCsB,mBAFuC,CAAxC;AAIA,UAAMmB,YAAY,GAAG1C,kBAAkB,CAACb,YAAxC;AACA,UAAMwD,SAAS,GAAGF,SAAS,GAAGA,SAAS,CAACtD,YAAb,GAA4B,CAAvD;;AAEA,QAAKuD,YAAY,IAAIC,SAArB,EAAiC;AAChC;AACA,YAAMC,oBAAoB,GAAGnD,6BAA6B,CACzD0B,QADyD,EAEzDG,aAFyD,EAGzDpB,qBAAqB,CAACuB,MAHmC,EAIzDrC,GAJyD,CAA1D;AAOA,YAAMyD,iBAAiB,GAAGjD,IAAI,CAACkD,GAAL,CACzBlD,IAAI,CAACmD,GAAL,CAAUH,oBAAV,EAAgCF,YAAY,GAAGC,SAA/C,CADyB,EAEzB,CAFyB,CAA1B;;AAKA,UAAKzC,qBAAqB,CAAE2C,iBAAF,CAA1B,EAAkD;AACjD;AACA,YAAIP,aAAa,GAAGtC,kBAAkB,CAACuC,UAAvC,CAFiD,CAIjD;AACA;AACA;;AACA,YACCrC,qBAAqB,CAAE2C,iBAAF,CAArB,CAA2C1D,YAA3C,KACAsD,SAAS,EAAEtD,YAFZ,EAGE;AACDmD,UAAAA,aAAa,GAAGG,SAAS,EAAEF,UAA3B;AACA,SALD,MAKO;AACN;AACA;AACA,eAAM,IAAIf,CAAC,GAAGD,mBAAd,EAAmCC,CAAC,IAAI,CAAxC,EAA2CA,CAAC,EAA5C,EAAiD;AAChD,kBAAMlB,SAAS,GAAGL,UAAU,CAAEuB,CAAF,CAA5B;;AACA,gBACClB,SAAS,CAACE,YAAV,KACAN,qBAAqB,CAAE2C,iBAAF,CAArB,CACErC,YAHH,EAIE;AACD8B,cAAAA,aAAa,GAAGhC,SAAS,CAACiC,UAAV,GAAuB,CAAvC;AACA;AACA;AACD;AACD;;AAED,eAAO;AACN/B,UAAAA,YAAY,EACXN,qBAAqB,CAAE2C,iBAAF,CAArB,CAA2CrC,YAFtC;AAGND,UAAAA,QAAQ,EAAEP,kBAAkB,CAACO,QAHvB;AAINgC,UAAAA,UAAU,EAAED,aAJN;AAKNE,UAAAA,YAAY,EAAEpB;AALR,SAAP;AAOA;AACD;AACD,GAhLyE,CAkL1E;AACA;;;AACA,MAAK,CAAEpB,kBAAkB,CAACgD,+BAA1B,EAA4D;AAC3D;AACA;;AAED,QAAMC,MAAM,GAAGf,eAAe,GAAG,CAAH,GAAO,CAArC;AACA,SAAO;AACN1B,IAAAA,YAAY,EAAER,kBAAkB,CAACQ,YAD3B;AAEND,IAAAA,QAAQ,EAAEP,kBAAkB,CAACO,QAFvB;AAGNgC,IAAAA,UAAU,EAAEvC,kBAAkB,CAACuC,UAAnB,GAAgCU,MAHtC;AAINT,IAAAA,YAAY,EAAEpB;AAJR,GAAP;AAMA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACe,SAAS8B,mBAAT,CAA8B;AAAEC,EAAAA;AAAF,CAA9B,EAAoD;AAClE,QAAM;AACLC,IAAAA,oBADK;AAELC,IAAAA,aAFK;AAGLC,IAAAA,aAHK;AAILC,IAAAA,wBAJK;AAKLC,IAAAA;AALK,MAMF,qBAAWC,YAAX,CANJ;AAOA,QAAM,CAAEC,MAAF,EAAUC,SAAV,IAAwB,wBAA9B;AACA,QAAM;AAAEnD,IAAAA,YAAY,EAAEoD,kBAAhB;AAAoCrB,IAAAA,UAAU,EAAEsB;AAAhD,MACLH,MAAM,IAAI,EADX;AAGA,QAAMI,WAAW,GAAG,6BAAgBF,kBAAhB,EAAoCC,gBAApC,CAApB;AAEA,QAAMzE,GAAG,GAAG,kBAAZ;AAEA,QAAM2E,qBAAqB,GAAGR,wBAAwB,EAAtD;AACA,QAAMS,SAAS,GAAG,0BACjB,0BACC,CAAEC,KAAF,EAASC,aAAT,KAA4B;AAC3B,UAAM/C,QAAQ,GAAG;AAAE3B,MAAAA,CAAC,EAAEyE,KAAK,CAACE,OAAX;AAAoBpD,MAAAA,CAAC,EAAEkD,KAAK,CAACG;AAA7B,KAAjB;AACA,UAAMC,WAAW,GAAG,CAAC,CAAEN,qBAAqB,EAAEtC,MAA9C;AAEA,UAAM6C,aAAa,GAAGC,KAAK,CAACC,IAAN,CACrBN,aAAa,CAACO,gBAAd,CAAgC,cAAhC,CADqB,CAAtB;AAIA,UAAMxE,UAAU,GAAGqE,aAAa,CAACI,GAAd,CAAqBC,YAAF,IAAoB;AACzD,YAAMpE,QAAQ,GAAGoE,YAAY,CAACC,OAAb,CAAqBC,KAAtC;AACA,YAAMxC,UAAU,GAAGsC,YAAY,CAACC,OAAb,CAAqBE,QAArB,KAAkC,MAArD;AACA,YAAMlE,cAAc,GACnB+D,YAAY,CAACI,SAAb,CAAuBC,QAAvB,CAAiC,aAAjC,CADD,CAHyD,CAMzD;;AACA,YAAM7F,YAAY,GAAG8F,QAAQ,CAC5BN,YAAY,CAACO,YAAb,CAA2B,YAA3B,CAD4B,EAE5B,EAF4B,CAA7B;AAIA,YAAM1E,YAAY,GAAG4C,oBAAoB,CAAE7C,QAAF,CAAzC;AAEA,aAAO;AACNA,QAAAA,QADM;AAEN8B,QAAAA,UAFM;AAGN7B,QAAAA,YAHM;AAIN+B,QAAAA,UAAU,EAAEc,aAAa,CAAE9C,QAAF,CAJnB;AAKNmB,QAAAA,OAAO,EAAEiD,YALH;AAMNxF,QAAAA,YAAY,EAAEA,YAAY,IAAI4C,SANxB;AAONnB,QAAAA,cAAc,EAAEyD,WAAW,GAAGzD,cAAH,GAAoB,KAPzC;AAQNwB,QAAAA,eAAe,EAAEkB,aAAa,CAAE/C,QAAF,CARxB;AASNyC,QAAAA,+BAA+B,EAAEqB,WAAW,GACzCb,eAAe,CACfO,qBADe,EAEfvD,YAFe,CAD0B,GAKzC,IAdG;AAeN2B,QAAAA,6BAA6B,EAAEkC,WAAW,GACvCb,eAAe,CAAEO,qBAAF,EAAyBxD,QAAzB,CADwB,GAEvC;AAjBG,OAAP;AAmBA,KAhCkB,CAAnB;AAkCA,UAAM4E,SAAS,GAAGjE,qBAAqB,CACtCjB,UADsC,EAEtCkB,QAFsC,EAGtC/B,GAHsC,CAAvC;;AAMA,QAAK+F,SAAL,EAAiB;AAChBxB,MAAAA,SAAS,CAAEwB,SAAF,CAAT;AACA;AACD,GApDF,EAqDC,CACC3B,eADD,EAECO,qBAFD,EAGCT,aAHD,EAICD,aAJD,EAKCD,oBALD,EAMChE,GAND,CArDD,CADiB,EA+DjB,GA/DiB,CAAlB;AAkEA,QAAMgG,GAAG,GAAG,wCAAa;AACxBjC,IAAAA,eADwB;AAExBkC,IAAAA,MAAM,EAAEvB,WAFgB;;AAGxBwB,IAAAA,WAAW,GAAG;AACbtB,MAAAA,SAAS,CAACuB,MAAV;AACA5B,MAAAA,SAAS,CAAE,IAAF,CAAT;AACA,KANuB;;AAOxB6B,IAAAA,UAAU,CAAEvB,KAAF,EAAU;AACnB;AACA;AACA;AACAD,MAAAA,SAAS,CAAEC,KAAF,EAASA,KAAK,CAACC,aAAf,CAAT;AACA,KAZuB;;AAaxBuB,IAAAA,SAAS,GAAG;AACXzB,MAAAA,SAAS,CAACuB,MAAV;AACA5B,MAAAA,SAAS,CAAE,IAAF,CAAT;AACA;;AAhBuB,GAAb,CAAZ;AAmBA,SAAO;AAAEyB,IAAAA,GAAF;AAAO1B,IAAAA;AAAP,GAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useState, useCallback } from '@wordpress/element';\nimport {\n\tuseThrottle,\n\t__experimentalUseDropZone as useDropZone,\n} from '@wordpress/compose';\nimport { isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tgetDistanceToNearestEdge,\n\tisPointContainedByRect,\n} from '../../utils/math';\nimport useOnBlockDrop from '../use-on-block-drop';\nimport { store as blockEditorStore } from '../../store';\n\n/** @typedef {import('../../utils/math').WPPoint} WPPoint */\n\n/**\n * The type of a drag event.\n *\n * @typedef {'default'|'file'|'html'} WPDragEventType\n */\n\n/**\n * An object representing data for blocks in the DOM used by drag and drop.\n *\n * @typedef {Object} WPListViewDropZoneBlock\n * @property {string} clientId The client id for the block.\n * @property {string} rootClientId The root client id for the block.\n * @property {number} blockIndex The block's index.\n * @property {Element} element The DOM element representing the block.\n * @property {number} innerBlockCount The number of inner blocks the block has.\n * @property {boolean} isDraggedBlock Whether the block is currently being dragged.\n * @property {boolean} isExpanded Whether the block is expanded in the UI.\n * @property {boolean} canInsertDraggedBlocksAsSibling Whether the dragged block can be a sibling of this block.\n * @property {boolean} canInsertDraggedBlocksAsChild Whether the dragged block can be a child of this block.\n */\n\n/**\n * An array representing data for blocks in the DOM used by drag and drop.\n *\n * @typedef {WPListViewDropZoneBlock[]} WPListViewDropZoneBlocks\n */\n\n/**\n * An object containing details of a drop target.\n *\n * @typedef {Object} WPListViewDropZoneTarget\n * @property {string} blockIndex The insertion index.\n * @property {string} rootClientId The root client id for the block.\n * @property {string|undefined} clientId The client id for the block.\n * @property {'top'|'bottom'|'inside'} dropPosition The position relative to the block that the user is dropping to.\n * 'inside' refers to nesting as an inner block.\n */\n\n// When the indentation level, the corresponding left margin in `style.scss`\n// must be updated as well to ensure the drop zone is aligned with the indentation.\nexport const NESTING_LEVEL_INDENTATION = 28;\n\n/**\n * Determines whether the user is positioning the dragged block to be\n * moved up to a parent level.\n *\n * Determined based on nesting level indentation of the current block.\n *\n * @param {WPPoint} point The point representing the cursor position when dragging.\n * @param {DOMRect} rect The rectangle.\n * @param {number} nestingLevel The nesting level of the block.\n * @param {boolean} rtl Whether the editor is in RTL mode.\n * @return {boolean} Whether the gesture is an upward gesture.\n */\nfunction isUpGesture( point, rect, nestingLevel = 1, rtl = false ) {\n\t// If the block is nested, and the user is dragging to the bottom\n\t// left of the block (or bottom right in RTL languages), then it is an upward gesture.\n\tconst blockIndentPosition = rtl\n\t\t? rect.right - nestingLevel * NESTING_LEVEL_INDENTATION\n\t\t: rect.left + nestingLevel * NESTING_LEVEL_INDENTATION;\n\treturn rtl ? point.x > blockIndentPosition : point.x < blockIndentPosition;\n}\n\n/**\n * Returns how many nesting levels up the user is attempting to drag to.\n *\n * The relative parent level is calculated based on how far\n * the cursor is from the provided nesting level (e.g. of a candidate block\n * that the user is hovering over). The nesting level is considered \"desired\"\n * because it is not guaranteed that the user will be able to drag to the desired level.\n *\n * The returned integer can be used to access an ascending array\n * of parent blocks, where the first item is the block the user\n * is hovering over, and the last item is the root block.\n *\n * @param {WPPoint} point The point representing the cursor position when dragging.\n * @param {DOMRect} rect The rectangle.\n * @param {number} nestingLevel The nesting level of the block.\n * @param {boolean} rtl Whether the editor is in RTL mode.\n * @return {number} The desired relative parent level.\n */\nfunction getDesiredRelativeParentLevel(\n\tpoint,\n\trect,\n\tnestingLevel = 1,\n\trtl = false\n) {\n\t// In RTL languages, the block indent position is from the right edge of the block.\n\t// In LTR languages, the block indent position is from the left edge of the block.\n\tconst blockIndentPosition = rtl\n\t\t? rect.right - nestingLevel * NESTING_LEVEL_INDENTATION\n\t\t: rect.left + nestingLevel * NESTING_LEVEL_INDENTATION;\n\n\tconst distanceBetweenPointAndBlockIndentPosition = rtl\n\t\t? blockIndentPosition - point.x\n\t\t: point.x - blockIndentPosition;\n\n\tconst desiredParentLevel = Math.round(\n\t\tdistanceBetweenPointAndBlockIndentPosition / NESTING_LEVEL_INDENTATION\n\t);\n\n\treturn Math.abs( desiredParentLevel );\n}\n\n/**\n * Returns an array of the parent blocks of the block the user is dropping to.\n *\n * @param {WPListViewDropZoneBlock} candidateBlockData The block the user is dropping to.\n * @param {WPListViewDropZoneBlocks} blocksData Data about the blocks in list view.\n * @return {WPListViewDropZoneBlocks} An array of block parents, including the block the user is dropping to.\n */\nfunction getCandidateBlockParents( candidateBlockData, blocksData ) {\n\tconst candidateBlockParents = [];\n\tlet currentBlockData = candidateBlockData;\n\n\twhile ( currentBlockData ) {\n\t\tcandidateBlockParents.push( { ...currentBlockData } );\n\t\tcurrentBlockData = blocksData.find(\n\t\t\t( blockData ) =>\n\t\t\t\tblockData.clientId === currentBlockData.rootClientId\n\t\t);\n\t}\n\n\treturn candidateBlockParents;\n}\n\n/**\n * Given a list of blocks data and a block index, return the next non-dragged\n * block. This is used to determine the block that the user is dropping to,\n * while ignoring the dragged block.\n *\n * @param {WPListViewDropZoneBlocks} blocksData Data about the blocks in list view.\n * @param {number} index The index to begin searching from.\n * @return {WPListViewDropZoneBlock | undefined} The next non-dragged block.\n */\nfunction getNextNonDraggedBlock( blocksData, index ) {\n\tconst nextBlockData = blocksData[ index + 1 ];\n\tif ( nextBlockData && nextBlockData.isDraggedBlock ) {\n\t\treturn getNextNonDraggedBlock( blocksData, index + 1 );\n\t}\n\n\treturn nextBlockData;\n}\n\n/**\n * Determines whether the user positioning the dragged block to nest as an\n * inner block.\n *\n * Determined based on nesting level indentation of the current block, plus\n * the indentation of the next level of nesting. The vertical position of the\n * cursor must also be within the block.\n *\n * @param {WPPoint} point The point representing the cursor position when dragging.\n * @param {DOMRect} rect The rectangle.\n * @param {number} nestingLevel The nesting level of the block.\n * @param {boolean} rtl Whether the editor is in RTL mode.\n */\nfunction isNestingGesture( point, rect, nestingLevel = 1, rtl = false ) {\n\tconst blockIndentPosition = rtl\n\t\t? rect.right - nestingLevel * NESTING_LEVEL_INDENTATION\n\t\t: rect.left + nestingLevel * NESTING_LEVEL_INDENTATION;\n\n\tconst isNestingHorizontalGesture = rtl\n\t\t? point.x < blockIndentPosition - NESTING_LEVEL_INDENTATION\n\t\t: point.x > blockIndentPosition + NESTING_LEVEL_INDENTATION;\n\n\treturn isNestingHorizontalGesture && point.y < rect.bottom;\n}\n\n// Block navigation is always a vertical list, so only allow dropping\n// to the above or below a block.\nconst ALLOWED_DROP_EDGES = [ 'top', 'bottom' ];\n\n/**\n * Given blocks data and the cursor position, compute the drop target.\n *\n * @param {WPListViewDropZoneBlocks} blocksData Data about the blocks in list view.\n * @param {WPPoint} position The point representing the cursor position when dragging.\n * @param {boolean} rtl Whether the editor is in RTL mode.\n *\n * @return {WPListViewDropZoneTarget | undefined} An object containing data about the drop target.\n */\nexport function getListViewDropTarget( blocksData, position, rtl = false ) {\n\tlet candidateEdge;\n\tlet candidateBlockData;\n\tlet candidateDistance;\n\tlet candidateRect;\n\tlet candidateBlockIndex;\n\n\tfor ( let i = 0; i < blocksData.length; i++ ) {\n\t\tconst blockData = blocksData[ i ];\n\t\tif ( blockData.isDraggedBlock ) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst rect = blockData.element.getBoundingClientRect();\n\t\tconst [ distance, edge ] = getDistanceToNearestEdge(\n\t\t\tposition,\n\t\t\trect,\n\t\t\tALLOWED_DROP_EDGES\n\t\t);\n\n\t\tconst isCursorWithinBlock = isPointContainedByRect( position, rect );\n\t\tif (\n\t\t\tcandidateDistance === undefined ||\n\t\t\tdistance < candidateDistance ||\n\t\t\tisCursorWithinBlock\n\t\t) {\n\t\t\tcandidateDistance = distance;\n\n\t\t\tconst index = blocksData.indexOf( blockData );\n\t\t\tconst previousBlockData = blocksData[ index - 1 ];\n\n\t\t\t// If dragging near the top of a block and the preceding block\n\t\t\t// is at the same level, use the preceding block as the candidate\n\t\t\t// instead, as later it makes determining a nesting drop easier.\n\t\t\tif (\n\t\t\t\tedge === 'top' &&\n\t\t\t\tpreviousBlockData &&\n\t\t\t\tpreviousBlockData.rootClientId === blockData.rootClientId &&\n\t\t\t\t! previousBlockData.isDraggedBlock\n\t\t\t) {\n\t\t\t\tcandidateBlockData = previousBlockData;\n\t\t\t\tcandidateEdge = 'bottom';\n\t\t\t\tcandidateRect =\n\t\t\t\t\tpreviousBlockData.element.getBoundingClientRect();\n\t\t\t\tcandidateBlockIndex = index - 1;\n\t\t\t} else {\n\t\t\t\tcandidateBlockData = blockData;\n\t\t\t\tcandidateEdge = edge;\n\t\t\t\tcandidateRect = rect;\n\t\t\t\tcandidateBlockIndex = index;\n\t\t\t}\n\n\t\t\t// If the mouse position is within the block, break early\n\t\t\t// as the user would intend to drop either before or after\n\t\t\t// this block.\n\t\t\t//\n\t\t\t// This solves an issue where some rows in the list view\n\t\t\t// tree overlap slightly due to sub-pixel rendering.\n\t\t\tif ( isCursorWithinBlock ) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tif ( ! candidateBlockData ) {\n\t\treturn;\n\t}\n\n\tconst candidateBlockParents = getCandidateBlockParents(\n\t\tcandidateBlockData,\n\t\tblocksData\n\t);\n\n\tconst isDraggingBelow = candidateEdge === 'bottom';\n\n\t// If the user is dragging towards the bottom of the block check whether\n\t// they might be trying to nest the block as a child.\n\t// If the block already has inner blocks, and is expanded, this should be treated\n\t// as nesting since the next block in the tree will be the first child.\n\t// However, if the block is collapsed, dragging beneath the block should\n\t// still be allowed, as the next visible block in the tree will be a sibling.\n\tif (\n\t\tisDraggingBelow &&\n\t\tcandidateBlockData.canInsertDraggedBlocksAsChild &&\n\t\t( ( candidateBlockData.innerBlockCount > 0 &&\n\t\t\tcandidateBlockData.isExpanded ) ||\n\t\t\tisNestingGesture(\n\t\t\t\tposition,\n\t\t\t\tcandidateRect,\n\t\t\t\tcandidateBlockParents.length,\n\t\t\t\trtl\n\t\t\t) )\n\t) {\n\t\t// If the block is expanded, insert the block as the first child.\n\t\t// Otherwise, for collapsed blocks, insert the block as the last child.\n\t\tconst newBlockIndex = candidateBlockData.isExpanded\n\t\t\t? 0\n\t\t\t: candidateBlockData.innerBlockCount || 0;\n\n\t\treturn {\n\t\t\trootClientId: candidateBlockData.clientId,\n\t\t\tblockIndex: newBlockIndex,\n\t\t\tdropPosition: 'inside',\n\t\t};\n\t}\n\n\t// If the user is dragging towards the bottom of the block check whether\n\t// they might be trying to move the block to be at a parent level.\n\tif (\n\t\tisDraggingBelow &&\n\t\tcandidateBlockData.rootClientId &&\n\t\tisUpGesture(\n\t\t\tposition,\n\t\t\tcandidateRect,\n\t\t\tcandidateBlockParents.length,\n\t\t\trtl\n\t\t)\n\t) {\n\t\tconst nextBlock = getNextNonDraggedBlock(\n\t\t\tblocksData,\n\t\t\tcandidateBlockIndex\n\t\t);\n\t\tconst currentLevel = candidateBlockData.nestingLevel;\n\t\tconst nextLevel = nextBlock ? nextBlock.nestingLevel : 1;\n\n\t\tif ( currentLevel && nextLevel ) {\n\t\t\t// Determine the desired relative level of the block to be dropped.\n\t\t\tconst desiredRelativeLevel = getDesiredRelativeParentLevel(\n\t\t\t\tposition,\n\t\t\t\tcandidateRect,\n\t\t\t\tcandidateBlockParents.length,\n\t\t\t\trtl\n\t\t\t);\n\n\t\t\tconst targetParentIndex = Math.max(\n\t\t\t\tMath.min( desiredRelativeLevel, currentLevel - nextLevel ),\n\t\t\t\t0\n\t\t\t);\n\n\t\t\tif ( candidateBlockParents[ targetParentIndex ] ) {\n\t\t\t\t// Default to the block index of the candidate block.\n\t\t\t\tlet newBlockIndex = candidateBlockData.blockIndex;\n\n\t\t\t\t// If the next block is at the same level, use that as the default\n\t\t\t\t// block index. This ensures that the block is dropped in the correct\n\t\t\t\t// position when dragging to the bottom of a block.\n\t\t\t\tif (\n\t\t\t\t\tcandidateBlockParents[ targetParentIndex ].nestingLevel ===\n\t\t\t\t\tnextBlock?.nestingLevel\n\t\t\t\t) {\n\t\t\t\t\tnewBlockIndex = nextBlock?.blockIndex;\n\t\t\t\t} else {\n\t\t\t\t\t// Otherwise, search from the current block index back\n\t\t\t\t\t// to find the last block index within the same target parent.\n\t\t\t\t\tfor ( let i = candidateBlockIndex; i >= 0; i-- ) {\n\t\t\t\t\t\tconst blockData = blocksData[ i ];\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tblockData.rootClientId ===\n\t\t\t\t\t\t\tcandidateBlockParents[ targetParentIndex ]\n\t\t\t\t\t\t\t\t.rootClientId\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tnewBlockIndex = blockData.blockIndex + 1;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn {\n\t\t\t\t\trootClientId:\n\t\t\t\t\t\tcandidateBlockParents[ targetParentIndex ].rootClientId,\n\t\t\t\t\tclientId: candidateBlockData.clientId,\n\t\t\t\t\tblockIndex: newBlockIndex,\n\t\t\t\t\tdropPosition: candidateEdge,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t}\n\n\t// If dropping as a sibling, but block cannot be inserted in\n\t// this context, return early.\n\tif ( ! candidateBlockData.canInsertDraggedBlocksAsSibling ) {\n\t\treturn;\n\t}\n\n\tconst offset = isDraggingBelow ? 1 : 0;\n\treturn {\n\t\trootClientId: candidateBlockData.rootClientId,\n\t\tclientId: candidateBlockData.clientId,\n\t\tblockIndex: candidateBlockData.blockIndex + offset,\n\t\tdropPosition: candidateEdge,\n\t};\n}\n\n/**\n * A react hook for implementing a drop zone in list view.\n *\n * @param {Object} props Named parameters.\n * @param {?HTMLElement} [props.dropZoneElement] Optional element to be used as the drop zone.\n *\n * @return {WPListViewDropZoneTarget} The drop target.\n */\nexport default function useListViewDropZone( { dropZoneElement } ) {\n\tconst {\n\t\tgetBlockRootClientId,\n\t\tgetBlockIndex,\n\t\tgetBlockCount,\n\t\tgetDraggedBlockClientIds,\n\t\tcanInsertBlocks,\n\t} = useSelect( blockEditorStore );\n\tconst [ target, setTarget ] = useState();\n\tconst { rootClientId: targetRootClientId, blockIndex: targetBlockIndex } =\n\t\ttarget || {};\n\n\tconst onBlockDrop = useOnBlockDrop( targetRootClientId, targetBlockIndex );\n\n\tconst rtl = isRTL();\n\n\tconst draggedBlockClientIds = getDraggedBlockClientIds();\n\tconst throttled = useThrottle(\n\t\tuseCallback(\n\t\t\t( event, currentTarget ) => {\n\t\t\t\tconst position = { x: event.clientX, y: event.clientY };\n\t\t\t\tconst isBlockDrag = !! draggedBlockClientIds?.length;\n\n\t\t\t\tconst blockElements = Array.from(\n\t\t\t\t\tcurrentTarget.querySelectorAll( '[data-block]' )\n\t\t\t\t);\n\n\t\t\t\tconst blocksData = blockElements.map( ( blockElement ) => {\n\t\t\t\t\tconst clientId = blockElement.dataset.block;\n\t\t\t\t\tconst isExpanded = blockElement.dataset.expanded === 'true';\n\t\t\t\t\tconst isDraggedBlock =\n\t\t\t\t\t\tblockElement.classList.contains( 'is-dragging' );\n\n\t\t\t\t\t// Get nesting level from `aria-level` attribute because Firefox does not support `element.ariaLevel`.\n\t\t\t\t\tconst nestingLevel = parseInt(\n\t\t\t\t\t\tblockElement.getAttribute( 'aria-level' ),\n\t\t\t\t\t\t10\n\t\t\t\t\t);\n\t\t\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\tclientId,\n\t\t\t\t\t\tisExpanded,\n\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\tblockIndex: getBlockIndex( clientId ),\n\t\t\t\t\t\telement: blockElement,\n\t\t\t\t\t\tnestingLevel: nestingLevel || undefined,\n\t\t\t\t\t\tisDraggedBlock: isBlockDrag ? isDraggedBlock : false,\n\t\t\t\t\t\tinnerBlockCount: getBlockCount( clientId ),\n\t\t\t\t\t\tcanInsertDraggedBlocksAsSibling: isBlockDrag\n\t\t\t\t\t\t\t? canInsertBlocks(\n\t\t\t\t\t\t\t\t\tdraggedBlockClientIds,\n\t\t\t\t\t\t\t\t\trootClientId\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: true,\n\t\t\t\t\t\tcanInsertDraggedBlocksAsChild: isBlockDrag\n\t\t\t\t\t\t\t? canInsertBlocks( draggedBlockClientIds, clientId )\n\t\t\t\t\t\t\t: true,\n\t\t\t\t\t};\n\t\t\t\t} );\n\n\t\t\t\tconst newTarget = getListViewDropTarget(\n\t\t\t\t\tblocksData,\n\t\t\t\t\tposition,\n\t\t\t\t\trtl\n\t\t\t\t);\n\n\t\t\t\tif ( newTarget ) {\n\t\t\t\t\tsetTarget( newTarget );\n\t\t\t\t}\n\t\t\t},\n\t\t\t[\n\t\t\t\tcanInsertBlocks,\n\t\t\t\tdraggedBlockClientIds,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockIndex,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\trtl,\n\t\t\t]\n\t\t),\n\t\t200\n\t);\n\n\tconst ref = useDropZone( {\n\t\tdropZoneElement,\n\t\tonDrop: onBlockDrop,\n\t\tonDragLeave() {\n\t\t\tthrottled.cancel();\n\t\t\tsetTarget( null );\n\t\t},\n\t\tonDragOver( event ) {\n\t\t\t// `currentTarget` is only available while the event is being\n\t\t\t// handled, so get it now and pass it to the thottled function.\n\t\t\t// https://developer.mozilla.org/en-US/docs/Web/API/Event/currentTarget\n\t\t\tthrottled( event, event.currentTarget );\n\t\t},\n\t\tonDragEnd() {\n\t\t\tthrottled.cancel();\n\t\t\tsetTarget( null );\n\t\t},\n\t} );\n\n\treturn { ref, target };\n}\n"]}
1
+ {"version":3,"names":["_data","require","_element","_compose","_i18n","_math","_useOnBlockDrop","_interopRequireDefault","_store","NESTING_LEVEL_INDENTATION","exports","isUpGesture","point","rect","nestingLevel","rtl","blockIndentPosition","right","left","x","getDesiredRelativeParentLevel","distanceBetweenPointAndBlockIndentPosition","desiredParentLevel","Math","round","abs","getCandidateBlockParents","candidateBlockData","blocksData","candidateBlockParents","currentBlockData","push","find","blockData","clientId","rootClientId","getNextNonDraggedBlock","index","nextBlockData","isDraggedBlock","isNestingGesture","isNestingHorizontalGesture","y","bottom","ALLOWED_DROP_EDGES","getListViewDropTarget","position","candidateEdge","candidateDistance","candidateRect","candidateBlockIndex","i","length","element","getBoundingClientRect","distance","edge","getDistanceToNearestEdge","isCursorWithinBlock","isPointContainedByRect","undefined","indexOf","previousBlockData","isDraggingBelow","canInsertDraggedBlocksAsChild","innerBlockCount","isExpanded","newBlockIndex","blockIndex","dropPosition","nextBlock","currentLevel","nextLevel","desiredRelativeLevel","targetParentIndex","max","min","canInsertDraggedBlocksAsSibling","offset","useListViewDropZone","dropZoneElement","getBlockRootClientId","getBlockIndex","getBlockCount","getDraggedBlockClientIds","canInsertBlocks","useSelect","blockEditorStore","target","setTarget","useState","targetRootClientId","targetBlockIndex","onBlockDrop","useOnBlockDrop","isRTL","draggedBlockClientIds","throttled","useThrottle","useCallback","event","currentTarget","clientX","clientY","isBlockDrag","blockElements","Array","from","querySelectorAll","map","blockElement","dataset","block","expanded","classList","contains","parseInt","getAttribute","newTarget","ref","useDropZone","onDrop","onDragLeave","cancel","onDragOver","onDragEnd"],"sources":["@wordpress/block-editor/src/components/list-view/use-list-view-drop-zone.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useState, useCallback } from '@wordpress/element';\nimport {\n\tuseThrottle,\n\t__experimentalUseDropZone as useDropZone,\n} from '@wordpress/compose';\nimport { isRTL } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tgetDistanceToNearestEdge,\n\tisPointContainedByRect,\n} from '../../utils/math';\nimport useOnBlockDrop from '../use-on-block-drop';\nimport { store as blockEditorStore } from '../../store';\n\n/** @typedef {import('../../utils/math').WPPoint} WPPoint */\n\n/**\n * The type of a drag event.\n *\n * @typedef {'default'|'file'|'html'} WPDragEventType\n */\n\n/**\n * An object representing data for blocks in the DOM used by drag and drop.\n *\n * @typedef {Object} WPListViewDropZoneBlock\n * @property {string} clientId The client id for the block.\n * @property {string} rootClientId The root client id for the block.\n * @property {number} blockIndex The block's index.\n * @property {Element} element The DOM element representing the block.\n * @property {number} innerBlockCount The number of inner blocks the block has.\n * @property {boolean} isDraggedBlock Whether the block is currently being dragged.\n * @property {boolean} isExpanded Whether the block is expanded in the UI.\n * @property {boolean} canInsertDraggedBlocksAsSibling Whether the dragged block can be a sibling of this block.\n * @property {boolean} canInsertDraggedBlocksAsChild Whether the dragged block can be a child of this block.\n */\n\n/**\n * An array representing data for blocks in the DOM used by drag and drop.\n *\n * @typedef {WPListViewDropZoneBlock[]} WPListViewDropZoneBlocks\n */\n\n/**\n * An object containing details of a drop target.\n *\n * @typedef {Object} WPListViewDropZoneTarget\n * @property {string} blockIndex The insertion index.\n * @property {string} rootClientId The root client id for the block.\n * @property {string|undefined} clientId The client id for the block.\n * @property {'top'|'bottom'|'inside'} dropPosition The position relative to the block that the user is dropping to.\n * 'inside' refers to nesting as an inner block.\n */\n\n// When the indentation level, the corresponding left margin in `style.scss`\n// must be updated as well to ensure the drop zone is aligned with the indentation.\nexport const NESTING_LEVEL_INDENTATION = 28;\n\n/**\n * Determines whether the user is positioning the dragged block to be\n * moved up to a parent level.\n *\n * Determined based on nesting level indentation of the current block.\n *\n * @param {WPPoint} point The point representing the cursor position when dragging.\n * @param {DOMRect} rect The rectangle.\n * @param {number} nestingLevel The nesting level of the block.\n * @param {boolean} rtl Whether the editor is in RTL mode.\n * @return {boolean} Whether the gesture is an upward gesture.\n */\nfunction isUpGesture( point, rect, nestingLevel = 1, rtl = false ) {\n\t// If the block is nested, and the user is dragging to the bottom\n\t// left of the block (or bottom right in RTL languages), then it is an upward gesture.\n\tconst blockIndentPosition = rtl\n\t\t? rect.right - nestingLevel * NESTING_LEVEL_INDENTATION\n\t\t: rect.left + nestingLevel * NESTING_LEVEL_INDENTATION;\n\treturn rtl ? point.x > blockIndentPosition : point.x < blockIndentPosition;\n}\n\n/**\n * Returns how many nesting levels up the user is attempting to drag to.\n *\n * The relative parent level is calculated based on how far\n * the cursor is from the provided nesting level (e.g. of a candidate block\n * that the user is hovering over). The nesting level is considered \"desired\"\n * because it is not guaranteed that the user will be able to drag to the desired level.\n *\n * The returned integer can be used to access an ascending array\n * of parent blocks, where the first item is the block the user\n * is hovering over, and the last item is the root block.\n *\n * @param {WPPoint} point The point representing the cursor position when dragging.\n * @param {DOMRect} rect The rectangle.\n * @param {number} nestingLevel The nesting level of the block.\n * @param {boolean} rtl Whether the editor is in RTL mode.\n * @return {number} The desired relative parent level.\n */\nfunction getDesiredRelativeParentLevel(\n\tpoint,\n\trect,\n\tnestingLevel = 1,\n\trtl = false\n) {\n\t// In RTL languages, the block indent position is from the right edge of the block.\n\t// In LTR languages, the block indent position is from the left edge of the block.\n\tconst blockIndentPosition = rtl\n\t\t? rect.right - nestingLevel * NESTING_LEVEL_INDENTATION\n\t\t: rect.left + nestingLevel * NESTING_LEVEL_INDENTATION;\n\n\tconst distanceBetweenPointAndBlockIndentPosition = rtl\n\t\t? blockIndentPosition - point.x\n\t\t: point.x - blockIndentPosition;\n\n\tconst desiredParentLevel = Math.round(\n\t\tdistanceBetweenPointAndBlockIndentPosition / NESTING_LEVEL_INDENTATION\n\t);\n\n\treturn Math.abs( desiredParentLevel );\n}\n\n/**\n * Returns an array of the parent blocks of the block the user is dropping to.\n *\n * @param {WPListViewDropZoneBlock} candidateBlockData The block the user is dropping to.\n * @param {WPListViewDropZoneBlocks} blocksData Data about the blocks in list view.\n * @return {WPListViewDropZoneBlocks} An array of block parents, including the block the user is dropping to.\n */\nfunction getCandidateBlockParents( candidateBlockData, blocksData ) {\n\tconst candidateBlockParents = [];\n\tlet currentBlockData = candidateBlockData;\n\n\twhile ( currentBlockData ) {\n\t\tcandidateBlockParents.push( { ...currentBlockData } );\n\t\tcurrentBlockData = blocksData.find(\n\t\t\t( blockData ) =>\n\t\t\t\tblockData.clientId === currentBlockData.rootClientId\n\t\t);\n\t}\n\n\treturn candidateBlockParents;\n}\n\n/**\n * Given a list of blocks data and a block index, return the next non-dragged\n * block. This is used to determine the block that the user is dropping to,\n * while ignoring the dragged block.\n *\n * @param {WPListViewDropZoneBlocks} blocksData Data about the blocks in list view.\n * @param {number} index The index to begin searching from.\n * @return {WPListViewDropZoneBlock | undefined} The next non-dragged block.\n */\nfunction getNextNonDraggedBlock( blocksData, index ) {\n\tconst nextBlockData = blocksData[ index + 1 ];\n\tif ( nextBlockData && nextBlockData.isDraggedBlock ) {\n\t\treturn getNextNonDraggedBlock( blocksData, index + 1 );\n\t}\n\n\treturn nextBlockData;\n}\n\n/**\n * Determines whether the user positioning the dragged block to nest as an\n * inner block.\n *\n * Determined based on nesting level indentation of the current block, plus\n * the indentation of the next level of nesting. The vertical position of the\n * cursor must also be within the block.\n *\n * @param {WPPoint} point The point representing the cursor position when dragging.\n * @param {DOMRect} rect The rectangle.\n * @param {number} nestingLevel The nesting level of the block.\n * @param {boolean} rtl Whether the editor is in RTL mode.\n */\nfunction isNestingGesture( point, rect, nestingLevel = 1, rtl = false ) {\n\tconst blockIndentPosition = rtl\n\t\t? rect.right - nestingLevel * NESTING_LEVEL_INDENTATION\n\t\t: rect.left + nestingLevel * NESTING_LEVEL_INDENTATION;\n\n\tconst isNestingHorizontalGesture = rtl\n\t\t? point.x < blockIndentPosition - NESTING_LEVEL_INDENTATION\n\t\t: point.x > blockIndentPosition + NESTING_LEVEL_INDENTATION;\n\n\treturn isNestingHorizontalGesture && point.y < rect.bottom;\n}\n\n// Block navigation is always a vertical list, so only allow dropping\n// to the above or below a block.\nconst ALLOWED_DROP_EDGES = [ 'top', 'bottom' ];\n\n/**\n * Given blocks data and the cursor position, compute the drop target.\n *\n * @param {WPListViewDropZoneBlocks} blocksData Data about the blocks in list view.\n * @param {WPPoint} position The point representing the cursor position when dragging.\n * @param {boolean} rtl Whether the editor is in RTL mode.\n *\n * @return {WPListViewDropZoneTarget | undefined} An object containing data about the drop target.\n */\nexport function getListViewDropTarget( blocksData, position, rtl = false ) {\n\tlet candidateEdge;\n\tlet candidateBlockData;\n\tlet candidateDistance;\n\tlet candidateRect;\n\tlet candidateBlockIndex;\n\n\tfor ( let i = 0; i < blocksData.length; i++ ) {\n\t\tconst blockData = blocksData[ i ];\n\t\tif ( blockData.isDraggedBlock ) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst rect = blockData.element.getBoundingClientRect();\n\t\tconst [ distance, edge ] = getDistanceToNearestEdge(\n\t\t\tposition,\n\t\t\trect,\n\t\t\tALLOWED_DROP_EDGES\n\t\t);\n\n\t\tconst isCursorWithinBlock = isPointContainedByRect( position, rect );\n\t\tif (\n\t\t\tcandidateDistance === undefined ||\n\t\t\tdistance < candidateDistance ||\n\t\t\tisCursorWithinBlock\n\t\t) {\n\t\t\tcandidateDistance = distance;\n\n\t\t\tconst index = blocksData.indexOf( blockData );\n\t\t\tconst previousBlockData = blocksData[ index - 1 ];\n\n\t\t\t// If dragging near the top of a block and the preceding block\n\t\t\t// is at the same level, use the preceding block as the candidate\n\t\t\t// instead, as later it makes determining a nesting drop easier.\n\t\t\tif (\n\t\t\t\tedge === 'top' &&\n\t\t\t\tpreviousBlockData &&\n\t\t\t\tpreviousBlockData.rootClientId === blockData.rootClientId &&\n\t\t\t\t! previousBlockData.isDraggedBlock\n\t\t\t) {\n\t\t\t\tcandidateBlockData = previousBlockData;\n\t\t\t\tcandidateEdge = 'bottom';\n\t\t\t\tcandidateRect =\n\t\t\t\t\tpreviousBlockData.element.getBoundingClientRect();\n\t\t\t\tcandidateBlockIndex = index - 1;\n\t\t\t} else {\n\t\t\t\tcandidateBlockData = blockData;\n\t\t\t\tcandidateEdge = edge;\n\t\t\t\tcandidateRect = rect;\n\t\t\t\tcandidateBlockIndex = index;\n\t\t\t}\n\n\t\t\t// If the mouse position is within the block, break early\n\t\t\t// as the user would intend to drop either before or after\n\t\t\t// this block.\n\t\t\t//\n\t\t\t// This solves an issue where some rows in the list view\n\t\t\t// tree overlap slightly due to sub-pixel rendering.\n\t\t\tif ( isCursorWithinBlock ) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tif ( ! candidateBlockData ) {\n\t\treturn;\n\t}\n\n\tconst candidateBlockParents = getCandidateBlockParents(\n\t\tcandidateBlockData,\n\t\tblocksData\n\t);\n\n\tconst isDraggingBelow = candidateEdge === 'bottom';\n\n\t// If the user is dragging towards the bottom of the block check whether\n\t// they might be trying to nest the block as a child.\n\t// If the block already has inner blocks, and is expanded, this should be treated\n\t// as nesting since the next block in the tree will be the first child.\n\t// However, if the block is collapsed, dragging beneath the block should\n\t// still be allowed, as the next visible block in the tree will be a sibling.\n\tif (\n\t\tisDraggingBelow &&\n\t\tcandidateBlockData.canInsertDraggedBlocksAsChild &&\n\t\t( ( candidateBlockData.innerBlockCount > 0 &&\n\t\t\tcandidateBlockData.isExpanded ) ||\n\t\t\tisNestingGesture(\n\t\t\t\tposition,\n\t\t\t\tcandidateRect,\n\t\t\t\tcandidateBlockParents.length,\n\t\t\t\trtl\n\t\t\t) )\n\t) {\n\t\t// If the block is expanded, insert the block as the first child.\n\t\t// Otherwise, for collapsed blocks, insert the block as the last child.\n\t\tconst newBlockIndex = candidateBlockData.isExpanded\n\t\t\t? 0\n\t\t\t: candidateBlockData.innerBlockCount || 0;\n\n\t\treturn {\n\t\t\trootClientId: candidateBlockData.clientId,\n\t\t\tblockIndex: newBlockIndex,\n\t\t\tdropPosition: 'inside',\n\t\t};\n\t}\n\n\t// If the user is dragging towards the bottom of the block check whether\n\t// they might be trying to move the block to be at a parent level.\n\tif (\n\t\tisDraggingBelow &&\n\t\tcandidateBlockData.rootClientId &&\n\t\tisUpGesture(\n\t\t\tposition,\n\t\t\tcandidateRect,\n\t\t\tcandidateBlockParents.length,\n\t\t\trtl\n\t\t)\n\t) {\n\t\tconst nextBlock = getNextNonDraggedBlock(\n\t\t\tblocksData,\n\t\t\tcandidateBlockIndex\n\t\t);\n\t\tconst currentLevel = candidateBlockData.nestingLevel;\n\t\tconst nextLevel = nextBlock ? nextBlock.nestingLevel : 1;\n\n\t\tif ( currentLevel && nextLevel ) {\n\t\t\t// Determine the desired relative level of the block to be dropped.\n\t\t\tconst desiredRelativeLevel = getDesiredRelativeParentLevel(\n\t\t\t\tposition,\n\t\t\t\tcandidateRect,\n\t\t\t\tcandidateBlockParents.length,\n\t\t\t\trtl\n\t\t\t);\n\n\t\t\tconst targetParentIndex = Math.max(\n\t\t\t\tMath.min( desiredRelativeLevel, currentLevel - nextLevel ),\n\t\t\t\t0\n\t\t\t);\n\n\t\t\tif ( candidateBlockParents[ targetParentIndex ] ) {\n\t\t\t\t// Default to the block index of the candidate block.\n\t\t\t\tlet newBlockIndex = candidateBlockData.blockIndex;\n\n\t\t\t\t// If the next block is at the same level, use that as the default\n\t\t\t\t// block index. This ensures that the block is dropped in the correct\n\t\t\t\t// position when dragging to the bottom of a block.\n\t\t\t\tif (\n\t\t\t\t\tcandidateBlockParents[ targetParentIndex ].nestingLevel ===\n\t\t\t\t\tnextBlock?.nestingLevel\n\t\t\t\t) {\n\t\t\t\t\tnewBlockIndex = nextBlock?.blockIndex;\n\t\t\t\t} else {\n\t\t\t\t\t// Otherwise, search from the current block index back\n\t\t\t\t\t// to find the last block index within the same target parent.\n\t\t\t\t\tfor ( let i = candidateBlockIndex; i >= 0; i-- ) {\n\t\t\t\t\t\tconst blockData = blocksData[ i ];\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tblockData.rootClientId ===\n\t\t\t\t\t\t\tcandidateBlockParents[ targetParentIndex ]\n\t\t\t\t\t\t\t\t.rootClientId\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tnewBlockIndex = blockData.blockIndex + 1;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn {\n\t\t\t\t\trootClientId:\n\t\t\t\t\t\tcandidateBlockParents[ targetParentIndex ].rootClientId,\n\t\t\t\t\tclientId: candidateBlockData.clientId,\n\t\t\t\t\tblockIndex: newBlockIndex,\n\t\t\t\t\tdropPosition: candidateEdge,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t}\n\n\t// If dropping as a sibling, but block cannot be inserted in\n\t// this context, return early.\n\tif ( ! candidateBlockData.canInsertDraggedBlocksAsSibling ) {\n\t\treturn;\n\t}\n\n\tconst offset = isDraggingBelow ? 1 : 0;\n\treturn {\n\t\trootClientId: candidateBlockData.rootClientId,\n\t\tclientId: candidateBlockData.clientId,\n\t\tblockIndex: candidateBlockData.blockIndex + offset,\n\t\tdropPosition: candidateEdge,\n\t};\n}\n\n/**\n * A react hook for implementing a drop zone in list view.\n *\n * @param {Object} props Named parameters.\n * @param {?HTMLElement} [props.dropZoneElement] Optional element to be used as the drop zone.\n *\n * @return {WPListViewDropZoneTarget} The drop target.\n */\nexport default function useListViewDropZone( { dropZoneElement } ) {\n\tconst {\n\t\tgetBlockRootClientId,\n\t\tgetBlockIndex,\n\t\tgetBlockCount,\n\t\tgetDraggedBlockClientIds,\n\t\tcanInsertBlocks,\n\t} = useSelect( blockEditorStore );\n\tconst [ target, setTarget ] = useState();\n\tconst { rootClientId: targetRootClientId, blockIndex: targetBlockIndex } =\n\t\ttarget || {};\n\n\tconst onBlockDrop = useOnBlockDrop( targetRootClientId, targetBlockIndex );\n\n\tconst rtl = isRTL();\n\n\tconst draggedBlockClientIds = getDraggedBlockClientIds();\n\tconst throttled = useThrottle(\n\t\tuseCallback(\n\t\t\t( event, currentTarget ) => {\n\t\t\t\tconst position = { x: event.clientX, y: event.clientY };\n\t\t\t\tconst isBlockDrag = !! draggedBlockClientIds?.length;\n\n\t\t\t\tconst blockElements = Array.from(\n\t\t\t\t\tcurrentTarget.querySelectorAll( '[data-block]' )\n\t\t\t\t);\n\n\t\t\t\tconst blocksData = blockElements.map( ( blockElement ) => {\n\t\t\t\t\tconst clientId = blockElement.dataset.block;\n\t\t\t\t\tconst isExpanded = blockElement.dataset.expanded === 'true';\n\t\t\t\t\tconst isDraggedBlock =\n\t\t\t\t\t\tblockElement.classList.contains( 'is-dragging' );\n\n\t\t\t\t\t// Get nesting level from `aria-level` attribute because Firefox does not support `element.ariaLevel`.\n\t\t\t\t\tconst nestingLevel = parseInt(\n\t\t\t\t\t\tblockElement.getAttribute( 'aria-level' ),\n\t\t\t\t\t\t10\n\t\t\t\t\t);\n\t\t\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\tclientId,\n\t\t\t\t\t\tisExpanded,\n\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\tblockIndex: getBlockIndex( clientId ),\n\t\t\t\t\t\telement: blockElement,\n\t\t\t\t\t\tnestingLevel: nestingLevel || undefined,\n\t\t\t\t\t\tisDraggedBlock: isBlockDrag ? isDraggedBlock : false,\n\t\t\t\t\t\tinnerBlockCount: getBlockCount( clientId ),\n\t\t\t\t\t\tcanInsertDraggedBlocksAsSibling: isBlockDrag\n\t\t\t\t\t\t\t? canInsertBlocks(\n\t\t\t\t\t\t\t\t\tdraggedBlockClientIds,\n\t\t\t\t\t\t\t\t\trootClientId\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: true,\n\t\t\t\t\t\tcanInsertDraggedBlocksAsChild: isBlockDrag\n\t\t\t\t\t\t\t? canInsertBlocks( draggedBlockClientIds, clientId )\n\t\t\t\t\t\t\t: true,\n\t\t\t\t\t};\n\t\t\t\t} );\n\n\t\t\t\tconst newTarget = getListViewDropTarget(\n\t\t\t\t\tblocksData,\n\t\t\t\t\tposition,\n\t\t\t\t\trtl\n\t\t\t\t);\n\n\t\t\t\tif ( newTarget ) {\n\t\t\t\t\tsetTarget( newTarget );\n\t\t\t\t}\n\t\t\t},\n\t\t\t[\n\t\t\t\tcanInsertBlocks,\n\t\t\t\tdraggedBlockClientIds,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockIndex,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\trtl,\n\t\t\t]\n\t\t),\n\t\t200\n\t);\n\n\tconst ref = useDropZone( {\n\t\tdropZoneElement,\n\t\tonDrop( event ) {\n\t\t\tif ( target ) {\n\t\t\t\tonBlockDrop( event );\n\t\t\t}\n\t\t},\n\t\tonDragLeave() {\n\t\t\tthrottled.cancel();\n\t\t\tsetTarget( null );\n\t\t},\n\t\tonDragOver( event ) {\n\t\t\t// `currentTarget` is only available while the event is being\n\t\t\t// handled, so get it now and pass it to the thottled function.\n\t\t\t// https://developer.mozilla.org/en-US/docs/Web/API/Event/currentTarget\n\t\t\tthrottled( event, event.currentTarget );\n\t\t},\n\t\tonDragEnd() {\n\t\t\tthrottled.cancel();\n\t\t\tsetTarget( null );\n\t\t},\n\t} );\n\n\treturn { ref, target };\n}\n"],"mappings":"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"}
@@ -4,13 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = useListViewExpandSelectedItem;
7
-
8
7
  var _element = require("@wordpress/element");
9
-
10
8
  var _data = require("@wordpress/data");
11
-
12
9
  var _store = require("../../store");
13
-
14
10
  /**
15
11
  * WordPress dependencies
16
12
  */
@@ -18,6 +14,7 @@ var _store = require("../../store");
18
14
  /**
19
15
  * Internal dependencies
20
16
  */
17
+
21
18
  function useListViewExpandSelectedItem({
22
19
  firstSelectedBlockClientId,
23
20
  setExpandedState
@@ -33,16 +30,17 @@ function useListViewExpandSelectedItem({
33
30
  selectedBlockParentClientIds: getBlockParents(firstSelectedBlockClientId, false)
34
31
  };
35
32
  }, [firstSelectedBlockClientId]);
36
- const parentClientIds = Array.isArray(selectedBlockParentClientIds) && selectedBlockParentClientIds.length ? selectedBlockParentClientIds : null; // Expand tree when a block is selected.
33
+ const parentClientIds = Array.isArray(selectedBlockParentClientIds) && selectedBlockParentClientIds.length ? selectedBlockParentClientIds : null;
37
34
 
35
+ // Expand tree when a block is selected.
38
36
  (0, _element.useEffect)(() => {
39
37
  // If the selectedTreeId is the same as the selected block,
40
38
  // it means that the block was selected using the block list tree.
41
39
  if (selectedTreeId === firstSelectedBlockClientId) {
42
40
  return;
43
- } // If the selected block has parents, get the top-level parent.
44
-
41
+ }
45
42
 
43
+ // If the selected block has parents, get the top-level parent.
46
44
  if (parentClientIds) {
47
45
  // If the selected block has parents,
48
46
  // expand the tree branch.
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/list-view/use-list-view-expand-selected-item.js"],"names":["useListViewExpandSelectedItem","firstSelectedBlockClientId","setExpandedState","selectedTreeId","setSelectedTreeId","selectedBlockParentClientIds","select","getBlockParents","blockEditorStore","parentClientIds","Array","isArray","length","type","clientIds"],"mappings":";;;;;;;AAGA;;AACA;;AAKA;;AATA;AACA;AACA;;AAIA;AACA;AACA;AAGe,SAASA,6BAAT,CAAwC;AACtDC,EAAAA,0BADsD;AAEtDC,EAAAA;AAFsD,CAAxC,EAGX;AACH,QAAM,CAAEC,cAAF,EAAkBC,iBAAlB,IAAwC,uBAAU,IAAV,CAA9C;AACA,QAAM;AAAEC,IAAAA;AAAF,MAAmC,qBACtCC,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA;AAAF,QAAsBD,MAAM,CAAEE,YAAF,CAAlC;AACA,WAAO;AACNH,MAAAA,4BAA4B,EAAEE,eAAe,CAC5CN,0BAD4C,EAE5C,KAF4C;AADvC,KAAP;AAMA,GATuC,EAUxC,CAAEA,0BAAF,CAVwC,CAAzC;AAaA,QAAMQ,eAAe,GACpBC,KAAK,CAACC,OAAN,CAAeN,4BAAf,KACAA,4BAA4B,CAACO,MAD7B,GAEGP,4BAFH,GAGG,IAJJ,CAfG,CAqBH;;AACA,0BAAW,MAAM;AAChB;AACA;AACA,QAAKF,cAAc,KAAKF,0BAAxB,EAAqD;AACpD;AACA,KALe,CAOhB;;;AACA,QAAKQ,eAAL,EAAuB;AACtB;AACA;AACAP,MAAAA,gBAAgB,CAAE;AACjBW,QAAAA,IAAI,EAAE,QADW;AAEjBC,QAAAA,SAAS,EAAET;AAFM,OAAF,CAAhB;AAIA;AACD,GAhBD,EAgBG,CAAEJ,0BAAF,CAhBH;AAkBA,SAAO;AACNG,IAAAA;AADM,GAAP;AAGA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\nexport default function useListViewExpandSelectedItem( {\n\tfirstSelectedBlockClientId,\n\tsetExpandedState,\n} ) {\n\tconst [ selectedTreeId, setSelectedTreeId ] = useState( null );\n\tconst { selectedBlockParentClientIds } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockParents } = select( blockEditorStore );\n\t\t\treturn {\n\t\t\t\tselectedBlockParentClientIds: getBlockParents(\n\t\t\t\t\tfirstSelectedBlockClientId,\n\t\t\t\t\tfalse\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ firstSelectedBlockClientId ]\n\t);\n\n\tconst parentClientIds =\n\t\tArray.isArray( selectedBlockParentClientIds ) &&\n\t\tselectedBlockParentClientIds.length\n\t\t\t? selectedBlockParentClientIds\n\t\t\t: null;\n\n\t// Expand tree when a block is selected.\n\tuseEffect( () => {\n\t\t// If the selectedTreeId is the same as the selected block,\n\t\t// it means that the block was selected using the block list tree.\n\t\tif ( selectedTreeId === firstSelectedBlockClientId ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// If the selected block has parents, get the top-level parent.\n\t\tif ( parentClientIds ) {\n\t\t\t// If the selected block has parents,\n\t\t\t// expand the tree branch.\n\t\t\tsetExpandedState( {\n\t\t\t\ttype: 'expand',\n\t\t\t\tclientIds: selectedBlockParentClientIds,\n\t\t\t} );\n\t\t}\n\t}, [ firstSelectedBlockClientId ] );\n\n\treturn {\n\t\tsetSelectedTreeId,\n\t};\n}\n"]}
1
+ {"version":3,"names":["_element","require","_data","_store","useListViewExpandSelectedItem","firstSelectedBlockClientId","setExpandedState","selectedTreeId","setSelectedTreeId","useState","selectedBlockParentClientIds","useSelect","select","getBlockParents","blockEditorStore","parentClientIds","Array","isArray","length","useEffect","type","clientIds"],"sources":["@wordpress/block-editor/src/components/list-view/use-list-view-expand-selected-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\nexport default function useListViewExpandSelectedItem( {\n\tfirstSelectedBlockClientId,\n\tsetExpandedState,\n} ) {\n\tconst [ selectedTreeId, setSelectedTreeId ] = useState( null );\n\tconst { selectedBlockParentClientIds } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockParents } = select( blockEditorStore );\n\t\t\treturn {\n\t\t\t\tselectedBlockParentClientIds: getBlockParents(\n\t\t\t\t\tfirstSelectedBlockClientId,\n\t\t\t\t\tfalse\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ firstSelectedBlockClientId ]\n\t);\n\n\tconst parentClientIds =\n\t\tArray.isArray( selectedBlockParentClientIds ) &&\n\t\tselectedBlockParentClientIds.length\n\t\t\t? selectedBlockParentClientIds\n\t\t\t: null;\n\n\t// Expand tree when a block is selected.\n\tuseEffect( () => {\n\t\t// If the selectedTreeId is the same as the selected block,\n\t\t// it means that the block was selected using the block list tree.\n\t\tif ( selectedTreeId === firstSelectedBlockClientId ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// If the selected block has parents, get the top-level parent.\n\t\tif ( parentClientIds ) {\n\t\t\t// If the selected block has parents,\n\t\t\t// expand the tree branch.\n\t\t\tsetExpandedState( {\n\t\t\t\ttype: 'expand',\n\t\t\t\tclientIds: selectedBlockParentClientIds,\n\t\t\t} );\n\t\t}\n\t}, [ firstSelectedBlockClientId ] );\n\n\treturn {\n\t\tsetSelectedTreeId,\n\t};\n}\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAKA,IAAAE,MAAA,GAAAF,OAAA;AATA;AACA;AACA;;AAIA;AACA;AACA;;AAGe,SAASG,6BAA6BA,CAAE;EACtDC,0BAA0B;EAC1BC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,cAAc,EAAEC,iBAAiB,CAAE,GAAG,IAAAC,iBAAQ,EAAE,IAAK,CAAC;EAC9D,MAAM;IAAEC;EAA6B,CAAC,GAAG,IAAAC,eAAS,EAC/CC,MAAM,IAAM;IACb,MAAM;MAAEC;IAAgB,CAAC,GAAGD,MAAM,CAAEE,YAAiB,CAAC;IACtD,OAAO;MACNJ,4BAA4B,EAAEG,eAAe,CAC5CR,0BAA0B,EAC1B,KACD;IACD,CAAC;EACF,CAAC,EACD,CAAEA,0BAA0B,CAC7B,CAAC;EAED,MAAMU,eAAe,GACpBC,KAAK,CAACC,OAAO,CAAEP,4BAA6B,CAAC,IAC7CA,4BAA4B,CAACQ,MAAM,GAChCR,4BAA4B,GAC5B,IAAI;;EAER;EACA,IAAAS,kBAAS,EAAE,MAAM;IAChB;IACA;IACA,IAAKZ,cAAc,KAAKF,0BAA0B,EAAG;MACpD;IACD;;IAEA;IACA,IAAKU,eAAe,EAAG;MACtB;MACA;MACAT,gBAAgB,CAAE;QACjBc,IAAI,EAAE,QAAQ;QACdC,SAAS,EAAEX;MACZ,CAAE,CAAC;IACJ;EACD,CAAC,EAAE,CAAEL,0BAA0B,CAAG,CAAC;EAEnC,OAAO;IACNG;EACD,CAAC;AACF"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useListViewImages;
7
+ var _element = require("@wordpress/element");
8
+ var _data = require("@wordpress/data");
9
+ var _store = require("../../store");
10
+ /**
11
+ * WordPress dependencies
12
+ */
13
+
14
+ /**
15
+ * Internal dependencies
16
+ */
17
+
18
+ // Maximum number of images to display in a list view row.
19
+ const MAX_IMAGES = 3;
20
+ function getImageUrl(block) {
21
+ if (block.name !== 'core/image') {
22
+ return;
23
+ }
24
+ if (block.attributes?.url) {
25
+ return {
26
+ url: block.attributes.url,
27
+ alt: block.attributes.alt
28
+ };
29
+ }
30
+ }
31
+ function getImagesFromGallery(block) {
32
+ if (block.name !== 'core/gallery' || !block.innerBlocks) {
33
+ return [];
34
+ }
35
+ const images = [];
36
+ for (const innerBlock of block.innerBlocks) {
37
+ const img = getImageUrl(innerBlock);
38
+ if (img) {
39
+ images.push(img);
40
+ }
41
+ if (images.length >= MAX_IMAGES) {
42
+ return images;
43
+ }
44
+ }
45
+ return images;
46
+ }
47
+ function getImagesFromBlock(block, isExpanded) {
48
+ const img = getImageUrl(block);
49
+ if (img) {
50
+ return [img];
51
+ }
52
+ return isExpanded ? [] : getImagesFromGallery(block);
53
+ }
54
+
55
+ /**
56
+ * Get a block's preview images for display within a list view row.
57
+ *
58
+ * TODO: Currently only supports images from the core/image and core/gallery
59
+ * blocks. This should be expanded to support other blocks that have images,
60
+ * potentially via an API that blocks can opt into / provide their own logic.
61
+ *
62
+ * @param {Object} props Hook properties.
63
+ * @param {string} props.clientId The block's clientId.
64
+ * @param {boolean} props.isExpanded Whether or not the block is expanded in the list view.
65
+ * @return {Array} Images.
66
+ */
67
+ function useListViewImages({
68
+ clientId,
69
+ isExpanded
70
+ }) {
71
+ const {
72
+ block
73
+ } = (0, _data.useSelect)(select => {
74
+ const _block = select(_store.store).getBlock(clientId);
75
+ return {
76
+ block: _block
77
+ };
78
+ }, [clientId]);
79
+ const images = (0, _element.useMemo)(() => {
80
+ return getImagesFromBlock(block, isExpanded);
81
+ }, [block, isExpanded]);
82
+ return images;
83
+ }
84
+ //# sourceMappingURL=use-list-view-images.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_element","require","_data","_store","MAX_IMAGES","getImageUrl","block","name","attributes","url","alt","getImagesFromGallery","innerBlocks","images","innerBlock","img","push","length","getImagesFromBlock","isExpanded","useListViewImages","clientId","useSelect","select","_block","blockEditorStore","getBlock","useMemo"],"sources":["@wordpress/block-editor/src/components/list-view/use-list-view-images.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\n// Maximum number of images to display in a list view row.\nconst MAX_IMAGES = 3;\n\nfunction getImageUrl( block ) {\n\tif ( block.name !== 'core/image' ) {\n\t\treturn;\n\t}\n\n\tif ( block.attributes?.url ) {\n\t\treturn { url: block.attributes.url, alt: block.attributes.alt };\n\t}\n}\n\nfunction getImagesFromGallery( block ) {\n\tif ( block.name !== 'core/gallery' || ! block.innerBlocks ) {\n\t\treturn [];\n\t}\n\n\tconst images = [];\n\n\tfor ( const innerBlock of block.innerBlocks ) {\n\t\tconst img = getImageUrl( innerBlock );\n\t\tif ( img ) {\n\t\t\timages.push( img );\n\t\t}\n\t\tif ( images.length >= MAX_IMAGES ) {\n\t\t\treturn images;\n\t\t}\n\t}\n\n\treturn images;\n}\n\nfunction getImagesFromBlock( block, isExpanded ) {\n\tconst img = getImageUrl( block );\n\tif ( img ) {\n\t\treturn [ img ];\n\t}\n\treturn isExpanded ? [] : getImagesFromGallery( block );\n}\n\n/**\n * Get a block's preview images for display within a list view row.\n *\n * TODO: Currently only supports images from the core/image and core/gallery\n * blocks. This should be expanded to support other blocks that have images,\n * potentially via an API that blocks can opt into / provide their own logic.\n *\n * @param {Object} props Hook properties.\n * @param {string} props.clientId The block's clientId.\n * @param {boolean} props.isExpanded Whether or not the block is expanded in the list view.\n * @return {Array} Images.\n */\nexport default function useListViewImages( { clientId, isExpanded } ) {\n\tconst { block } = useSelect(\n\t\t( select ) => {\n\t\t\tconst _block = select( blockEditorStore ).getBlock( clientId );\n\t\t\treturn { block: _block };\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst images = useMemo( () => {\n\t\treturn getImagesFromBlock( block, isExpanded );\n\t}, [ block, isExpanded ] );\n\n\treturn images;\n}\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAKA,IAAAE,MAAA,GAAAF,OAAA;AATA;AACA;AACA;;AAIA;AACA;AACA;;AAGA;AACA,MAAMG,UAAU,GAAG,CAAC;AAEpB,SAASC,WAAWA,CAAEC,KAAK,EAAG;EAC7B,IAAKA,KAAK,CAACC,IAAI,KAAK,YAAY,EAAG;IAClC;EACD;EAEA,IAAKD,KAAK,CAACE,UAAU,EAAEC,GAAG,EAAG;IAC5B,OAAO;MAAEA,GAAG,EAAEH,KAAK,CAACE,UAAU,CAACC,GAAG;MAAEC,GAAG,EAAEJ,KAAK,CAACE,UAAU,CAACE;IAAI,CAAC;EAChE;AACD;AAEA,SAASC,oBAAoBA,CAAEL,KAAK,EAAG;EACtC,IAAKA,KAAK,CAACC,IAAI,KAAK,cAAc,IAAI,CAAED,KAAK,CAACM,WAAW,EAAG;IAC3D,OAAO,EAAE;EACV;EAEA,MAAMC,MAAM,GAAG,EAAE;EAEjB,KAAM,MAAMC,UAAU,IAAIR,KAAK,CAACM,WAAW,EAAG;IAC7C,MAAMG,GAAG,GAAGV,WAAW,CAAES,UAAW,CAAC;IACrC,IAAKC,GAAG,EAAG;MACVF,MAAM,CAACG,IAAI,CAAED,GAAI,CAAC;IACnB;IACA,IAAKF,MAAM,CAACI,MAAM,IAAIb,UAAU,EAAG;MAClC,OAAOS,MAAM;IACd;EACD;EAEA,OAAOA,MAAM;AACd;AAEA,SAASK,kBAAkBA,CAAEZ,KAAK,EAAEa,UAAU,EAAG;EAChD,MAAMJ,GAAG,GAAGV,WAAW,CAAEC,KAAM,CAAC;EAChC,IAAKS,GAAG,EAAG;IACV,OAAO,CAAEA,GAAG,CAAE;EACf;EACA,OAAOI,UAAU,GAAG,EAAE,GAAGR,oBAAoB,CAAEL,KAAM,CAAC;AACvD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASc,iBAAiBA,CAAE;EAAEC,QAAQ;EAAEF;AAAW,CAAC,EAAG;EACrE,MAAM;IAAEb;EAAM,CAAC,GAAG,IAAAgB,eAAS,EACxBC,MAAM,IAAM;IACb,MAAMC,MAAM,GAAGD,MAAM,CAAEE,YAAiB,CAAC,CAACC,QAAQ,CAAEL,QAAS,CAAC;IAC9D,OAAO;MAAEf,KAAK,EAAEkB;IAAO,CAAC;EACzB,CAAC,EACD,CAAEH,QAAQ,CACX,CAAC;EAED,MAAMR,MAAM,GAAG,IAAAc,gBAAO,EAAE,MAAM;IAC7B,OAAOT,kBAAkB,CAAEZ,KAAK,EAAEa,UAAW,CAAC;EAC/C,CAAC,EAAE,CAAEb,KAAK,EAAEa,UAAU,CAAG,CAAC;EAE1B,OAAON,MAAM;AACd"}