@wordpress/block-editor 12.7.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 (2286) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +42 -0
  3. package/build/autocompleters/block.js +3 -22
  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 +2 -11
  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 +38 -81
  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 +9 -28
  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 +5 -22
  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 +9 -18
  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 +14 -37
  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 +6 -30
  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 +4 -25
  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 +51 -26
  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 +1 -16
  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 +3 -15
  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 +41 -40
  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 +3 -5
  429. package/build/components/global-styles/behaviors-panel.js.map +1 -1
  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 +41 -90
  447. package/build/components/global-styles/hooks.js.map +1 -1
  448. package/build/components/global-styles/index.js +0 -16
  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 +6 -14
  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 +11 -48
  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 +0 -6
  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 +1 -3
  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 +4 -12
  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 +3 -17
  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 +1 -16
  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 +42 -56
  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 +10 -18
  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 +33 -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 +1 -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 +3 -10
  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 +2 -21
  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 +34 -66
  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 +12 -23
  957. package/build/hooks/behaviors.js.map +1 -1
  958. package/build/hooks/border.js +45 -79
  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 +29 -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 +2 -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 +187 -285
  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 +255 -453
  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 +3 -13
  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 +4 -7
  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 +41 -64
  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 +10 -15
  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 +7 -13
  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 +11 -11
  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 +14 -23
  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 +7 -13
  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 +4 -22
  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 +52 -16
  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 +2 -7
  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 +4 -10
  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 +41 -37
  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 +2 -2
  1535. package/build-module/components/global-styles/behaviors-panel.js.map +1 -1
  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 +42 -72
  1552. package/build-module/components/global-styles/hooks.js.map +1 -1
  1553. package/build-module/components/global-styles/index.js.map +1 -1
  1554. package/build-module/components/global-styles/typography-panel.js +25 -73
  1555. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  1556. package/build-module/components/global-styles/typography-utils.js +8 -14
  1557. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  1558. package/build-module/components/global-styles/use-global-styles-output.js +99 -163
  1559. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  1560. package/build-module/components/global-styles/utils.js +13 -43
  1561. package/build-module/components/global-styles/utils.js.map +1 -1
  1562. package/build-module/components/gradients/index.js.map +1 -1
  1563. package/build-module/components/gradients/index.native.js.map +1 -1
  1564. package/build-module/components/gradients/use-gradient.js +3 -11
  1565. package/build-module/components/gradients/use-gradient.js.map +1 -1
  1566. package/build-module/components/gradients/with-gradient.js +2 -3
  1567. package/build-module/components/gradients/with-gradient.js.map +1 -1
  1568. package/build-module/components/height-control/index.js +2 -8
  1569. package/build-module/components/height-control/index.js.map +1 -1
  1570. package/build-module/components/iframe/index.js +26 -37
  1571. package/build-module/components/iframe/index.js.map +1 -1
  1572. package/build-module/components/iframe/use-compatibility-styles.js +9 -19
  1573. package/build-module/components/iframe/use-compatibility-styles.js.map +1 -1
  1574. package/build-module/components/image-editor/aspect-ratio-dropdown.js +3 -5
  1575. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  1576. package/build-module/components/image-editor/constants.js.map +1 -1
  1577. package/build-module/components/image-editor/context.js +3 -3
  1578. package/build-module/components/image-editor/context.js.map +1 -1
  1579. package/build-module/components/image-editor/cropper.js +4 -6
  1580. package/build-module/components/image-editor/cropper.js.map +1 -1
  1581. package/build-module/components/image-editor/form-controls.js +1 -2
  1582. package/build-module/components/image-editor/form-controls.js.map +1 -1
  1583. package/build-module/components/image-editor/index.js +1 -2
  1584. package/build-module/components/image-editor/index.js.map +1 -1
  1585. package/build-module/components/image-editor/rotation-button.js +2 -2
  1586. package/build-module/components/image-editor/rotation-button.js.map +1 -1
  1587. package/build-module/components/image-editor/use-save-image.js +4 -7
  1588. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  1589. package/build-module/components/image-editor/use-transform-image.js +0 -9
  1590. package/build-module/components/image-editor/use-transform-image.js.map +1 -1
  1591. package/build-module/components/image-editor/zoom-dropdown.js +1 -2
  1592. package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
  1593. package/build-module/components/image-size-control/index.js +1 -4
  1594. package/build-module/components/image-size-control/index.js.map +1 -1
  1595. package/build-module/components/image-size-control/use-dimension-handler.js +6 -12
  1596. package/build-module/components/image-size-control/use-dimension-handler.js.map +1 -1
  1597. package/build-module/components/index.js +11 -1
  1598. package/build-module/components/index.js.map +1 -1
  1599. package/build-module/components/index.native.js +4 -3
  1600. package/build-module/components/index.native.js.map +1 -1
  1601. package/build-module/components/inner-blocks/button-block-appender.js +1 -2
  1602. package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
  1603. package/build-module/components/inner-blocks/default-block-appender.js +1 -2
  1604. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  1605. package/build-module/components/inner-blocks/index.js +23 -21
  1606. package/build-module/components/inner-blocks/index.js.map +1 -1
  1607. package/build-module/components/inner-blocks/index.native.js +21 -20
  1608. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  1609. package/build-module/components/inner-blocks/use-block-context.js +2 -7
  1610. package/build-module/components/inner-blocks/use-block-context.js.map +1 -1
  1611. package/build-module/components/inner-blocks/use-inner-block-template-sync.js +13 -14
  1612. package/build-module/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  1613. package/build-module/components/inner-blocks/use-nested-settings-update.js +19 -21
  1614. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  1615. package/build-module/components/inner-blocks/with-client-id.js +3 -3
  1616. package/build-module/components/inner-blocks/with-client-id.js.map +1 -1
  1617. package/build-module/components/inserter/block-patterns-explorer/explorer.js +3 -6
  1618. package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  1619. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js +5 -13
  1620. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  1621. package/build-module/components/inserter/block-patterns-explorer/sidebar.js +0 -5
  1622. package/build-module/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  1623. package/build-module/components/inserter/block-patterns-tab.js +12 -22
  1624. package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
  1625. package/build-module/components/inserter/block-types-tab.js +9 -16
  1626. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  1627. package/build-module/components/inserter/block-types-tab.native.js +1 -8
  1628. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  1629. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js +9 -10
  1630. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  1631. package/build-module/components/inserter/hooks/use-block-types-state.js +2 -3
  1632. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  1633. package/build-module/components/inserter/hooks/use-clipboard-block.native.js +1 -3
  1634. package/build-module/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  1635. package/build-module/components/inserter/hooks/use-debounced-input.js.map +1 -1
  1636. package/build-module/components/inserter/hooks/use-insertion-point.js +4 -10
  1637. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  1638. package/build-module/components/inserter/hooks/use-patterns-state.js +4 -6
  1639. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  1640. package/build-module/components/inserter/index.js +30 -56
  1641. package/build-module/components/inserter/index.js.map +1 -1
  1642. package/build-module/components/inserter/index.native.js +24 -56
  1643. package/build-module/components/inserter/index.native.js.map +1 -1
  1644. package/build-module/components/inserter/library.js +1 -7
  1645. package/build-module/components/inserter/library.js.map +1 -1
  1646. package/build-module/components/inserter/media-tab/hooks.js +14 -25
  1647. package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
  1648. package/build-module/components/inserter/media-tab/index.js.map +1 -1
  1649. package/build-module/components/inserter/media-tab/media-list.js +3 -5
  1650. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  1651. package/build-module/components/inserter/media-tab/media-panel.js +1 -4
  1652. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  1653. package/build-module/components/inserter/media-tab/media-preview.js +11 -24
  1654. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  1655. package/build-module/components/inserter/media-tab/media-tab.js +4 -7
  1656. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  1657. package/build-module/components/inserter/media-tab/utils.js +1 -4
  1658. package/build-module/components/inserter/media-tab/utils.js.map +1 -1
  1659. package/build-module/components/inserter/menu.js +3 -5
  1660. package/build-module/components/inserter/menu.js.map +1 -1
  1661. package/build-module/components/inserter/menu.native.js +6 -15
  1662. package/build-module/components/inserter/menu.native.js.map +1 -1
  1663. package/build-module/components/inserter/mobile-tab-navigation.js +2 -4
  1664. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  1665. package/build-module/components/inserter/no-results.js +0 -3
  1666. package/build-module/components/inserter/no-results.js.map +1 -1
  1667. package/build-module/components/inserter/no-results.native.js +2 -5
  1668. package/build-module/components/inserter/no-results.native.js.map +1 -1
  1669. package/build-module/components/inserter/panel.js +0 -3
  1670. package/build-module/components/inserter/panel.js.map +1 -1
  1671. package/build-module/components/inserter/preview-panel.js +15 -11
  1672. package/build-module/components/inserter/preview-panel.js.map +1 -1
  1673. package/build-module/components/inserter/quick-inserter.js +5 -8
  1674. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  1675. package/build-module/components/inserter/reusable-block-rename-hint.js +1 -7
  1676. package/build-module/components/inserter/reusable-block-rename-hint.js.map +1 -1
  1677. package/build-module/components/inserter/reusable-blocks-tab.js +3 -8
  1678. package/build-module/components/inserter/reusable-blocks-tab.js.map +1 -1
  1679. package/build-module/components/inserter/reusable-blocks-tab.native.js +1 -4
  1680. package/build-module/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  1681. package/build-module/components/inserter/search-items.js +22 -33
  1682. package/build-module/components/inserter/search-items.js.map +1 -1
  1683. package/build-module/components/inserter/search-results.js +6 -18
  1684. package/build-module/components/inserter/search-results.js.map +1 -1
  1685. package/build-module/components/inserter/search-results.native.js +1 -7
  1686. package/build-module/components/inserter/search-results.native.js.map +1 -1
  1687. package/build-module/components/inserter/tabs.js +0 -13
  1688. package/build-module/components/inserter/tabs.js.map +1 -1
  1689. package/build-module/components/inserter/tabs.native.js +6 -13
  1690. package/build-module/components/inserter/tabs.native.js.map +1 -1
  1691. package/build-module/components/inserter/tips.js +2 -4
  1692. package/build-module/components/inserter/tips.js.map +1 -1
  1693. package/build-module/components/inserter/utils.native.js +2 -6
  1694. package/build-module/components/inserter/utils.native.js.map +1 -1
  1695. package/build-module/components/inserter-draggable-blocks/index.js +0 -4
  1696. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  1697. package/build-module/components/inserter-list-item/index.js +2 -9
  1698. package/build-module/components/inserter-list-item/index.js.map +1 -1
  1699. package/build-module/components/inserter-listbox/context.js.map +1 -1
  1700. package/build-module/components/inserter-listbox/group.js +0 -4
  1701. package/build-module/components/inserter-listbox/group.js.map +1 -1
  1702. package/build-module/components/inserter-listbox/index.js +1 -4
  1703. package/build-module/components/inserter-listbox/index.js.map +1 -1
  1704. package/build-module/components/inserter-listbox/item.js +9 -11
  1705. package/build-module/components/inserter-listbox/item.js.map +1 -1
  1706. package/build-module/components/inserter-listbox/row.js +1 -4
  1707. package/build-module/components/inserter-listbox/row.js.map +1 -1
  1708. package/build-module/components/inserter-menu-extension/index.js.map +1 -1
  1709. package/build-module/components/inspector-controls/block-support-slot-container.js +2 -2
  1710. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  1711. package/build-module/components/inspector-controls/block-support-tools-panel.js +7 -5
  1712. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  1713. package/build-module/components/inspector-controls/fill.js +4 -10
  1714. package/build-module/components/inspector-controls/fill.js.map +1 -1
  1715. package/build-module/components/inspector-controls/fill.native.js +4 -8
  1716. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  1717. package/build-module/components/inspector-controls/groups.js.map +1 -1
  1718. package/build-module/components/inspector-controls/index.js +7 -7
  1719. package/build-module/components/inspector-controls/index.js.map +1 -1
  1720. package/build-module/components/inspector-controls/slot.js +5 -9
  1721. package/build-module/components/inspector-controls/slot.js.map +1 -1
  1722. package/build-module/components/inspector-controls/slot.native.js +3 -6
  1723. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  1724. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js +1 -6
  1725. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  1726. package/build-module/components/inspector-controls-tabs/index.js +1 -4
  1727. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  1728. package/build-module/components/inspector-controls-tabs/position-controls-panel.js +3 -8
  1729. package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  1730. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js +0 -4
  1731. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  1732. package/build-module/components/inspector-controls-tabs/settings-tab.js +0 -3
  1733. package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  1734. package/build-module/components/inspector-controls-tabs/styles-tab.js +1 -4
  1735. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  1736. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js +14 -16
  1737. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  1738. package/build-module/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js.map +1 -1
  1739. package/build-module/components/inspector-controls-tabs/utils.js.map +1 -1
  1740. package/build-module/components/inspector-popover-header/index.js +0 -1
  1741. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  1742. package/build-module/components/justify-content-control/index.js +5 -7
  1743. package/build-module/components/justify-content-control/index.js.map +1 -1
  1744. package/build-module/components/justify-content-control/ui.js +0 -4
  1745. package/build-module/components/justify-content-control/ui.js.map +1 -1
  1746. package/build-module/components/keyboard-shortcuts/index.js +9 -3
  1747. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  1748. package/build-module/components/letter-spacing-control/index.js +4 -4
  1749. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  1750. package/build-module/components/line-height-control/index.js +22 -34
  1751. package/build-module/components/line-height-control/index.js.map +1 -1
  1752. package/build-module/components/line-height-control/index.native.js +4 -4
  1753. package/build-module/components/line-height-control/index.native.js.map +1 -1
  1754. package/build-module/components/line-height-control/utils.js +7 -3
  1755. package/build-module/components/line-height-control/utils.js.map +1 -1
  1756. package/build-module/components/link-control/constants.js +3 -2
  1757. package/build-module/components/link-control/constants.js.map +1 -1
  1758. package/build-module/components/link-control/index.js +44 -40
  1759. package/build-module/components/link-control/index.js.map +1 -1
  1760. package/build-module/components/link-control/is-url-like.js +5 -6
  1761. package/build-module/components/link-control/is-url-like.js.map +1 -1
  1762. package/build-module/components/link-control/link-preview.js +11 -10
  1763. package/build-module/components/link-control/link-preview.js.map +1 -1
  1764. package/build-module/components/link-control/search-create-button.js +3 -7
  1765. package/build-module/components/link-control/search-create-button.js.map +1 -1
  1766. package/build-module/components/link-control/search-input.js +18 -23
  1767. package/build-module/components/link-control/search-input.js.map +1 -1
  1768. package/build-module/components/link-control/search-item.js +6 -12
  1769. package/build-module/components/link-control/search-item.js.map +1 -1
  1770. package/build-module/components/link-control/search-results.js +14 -14
  1771. package/build-module/components/link-control/search-results.js.map +1 -1
  1772. package/build-module/components/link-control/settings-drawer.js +0 -3
  1773. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  1774. package/build-module/components/link-control/settings.js +2 -7
  1775. package/build-module/components/link-control/settings.js.map +1 -1
  1776. package/build-module/components/link-control/use-create-page.js +4 -8
  1777. package/build-module/components/link-control/use-create-page.js.map +1 -1
  1778. package/build-module/components/link-control/use-internal-value.js +8 -10
  1779. package/build-module/components/link-control/use-internal-value.js.map +1 -1
  1780. package/build-module/components/link-control/use-rich-url-data.js +9 -12
  1781. package/build-module/components/link-control/use-rich-url-data.js.map +1 -1
  1782. package/build-module/components/link-control/use-search-handler.js +10 -14
  1783. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  1784. package/build-module/components/link-control/viewer-slot.js.map +1 -1
  1785. package/build-module/components/list-view/appender.js +4 -8
  1786. package/build-module/components/list-view/appender.js.map +1 -1
  1787. package/build-module/components/list-view/aria-referenced-text.js +1 -2
  1788. package/build-module/components/list-view/aria-referenced-text.js.map +1 -1
  1789. package/build-module/components/list-view/block-contents.js +5 -5
  1790. package/build-module/components/list-view/block-contents.js.map +1 -1
  1791. package/build-module/components/list-view/block-select-button.js +32 -19
  1792. package/build-module/components/list-view/block-select-button.js.map +1 -1
  1793. package/build-module/components/list-view/block.js +25 -29
  1794. package/build-module/components/list-view/block.js.map +1 -1
  1795. package/build-module/components/list-view/branch.js +9 -28
  1796. package/build-module/components/list-view/branch.js.map +1 -1
  1797. package/build-module/components/list-view/context.js.map +1 -1
  1798. package/build-module/components/list-view/drop-indicator.js +34 -43
  1799. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  1800. package/build-module/components/list-view/expander.js +2 -2
  1801. package/build-module/components/list-view/expander.js.map +1 -1
  1802. package/build-module/components/list-view/index.js +18 -22
  1803. package/build-module/components/list-view/index.js.map +1 -1
  1804. package/build-module/components/list-view/leaf.js +2 -3
  1805. package/build-module/components/list-view/leaf.js.map +1 -1
  1806. package/build-module/components/list-view/use-block-selection.js +15 -22
  1807. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  1808. package/build-module/components/list-view/use-list-view-client-ids.js +2 -1
  1809. package/build-module/components/list-view/use-list-view-client-ids.js.map +1 -1
  1810. package/build-module/components/list-view/use-list-view-drop-zone.js +35 -54
  1811. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  1812. package/build-module/components/list-view/use-list-view-expand-selected-item.js +5 -4
  1813. package/build-module/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  1814. package/build-module/components/list-view/use-list-view-images.js +78 -0
  1815. package/build-module/components/list-view/use-list-view-images.js.map +1 -0
  1816. package/build-module/components/list-view/use-list-view-scroll-into-view.js +5 -5
  1817. package/build-module/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  1818. package/build-module/components/list-view/utils.js +3 -4
  1819. package/build-module/components/list-view/utils.js.map +1 -1
  1820. package/build-module/components/media-placeholder/index.js +12 -59
  1821. package/build-module/components/media-placeholder/index.js.map +1 -1
  1822. package/build-module/components/media-placeholder/index.native.js +9 -24
  1823. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  1824. package/build-module/components/media-replace-flow/index.js +9 -25
  1825. package/build-module/components/media-replace-flow/index.js.map +1 -1
  1826. package/build-module/components/media-replace-flow/index.native.js +3 -4
  1827. package/build-module/components/media-replace-flow/index.native.js.map +1 -1
  1828. package/build-module/components/media-upload/check.js +2 -2
  1829. package/build-module/components/media-upload/check.js.map +1 -1
  1830. package/build-module/components/media-upload/index.js +2 -3
  1831. package/build-module/components/media-upload/index.js.map +1 -1
  1832. package/build-module/components/media-upload/index.native.js +18 -29
  1833. package/build-module/components/media-upload/index.native.js.map +1 -1
  1834. package/build-module/components/media-upload-progress/index.native.js +4 -27
  1835. package/build-module/components/media-upload-progress/index.native.js.map +1 -1
  1836. package/build-module/components/multi-selection-inspector/index.js +3 -8
  1837. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  1838. package/build-module/components/navigable-toolbar/index.js +9 -26
  1839. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  1840. package/build-module/components/observe-typing/index.js +26 -38
  1841. package/build-module/components/observe-typing/index.js.map +1 -1
  1842. package/build-module/components/panel-color-settings/index.js +2 -5
  1843. package/build-module/components/panel-color-settings/index.js.map +1 -1
  1844. package/build-module/components/plain-text/index.js +3 -5
  1845. package/build-module/components/plain-text/index.js.map +1 -1
  1846. package/build-module/components/plain-text/index.native.js +8 -22
  1847. package/build-module/components/plain-text/index.native.js.map +1 -1
  1848. package/build-module/components/preview-options/index.js +1 -2
  1849. package/build-module/components/preview-options/index.js.map +1 -1
  1850. package/build-module/components/provider/block-refs-provider.js +0 -1
  1851. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  1852. package/build-module/components/provider/index.js +8 -5
  1853. package/build-module/components/provider/index.js.map +1 -1
  1854. package/build-module/components/provider/index.native.js +4 -3
  1855. package/build-module/components/provider/index.native.js.map +1 -1
  1856. package/build-module/components/provider/use-block-sync.js +23 -38
  1857. package/build-module/components/provider/use-block-sync.js.map +1 -1
  1858. package/build-module/components/provider/with-registry-provider.js +1 -5
  1859. package/build-module/components/provider/with-registry-provider.js.map +1 -1
  1860. package/build-module/components/publish-date-time-picker/index.js +1 -4
  1861. package/build-module/components/publish-date-time-picker/index.js.map +1 -1
  1862. package/build-module/components/recursion-provider/index.js +6 -7
  1863. package/build-module/components/recursion-provider/index.js.map +1 -1
  1864. package/build-module/components/resizable-box-popover/index.js +3 -3
  1865. package/build-module/components/resizable-box-popover/index.js.map +1 -1
  1866. package/build-module/components/resolution-tool/index.js +0 -1
  1867. package/build-module/components/resolution-tool/index.js.map +1 -1
  1868. package/build-module/components/responsive-block-control/index.js +4 -14
  1869. package/build-module/components/responsive-block-control/index.js.map +1 -1
  1870. package/build-module/components/responsive-block-control/label.js +1 -3
  1871. package/build-module/components/responsive-block-control/label.js.map +1 -1
  1872. package/build-module/components/rich-text/content.js +3 -8
  1873. package/build-module/components/rich-text/content.js.map +1 -1
  1874. package/build-module/components/rich-text/embed-handler-picker.native.js +0 -3
  1875. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  1876. package/build-module/components/rich-text/file-paste-handler.native.js.map +1 -1
  1877. package/build-module/components/rich-text/format-edit.js +3 -7
  1878. package/build-module/components/rich-text/format-edit.js.map +1 -1
  1879. package/build-module/components/rich-text/format-toolbar/index.js +5 -9
  1880. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  1881. package/build-module/components/rich-text/format-toolbar/index.native.js +1 -3
  1882. package/build-module/components/rich-text/format-toolbar/index.native.js.map +1 -1
  1883. package/build-module/components/rich-text/format-toolbar-container.js +4 -14
  1884. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  1885. package/build-module/components/rich-text/format-toolbar-container.native.js +0 -3
  1886. package/build-module/components/rich-text/format-toolbar-container.native.js.map +1 -1
  1887. package/build-module/components/rich-text/get-rich-text-values.js +4 -18
  1888. package/build-module/components/rich-text/get-rich-text-values.js.map +1 -1
  1889. package/build-module/components/rich-text/index.js +19 -37
  1890. package/build-module/components/rich-text/index.js.map +1 -1
  1891. package/build-module/components/rich-text/index.native.js +49 -76
  1892. package/build-module/components/rich-text/index.native.js.map +1 -1
  1893. package/build-module/components/rich-text/input-event.js +1 -2
  1894. package/build-module/components/rich-text/input-event.js.map +1 -1
  1895. package/build-module/components/rich-text/input-event.native.js +0 -1
  1896. package/build-module/components/rich-text/input-event.native.js.map +1 -1
  1897. package/build-module/components/rich-text/prevent-event-discovery.js +0 -4
  1898. package/build-module/components/rich-text/prevent-event-discovery.js.map +1 -1
  1899. package/build-module/components/rich-text/remove-browser-shortcuts.native.js.map +1 -1
  1900. package/build-module/components/rich-text/shortcut.js +1 -2
  1901. package/build-module/components/rich-text/shortcut.js.map +1 -1
  1902. package/build-module/components/rich-text/shortcut.native.js +0 -1
  1903. package/build-module/components/rich-text/shortcut.native.js.map +1 -1
  1904. package/build-module/components/rich-text/split-value.js +19 -16
  1905. package/build-module/components/rich-text/split-value.js.map +1 -1
  1906. package/build-module/components/rich-text/toolbar-button.js +2 -5
  1907. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  1908. package/build-module/components/rich-text/use-before-input-rules.js +7 -16
  1909. package/build-module/components/rich-text/use-before-input-rules.js.map +1 -1
  1910. package/build-module/components/rich-text/use-delete.js +5 -10
  1911. package/build-module/components/rich-text/use-delete.js.map +1 -1
  1912. package/build-module/components/rich-text/use-enter.js +3 -10
  1913. package/build-module/components/rich-text/use-enter.js.map +1 -1
  1914. package/build-module/components/rich-text/use-firefox-compat.js +5 -35
  1915. package/build-module/components/rich-text/use-firefox-compat.js.map +1 -1
  1916. package/build-module/components/rich-text/use-format-types.js +9 -20
  1917. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  1918. package/build-module/components/rich-text/use-input-events.js +0 -1
  1919. package/build-module/components/rich-text/use-input-events.js.map +1 -1
  1920. package/build-module/components/rich-text/use-input-rules.js +10 -28
  1921. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  1922. package/build-module/components/rich-text/use-insert-replacement-text.js +2 -3
  1923. package/build-module/components/rich-text/use-insert-replacement-text.js.map +1 -1
  1924. package/build-module/components/rich-text/use-mark-persistent.js +6 -6
  1925. package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
  1926. package/build-module/components/rich-text/use-paste-handler.js +26 -62
  1927. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  1928. package/build-module/components/rich-text/use-remove-browser-shortcuts.js +1 -2
  1929. package/build-module/components/rich-text/use-remove-browser-shortcuts.js.map +1 -1
  1930. package/build-module/components/rich-text/use-shortcuts.js +0 -1
  1931. package/build-module/components/rich-text/use-shortcuts.js.map +1 -1
  1932. package/build-module/components/rich-text/use-undo-automatic-change.js +1 -9
  1933. package/build-module/components/rich-text/use-undo-automatic-change.js.map +1 -1
  1934. package/build-module/components/rich-text/utils.js +2 -6
  1935. package/build-module/components/rich-text/utils.js.map +1 -1
  1936. package/build-module/components/selection-scroll-into-view/index.js +1 -1
  1937. package/build-module/components/selection-scroll-into-view/index.js.map +1 -1
  1938. package/build-module/components/skip-to-selected-block/index.js +2 -7
  1939. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  1940. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js +1 -3
  1941. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  1942. package/build-module/components/spacing-sizes-control/index.js +13 -14
  1943. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  1944. package/build-module/components/spacing-sizes-control/input-controls/axial.js +6 -9
  1945. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  1946. package/build-module/components/spacing-sizes-control/input-controls/separated.js +2 -4
  1947. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  1948. package/build-module/components/spacing-sizes-control/input-controls/single.js +2 -3
  1949. package/build-module/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  1950. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +6 -19
  1951. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  1952. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js +1 -3
  1953. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  1954. package/build-module/components/spacing-sizes-control/utils.js +33 -50
  1955. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  1956. package/build-module/components/text-decoration-control/index.js +2 -3
  1957. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1958. package/build-module/components/text-transform-control/index.js +2 -3
  1959. package/build-module/components/text-transform-control/index.js.map +1 -1
  1960. package/build-module/components/tool-selector/index.js +4 -7
  1961. package/build-module/components/tool-selector/index.js.map +1 -1
  1962. package/build-module/components/typewriter/index.js +30 -46
  1963. package/build-module/components/typewriter/index.js.map +1 -1
  1964. package/build-module/components/ungroup-button/index.native.js +1 -7
  1965. package/build-module/components/ungroup-button/index.native.js.map +1 -1
  1966. package/build-module/components/unit-control/index.js +1 -2
  1967. package/build-module/components/unit-control/index.js.map +1 -1
  1968. package/build-module/components/url-input/button.js +2 -9
  1969. package/build-module/components/url-input/button.js.map +1 -1
  1970. package/build-module/components/url-input/index.js +41 -81
  1971. package/build-module/components/url-input/index.js.map +1 -1
  1972. package/build-module/components/url-input/index.native.js +1 -2
  1973. package/build-module/components/url-input/index.native.js.map +1 -1
  1974. package/build-module/components/url-popover/image-url-input-ui.js +3 -31
  1975. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  1976. package/build-module/components/url-popover/index.js +5 -12
  1977. package/build-module/components/url-popover/index.js.map +1 -1
  1978. package/build-module/components/url-popover/link-editor.js +2 -3
  1979. package/build-module/components/url-popover/link-editor.js.map +1 -1
  1980. package/build-module/components/url-popover/link-viewer-url.js +1 -4
  1981. package/build-module/components/url-popover/link-viewer-url.js.map +1 -1
  1982. package/build-module/components/url-popover/link-viewer.js +2 -3
  1983. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  1984. package/build-module/components/use-block-commands/index.js +238 -0
  1985. package/build-module/components/use-block-commands/index.js.map +1 -0
  1986. package/build-module/components/use-block-display-information/index.js +3 -6
  1987. package/build-module/components/use-block-display-information/index.js.map +1 -1
  1988. package/build-module/components/use-block-drop-zone/index.js +14 -19
  1989. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  1990. package/build-module/components/use-block-drop-zone/index.native.js +13 -16
  1991. package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
  1992. package/build-module/components/use-display-block-controls/index.js +1 -4
  1993. package/build-module/components/use-display-block-controls/index.js.map +1 -1
  1994. package/build-module/components/use-display-block-controls/index.native.js +1 -3
  1995. package/build-module/components/use-display-block-controls/index.native.js.map +1 -1
  1996. package/build-module/components/use-moving-animation/index.js +6 -17
  1997. package/build-module/components/use-moving-animation/index.js.map +1 -1
  1998. package/build-module/components/use-on-block-drop/index.js +21 -30
  1999. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  2000. package/build-module/components/use-on-block-drop/index.native.js +13 -12
  2001. package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
  2002. package/build-module/components/use-on-block-drop/types.js.map +1 -1
  2003. package/build-module/components/use-paste-styles/index.js +12 -21
  2004. package/build-module/components/use-paste-styles/index.js.map +1 -1
  2005. package/build-module/components/use-resize-canvas/index.js +1 -13
  2006. package/build-module/components/use-resize-canvas/index.js.map +1 -1
  2007. package/build-module/components/use-setting/index.js +17 -33
  2008. package/build-module/components/use-setting/index.js.map +1 -1
  2009. package/build-module/components/video-player/gridicon-play.native.js +0 -1
  2010. package/build-module/components/video-player/gridicon-play.native.js.map +1 -1
  2011. package/build-module/components/video-player/index.native.js +12 -17
  2012. package/build-module/components/video-player/index.native.js.map +1 -1
  2013. package/build-module/components/warning/index.js +2 -5
  2014. package/build-module/components/warning/index.js.map +1 -1
  2015. package/build-module/components/warning/index.native.js +2 -5
  2016. package/build-module/components/warning/index.native.js.map +1 -1
  2017. package/build-module/components/writing-flow/index.js +5 -9
  2018. package/build-module/components/writing-flow/index.js.map +1 -1
  2019. package/build-module/components/writing-flow/use-arrow-nav.js +37 -53
  2020. package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
  2021. package/build-module/components/writing-flow/use-click-selection.js +3 -6
  2022. package/build-module/components/writing-flow/use-click-selection.js.map +1 -1
  2023. package/build-module/components/writing-flow/use-drag-selection.js +27 -29
  2024. package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
  2025. package/build-module/components/writing-flow/use-input.js +8 -17
  2026. package/build-module/components/writing-flow/use-input.js.map +1 -1
  2027. package/build-module/components/writing-flow/use-multi-selection.js +10 -14
  2028. package/build-module/components/writing-flow/use-multi-selection.js.map +1 -1
  2029. package/build-module/components/writing-flow/use-select-all.js +4 -9
  2030. package/build-module/components/writing-flow/use-select-all.js.map +1 -1
  2031. package/build-module/components/writing-flow/use-selection-observer.js +20 -44
  2032. package/build-module/components/writing-flow/use-selection-observer.js.map +1 -1
  2033. package/build-module/components/writing-flow/use-tab-nav.js +28 -34
  2034. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  2035. package/build-module/components/writing-mode-control/index.js +2 -3
  2036. package/build-module/components/writing-mode-control/index.js.map +1 -1
  2037. package/build-module/elements/index.js.map +1 -1
  2038. package/build-module/hooks/align.js +25 -36
  2039. package/build-module/hooks/align.js.map +1 -1
  2040. package/build-module/hooks/align.native.js +6 -4
  2041. package/build-module/hooks/align.native.js.map +1 -1
  2042. package/build-module/hooks/anchor.js +11 -15
  2043. package/build-module/hooks/anchor.js.map +1 -1
  2044. package/build-module/hooks/aria-label.js +4 -6
  2045. package/build-module/hooks/aria-label.js.map +1 -1
  2046. package/build-module/hooks/behaviors.js +12 -16
  2047. package/build-module/hooks/behaviors.js.map +1 -1
  2048. package/build-module/hooks/border.js +46 -64
  2049. package/build-module/hooks/border.js.map +1 -1
  2050. package/build-module/hooks/color.js +32 -52
  2051. package/build-module/hooks/color.js.map +1 -1
  2052. package/build-module/hooks/compat.js +0 -4
  2053. package/build-module/hooks/compat.js.map +1 -1
  2054. package/build-module/hooks/content-lock-ui.js +5 -13
  2055. package/build-module/hooks/content-lock-ui.js.map +1 -1
  2056. package/build-module/hooks/contrast-checker.js +4 -11
  2057. package/build-module/hooks/contrast-checker.js.map +1 -1
  2058. package/build-module/hooks/custom-class-name.js +24 -26
  2059. package/build-module/hooks/custom-class-name.js.map +1 -1
  2060. package/build-module/hooks/custom-class-name.native.js +5 -6
  2061. package/build-module/hooks/custom-class-name.native.js.map +1 -1
  2062. package/build-module/hooks/custom-fields.js +113 -0
  2063. package/build-module/hooks/custom-fields.js.map +1 -0
  2064. package/build-module/hooks/dimensions.js +6 -11
  2065. package/build-module/hooks/dimensions.js.map +1 -1
  2066. package/build-module/hooks/duotone.js +43 -49
  2067. package/build-module/hooks/duotone.js.map +1 -1
  2068. package/build-module/hooks/font-family.js +9 -20
  2069. package/build-module/hooks/font-family.js.map +1 -1
  2070. package/build-module/hooks/font-size.js +36 -47
  2071. package/build-module/hooks/font-size.js.map +1 -1
  2072. package/build-module/hooks/gap.js +2 -5
  2073. package/build-module/hooks/gap.js.map +1 -1
  2074. package/build-module/hooks/generated-class-name.js +2 -2
  2075. package/build-module/hooks/generated-class-name.js.map +1 -1
  2076. package/build-module/hooks/index.js +1 -0
  2077. package/build-module/hooks/index.js.map +1 -1
  2078. package/build-module/hooks/index.native.js.map +1 -1
  2079. package/build-module/hooks/layout.js +46 -54
  2080. package/build-module/hooks/layout.js.map +1 -1
  2081. package/build-module/hooks/layout.native.js +5 -3
  2082. package/build-module/hooks/layout.native.js.map +1 -1
  2083. package/build-module/hooks/line-height.js +7 -8
  2084. package/build-module/hooks/line-height.js.map +1 -1
  2085. package/build-module/hooks/lock.js +5 -6
  2086. package/build-module/hooks/lock.js.map +1 -1
  2087. package/build-module/hooks/margin.js +1 -10
  2088. package/build-module/hooks/margin.js.map +1 -1
  2089. package/build-module/hooks/metadata-name.js +5 -6
  2090. package/build-module/hooks/metadata-name.js.map +1 -1
  2091. package/build-module/hooks/metadata.js +3 -7
  2092. package/build-module/hooks/metadata.js.map +1 -1
  2093. package/build-module/hooks/padding.js +1 -10
  2094. package/build-module/hooks/padding.js.map +1 -1
  2095. package/build-module/hooks/position.js +36 -38
  2096. package/build-module/hooks/position.js.map +1 -1
  2097. package/build-module/hooks/settings.js +4 -7
  2098. package/build-module/hooks/settings.js.map +1 -1
  2099. package/build-module/hooks/style.js +30 -44
  2100. package/build-module/hooks/style.js.map +1 -1
  2101. package/build-module/hooks/supports.js +22 -33
  2102. package/build-module/hooks/supports.js.map +1 -1
  2103. package/build-module/hooks/typography.js +11 -16
  2104. package/build-module/hooks/typography.js.map +1 -1
  2105. package/build-module/hooks/typography.native.js +5 -7
  2106. package/build-module/hooks/typography.native.js.map +1 -1
  2107. package/build-module/hooks/use-border-props.js +7 -6
  2108. package/build-module/hooks/use-border-props.js.map +1 -1
  2109. package/build-module/hooks/use-cached-truthy.js +1 -1
  2110. package/build-module/hooks/use-cached-truthy.js.map +1 -1
  2111. package/build-module/hooks/use-color-props.js +18 -17
  2112. package/build-module/hooks/use-color-props.js.map +1 -1
  2113. package/build-module/hooks/use-editor-wrapper-styles.native.js +8 -26
  2114. package/build-module/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  2115. package/build-module/hooks/use-spacing-props.js +5 -3
  2116. package/build-module/hooks/use-spacing-props.js.map +1 -1
  2117. package/build-module/hooks/use-typography-props.js +4 -4
  2118. package/build-module/hooks/use-typography-props.js.map +1 -1
  2119. package/build-module/hooks/utils.js +12 -18
  2120. package/build-module/hooks/utils.js.map +1 -1
  2121. package/build-module/index.js.map +1 -1
  2122. package/build-module/index.native.js.map +1 -1
  2123. package/build-module/layouts/constrained.js +14 -26
  2124. package/build-module/layouts/constrained.js.map +1 -1
  2125. package/build-module/layouts/definitions.js.map +1 -1
  2126. package/build-module/layouts/flex.js +18 -41
  2127. package/build-module/layouts/flex.js.map +1 -1
  2128. package/build-module/layouts/flow.js +8 -17
  2129. package/build-module/layouts/flow.js.map +1 -1
  2130. package/build-module/layouts/grid.js +20 -25
  2131. package/build-module/layouts/grid.js.map +1 -1
  2132. package/build-module/layouts/index.js +2 -2
  2133. package/build-module/layouts/index.js.map +1 -1
  2134. package/build-module/layouts/utils.js +5 -9
  2135. package/build-module/layouts/utils.js.map +1 -1
  2136. package/build-module/lock-unlock.js.map +1 -1
  2137. package/build-module/private-apis.js +3 -4
  2138. package/build-module/private-apis.js.map +1 -1
  2139. package/build-module/private-apis.native.js +3 -2
  2140. package/build-module/private-apis.native.js.map +1 -1
  2141. package/build-module/store/actions.js +188 -196
  2142. package/build-module/store/actions.js.map +1 -1
  2143. package/build-module/store/array.js +1 -1
  2144. package/build-module/store/array.js.map +1 -1
  2145. package/build-module/store/constants.js.map +1 -1
  2146. package/build-module/store/defaults.js +1 -1
  2147. package/build-module/store/defaults.js.map +1 -1
  2148. package/build-module/store/defaults.native.js +2 -1
  2149. package/build-module/store/defaults.native.js.map +1 -1
  2150. package/build-module/store/index.js +13 -9
  2151. package/build-module/store/index.js.map +1 -1
  2152. package/build-module/store/private-actions.js +25 -78
  2153. package/build-module/store/private-actions.js.map +1 -1
  2154. package/build-module/store/private-selectors.js +6 -76
  2155. package/build-module/store/private-selectors.js.map +1 -1
  2156. package/build-module/store/reducer.js +161 -328
  2157. package/build-module/store/reducer.js.map +1 -1
  2158. package/build-module/store/selectors.js +253 -331
  2159. package/build-module/store/selectors.js.map +1 -1
  2160. package/build-module/store/utils.js.map +1 -1
  2161. package/build-module/utils/block-variation-transforms.js +2 -3
  2162. package/build-module/utils/block-variation-transforms.js.map +1 -1
  2163. package/build-module/utils/dom.js +4 -10
  2164. package/build-module/utils/dom.js.map +1 -1
  2165. package/build-module/utils/index.js.map +1 -1
  2166. package/build-module/utils/math.js +5 -7
  2167. package/build-module/utils/math.js.map +1 -1
  2168. package/build-module/utils/object.js +15 -21
  2169. package/build-module/utils/object.js.map +1 -1
  2170. package/build-module/utils/order-inserter-block-items.js +2 -3
  2171. package/build-module/utils/order-inserter-block-items.js.map +1 -1
  2172. package/build-module/utils/parse-css-unit-to-px.js +14 -64
  2173. package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
  2174. package/build-module/utils/pasting.js +8 -12
  2175. package/build-module/utils/pasting.js.map +1 -1
  2176. package/build-module/utils/pre-parse-patterns.js +1 -14
  2177. package/build-module/utils/pre-parse-patterns.js.map +1 -1
  2178. package/build-module/utils/selection.js +1 -2
  2179. package/build-module/utils/selection.js.map +1 -1
  2180. package/build-module/utils/sorting.js +3 -7
  2181. package/build-module/utils/sorting.js.map +1 -1
  2182. package/build-module/utils/transform-styles/ast/index.js +1 -0
  2183. package/build-module/utils/transform-styles/ast/index.js.map +1 -1
  2184. package/build-module/utils/transform-styles/ast/parse.js +95 -134
  2185. package/build-module/utils/transform-styles/ast/parse.js.map +1 -1
  2186. package/build-module/utils/transform-styles/ast/stringify/compiler.js +5 -6
  2187. package/build-module/utils/transform-styles/ast/stringify/compiler.js.map +1 -1
  2188. package/build-module/utils/transform-styles/ast/stringify/compress.js +28 -19
  2189. package/build-module/utils/transform-styles/ast/stringify/compress.js.map +1 -1
  2190. package/build-module/utils/transform-styles/ast/stringify/identity.js +32 -23
  2191. package/build-module/utils/transform-styles/ast/stringify/identity.js.map +1 -1
  2192. package/build-module/utils/transform-styles/ast/stringify/index.js +1 -0
  2193. package/build-module/utils/transform-styles/ast/stringify/index.js.map +1 -1
  2194. package/build-module/utils/transform-styles/index.js +2 -7
  2195. package/build-module/utils/transform-styles/index.js.map +1 -1
  2196. package/build-module/utils/transform-styles/transforms/url-rewrite.js +12 -24
  2197. package/build-module/utils/transform-styles/transforms/url-rewrite.js.map +1 -1
  2198. package/build-module/utils/transform-styles/transforms/wrap.js +7 -8
  2199. package/build-module/utils/transform-styles/transforms/wrap.js.map +1 -1
  2200. package/build-module/utils/transform-styles/traverse.js +1 -4
  2201. package/build-module/utils/transform-styles/traverse.js.map +1 -1
  2202. package/build-module/utils/use-should-contextual-toolbar-show.js +2 -5
  2203. package/build-module/utils/use-should-contextual-toolbar-show.js.map +1 -1
  2204. package/build-style/style-rtl.css +52 -6
  2205. package/build-style/style.css +52 -6
  2206. package/package.json +33 -32
  2207. package/src/components/block-caption/README.md +109 -0
  2208. package/src/components/block-controls/use-has-block-controls.js +35 -0
  2209. package/src/components/block-editing-mode/index.js +3 -7
  2210. package/src/components/block-inspector/index.js +1 -2
  2211. package/src/components/block-list/block-outline.native.js +2 -2
  2212. package/src/components/block-list/block.js +1 -2
  2213. package/src/components/block-list/index.native.js +14 -14
  2214. package/src/components/block-list/test/block-invalid-warning.native.js +7 -0
  2215. package/src/components/block-list/use-in-between-inserter.js +1 -2
  2216. package/src/components/block-list-appender/index.js +1 -2
  2217. package/src/components/block-parent-selector/index.js +1 -2
  2218. package/src/components/block-preview/index.js +0 -1
  2219. package/src/components/block-toolbar/index.js +1 -2
  2220. package/src/components/block-toolbar/style.scss +10 -0
  2221. package/src/components/block-tools/block-contextual-toolbar.js +87 -9
  2222. package/src/components/block-tools/style.scss +34 -10
  2223. package/src/components/copy-handler/index.js +1 -0
  2224. package/src/components/default-block-appender/index.native.js +13 -11
  2225. package/src/components/dimensions-tool/index.js +1 -1
  2226. package/src/components/global-styles/test/typography-utils.js +55 -0
  2227. package/src/components/global-styles/typography-utils.js +12 -3
  2228. package/src/components/global-styles/use-global-styles-output.js +1 -2
  2229. package/src/components/iframe/index.js +1 -0
  2230. package/src/components/index.js +7 -0
  2231. package/src/components/inserter/hooks/use-patterns-state.js +1 -1
  2232. package/src/components/inserter/menu.js +1 -0
  2233. package/src/components/inserter/preview-panel.js +15 -11
  2234. package/src/components/inserter/search-results.js +2 -1
  2235. package/src/components/inserter/stories/{index.js → index.story.js} +4 -4
  2236. package/src/components/inserter/test/search-items.js +4 -1
  2237. package/src/components/keyboard-shortcuts/index.js +10 -0
  2238. package/src/components/line-height-control/index.js +14 -11
  2239. package/src/components/line-height-control/test/index.js +7 -5
  2240. package/src/components/line-height-control/utils.js +6 -1
  2241. package/src/components/link-control/index.js +27 -7
  2242. package/src/components/link-control/link-preview.js +4 -0
  2243. package/src/components/link-control/style.scss +9 -0
  2244. package/src/components/link-control/test/index.js +63 -4
  2245. package/src/components/list-view/block-select-button.js +19 -0
  2246. package/src/components/list-view/block.js +1 -4
  2247. package/src/components/list-view/style.scss +25 -0
  2248. package/src/components/list-view/use-list-view-images.js +79 -0
  2249. package/src/components/rich-text/index.js +8 -1
  2250. package/src/components/rich-text/use-firefox-compat.js +1 -27
  2251. package/src/components/rich-text/use-format-types.js +3 -3
  2252. package/src/components/rich-text/use-paste-handler.js +4 -23
  2253. package/src/components/use-block-commands/index.js +284 -0
  2254. package/src/components/use-block-drop-zone/index.js +1 -2
  2255. package/src/components/use-setting/README.md +39 -0
  2256. package/src/components/writing-flow/use-drag-selection.js +5 -1
  2257. package/src/hooks/custom-fields.js +139 -0
  2258. package/src/hooks/index.js +1 -0
  2259. package/src/hooks/layout.js +13 -4
  2260. package/src/private-apis.js +0 -2
  2261. package/src/store/actions.js +49 -2
  2262. package/src/store/private-actions.js +0 -39
  2263. package/src/store/private-selectors.js +1 -67
  2264. package/src/store/selectors.js +64 -2
  2265. package/src/store/test/actions.js +28 -0
  2266. package/src/store/test/private-actions.js +0 -28
  2267. package/src/store/test/private-selectors.js +88 -261
  2268. package/src/store/test/selectors.js +203 -1
  2269. package/src/utils/transform-styles/ast/parse.js +31 -0
  2270. package/src/utils/transform-styles/ast/stringify/compress.js +13 -0
  2271. package/src/utils/transform-styles/ast/stringify/identity.js +13 -0
  2272. package/src/utils/transform-styles/transforms/test/__snapshots__/wrap.js.snap +8 -0
  2273. package/src/utils/transform-styles/transforms/test/wrap.js +11 -0
  2274. package/tsconfig.tsbuildinfo +1 -1
  2275. /package/src/components/block-draggable/stories/{index.js → index.story.js} +0 -0
  2276. /package/src/components/block-mover/stories/{index.js → index.story.js} +0 -0
  2277. /package/src/components/dimensions-tool/stories/{aspect-ratio-tool.js → aspect-ratio-tool.story.js} +0 -0
  2278. /package/src/components/dimensions-tool/stories/{index.js → index.story.js} +0 -0
  2279. /package/src/components/dimensions-tool/stories/{scale-tool.js → scale-tool.story.js} +0 -0
  2280. /package/src/components/dimensions-tool/stories/{width-height-tool.js → width-height-tool.story.js} +0 -0
  2281. /package/src/components/height-control/stories/{index.js → index.story.js} +0 -0
  2282. /package/src/components/line-height-control/stories/{index.js → index.story.js} +0 -0
  2283. /package/src/components/resolution-tool/stories/{index.js → index.story.js} +0 -0
  2284. /package/src/components/text-decoration-control/stories/{index.js → index.story.js} +0 -0
  2285. /package/src/components/text-transform-control/stories/{index.js → index.story.js} +0 -0
  2286. /package/src/components/url-popover/stories/{index.js → index.story.js} +0 -0
@@ -5,12 +5,13 @@ import { computeCaretRect, focus, isHorizontalEdge, isVerticalEdge, placeCaretAt
5
5
  import { UP, DOWN, LEFT, RIGHT } from '@wordpress/keycodes';
6
6
  import { useDispatch, useSelect } from '@wordpress/data';
7
7
  import { useRefEffect } from '@wordpress/compose';
8
+
8
9
  /**
9
10
  * Internal dependencies
10
11
  */
11
-
12
12
  import { getBlockClientId, isInSameBlock } from '../../utils/dom';
13
13
  import { store as blockEditorStore } from '../../store';
14
+
14
15
  /**
15
16
  * Returns true if the element should consider edge navigation upon a keyboard
16
17
  * event of the given directional key code, or false otherwise.
@@ -21,32 +22,32 @@ import { store as blockEditorStore } from '../../store';
21
22
  *
22
23
  * @return {boolean} Whether element should consider edge navigation.
23
24
  */
24
-
25
25
  export function isNavigationCandidate(element, keyCode, hasModifier) {
26
26
  const isVertical = keyCode === UP || keyCode === DOWN;
27
27
  const {
28
28
  tagName
29
29
  } = element;
30
- const elementType = element.getAttribute('type'); // Native inputs should not navigate vertically, unless they are simple types that don't need up/down arrow keys.
30
+ const elementType = element.getAttribute('type');
31
31
 
32
+ // Native inputs should not navigate vertically, unless they are simple types that don't need up/down arrow keys.
32
33
  if (isVertical && !hasModifier) {
33
34
  if (tagName === 'INPUT') {
34
35
  const verticalInputTypes = ['date', 'datetime-local', 'month', 'number', 'range', 'time', 'week'];
35
36
  return !verticalInputTypes.includes(elementType);
36
37
  }
37
-
38
38
  return true;
39
- } // Native inputs should not navigate horizontally, unless they are simple types that don't need left/right arrow keys.
40
-
39
+ }
41
40
 
41
+ // Native inputs should not navigate horizontally, unless they are simple types that don't need left/right arrow keys.
42
42
  if (tagName === 'INPUT') {
43
43
  const simpleInputTypes = ['button', 'checkbox', 'number', 'color', 'file', 'image', 'radio', 'reset', 'submit'];
44
44
  return simpleInputTypes.includes(elementType);
45
- } // Native textareas should not navigate horizontally.
46
-
45
+ }
47
46
 
47
+ // Native textareas should not navigate horizontally.
48
48
  return tagName !== 'TEXTAREA';
49
49
  }
50
+
50
51
  /**
51
52
  * Returns the optimal tab target from the given focused element in the desired
52
53
  * direction. A preference is made toward text fields, falling back to the block
@@ -61,54 +62,46 @@ export function isNavigationCandidate(element, keyCode, hasModifier) {
61
62
  *
62
63
  * @return {?Element} Optimal tab target, if one exists.
63
64
  */
64
-
65
65
  export function getClosestTabbable(target, isReverse, containerElement, onlyVertical) {
66
66
  // Since the current focus target is not guaranteed to be a text field, find
67
67
  // all focusables. Tabbability is considered later.
68
68
  let focusableNodes = focus.focusable.find(containerElement);
69
-
70
69
  if (isReverse) {
71
70
  focusableNodes.reverse();
72
- } // Consider as candidates those focusables after the current target. It's
71
+ }
72
+
73
+ // Consider as candidates those focusables after the current target. It's
73
74
  // assumed this can only be reached if the target is focusable (on its
74
75
  // keydown event), so no need to verify it exists in the set.
75
-
76
-
77
76
  focusableNodes = focusableNodes.slice(focusableNodes.indexOf(target) + 1);
78
77
  let targetRect;
79
-
80
78
  if (onlyVertical) {
81
79
  targetRect = target.getBoundingClientRect();
82
80
  }
83
-
84
81
  function isTabCandidate(node) {
85
82
  // Skip if there's only one child that is content editable (and thus a
86
83
  // better candidate).
87
84
  if (node.children.length === 1 && isInSameBlock(node, node.firstElementChild) && node.firstElementChild.getAttribute('contenteditable') === 'true') {
88
85
  return;
89
- } // Not a candidate if the node is not tabbable.
90
-
86
+ }
91
87
 
88
+ // Not a candidate if the node is not tabbable.
92
89
  if (!focus.tabbable.isTabbableIndex(node)) {
93
90
  return false;
94
- } // Skip focusable elements such as links within content editable nodes.
95
-
91
+ }
96
92
 
93
+ // Skip focusable elements such as links within content editable nodes.
97
94
  if (node.isContentEditable && node.contentEditable !== 'true') {
98
95
  return false;
99
96
  }
100
-
101
97
  if (onlyVertical) {
102
98
  const nodeRect = node.getBoundingClientRect();
103
-
104
99
  if (nodeRect.left >= targetRect.right || nodeRect.right <= targetRect.left) {
105
100
  return false;
106
101
  }
107
102
  }
108
-
109
103
  return true;
110
104
  }
111
-
112
105
  return focusableNodes.find(isTabCandidate);
113
106
  }
114
107
  export default function useArrowNav() {
@@ -127,23 +120,19 @@ export default function useArrowNav() {
127
120
  // vertical position of the start position can be restored. This is to
128
121
  // recreate browser behaviour across blocks.
129
122
  let verticalRect;
130
-
131
123
  function onMouseDown() {
132
124
  verticalRect = null;
133
125
  }
134
-
135
126
  function isClosestTabbableABlock(target, isReverse) {
136
127
  const closestTabbable = getClosestTabbable(target, isReverse, node);
137
128
  return closestTabbable && getBlockClientId(closestTabbable);
138
129
  }
139
-
140
130
  function onKeyDown(event) {
141
131
  // Abort if navigation has already been handled (e.g. RichText
142
132
  // inline boundaries).
143
133
  if (event.defaultPrevented) {
144
134
  return;
145
135
  }
146
-
147
136
  const {
148
137
  keyCode,
149
138
  target,
@@ -168,74 +157,70 @@ export default function useArrowNav() {
168
157
  const {
169
158
  defaultView
170
159
  } = ownerDocument;
171
-
172
160
  if (!isNav) {
173
161
  return;
174
- } // If there is a multi-selection, the arrow keys should collapse the
175
- // selection to the start or end of the selection.
176
-
162
+ }
177
163
 
164
+ // If there is a multi-selection, the arrow keys should collapse the
165
+ // selection to the start or end of the selection.
178
166
  if (hasMultiSelection()) {
179
167
  if (shiftKey) {
180
168
  return;
181
- } // Only handle if we have a full selection (not a native partial
182
- // selection).
183
-
169
+ }
184
170
 
171
+ // Only handle if we have a full selection (not a native partial
172
+ // selection).
185
173
  if (!__unstableIsFullySelected()) {
186
174
  return;
187
175
  }
188
-
189
176
  event.preventDefault();
190
-
191
177
  if (isReverse) {
192
178
  selectBlock(getMultiSelectedBlocksStartClientId());
193
179
  } else {
194
180
  selectBlock(getMultiSelectedBlocksEndClientId(), -1);
195
181
  }
196
-
197
182
  return;
198
- } // Abort if our current target is not a candidate for navigation
199
- // (e.g. preserve native input behaviors).
200
-
183
+ }
201
184
 
185
+ // Abort if our current target is not a candidate for navigation
186
+ // (e.g. preserve native input behaviors).
202
187
  if (!isNavigationCandidate(target, keyCode, hasModifier)) {
203
188
  return;
204
- } // When presing any key other than up or down, the initial vertical
189
+ }
190
+
191
+ // When presing any key other than up or down, the initial vertical
205
192
  // position must ALWAYS be reset. The vertical position is saved so
206
193
  // it can be restored as well as possible on sebsequent vertical
207
194
  // arrow key presses. It may not always be possible to restore the
208
195
  // exact same position (such as at an empty line), so it wouldn't be
209
196
  // good to compute the position right before any vertical arrow key
210
197
  // press.
211
-
212
-
213
198
  if (!isVertical) {
214
199
  verticalRect = null;
215
200
  } else if (!verticalRect) {
216
201
  verticalRect = computeCaretRect(defaultView);
217
- } // In the case of RTL scripts, right means previous and left means
218
- // next, which is the exact reverse of LTR.
219
-
202
+ }
220
203
 
204
+ // In the case of RTL scripts, right means previous and left means
205
+ // next, which is the exact reverse of LTR.
221
206
  const isReverseDir = isRTL(target) ? !isReverse : isReverse;
222
207
  const {
223
208
  keepCaretInsideBlock
224
209
  } = getSettings();
225
-
226
210
  if (shiftKey) {
227
211
  if (isClosestTabbableABlock(target, isReverse) && isNavEdge(target, isReverse)) {
228
- node.contentEditable = true; // Firefox doesn't automatically move focus.
229
-
212
+ node.contentEditable = true;
213
+ // Firefox doesn't automatically move focus.
230
214
  node.focus();
231
215
  }
232
- } else if (isVertical && isVerticalEdge(target, isReverse) && ( // When Alt is pressed, only intercept if the caret is also at
216
+ } else if (isVertical && isVerticalEdge(target, isReverse) && (
217
+ // When Alt is pressed, only intercept if the caret is also at
233
218
  // the horizontal edge.
234
219
  altKey ? isHorizontalEdge(target, isReverseDir) : true) && !keepCaretInsideBlock) {
235
220
  const closestTabbable = getClosestTabbable(target, isReverse, node, true);
236
-
237
221
  if (closestTabbable) {
238
- placeCaretAtVerticalEdge(closestTabbable, // When Alt is pressed, place the caret at the furthest
222
+ placeCaretAtVerticalEdge(closestTabbable,
223
+ // When Alt is pressed, place the caret at the furthest
239
224
  // horizontal edge and the furthest vertical edge.
240
225
  altKey ? !isReverse : isReverse, altKey ? undefined : verticalRect);
241
226
  event.preventDefault();
@@ -246,7 +231,6 @@ export default function useArrowNav() {
246
231
  event.preventDefault();
247
232
  }
248
233
  }
249
-
250
234
  node.addEventListener('mousedown', onMouseDown);
251
235
  node.addEventListener('keydown', onKeyDown);
252
236
  return () => {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/writing-flow/use-arrow-nav.js"],"names":["computeCaretRect","focus","isHorizontalEdge","isVerticalEdge","placeCaretAtHorizontalEdge","placeCaretAtVerticalEdge","isRTL","UP","DOWN","LEFT","RIGHT","useDispatch","useSelect","useRefEffect","getBlockClientId","isInSameBlock","store","blockEditorStore","isNavigationCandidate","element","keyCode","hasModifier","isVertical","tagName","elementType","getAttribute","verticalInputTypes","includes","simpleInputTypes","getClosestTabbable","target","isReverse","containerElement","onlyVertical","focusableNodes","focusable","find","reverse","slice","indexOf","targetRect","getBoundingClientRect","isTabCandidate","node","children","length","firstElementChild","tabbable","isTabbableIndex","isContentEditable","contentEditable","nodeRect","left","right","useArrowNav","getMultiSelectedBlocksStartClientId","getMultiSelectedBlocksEndClientId","getSettings","hasMultiSelection","__unstableIsFullySelected","selectBlock","verticalRect","onMouseDown","isClosestTabbableABlock","closestTabbable","onKeyDown","event","defaultPrevented","shiftKey","ctrlKey","altKey","metaKey","isUp","isDown","isLeft","isRight","isHorizontal","isNav","isNavEdge","ownerDocument","defaultView","preventDefault","isReverseDir","keepCaretInsideBlock","undefined","getSelection","isCollapsed","addEventListener","removeEventListener"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tcomputeCaretRect,\n\tfocus,\n\tisHorizontalEdge,\n\tisVerticalEdge,\n\tplaceCaretAtHorizontalEdge,\n\tplaceCaretAtVerticalEdge,\n\tisRTL,\n} from '@wordpress/dom';\nimport { UP, DOWN, LEFT, RIGHT } from '@wordpress/keycodes';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { getBlockClientId, isInSameBlock } from '../../utils/dom';\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * Returns true if the element should consider edge navigation upon a keyboard\n * event of the given directional key code, or false otherwise.\n *\n * @param {Element} element HTML element to test.\n * @param {number} keyCode KeyboardEvent keyCode to test.\n * @param {boolean} hasModifier Whether a modifier is pressed.\n *\n * @return {boolean} Whether element should consider edge navigation.\n */\nexport function isNavigationCandidate( element, keyCode, hasModifier ) {\n\tconst isVertical = keyCode === UP || keyCode === DOWN;\n\tconst { tagName } = element;\n\tconst elementType = element.getAttribute( 'type' );\n\n\t// Native inputs should not navigate vertically, unless they are simple types that don't need up/down arrow keys.\n\tif ( isVertical && ! hasModifier ) {\n\t\tif ( tagName === 'INPUT' ) {\n\t\t\tconst verticalInputTypes = [\n\t\t\t\t'date',\n\t\t\t\t'datetime-local',\n\t\t\t\t'month',\n\t\t\t\t'number',\n\t\t\t\t'range',\n\t\t\t\t'time',\n\t\t\t\t'week',\n\t\t\t];\n\t\t\treturn ! verticalInputTypes.includes( elementType );\n\t\t}\n\t\treturn true;\n\t}\n\n\t// Native inputs should not navigate horizontally, unless they are simple types that don't need left/right arrow keys.\n\tif ( tagName === 'INPUT' ) {\n\t\tconst simpleInputTypes = [\n\t\t\t'button',\n\t\t\t'checkbox',\n\t\t\t'number',\n\t\t\t'color',\n\t\t\t'file',\n\t\t\t'image',\n\t\t\t'radio',\n\t\t\t'reset',\n\t\t\t'submit',\n\t\t];\n\t\treturn simpleInputTypes.includes( elementType );\n\t}\n\n\t// Native textareas should not navigate horizontally.\n\treturn tagName !== 'TEXTAREA';\n}\n\n/**\n * Returns the optimal tab target from the given focused element in the desired\n * direction. A preference is made toward text fields, falling back to the block\n * focus stop if no other candidates exist for the block.\n *\n * @param {Element} target Currently focused text field.\n * @param {boolean} isReverse True if considering as the first field.\n * @param {Element} containerElement Element containing all blocks.\n * @param {boolean} onlyVertical Whether to only consider tabbable elements\n * that are visually above or under the\n * target.\n *\n * @return {?Element} Optimal tab target, if one exists.\n */\nexport function getClosestTabbable(\n\ttarget,\n\tisReverse,\n\tcontainerElement,\n\tonlyVertical\n) {\n\t// Since the current focus target is not guaranteed to be a text field, find\n\t// all focusables. Tabbability is considered later.\n\tlet focusableNodes = focus.focusable.find( containerElement );\n\n\tif ( isReverse ) {\n\t\tfocusableNodes.reverse();\n\t}\n\n\t// Consider as candidates those focusables after the current target. It's\n\t// assumed this can only be reached if the target is focusable (on its\n\t// keydown event), so no need to verify it exists in the set.\n\tfocusableNodes = focusableNodes.slice(\n\t\tfocusableNodes.indexOf( target ) + 1\n\t);\n\n\tlet targetRect;\n\n\tif ( onlyVertical ) {\n\t\ttargetRect = target.getBoundingClientRect();\n\t}\n\n\tfunction isTabCandidate( node ) {\n\t\t// Skip if there's only one child that is content editable (and thus a\n\t\t// better candidate).\n\t\tif (\n\t\t\tnode.children.length === 1 &&\n\t\t\tisInSameBlock( node, node.firstElementChild ) &&\n\t\t\tnode.firstElementChild.getAttribute( 'contenteditable' ) === 'true'\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Not a candidate if the node is not tabbable.\n\t\tif ( ! focus.tabbable.isTabbableIndex( node ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Skip focusable elements such as links within content editable nodes.\n\t\tif ( node.isContentEditable && node.contentEditable !== 'true' ) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif ( onlyVertical ) {\n\t\t\tconst nodeRect = node.getBoundingClientRect();\n\n\t\t\tif (\n\t\t\t\tnodeRect.left >= targetRect.right ||\n\t\t\t\tnodeRect.right <= targetRect.left\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\treturn true;\n\t}\n\n\treturn focusableNodes.find( isTabCandidate );\n}\n\nexport default function useArrowNav() {\n\tconst {\n\t\tgetMultiSelectedBlocksStartClientId,\n\t\tgetMultiSelectedBlocksEndClientId,\n\t\tgetSettings,\n\t\thasMultiSelection,\n\t\t__unstableIsFullySelected,\n\t} = useSelect( blockEditorStore );\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\treturn useRefEffect( ( node ) => {\n\t\t// Here a DOMRect is stored while moving the caret vertically so\n\t\t// vertical position of the start position can be restored. This is to\n\t\t// recreate browser behaviour across blocks.\n\t\tlet verticalRect;\n\n\t\tfunction onMouseDown() {\n\t\t\tverticalRect = null;\n\t\t}\n\n\t\tfunction isClosestTabbableABlock( target, isReverse ) {\n\t\t\tconst closestTabbable = getClosestTabbable(\n\t\t\t\ttarget,\n\t\t\t\tisReverse,\n\t\t\t\tnode\n\t\t\t);\n\t\t\treturn closestTabbable && getBlockClientId( closestTabbable );\n\t\t}\n\n\t\tfunction onKeyDown( event ) {\n\t\t\t// Abort if navigation has already been handled (e.g. RichText\n\t\t\t// inline boundaries).\n\t\t\tif ( event.defaultPrevented ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { keyCode, target, shiftKey, ctrlKey, altKey, metaKey } =\n\t\t\t\tevent;\n\t\t\tconst isUp = keyCode === UP;\n\t\t\tconst isDown = keyCode === DOWN;\n\t\t\tconst isLeft = keyCode === LEFT;\n\t\t\tconst isRight = keyCode === RIGHT;\n\t\t\tconst isReverse = isUp || isLeft;\n\t\t\tconst isHorizontal = isLeft || isRight;\n\t\t\tconst isVertical = isUp || isDown;\n\t\t\tconst isNav = isHorizontal || isVertical;\n\t\t\tconst hasModifier = shiftKey || ctrlKey || altKey || metaKey;\n\t\t\tconst isNavEdge = isVertical ? isVerticalEdge : isHorizontalEdge;\n\t\t\tconst { ownerDocument } = node;\n\t\t\tconst { defaultView } = ownerDocument;\n\n\t\t\tif ( ! isNav ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// If there is a multi-selection, the arrow keys should collapse the\n\t\t\t// selection to the start or end of the selection.\n\t\t\tif ( hasMultiSelection() ) {\n\t\t\t\tif ( shiftKey ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Only handle if we have a full selection (not a native partial\n\t\t\t\t// selection).\n\t\t\t\tif ( ! __unstableIsFullySelected() ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\tif ( isReverse ) {\n\t\t\t\t\tselectBlock( getMultiSelectedBlocksStartClientId() );\n\t\t\t\t} else {\n\t\t\t\t\tselectBlock( getMultiSelectedBlocksEndClientId(), -1 );\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Abort if our current target is not a candidate for navigation\n\t\t\t// (e.g. preserve native input behaviors).\n\t\t\tif ( ! isNavigationCandidate( target, keyCode, hasModifier ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// When presing any key other than up or down, the initial vertical\n\t\t\t// position must ALWAYS be reset. The vertical position is saved so\n\t\t\t// it can be restored as well as possible on sebsequent vertical\n\t\t\t// arrow key presses. It may not always be possible to restore the\n\t\t\t// exact same position (such as at an empty line), so it wouldn't be\n\t\t\t// good to compute the position right before any vertical arrow key\n\t\t\t// press.\n\t\t\tif ( ! isVertical ) {\n\t\t\t\tverticalRect = null;\n\t\t\t} else if ( ! verticalRect ) {\n\t\t\t\tverticalRect = computeCaretRect( defaultView );\n\t\t\t}\n\n\t\t\t// In the case of RTL scripts, right means previous and left means\n\t\t\t// next, which is the exact reverse of LTR.\n\t\t\tconst isReverseDir = isRTL( target ) ? ! isReverse : isReverse;\n\t\t\tconst { keepCaretInsideBlock } = getSettings();\n\n\t\t\tif ( shiftKey ) {\n\t\t\t\tif (\n\t\t\t\t\tisClosestTabbableABlock( target, isReverse ) &&\n\t\t\t\t\tisNavEdge( target, isReverse )\n\t\t\t\t) {\n\t\t\t\t\tnode.contentEditable = true;\n\t\t\t\t\t// Firefox doesn't automatically move focus.\n\t\t\t\t\tnode.focus();\n\t\t\t\t}\n\t\t\t} else if (\n\t\t\t\tisVertical &&\n\t\t\t\tisVerticalEdge( target, isReverse ) &&\n\t\t\t\t// When Alt is pressed, only intercept if the caret is also at\n\t\t\t\t// the horizontal edge.\n\t\t\t\t( altKey ? isHorizontalEdge( target, isReverseDir ) : true ) &&\n\t\t\t\t! keepCaretInsideBlock\n\t\t\t) {\n\t\t\t\tconst closestTabbable = getClosestTabbable(\n\t\t\t\t\ttarget,\n\t\t\t\t\tisReverse,\n\t\t\t\t\tnode,\n\t\t\t\t\ttrue\n\t\t\t\t);\n\n\t\t\t\tif ( closestTabbable ) {\n\t\t\t\t\tplaceCaretAtVerticalEdge(\n\t\t\t\t\t\tclosestTabbable,\n\t\t\t\t\t\t// When Alt is pressed, place the caret at the furthest\n\t\t\t\t\t\t// horizontal edge and the furthest vertical edge.\n\t\t\t\t\t\taltKey ? ! isReverse : isReverse,\n\t\t\t\t\t\taltKey ? undefined : verticalRect\n\t\t\t\t\t);\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t}\n\t\t\t} else if (\n\t\t\t\tisHorizontal &&\n\t\t\t\tdefaultView.getSelection().isCollapsed &&\n\t\t\t\tisHorizontalEdge( target, isReverseDir ) &&\n\t\t\t\t! keepCaretInsideBlock\n\t\t\t) {\n\t\t\t\tconst closestTabbable = getClosestTabbable(\n\t\t\t\t\ttarget,\n\t\t\t\t\tisReverseDir,\n\t\t\t\t\tnode\n\t\t\t\t);\n\t\t\t\tplaceCaretAtHorizontalEdge( closestTabbable, isReverse );\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t}\n\n\t\tnode.addEventListener( 'mousedown', onMouseDown );\n\t\tnode.addEventListener( 'keydown', onKeyDown );\n\t\treturn () => {\n\t\t\tnode.removeEventListener( 'mousedown', onMouseDown );\n\t\t\tnode.removeEventListener( 'keydown', onKeyDown );\n\t\t};\n\t}, [] );\n}\n"]}
1
+ {"version":3,"names":["computeCaretRect","focus","isHorizontalEdge","isVerticalEdge","placeCaretAtHorizontalEdge","placeCaretAtVerticalEdge","isRTL","UP","DOWN","LEFT","RIGHT","useDispatch","useSelect","useRefEffect","getBlockClientId","isInSameBlock","store","blockEditorStore","isNavigationCandidate","element","keyCode","hasModifier","isVertical","tagName","elementType","getAttribute","verticalInputTypes","includes","simpleInputTypes","getClosestTabbable","target","isReverse","containerElement","onlyVertical","focusableNodes","focusable","find","reverse","slice","indexOf","targetRect","getBoundingClientRect","isTabCandidate","node","children","length","firstElementChild","tabbable","isTabbableIndex","isContentEditable","contentEditable","nodeRect","left","right","useArrowNav","getMultiSelectedBlocksStartClientId","getMultiSelectedBlocksEndClientId","getSettings","hasMultiSelection","__unstableIsFullySelected","selectBlock","verticalRect","onMouseDown","isClosestTabbableABlock","closestTabbable","onKeyDown","event","defaultPrevented","shiftKey","ctrlKey","altKey","metaKey","isUp","isDown","isLeft","isRight","isHorizontal","isNav","isNavEdge","ownerDocument","defaultView","preventDefault","isReverseDir","keepCaretInsideBlock","undefined","getSelection","isCollapsed","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/writing-flow/use-arrow-nav.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tcomputeCaretRect,\n\tfocus,\n\tisHorizontalEdge,\n\tisVerticalEdge,\n\tplaceCaretAtHorizontalEdge,\n\tplaceCaretAtVerticalEdge,\n\tisRTL,\n} from '@wordpress/dom';\nimport { UP, DOWN, LEFT, RIGHT } from '@wordpress/keycodes';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { getBlockClientId, isInSameBlock } from '../../utils/dom';\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * Returns true if the element should consider edge navigation upon a keyboard\n * event of the given directional key code, or false otherwise.\n *\n * @param {Element} element HTML element to test.\n * @param {number} keyCode KeyboardEvent keyCode to test.\n * @param {boolean} hasModifier Whether a modifier is pressed.\n *\n * @return {boolean} Whether element should consider edge navigation.\n */\nexport function isNavigationCandidate( element, keyCode, hasModifier ) {\n\tconst isVertical = keyCode === UP || keyCode === DOWN;\n\tconst { tagName } = element;\n\tconst elementType = element.getAttribute( 'type' );\n\n\t// Native inputs should not navigate vertically, unless they are simple types that don't need up/down arrow keys.\n\tif ( isVertical && ! hasModifier ) {\n\t\tif ( tagName === 'INPUT' ) {\n\t\t\tconst verticalInputTypes = [\n\t\t\t\t'date',\n\t\t\t\t'datetime-local',\n\t\t\t\t'month',\n\t\t\t\t'number',\n\t\t\t\t'range',\n\t\t\t\t'time',\n\t\t\t\t'week',\n\t\t\t];\n\t\t\treturn ! verticalInputTypes.includes( elementType );\n\t\t}\n\t\treturn true;\n\t}\n\n\t// Native inputs should not navigate horizontally, unless they are simple types that don't need left/right arrow keys.\n\tif ( tagName === 'INPUT' ) {\n\t\tconst simpleInputTypes = [\n\t\t\t'button',\n\t\t\t'checkbox',\n\t\t\t'number',\n\t\t\t'color',\n\t\t\t'file',\n\t\t\t'image',\n\t\t\t'radio',\n\t\t\t'reset',\n\t\t\t'submit',\n\t\t];\n\t\treturn simpleInputTypes.includes( elementType );\n\t}\n\n\t// Native textareas should not navigate horizontally.\n\treturn tagName !== 'TEXTAREA';\n}\n\n/**\n * Returns the optimal tab target from the given focused element in the desired\n * direction. A preference is made toward text fields, falling back to the block\n * focus stop if no other candidates exist for the block.\n *\n * @param {Element} target Currently focused text field.\n * @param {boolean} isReverse True if considering as the first field.\n * @param {Element} containerElement Element containing all blocks.\n * @param {boolean} onlyVertical Whether to only consider tabbable elements\n * that are visually above or under the\n * target.\n *\n * @return {?Element} Optimal tab target, if one exists.\n */\nexport function getClosestTabbable(\n\ttarget,\n\tisReverse,\n\tcontainerElement,\n\tonlyVertical\n) {\n\t// Since the current focus target is not guaranteed to be a text field, find\n\t// all focusables. Tabbability is considered later.\n\tlet focusableNodes = focus.focusable.find( containerElement );\n\n\tif ( isReverse ) {\n\t\tfocusableNodes.reverse();\n\t}\n\n\t// Consider as candidates those focusables after the current target. It's\n\t// assumed this can only be reached if the target is focusable (on its\n\t// keydown event), so no need to verify it exists in the set.\n\tfocusableNodes = focusableNodes.slice(\n\t\tfocusableNodes.indexOf( target ) + 1\n\t);\n\n\tlet targetRect;\n\n\tif ( onlyVertical ) {\n\t\ttargetRect = target.getBoundingClientRect();\n\t}\n\n\tfunction isTabCandidate( node ) {\n\t\t// Skip if there's only one child that is content editable (and thus a\n\t\t// better candidate).\n\t\tif (\n\t\t\tnode.children.length === 1 &&\n\t\t\tisInSameBlock( node, node.firstElementChild ) &&\n\t\t\tnode.firstElementChild.getAttribute( 'contenteditable' ) === 'true'\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Not a candidate if the node is not tabbable.\n\t\tif ( ! focus.tabbable.isTabbableIndex( node ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Skip focusable elements such as links within content editable nodes.\n\t\tif ( node.isContentEditable && node.contentEditable !== 'true' ) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif ( onlyVertical ) {\n\t\t\tconst nodeRect = node.getBoundingClientRect();\n\n\t\t\tif (\n\t\t\t\tnodeRect.left >= targetRect.right ||\n\t\t\t\tnodeRect.right <= targetRect.left\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\treturn true;\n\t}\n\n\treturn focusableNodes.find( isTabCandidate );\n}\n\nexport default function useArrowNav() {\n\tconst {\n\t\tgetMultiSelectedBlocksStartClientId,\n\t\tgetMultiSelectedBlocksEndClientId,\n\t\tgetSettings,\n\t\thasMultiSelection,\n\t\t__unstableIsFullySelected,\n\t} = useSelect( blockEditorStore );\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\treturn useRefEffect( ( node ) => {\n\t\t// Here a DOMRect is stored while moving the caret vertically so\n\t\t// vertical position of the start position can be restored. This is to\n\t\t// recreate browser behaviour across blocks.\n\t\tlet verticalRect;\n\n\t\tfunction onMouseDown() {\n\t\t\tverticalRect = null;\n\t\t}\n\n\t\tfunction isClosestTabbableABlock( target, isReverse ) {\n\t\t\tconst closestTabbable = getClosestTabbable(\n\t\t\t\ttarget,\n\t\t\t\tisReverse,\n\t\t\t\tnode\n\t\t\t);\n\t\t\treturn closestTabbable && getBlockClientId( closestTabbable );\n\t\t}\n\n\t\tfunction onKeyDown( event ) {\n\t\t\t// Abort if navigation has already been handled (e.g. RichText\n\t\t\t// inline boundaries).\n\t\t\tif ( event.defaultPrevented ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { keyCode, target, shiftKey, ctrlKey, altKey, metaKey } =\n\t\t\t\tevent;\n\t\t\tconst isUp = keyCode === UP;\n\t\t\tconst isDown = keyCode === DOWN;\n\t\t\tconst isLeft = keyCode === LEFT;\n\t\t\tconst isRight = keyCode === RIGHT;\n\t\t\tconst isReverse = isUp || isLeft;\n\t\t\tconst isHorizontal = isLeft || isRight;\n\t\t\tconst isVertical = isUp || isDown;\n\t\t\tconst isNav = isHorizontal || isVertical;\n\t\t\tconst hasModifier = shiftKey || ctrlKey || altKey || metaKey;\n\t\t\tconst isNavEdge = isVertical ? isVerticalEdge : isHorizontalEdge;\n\t\t\tconst { ownerDocument } = node;\n\t\t\tconst { defaultView } = ownerDocument;\n\n\t\t\tif ( ! isNav ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// If there is a multi-selection, the arrow keys should collapse the\n\t\t\t// selection to the start or end of the selection.\n\t\t\tif ( hasMultiSelection() ) {\n\t\t\t\tif ( shiftKey ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Only handle if we have a full selection (not a native partial\n\t\t\t\t// selection).\n\t\t\t\tif ( ! __unstableIsFullySelected() ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\tif ( isReverse ) {\n\t\t\t\t\tselectBlock( getMultiSelectedBlocksStartClientId() );\n\t\t\t\t} else {\n\t\t\t\t\tselectBlock( getMultiSelectedBlocksEndClientId(), -1 );\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Abort if our current target is not a candidate for navigation\n\t\t\t// (e.g. preserve native input behaviors).\n\t\t\tif ( ! isNavigationCandidate( target, keyCode, hasModifier ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// When presing any key other than up or down, the initial vertical\n\t\t\t// position must ALWAYS be reset. The vertical position is saved so\n\t\t\t// it can be restored as well as possible on sebsequent vertical\n\t\t\t// arrow key presses. It may not always be possible to restore the\n\t\t\t// exact same position (such as at an empty line), so it wouldn't be\n\t\t\t// good to compute the position right before any vertical arrow key\n\t\t\t// press.\n\t\t\tif ( ! isVertical ) {\n\t\t\t\tverticalRect = null;\n\t\t\t} else if ( ! verticalRect ) {\n\t\t\t\tverticalRect = computeCaretRect( defaultView );\n\t\t\t}\n\n\t\t\t// In the case of RTL scripts, right means previous and left means\n\t\t\t// next, which is the exact reverse of LTR.\n\t\t\tconst isReverseDir = isRTL( target ) ? ! isReverse : isReverse;\n\t\t\tconst { keepCaretInsideBlock } = getSettings();\n\n\t\t\tif ( shiftKey ) {\n\t\t\t\tif (\n\t\t\t\t\tisClosestTabbableABlock( target, isReverse ) &&\n\t\t\t\t\tisNavEdge( target, isReverse )\n\t\t\t\t) {\n\t\t\t\t\tnode.contentEditable = true;\n\t\t\t\t\t// Firefox doesn't automatically move focus.\n\t\t\t\t\tnode.focus();\n\t\t\t\t}\n\t\t\t} else if (\n\t\t\t\tisVertical &&\n\t\t\t\tisVerticalEdge( target, isReverse ) &&\n\t\t\t\t// When Alt is pressed, only intercept if the caret is also at\n\t\t\t\t// the horizontal edge.\n\t\t\t\t( altKey ? isHorizontalEdge( target, isReverseDir ) : true ) &&\n\t\t\t\t! keepCaretInsideBlock\n\t\t\t) {\n\t\t\t\tconst closestTabbable = getClosestTabbable(\n\t\t\t\t\ttarget,\n\t\t\t\t\tisReverse,\n\t\t\t\t\tnode,\n\t\t\t\t\ttrue\n\t\t\t\t);\n\n\t\t\t\tif ( closestTabbable ) {\n\t\t\t\t\tplaceCaretAtVerticalEdge(\n\t\t\t\t\t\tclosestTabbable,\n\t\t\t\t\t\t// When Alt is pressed, place the caret at the furthest\n\t\t\t\t\t\t// horizontal edge and the furthest vertical edge.\n\t\t\t\t\t\taltKey ? ! isReverse : isReverse,\n\t\t\t\t\t\taltKey ? undefined : verticalRect\n\t\t\t\t\t);\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t}\n\t\t\t} else if (\n\t\t\t\tisHorizontal &&\n\t\t\t\tdefaultView.getSelection().isCollapsed &&\n\t\t\t\tisHorizontalEdge( target, isReverseDir ) &&\n\t\t\t\t! keepCaretInsideBlock\n\t\t\t) {\n\t\t\t\tconst closestTabbable = getClosestTabbable(\n\t\t\t\t\ttarget,\n\t\t\t\t\tisReverseDir,\n\t\t\t\t\tnode\n\t\t\t\t);\n\t\t\t\tplaceCaretAtHorizontalEdge( closestTabbable, isReverse );\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t}\n\n\t\tnode.addEventListener( 'mousedown', onMouseDown );\n\t\tnode.addEventListener( 'keydown', onKeyDown );\n\t\treturn () => {\n\t\t\tnode.removeEventListener( 'mousedown', onMouseDown );\n\t\t\tnode.removeEventListener( 'keydown', onKeyDown );\n\t\t};\n\t}, [] );\n}\n"],"mappings":"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"}
@@ -3,10 +3,10 @@
3
3
  */
4
4
  import { useSelect, useDispatch } from '@wordpress/data';
5
5
  import { useRefEffect } from '@wordpress/compose';
6
+
6
7
  /**
7
8
  * Internal dependencies
8
9
  */
9
-
10
10
  import { store as blockEditorStore } from '../../store';
11
11
  import { getBlockClientId } from '../../utils/dom';
12
12
  export default function useClickSelection() {
@@ -25,14 +25,12 @@ export default function useClickSelection() {
25
25
  if (!isSelectionEnabled() || event.button !== 0) {
26
26
  return;
27
27
  }
28
-
29
28
  const startClientId = getBlockSelectionStart();
30
29
  const clickedClientId = getBlockClientId(event.target);
31
-
32
30
  if (event.shiftKey) {
33
31
  if (startClientId !== clickedClientId) {
34
- node.contentEditable = true; // Firefox doesn't automatically move focus.
35
-
32
+ node.contentEditable = true;
33
+ // Firefox doesn't automatically move focus.
36
34
  node.focus();
37
35
  }
38
36
  } else if (hasMultiSelection()) {
@@ -45,7 +43,6 @@ export default function useClickSelection() {
45
43
  selectBlock(clickedClientId);
46
44
  }
47
45
  }
48
-
49
46
  node.addEventListener('mousedown', onMouseDown);
50
47
  return () => {
51
48
  node.removeEventListener('mousedown', onMouseDown);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/writing-flow/use-click-selection.js"],"names":["useSelect","useDispatch","useRefEffect","store","blockEditorStore","getBlockClientId","useClickSelection","selectBlock","isSelectionEnabled","getBlockSelectionStart","hasMultiSelection","node","onMouseDown","event","button","startClientId","clickedClientId","target","shiftKey","contentEditable","focus","addEventListener","removeEventListener"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,WAApB,QAAuC,iBAAvC;AACA,SAASC,YAAT,QAA6B,oBAA7B;AAEA;AACA;AACA;;AACA,SAASC,KAAK,IAAIC,gBAAlB,QAA0C,aAA1C;AACA,SAASC,gBAAT,QAAiC,iBAAjC;AAEA,eAAe,SAASC,iBAAT,GAA6B;AAC3C,QAAM;AAAEC,IAAAA;AAAF,MAAkBN,WAAW,CAAEG,gBAAF,CAAnC;AACA,QAAM;AAAEI,IAAAA,kBAAF;AAAsBC,IAAAA,sBAAtB;AAA8CC,IAAAA;AAA9C,MACLV,SAAS,CAAEI,gBAAF,CADV;AAEA,SAAOF,YAAY,CAChBS,IAAF,IAAY;AACX,aAASC,WAAT,CAAsBC,KAAtB,EAA8B;AAC7B;AACA;AACA,UAAK,CAAEL,kBAAkB,EAApB,IAA0BK,KAAK,CAACC,MAAN,KAAiB,CAAhD,EAAoD;AACnD;AACA;;AAED,YAAMC,aAAa,GAAGN,sBAAsB,EAA5C;AACA,YAAMO,eAAe,GAAGX,gBAAgB,CAAEQ,KAAK,CAACI,MAAR,CAAxC;;AAEA,UAAKJ,KAAK,CAACK,QAAX,EAAsB;AACrB,YAAKH,aAAa,KAAKC,eAAvB,EAAyC;AACxCL,UAAAA,IAAI,CAACQ,eAAL,GAAuB,IAAvB,CADwC,CAExC;;AACAR,UAAAA,IAAI,CAACS,KAAL;AACA;AACD,OAND,MAMO,IAAKV,iBAAiB,EAAtB,EAA2B;AACjC;AACA;AACA;AACA;AACA;AACA;AACAH,QAAAA,WAAW,CAAES,eAAF,CAAX;AACA;AACD;;AAEDL,IAAAA,IAAI,CAACU,gBAAL,CAAuB,WAAvB,EAAoCT,WAApC;AAEA,WAAO,MAAM;AACZD,MAAAA,IAAI,CAACW,mBAAL,CAA0B,WAA1B,EAAuCV,WAAvC;AACA,KAFD;AAGA,GAlCiB,EAmClB,CACCL,WADD,EAECC,kBAFD,EAGCC,sBAHD,EAICC,iBAJD,CAnCkB,CAAnB;AA0CA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { getBlockClientId } from '../../utils/dom';\n\nexport default function useClickSelection() {\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\tconst { isSelectionEnabled, getBlockSelectionStart, hasMultiSelection } =\n\t\tuseSelect( blockEditorStore );\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tfunction onMouseDown( event ) {\n\t\t\t\t// The main button.\n\t\t\t\t// https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/button\n\t\t\t\tif ( ! isSelectionEnabled() || event.button !== 0 ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst startClientId = getBlockSelectionStart();\n\t\t\t\tconst clickedClientId = getBlockClientId( event.target );\n\n\t\t\t\tif ( event.shiftKey ) {\n\t\t\t\t\tif ( startClientId !== clickedClientId ) {\n\t\t\t\t\t\tnode.contentEditable = true;\n\t\t\t\t\t\t// Firefox doesn't automatically move focus.\n\t\t\t\t\t\tnode.focus();\n\t\t\t\t\t}\n\t\t\t\t} else if ( hasMultiSelection() ) {\n\t\t\t\t\t// Allow user to escape out of a multi-selection to a\n\t\t\t\t\t// singular selection of a block via click. This is handled\n\t\t\t\t\t// here since focus handling excludes blocks when there is\n\t\t\t\t\t// multiselection, as focus can be incurred by starting a\n\t\t\t\t\t// multiselection (focus moved to first block's multi-\n\t\t\t\t\t// controls).\n\t\t\t\t\tselectBlock( clickedClientId );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'mousedown', onMouseDown );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'mousedown', onMouseDown );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tselectBlock,\n\t\t\tisSelectionEnabled,\n\t\t\tgetBlockSelectionStart,\n\t\t\thasMultiSelection,\n\t\t]\n\t);\n}\n"]}
1
+ {"version":3,"names":["useSelect","useDispatch","useRefEffect","store","blockEditorStore","getBlockClientId","useClickSelection","selectBlock","isSelectionEnabled","getBlockSelectionStart","hasMultiSelection","node","onMouseDown","event","button","startClientId","clickedClientId","target","shiftKey","contentEditable","focus","addEventListener","removeEventListener"],"sources":["@wordpress/block-editor/src/components/writing-flow/use-click-selection.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { getBlockClientId } from '../../utils/dom';\n\nexport default function useClickSelection() {\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\tconst { isSelectionEnabled, getBlockSelectionStart, hasMultiSelection } =\n\t\tuseSelect( blockEditorStore );\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tfunction onMouseDown( event ) {\n\t\t\t\t// The main button.\n\t\t\t\t// https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/button\n\t\t\t\tif ( ! isSelectionEnabled() || event.button !== 0 ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst startClientId = getBlockSelectionStart();\n\t\t\t\tconst clickedClientId = getBlockClientId( event.target );\n\n\t\t\t\tif ( event.shiftKey ) {\n\t\t\t\t\tif ( startClientId !== clickedClientId ) {\n\t\t\t\t\t\tnode.contentEditable = true;\n\t\t\t\t\t\t// Firefox doesn't automatically move focus.\n\t\t\t\t\t\tnode.focus();\n\t\t\t\t\t}\n\t\t\t\t} else if ( hasMultiSelection() ) {\n\t\t\t\t\t// Allow user to escape out of a multi-selection to a\n\t\t\t\t\t// singular selection of a block via click. This is handled\n\t\t\t\t\t// here since focus handling excludes blocks when there is\n\t\t\t\t\t// multiselection, as focus can be incurred by starting a\n\t\t\t\t\t// multiselection (focus moved to first block's multi-\n\t\t\t\t\t// controls).\n\t\t\t\t\tselectBlock( clickedClientId );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'mousedown', onMouseDown );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'mousedown', onMouseDown );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tselectBlock,\n\t\t\tisSelectionEnabled,\n\t\t\tgetBlockSelectionStart,\n\t\t\thasMultiSelection,\n\t\t]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,YAAY,QAAQ,oBAAoB;;AAEjD;AACA;AACA;AACA,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AACvD,SAASC,gBAAgB,QAAQ,iBAAiB;AAElD,eAAe,SAASC,iBAAiBA,CAAA,EAAG;EAC3C,MAAM;IAAEC;EAAY,CAAC,GAAGN,WAAW,CAAEG,gBAAiB,CAAC;EACvD,MAAM;IAAEI,kBAAkB;IAAEC,sBAAsB;IAAEC;EAAkB,CAAC,GACtEV,SAAS,CAAEI,gBAAiB,CAAC;EAC9B,OAAOF,YAAY,CAChBS,IAAI,IAAM;IACX,SAASC,WAAWA,CAAEC,KAAK,EAAG;MAC7B;MACA;MACA,IAAK,CAAEL,kBAAkB,CAAC,CAAC,IAAIK,KAAK,CAACC,MAAM,KAAK,CAAC,EAAG;QACnD;MACD;MAEA,MAAMC,aAAa,GAAGN,sBAAsB,CAAC,CAAC;MAC9C,MAAMO,eAAe,GAAGX,gBAAgB,CAAEQ,KAAK,CAACI,MAAO,CAAC;MAExD,IAAKJ,KAAK,CAACK,QAAQ,EAAG;QACrB,IAAKH,aAAa,KAAKC,eAAe,EAAG;UACxCL,IAAI,CAACQ,eAAe,GAAG,IAAI;UAC3B;UACAR,IAAI,CAACS,KAAK,CAAC,CAAC;QACb;MACD,CAAC,MAAM,IAAKV,iBAAiB,CAAC,CAAC,EAAG;QACjC;QACA;QACA;QACA;QACA;QACA;QACAH,WAAW,CAAES,eAAgB,CAAC;MAC/B;IACD;IAEAL,IAAI,CAACU,gBAAgB,CAAE,WAAW,EAAET,WAAY,CAAC;IAEjD,OAAO,MAAM;MACZD,IAAI,CAACW,mBAAmB,CAAE,WAAW,EAAEV,WAAY,CAAC;IACrD,CAAC;EACF,CAAC,EACD,CACCL,WAAW,EACXC,kBAAkB,EAClBC,sBAAsB,EACtBC,iBAAiB,CAEnB,CAAC;AACF"}
@@ -3,28 +3,27 @@
3
3
  */
4
4
  import { useSelect, useDispatch } from '@wordpress/data';
5
5
  import { useRefEffect } from '@wordpress/compose';
6
+
6
7
  /**
7
8
  * Internal dependencies
8
9
  */
9
-
10
10
  import { store as blockEditorStore } from '../../store';
11
+
11
12
  /**
12
13
  * Sets the `contenteditable` wrapper element to `value`.
13
14
  *
14
15
  * @param {HTMLElement} node Block element.
15
16
  * @param {boolean} value `contentEditable` value (true or false)
16
17
  */
17
-
18
18
  function setContentEditableWrapper(node, value) {
19
- node.contentEditable = value; // Firefox doesn't automatically move focus.
20
-
19
+ node.contentEditable = value;
20
+ // Firefox doesn't automatically move focus.
21
21
  if (value) node.focus();
22
22
  }
23
+
23
24
  /**
24
25
  * Sets a multi-selection based on the native selection across blocks.
25
26
  */
26
-
27
-
28
27
  export default function useDragSelection() {
29
28
  const {
30
29
  startMultiSelect,
@@ -44,39 +43,35 @@ export default function useDragSelection() {
44
43
  } = ownerDocument;
45
44
  let anchorElement;
46
45
  let rafId;
47
-
48
46
  function onMouseUp() {
49
- stopMultiSelect(); // Equivalent to attaching the listener once.
50
-
51
- defaultView.removeEventListener('mouseup', onMouseUp); // The browser selection won't have updated yet at this point,
47
+ stopMultiSelect();
48
+ // Equivalent to attaching the listener once.
49
+ defaultView.removeEventListener('mouseup', onMouseUp);
50
+ // The browser selection won't have updated yet at this point,
52
51
  // so wait until the next animation frame to get the browser
53
52
  // selection.
54
-
55
53
  rafId = defaultView.requestAnimationFrame(() => {
56
54
  if (hasMultiSelection()) {
57
55
  return;
58
- } // If the selection is complete (on mouse up), and no
56
+ }
57
+
58
+ // If the selection is complete (on mouse up), and no
59
59
  // multiple blocks have been selected, set focus back to the
60
60
  // anchor element. if the anchor element contains the
61
61
  // selection. Additionally, the contentEditable wrapper can
62
62
  // now be disabled again.
63
-
64
-
65
63
  setContentEditableWrapper(node, false);
66
64
  const selection = defaultView.getSelection();
67
-
68
65
  if (selection.rangeCount) {
69
66
  const {
70
67
  commonAncestorContainer
71
68
  } = selection.getRangeAt(0);
72
-
73
69
  if (anchorElement.contains(commonAncestorContainer)) {
74
70
  anchorElement.focus();
75
71
  }
76
72
  }
77
73
  });
78
74
  }
79
-
80
75
  function onMouseLeave({
81
76
  buttons,
82
77
  target
@@ -85,39 +80,42 @@ export default function useDragSelection() {
85
80
  // dragging blocks.
86
81
  if (isDraggingBlocks()) {
87
82
  return;
88
- } // The primary button must be pressed to initiate selection.
89
- // See https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons
90
-
83
+ }
91
84
 
85
+ // The primary button must be pressed to initiate selection.
86
+ // See https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons
92
87
  if (buttons !== 1) {
93
88
  return;
94
- } // Check the attribute, not the contentEditable attribute. All
89
+ }
90
+
91
+ // Check the attribute, not the contentEditable attribute. All
95
92
  // child elements of the content editable wrapper are editable
96
93
  // and return true for this property. We only want to start
97
94
  // multi selecting when the mouse leaves the wrapper.
98
-
99
-
100
95
  if (target.getAttribute('contenteditable') !== 'true') {
101
96
  return;
102
97
  }
103
-
104
98
  if (!isSelectionEnabled()) {
105
99
  return;
106
100
  }
107
101
 
108
- anchorElement = ownerDocument.activeElement;
109
- startMultiSelect(); // `onSelectionStart` is called after `mousedown` and
102
+ // Do not rely on the active element because it may change after
103
+ // the mouse leaves for the first time. See
104
+ // https://github.com/WordPress/gutenberg/issues/48747.
105
+ anchorElement = target;
106
+ startMultiSelect();
107
+
108
+ // `onSelectionStart` is called after `mousedown` and
110
109
  // `mouseleave` (from a block). The selection ends when
111
110
  // `mouseup` happens anywhere in the window.
111
+ defaultView.addEventListener('mouseup', onMouseUp);
112
112
 
113
- defaultView.addEventListener('mouseup', onMouseUp); // Allow cross contentEditable selection by temporarily making
113
+ // Allow cross contentEditable selection by temporarily making
114
114
  // all content editable. We can't rely on using the store and
115
115
  // React because re-rending happens too slowly. We need to be
116
116
  // able to select across instances immediately.
117
-
118
117
  setContentEditableWrapper(node, true);
119
118
  }
120
-
121
119
  node.addEventListener('mouseout', onMouseLeave);
122
120
  return () => {
123
121
  node.removeEventListener('mouseout', onMouseLeave);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/writing-flow/use-drag-selection.js"],"names":["useSelect","useDispatch","useRefEffect","store","blockEditorStore","setContentEditableWrapper","node","value","contentEditable","focus","useDragSelection","startMultiSelect","stopMultiSelect","isSelectionEnabled","hasMultiSelection","isDraggingBlocks","ownerDocument","defaultView","anchorElement","rafId","onMouseUp","removeEventListener","requestAnimationFrame","selection","getSelection","rangeCount","commonAncestorContainer","getRangeAt","contains","onMouseLeave","buttons","target","getAttribute","activeElement","addEventListener","cancelAnimationFrame"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * Sets the `contenteditable` wrapper element to `value`.\n *\n * @param {HTMLElement} node Block element.\n * @param {boolean} value `contentEditable` value (true or false)\n */\nfunction setContentEditableWrapper( node, value ) {\n\tnode.contentEditable = value;\n\t// Firefox doesn't automatically move focus.\n\tif ( value ) node.focus();\n}\n\n/**\n * Sets a multi-selection based on the native selection across blocks.\n */\nexport default function useDragSelection() {\n\tconst { startMultiSelect, stopMultiSelect } =\n\t\tuseDispatch( blockEditorStore );\n\tconst { isSelectionEnabled, hasMultiSelection, isDraggingBlocks } =\n\t\tuseSelect( blockEditorStore );\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tconst { ownerDocument } = node;\n\t\t\tconst { defaultView } = ownerDocument;\n\n\t\t\tlet anchorElement;\n\t\t\tlet rafId;\n\n\t\t\tfunction onMouseUp() {\n\t\t\t\tstopMultiSelect();\n\t\t\t\t// Equivalent to attaching the listener once.\n\t\t\t\tdefaultView.removeEventListener( 'mouseup', onMouseUp );\n\t\t\t\t// The browser selection won't have updated yet at this point,\n\t\t\t\t// so wait until the next animation frame to get the browser\n\t\t\t\t// selection.\n\t\t\t\trafId = defaultView.requestAnimationFrame( () => {\n\t\t\t\t\tif ( hasMultiSelection() ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\t// If the selection is complete (on mouse up), and no\n\t\t\t\t\t// multiple blocks have been selected, set focus back to the\n\t\t\t\t\t// anchor element. if the anchor element contains the\n\t\t\t\t\t// selection. Additionally, the contentEditable wrapper can\n\t\t\t\t\t// now be disabled again.\n\t\t\t\t\tsetContentEditableWrapper( node, false );\n\n\t\t\t\t\tconst selection = defaultView.getSelection();\n\n\t\t\t\t\tif ( selection.rangeCount ) {\n\t\t\t\t\t\tconst { commonAncestorContainer } =\n\t\t\t\t\t\t\tselection.getRangeAt( 0 );\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tanchorElement.contains( commonAncestorContainer )\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tanchorElement.focus();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tfunction onMouseLeave( { buttons, target } ) {\n\t\t\t\t// Avoid triggering a multi-selection if the user is already\n\t\t\t\t// dragging blocks.\n\t\t\t\tif ( isDraggingBlocks() ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// The primary button must be pressed to initiate selection.\n\t\t\t\t// See https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons\n\t\t\t\tif ( buttons !== 1 ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Check the attribute, not the contentEditable attribute. All\n\t\t\t\t// child elements of the content editable wrapper are editable\n\t\t\t\t// and return true for this property. We only want to start\n\t\t\t\t// multi selecting when the mouse leaves the wrapper.\n\t\t\t\tif ( target.getAttribute( 'contenteditable' ) !== 'true' ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( ! isSelectionEnabled() ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tanchorElement = ownerDocument.activeElement;\n\t\t\t\tstartMultiSelect();\n\n\t\t\t\t// `onSelectionStart` is called after `mousedown` and\n\t\t\t\t// `mouseleave` (from a block). The selection ends when\n\t\t\t\t// `mouseup` happens anywhere in the window.\n\t\t\t\tdefaultView.addEventListener( 'mouseup', onMouseUp );\n\n\t\t\t\t// Allow cross contentEditable selection by temporarily making\n\t\t\t\t// all content editable. We can't rely on using the store and\n\t\t\t\t// React because re-rending happens too slowly. We need to be\n\t\t\t\t// able to select across instances immediately.\n\t\t\t\tsetContentEditableWrapper( node, true );\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'mouseout', onMouseLeave );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'mouseout', onMouseLeave );\n\t\t\t\tdefaultView.removeEventListener( 'mouseup', onMouseUp );\n\t\t\t\tdefaultView.cancelAnimationFrame( rafId );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tstartMultiSelect,\n\t\t\tstopMultiSelect,\n\t\t\tisSelectionEnabled,\n\t\t\thasMultiSelection,\n\t\t]\n\t);\n}\n"]}
1
+ {"version":3,"names":["useSelect","useDispatch","useRefEffect","store","blockEditorStore","setContentEditableWrapper","node","value","contentEditable","focus","useDragSelection","startMultiSelect","stopMultiSelect","isSelectionEnabled","hasMultiSelection","isDraggingBlocks","ownerDocument","defaultView","anchorElement","rafId","onMouseUp","removeEventListener","requestAnimationFrame","selection","getSelection","rangeCount","commonAncestorContainer","getRangeAt","contains","onMouseLeave","buttons","target","getAttribute","addEventListener","cancelAnimationFrame"],"sources":["@wordpress/block-editor/src/components/writing-flow/use-drag-selection.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRefEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * Sets the `contenteditable` wrapper element to `value`.\n *\n * @param {HTMLElement} node Block element.\n * @param {boolean} value `contentEditable` value (true or false)\n */\nfunction setContentEditableWrapper( node, value ) {\n\tnode.contentEditable = value;\n\t// Firefox doesn't automatically move focus.\n\tif ( value ) node.focus();\n}\n\n/**\n * Sets a multi-selection based on the native selection across blocks.\n */\nexport default function useDragSelection() {\n\tconst { startMultiSelect, stopMultiSelect } =\n\t\tuseDispatch( blockEditorStore );\n\tconst { isSelectionEnabled, hasMultiSelection, isDraggingBlocks } =\n\t\tuseSelect( blockEditorStore );\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tconst { ownerDocument } = node;\n\t\t\tconst { defaultView } = ownerDocument;\n\n\t\t\tlet anchorElement;\n\t\t\tlet rafId;\n\n\t\t\tfunction onMouseUp() {\n\t\t\t\tstopMultiSelect();\n\t\t\t\t// Equivalent to attaching the listener once.\n\t\t\t\tdefaultView.removeEventListener( 'mouseup', onMouseUp );\n\t\t\t\t// The browser selection won't have updated yet at this point,\n\t\t\t\t// so wait until the next animation frame to get the browser\n\t\t\t\t// selection.\n\t\t\t\trafId = defaultView.requestAnimationFrame( () => {\n\t\t\t\t\tif ( hasMultiSelection() ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\t// If the selection is complete (on mouse up), and no\n\t\t\t\t\t// multiple blocks have been selected, set focus back to the\n\t\t\t\t\t// anchor element. if the anchor element contains the\n\t\t\t\t\t// selection. Additionally, the contentEditable wrapper can\n\t\t\t\t\t// now be disabled again.\n\t\t\t\t\tsetContentEditableWrapper( node, false );\n\n\t\t\t\t\tconst selection = defaultView.getSelection();\n\n\t\t\t\t\tif ( selection.rangeCount ) {\n\t\t\t\t\t\tconst { commonAncestorContainer } =\n\t\t\t\t\t\t\tselection.getRangeAt( 0 );\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tanchorElement.contains( commonAncestorContainer )\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tanchorElement.focus();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tfunction onMouseLeave( { buttons, target } ) {\n\t\t\t\t// Avoid triggering a multi-selection if the user is already\n\t\t\t\t// dragging blocks.\n\t\t\t\tif ( isDraggingBlocks() ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// The primary button must be pressed to initiate selection.\n\t\t\t\t// See https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons\n\t\t\t\tif ( buttons !== 1 ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Check the attribute, not the contentEditable attribute. All\n\t\t\t\t// child elements of the content editable wrapper are editable\n\t\t\t\t// and return true for this property. We only want to start\n\t\t\t\t// multi selecting when the mouse leaves the wrapper.\n\t\t\t\tif ( target.getAttribute( 'contenteditable' ) !== 'true' ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( ! isSelectionEnabled() ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Do not rely on the active element because it may change after\n\t\t\t\t// the mouse leaves for the first time. See\n\t\t\t\t// https://github.com/WordPress/gutenberg/issues/48747.\n\t\t\t\tanchorElement = target;\n\n\t\t\t\tstartMultiSelect();\n\n\t\t\t\t// `onSelectionStart` is called after `mousedown` and\n\t\t\t\t// `mouseleave` (from a block). The selection ends when\n\t\t\t\t// `mouseup` happens anywhere in the window.\n\t\t\t\tdefaultView.addEventListener( 'mouseup', onMouseUp );\n\n\t\t\t\t// Allow cross contentEditable selection by temporarily making\n\t\t\t\t// all content editable. We can't rely on using the store and\n\t\t\t\t// React because re-rending happens too slowly. We need to be\n\t\t\t\t// able to select across instances immediately.\n\t\t\t\tsetContentEditableWrapper( node, true );\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'mouseout', onMouseLeave );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'mouseout', onMouseLeave );\n\t\t\t\tdefaultView.removeEventListener( 'mouseup', onMouseUp );\n\t\t\t\tdefaultView.cancelAnimationFrame( rafId );\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tstartMultiSelect,\n\t\t\tstopMultiSelect,\n\t\t\tisSelectionEnabled,\n\t\t\thasMultiSelection,\n\t\t]\n\t);\n}\n"],"mappings":"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"}
@@ -5,15 +5,15 @@ import { useSelect, useDispatch } from '@wordpress/data';
5
5
  import { useRefEffect } from '@wordpress/compose';
6
6
  import { ENTER, BACKSPACE, DELETE } from '@wordpress/keycodes';
7
7
  import { createBlock, getDefaultBlockName } from '@wordpress/blocks';
8
+
8
9
  /**
9
10
  * Internal dependencies
10
11
  */
11
-
12
12
  import { store as blockEditorStore } from '../../store';
13
+
13
14
  /**
14
15
  * Handles input for selections across blocks.
15
16
  */
16
-
17
17
  export default function useInput() {
18
18
  const {
19
19
  __unstableIsFullySelected,
@@ -37,20 +37,16 @@ export default function useInput() {
37
37
  event.preventDefault();
38
38
  }
39
39
  }
40
-
41
40
  function onKeyDown(event) {
42
41
  if (event.defaultPrevented) {
43
42
  return;
44
43
  }
45
-
46
44
  if (!hasMultiSelection()) {
47
45
  return;
48
46
  }
49
-
50
47
  if (event.keyCode === ENTER) {
51
48
  node.contentEditable = false;
52
49
  event.preventDefault();
53
-
54
50
  if (__unstableIsFullySelected()) {
55
51
  replaceBlocks(getSelectedBlockClientIds(), createBlock(getDefaultBlockName()));
56
52
  } else {
@@ -59,7 +55,6 @@ export default function useInput() {
59
55
  } else if (event.keyCode === BACKSPACE || event.keyCode === DELETE) {
60
56
  node.contentEditable = false;
61
57
  event.preventDefault();
62
-
63
58
  if (__unstableIsFullySelected()) {
64
59
  removeBlocks(getSelectedBlockClientIds());
65
60
  } else if (__unstableIsSelectionMergeable()) {
@@ -67,41 +62,37 @@ export default function useInput() {
67
62
  } else {
68
63
  __unstableExpandSelection();
69
64
  }
70
- } else if ( // If key.length is longer than 1, it's a control key that doesn't
65
+ } else if (
66
+ // If key.length is longer than 1, it's a control key that doesn't
71
67
  // input anything.
72
68
  event.key.length === 1 && !(event.metaKey || event.ctrlKey)) {
73
69
  node.contentEditable = false;
74
-
75
70
  if (__unstableIsSelectionMergeable()) {
76
71
  __unstableDeleteSelection(event.keyCode === DELETE);
77
72
  } else {
78
- event.preventDefault(); // Safari does not stop default behaviour with either
73
+ event.preventDefault();
74
+ // Safari does not stop default behaviour with either
79
75
  // event.preventDefault() or node.contentEditable = false, so
80
76
  // remove the selection to stop browser manipulation.
81
-
82
77
  node.ownerDocument.defaultView.getSelection().removeAllRanges();
83
78
  }
84
79
  }
85
80
  }
86
-
87
81
  function onCompositionStart(event) {
88
82
  if (!hasMultiSelection()) {
89
83
  return;
90
84
  }
91
-
92
85
  node.contentEditable = false;
93
-
94
86
  if (__unstableIsSelectionMergeable()) {
95
87
  __unstableDeleteSelection();
96
88
  } else {
97
- event.preventDefault(); // Safari does not stop default behaviour with either
89
+ event.preventDefault();
90
+ // Safari does not stop default behaviour with either
98
91
  // event.preventDefault() or node.contentEditable = false, so
99
92
  // remove the selection to stop browser manipulation.
100
-
101
93
  node.ownerDocument.defaultView.getSelection().removeAllRanges();
102
94
  }
103
95
  }
104
-
105
96
  node.addEventListener('beforeinput', onBeforeInput);
106
97
  node.addEventListener('keydown', onKeyDown);
107
98
  node.addEventListener('compositionstart', onCompositionStart);