@wordpress/block-editor 16.2.0 → 17.0.2-next.v.202608281122.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 (1804) hide show
  1. package/CHANGELOG.md +56 -0
  2. package/build/autocompleters/block.cjs +1 -1
  3. package/build/autocompleters/block.cjs.map +1 -1
  4. package/build/components/alignment-control/index.cjs +1 -1
  5. package/build/components/alignment-control/index.cjs.map +1 -1
  6. package/build/components/alignment-control/ui.cjs +1 -1
  7. package/build/components/alignment-control/ui.cjs.map +1 -1
  8. package/build/components/autocomplete/index.cjs +1 -1
  9. package/build/components/autocomplete/index.cjs.map +1 -1
  10. package/build/components/background-image-control/index.cjs +1 -1
  11. package/build/components/background-image-control/index.cjs.map +1 -1
  12. package/build/components/block-alignment-control/index.cjs +1 -1
  13. package/build/components/block-alignment-control/index.cjs.map +1 -1
  14. package/build/components/block-alignment-control/ui.cjs +1 -1
  15. package/build/components/block-alignment-control/ui.cjs.map +1 -1
  16. package/build/components/block-alignment-matrix-control/index.cjs +1 -1
  17. package/build/components/block-alignment-matrix-control/index.cjs.map +1 -1
  18. package/build/components/block-allowed-blocks/allowed-blocks-control.cjs +1 -1
  19. package/build/components/block-allowed-blocks/allowed-blocks-control.cjs.map +1 -1
  20. package/build/components/block-allowed-blocks/modal.cjs +1 -1
  21. package/build/components/block-allowed-blocks/modal.cjs.map +1 -1
  22. package/build/components/block-bindings/attribute-control.cjs +1 -1
  23. package/build/components/block-bindings/attribute-control.cjs.map +1 -1
  24. package/build/components/block-bindings/source-fields-list.cjs +1 -1
  25. package/build/components/block-bindings/source-fields-list.cjs.map +1 -1
  26. package/build/components/block-breadcrumb/index.cjs +1 -1
  27. package/build/components/block-breadcrumb/index.cjs.map +1 -1
  28. package/build/components/block-canvas/index.cjs +1 -1
  29. package/build/components/block-canvas/index.cjs.map +1 -1
  30. package/build/components/block-card/index.cjs +1 -1
  31. package/build/components/block-card/index.cjs.map +1 -1
  32. package/build/components/block-compare/block-view.cjs +1 -1
  33. package/build/components/block-compare/block-view.cjs.map +1 -1
  34. package/build/components/block-compare/index.cjs +1 -1
  35. package/build/components/block-compare/index.cjs.map +1 -1
  36. package/build/components/block-context/index.cjs +1 -1
  37. package/build/components/block-context/index.cjs.map +1 -1
  38. package/build/components/block-controls/fill.cjs +1 -1
  39. package/build/components/block-controls/fill.cjs.map +1 -1
  40. package/build/components/block-controls/index.cjs +1 -1
  41. package/build/components/block-controls/index.cjs.map +1 -1
  42. package/build/components/block-controls/slot.cjs +1 -1
  43. package/build/components/block-controls/slot.cjs.map +1 -1
  44. package/build/components/block-draggable/draggable-chip.cjs +1 -1
  45. package/build/components/block-draggable/draggable-chip.cjs.map +1 -1
  46. package/build/components/block-draggable/index.cjs +1 -1
  47. package/build/components/block-draggable/index.cjs.map +1 -1
  48. package/build/components/block-edit/edit.cjs +1 -1
  49. package/build/components/block-edit/edit.cjs.map +1 -1
  50. package/build/components/block-edit/index.cjs +1 -1
  51. package/build/components/block-edit/index.cjs.map +1 -1
  52. package/build/components/block-edit/multiple-usage-warning.cjs +1 -1
  53. package/build/components/block-edit/multiple-usage-warning.cjs.map +1 -1
  54. package/build/components/block-edit-visually-button/index.cjs +1 -1
  55. package/build/components/block-edit-visually-button/index.cjs.map +1 -1
  56. package/build/components/block-full-height-alignment-control/index.cjs +1 -1
  57. package/build/components/block-full-height-alignment-control/index.cjs.map +1 -1
  58. package/build/components/block-heading-level-dropdown/heading-level-icon.cjs +1 -1
  59. package/build/components/block-heading-level-dropdown/heading-level-icon.cjs.map +1 -1
  60. package/build/components/block-heading-level-dropdown/index.cjs +1 -1
  61. package/build/components/block-heading-level-dropdown/index.cjs.map +1 -1
  62. package/build/components/block-icon/index.cjs +1 -1
  63. package/build/components/block-icon/index.cjs.map +1 -1
  64. package/build/components/block-inspector/edit-contents.cjs +1 -1
  65. package/build/components/block-inspector/edit-contents.cjs.map +1 -1
  66. package/build/components/block-inspector/index.cjs +14 -10
  67. package/build/components/block-inspector/index.cjs.map +3 -3
  68. package/build/components/block-keyboard-shortcuts/index.cjs +201 -0
  69. package/build/components/block-keyboard-shortcuts/index.cjs.map +7 -0
  70. package/build/components/block-list/block-crash-warning.cjs +1 -1
  71. package/build/components/block-list/block-crash-warning.cjs.map +1 -1
  72. package/build/components/block-list/block-html.cjs +1 -1
  73. package/build/components/block-list/block-html.cjs.map +1 -1
  74. package/build/components/block-list/block-invalid-warning.cjs +1 -1
  75. package/build/components/block-list/block-invalid-warning.cjs.map +1 -1
  76. package/build/components/block-list/block.cjs +11 -4
  77. package/build/components/block-list/block.cjs.map +3 -3
  78. package/build/components/block-list/index.cjs +7 -2
  79. package/build/components/block-list/index.cjs.map +3 -3
  80. package/build/components/block-list/layout.cjs +1 -1
  81. package/build/components/block-list/layout.cjs.map +1 -1
  82. package/build/components/block-list/subdirectory-icon.cjs +1 -1
  83. package/build/components/block-list/subdirectory-icon.cjs.map +1 -1
  84. package/build/components/block-list/use-block-props/use-focus-first-element.cjs +4 -0
  85. package/build/components/block-list/use-block-props/use-focus-first-element.cjs.map +2 -2
  86. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.cjs +6 -7
  87. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.cjs.map +2 -2
  88. package/build/components/block-list/zoom-out-separator.cjs +1 -1
  89. package/build/components/block-list/zoom-out-separator.cjs.map +1 -1
  90. package/build/components/block-list-appender/index.cjs +1 -1
  91. package/build/components/block-list-appender/index.cjs.map +1 -1
  92. package/build/components/block-lock/menu-item.cjs +1 -1
  93. package/build/components/block-lock/menu-item.cjs.map +1 -1
  94. package/build/components/block-lock/modal.cjs +1 -1
  95. package/build/components/block-lock/modal.cjs.map +1 -1
  96. package/build/components/block-lock/toolbar.cjs +1 -1
  97. package/build/components/block-lock/toolbar.cjs.map +1 -1
  98. package/build/components/block-manager/category.cjs +1 -1
  99. package/build/components/block-manager/category.cjs.map +1 -1
  100. package/build/components/block-manager/checklist.cjs +1 -1
  101. package/build/components/block-manager/checklist.cjs.map +1 -1
  102. package/build/components/block-manager/index.cjs +1 -1
  103. package/build/components/block-manager/index.cjs.map +1 -1
  104. package/build/components/block-mover/button.cjs +1 -1
  105. package/build/components/block-mover/button.cjs.map +1 -1
  106. package/build/components/block-mover/index.cjs +1 -1
  107. package/build/components/block-mover/index.cjs.map +1 -1
  108. package/build/components/block-navigation/dropdown.cjs +1 -1
  109. package/build/components/block-navigation/dropdown.cjs.map +1 -1
  110. package/build/components/block-parent-selector/index.cjs +99 -30
  111. package/build/components/block-parent-selector/index.cjs.map +4 -4
  112. package/build/components/block-pattern-setup/index.cjs +1 -1
  113. package/build/components/block-pattern-setup/index.cjs.map +1 -1
  114. package/build/components/block-pattern-setup/setup-toolbar.cjs +1 -1
  115. package/build/components/block-pattern-setup/setup-toolbar.cjs.map +1 -1
  116. package/build/components/block-patterns-list/index.cjs +1 -1
  117. package/build/components/block-patterns-list/index.cjs.map +1 -1
  118. package/build/components/block-patterns-paging/index.cjs +1 -1
  119. package/build/components/block-patterns-paging/index.cjs.map +1 -1
  120. package/build/components/block-popover/cover.cjs +1 -1
  121. package/build/components/block-popover/cover.cjs.map +1 -1
  122. package/build/components/block-popover/drop-zone.cjs +1 -1
  123. package/build/components/block-popover/drop-zone.cjs.map +1 -1
  124. package/build/components/block-popover/inbetween.cjs +3 -3
  125. package/build/components/block-popover/inbetween.cjs.map +3 -3
  126. package/build/components/block-popover/index.cjs +1 -1
  127. package/build/components/block-popover/index.cjs.map +1 -1
  128. package/build/components/block-preview/auto.cjs +1 -1
  129. package/build/components/block-preview/auto.cjs.map +1 -1
  130. package/build/components/block-preview/index.cjs +1 -5
  131. package/build/components/block-preview/index.cjs.map +3 -3
  132. package/build/components/block-quick-navigation/index.cjs +1 -1
  133. package/build/components/block-quick-navigation/index.cjs.map +1 -1
  134. package/build/components/block-removal-warning-modal/index.cjs +1 -1
  135. package/build/components/block-removal-warning-modal/index.cjs.map +1 -1
  136. package/build/components/block-rename/modal.cjs +1 -1
  137. package/build/components/block-rename/modal.cjs.map +1 -1
  138. package/build/components/block-rename/rename-control.cjs +1 -1
  139. package/build/components/block-rename/rename-control.cjs.map +1 -1
  140. package/build/components/block-selection-clearer/index.cjs +1 -1
  141. package/build/components/block-selection-clearer/index.cjs.map +1 -1
  142. package/build/components/block-settings-menu/block-html-convert-button.cjs +1 -1
  143. package/build/components/block-settings-menu/block-html-convert-button.cjs.map +1 -1
  144. package/build/components/block-settings-menu/block-mode-toggle.cjs +1 -1
  145. package/build/components/block-settings-menu/block-mode-toggle.cjs.map +1 -1
  146. package/build/components/block-settings-menu/block-parent-selector-menu-item.cjs +1 -1
  147. package/build/components/block-settings-menu/block-parent-selector-menu-item.cjs.map +1 -1
  148. package/build/components/block-settings-menu/block-settings-dropdown.cjs +1 -1
  149. package/build/components/block-settings-menu/block-settings-dropdown.cjs.map +1 -1
  150. package/build/components/block-settings-menu/index.cjs +1 -1
  151. package/build/components/block-settings-menu/index.cjs.map +1 -1
  152. package/build/components/block-settings-menu-controls/index.cjs +1 -1
  153. package/build/components/block-settings-menu-controls/index.cjs.map +1 -1
  154. package/build/components/block-styles/index.cjs +78 -34
  155. package/build/components/block-styles/index.cjs.map +4 -4
  156. package/build/components/block-styles/menu-items.cjs +1 -1
  157. package/build/components/block-styles/menu-items.cjs.map +1 -1
  158. package/build/components/block-switcher/block-styles-menu.cjs +1 -1
  159. package/build/components/block-switcher/block-styles-menu.cjs.map +1 -1
  160. package/build/components/block-switcher/block-transformations-menu.cjs +1 -1
  161. package/build/components/block-switcher/block-transformations-menu.cjs.map +1 -1
  162. package/build/components/block-switcher/block-variation-transformations.cjs +1 -1
  163. package/build/components/block-switcher/block-variation-transformations.cjs.map +1 -1
  164. package/build/components/block-switcher/index.cjs +1 -1
  165. package/build/components/block-switcher/index.cjs.map +1 -1
  166. package/build/components/block-switcher/pattern-transformations-menu.cjs +1 -1
  167. package/build/components/block-switcher/pattern-transformations-menu.cjs.map +1 -1
  168. package/build/components/block-switcher/preview-block-popover.cjs +1 -1
  169. package/build/components/block-switcher/preview-block-popover.cjs.map +1 -1
  170. package/build/components/block-toolbar/block-styles-dropdown.cjs +1 -1
  171. package/build/components/block-toolbar/block-styles-dropdown.cjs.map +1 -1
  172. package/build/components/block-toolbar/block-toolbar-icon.cjs +1 -1
  173. package/build/components/block-toolbar/block-toolbar-icon.cjs.map +1 -1
  174. package/build/components/block-toolbar/change-design.cjs +1 -1
  175. package/build/components/block-toolbar/change-design.cjs.map +1 -1
  176. package/build/components/block-toolbar/edit-section-button.cjs +1 -1
  177. package/build/components/block-toolbar/edit-section-button.cjs.map +1 -1
  178. package/build/components/block-toolbar/index.cjs +1 -1
  179. package/build/components/block-toolbar/index.cjs.map +1 -1
  180. package/build/components/block-toolbar/pattern-overrides-dropdown.cjs +1 -1
  181. package/build/components/block-toolbar/pattern-overrides-dropdown.cjs.map +1 -1
  182. package/build/components/block-toolbar/switch-section-style.cjs +1 -1
  183. package/build/components/block-toolbar/switch-section-style.cjs.map +1 -1
  184. package/build/components/block-tools/block-toolbar-popover.cjs +1 -1
  185. package/build/components/block-tools/block-toolbar-popover.cjs.map +1 -1
  186. package/build/components/block-tools/empty-block-inserter.cjs +1 -1
  187. package/build/components/block-tools/empty-block-inserter.cjs.map +1 -1
  188. package/build/components/block-tools/index.cjs +1 -1
  189. package/build/components/block-tools/index.cjs.map +1 -1
  190. package/build/components/block-tools/insertion-point.cjs +1 -1
  191. package/build/components/block-tools/insertion-point.cjs.map +1 -1
  192. package/build/components/block-tools/zoom-out-mode-inserter-button.cjs +1 -1
  193. package/build/components/block-tools/zoom-out-mode-inserter-button.cjs.map +1 -1
  194. package/build/components/block-tools/zoom-out-mode-inserters.cjs +1 -1
  195. package/build/components/block-tools/zoom-out-mode-inserters.cjs.map +1 -1
  196. package/build/components/block-types-list/index.cjs +1 -1
  197. package/build/components/block-types-list/index.cjs.map +1 -1
  198. package/build/components/block-variation-picker/index.cjs +1 -1
  199. package/build/components/block-variation-picker/index.cjs.map +1 -1
  200. package/build/components/block-variation-transforms/index.cjs +1 -1
  201. package/build/components/block-variation-transforms/index.cjs.map +1 -1
  202. package/build/components/block-vertical-alignment-control/index.cjs +1 -1
  203. package/build/components/block-vertical-alignment-control/index.cjs.map +1 -1
  204. package/build/components/block-vertical-alignment-control/ui.cjs +1 -1
  205. package/build/components/block-vertical-alignment-control/ui.cjs.map +1 -1
  206. package/build/components/block-visibility/constants.cjs.map +2 -2
  207. package/build/components/block-visibility/modal.cjs +1 -1
  208. package/build/components/block-visibility/modal.cjs.map +1 -1
  209. package/build/components/block-visibility/viewport-menu-item.cjs +1 -1
  210. package/build/components/block-visibility/viewport-menu-item.cjs.map +1 -1
  211. package/build/components/block-visibility/viewport-toolbar.cjs +1 -1
  212. package/build/components/block-visibility/viewport-toolbar.cjs.map +1 -1
  213. package/build/components/block-visibility/viewport-visibility-info.cjs +1 -1
  214. package/build/components/block-visibility/viewport-visibility-info.cjs.map +1 -1
  215. package/build/components/border-radius-control/index.cjs +1 -1
  216. package/build/components/border-radius-control/index.cjs.map +1 -1
  217. package/build/components/border-radius-control/linked-button.cjs +1 -1
  218. package/build/components/border-radius-control/linked-button.cjs.map +1 -1
  219. package/build/components/button-block-appender/index.cjs +1 -1
  220. package/build/components/button-block-appender/index.cjs.map +1 -1
  221. package/build/components/child-layout-control/index.cjs +1 -1
  222. package/build/components/child-layout-control/index.cjs.map +3 -3
  223. package/build/components/color-palette/control.cjs +1 -1
  224. package/build/components/color-palette/control.cjs.map +1 -1
  225. package/build/components/color-palette/with-color-context.cjs +1 -1
  226. package/build/components/color-palette/with-color-context.cjs.map +1 -1
  227. package/build/components/color-style-selector/index.cjs +1 -1
  228. package/build/components/color-style-selector/index.cjs.map +1 -1
  229. package/build/components/colors/with-colors.cjs +56 -72
  230. package/build/components/colors/with-colors.cjs.map +3 -3
  231. package/build/components/colors-gradients/control.cjs +1 -1
  232. package/build/components/colors-gradients/control.cjs.map +1 -1
  233. package/build/components/colors-gradients/dropdown.cjs +1 -1
  234. package/build/components/colors-gradients/dropdown.cjs.map +1 -1
  235. package/build/components/colors-gradients/panel-color-gradient-settings.cjs +1 -1
  236. package/build/components/colors-gradients/panel-color-gradient-settings.cjs.map +1 -1
  237. package/build/components/contrast-checker/index.cjs +1 -1
  238. package/build/components/contrast-checker/index.cjs.map +1 -1
  239. package/build/components/convert-to-group-buttons/index.cjs +1 -1
  240. package/build/components/convert-to-group-buttons/index.cjs.map +1 -1
  241. package/build/components/convert-to-group-buttons/toolbar.cjs +1 -1
  242. package/build/components/convert-to-group-buttons/toolbar.cjs.map +1 -1
  243. package/build/components/copy-handler/index.cjs +1 -1
  244. package/build/components/copy-handler/index.cjs.map +1 -1
  245. package/build/components/date-format-picker/index.cjs +1 -1
  246. package/build/components/date-format-picker/index.cjs.map +1 -1
  247. package/build/components/default-block-appender/index.cjs +1 -1
  248. package/build/components/default-block-appender/index.cjs.map +1 -1
  249. package/build/components/dimension-control/index.cjs +1 -1
  250. package/build/components/dimension-control/index.cjs.map +1 -1
  251. package/build/components/dimensions-tool/aspect-ratio-tool.cjs +5 -3
  252. package/build/components/dimensions-tool/aspect-ratio-tool.cjs.map +3 -3
  253. package/build/components/dimensions-tool/index.cjs +19 -17
  254. package/build/components/dimensions-tool/index.cjs.map +3 -3
  255. package/build/components/dimensions-tool/scale-tool.cjs +1 -1
  256. package/build/components/dimensions-tool/scale-tool.cjs.map +1 -1
  257. package/build/components/dimensions-tool/utils.cjs +61 -0
  258. package/build/components/dimensions-tool/utils.cjs.map +7 -0
  259. package/build/components/dimensions-tool/width-height-tool.cjs +1 -1
  260. package/build/components/dimensions-tool/width-height-tool.cjs.map +1 -1
  261. package/build/components/duotone-control/index.cjs +3 -1
  262. package/build/components/duotone-control/index.cjs.map +3 -3
  263. package/build/components/editable-text/index.cjs +1 -1
  264. package/build/components/editable-text/index.cjs.map +1 -1
  265. package/build/components/editor-styles/index.cjs +1 -1
  266. package/build/components/editor-styles/index.cjs.map +1 -1
  267. package/build/components/fit-text-size-warning/index.cjs +1 -1
  268. package/build/components/fit-text-size-warning/index.cjs.map +1 -1
  269. package/build/components/font-appearance-control/index.cjs +1 -1
  270. package/build/components/font-appearance-control/index.cjs.map +1 -1
  271. package/build/components/font-family/index.cjs +1 -1
  272. package/build/components/font-family/index.cjs.map +1 -1
  273. package/build/components/font-sizes/font-size-picker.cjs +1 -1
  274. package/build/components/font-sizes/font-size-picker.cjs.map +1 -1
  275. package/build/components/font-sizes/with-font-sizes.cjs +1 -1
  276. package/build/components/font-sizes/with-font-sizes.cjs.map +1 -1
  277. package/build/components/global-styles/advanced-panel.cjs +1 -1
  278. package/build/components/global-styles/advanced-panel.cjs.map +4 -4
  279. package/build/components/global-styles/background-panel.cjs +1 -1
  280. package/build/components/global-styles/background-panel.cjs.map +2 -2
  281. package/build/components/global-styles/border-panel.cjs +3 -6
  282. package/build/components/global-styles/border-panel.cjs.map +3 -3
  283. package/build/components/global-styles/color-gradient-dropdown-item.cjs +1 -1
  284. package/build/components/global-styles/color-gradient-dropdown-item.cjs.map +1 -1
  285. package/build/components/global-styles/color-panel.cjs +15 -3
  286. package/build/components/global-styles/color-panel.cjs.map +3 -3
  287. package/build/components/global-styles/dimensions-panel.cjs +10 -6
  288. package/build/components/global-styles/dimensions-panel.cjs.map +3 -3
  289. package/build/components/global-styles/filters-panel.cjs +13 -9
  290. package/build/components/global-styles/filters-panel.cjs.map +3 -3
  291. package/build/components/global-styles/image-settings-panel.cjs +1 -1
  292. package/build/components/global-styles/image-settings-panel.cjs.map +1 -1
  293. package/build/components/global-styles/inheritance/index.cjs +1 -1
  294. package/build/components/global-styles/inheritance/index.cjs.map +1 -1
  295. package/build/components/global-styles/shadow-panel-components.cjs +17 -12
  296. package/build/components/global-styles/shadow-panel-components.cjs.map +3 -3
  297. package/build/components/global-styles/state-control-badges.cjs +1 -1
  298. package/build/components/global-styles/state-control-badges.cjs.map +1 -1
  299. package/build/components/global-styles/state-control.cjs +1 -1
  300. package/build/components/global-styles/state-control.cjs.map +1 -1
  301. package/build/components/global-styles/typography-panel.cjs +1 -1
  302. package/build/components/global-styles/typography-panel.cjs.map +1 -1
  303. package/build/components/global-styles/utils.cjs +9 -0
  304. package/build/components/global-styles/utils.cjs.map +2 -2
  305. package/build/components/grid/grid-item-movers.cjs +1 -1
  306. package/build/components/grid/grid-item-movers.cjs.map +1 -1
  307. package/build/components/grid/grid-item-resizer.cjs +1 -1
  308. package/build/components/grid/grid-item-resizer.cjs.map +1 -1
  309. package/build/components/grid/grid-visualizer.cjs +1 -1
  310. package/build/components/grid/grid-visualizer.cjs.map +1 -1
  311. package/build/components/height-control/index.cjs +1 -1
  312. package/build/components/height-control/index.cjs.map +1 -1
  313. package/build/components/html-element-control/index.cjs +1 -1
  314. package/build/components/html-element-control/index.cjs.map +1 -1
  315. package/build/components/iframe/index.cjs +1 -1
  316. package/build/components/iframe/index.cjs.map +1 -1
  317. package/build/components/image-editor/aspect-ratio-dropdown.cjs +1 -1
  318. package/build/components/image-editor/aspect-ratio-dropdown.cjs.map +1 -1
  319. package/build/components/image-editor/context.cjs +1 -1
  320. package/build/components/image-editor/context.cjs.map +1 -1
  321. package/build/components/image-editor/cropper.cjs +1 -1
  322. package/build/components/image-editor/cropper.cjs.map +1 -1
  323. package/build/components/image-editor/form-controls.cjs +1 -1
  324. package/build/components/image-editor/form-controls.cjs.map +1 -1
  325. package/build/components/image-editor/index.cjs +1 -1
  326. package/build/components/image-editor/index.cjs.map +1 -1
  327. package/build/components/image-editor/rotation-button.cjs +1 -1
  328. package/build/components/image-editor/rotation-button.cjs.map +1 -1
  329. package/build/components/image-editor/zoom-dropdown.cjs +1 -1
  330. package/build/components/image-editor/zoom-dropdown.cjs.map +1 -1
  331. package/build/components/image-size-control/index.cjs +1 -1
  332. package/build/components/image-size-control/index.cjs.map +1 -1
  333. package/build/components/inner-blocks/button-block-appender.cjs +1 -1
  334. package/build/components/inner-blocks/button-block-appender.cjs.map +1 -1
  335. package/build/components/inner-blocks/default-block-appender.cjs +1 -1
  336. package/build/components/inner-blocks/default-block-appender.cjs.map +1 -1
  337. package/build/components/inner-blocks/index.cjs +6 -4
  338. package/build/components/inner-blocks/index.cjs.map +3 -3
  339. package/build/components/inner-content/index.cjs +1 -1
  340. package/build/components/inner-content/index.cjs.map +1 -1
  341. package/build/components/inserter/block-patterns-explorer/index.cjs +40 -23
  342. package/build/components/inserter/block-patterns-explorer/index.cjs.map +3 -3
  343. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.cjs +22 -56
  344. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.cjs.map +3 -3
  345. package/build/components/inserter/block-patterns-explorer/pattern-list.cjs +20 -45
  346. package/build/components/inserter/block-patterns-explorer/pattern-list.cjs.map +4 -4
  347. package/build/components/inserter/block-patterns-tab/index.cjs +1 -1
  348. package/build/components/inserter/block-patterns-tab/index.cjs.map +1 -1
  349. package/build/components/inserter/block-patterns-tab/pattern-category-previews.cjs +1 -1
  350. package/build/components/inserter/block-patterns-tab/pattern-category-previews.cjs.map +1 -1
  351. package/build/components/inserter/block-patterns-tab/patterns-filter.cjs +1 -1
  352. package/build/components/inserter/block-patterns-tab/patterns-filter.cjs.map +1 -1
  353. package/build/components/inserter/block-types-tab.cjs +1 -1
  354. package/build/components/inserter/block-types-tab.cjs.map +1 -1
  355. package/build/components/inserter/category-tabs/index.cjs +1 -1
  356. package/build/components/inserter/category-tabs/index.cjs.map +1 -1
  357. package/build/components/inserter/hooks/use-insertion-point.cjs +4 -4
  358. package/build/components/inserter/hooks/use-insertion-point.cjs.map +2 -2
  359. package/build/components/inserter/index.cjs +1 -1
  360. package/build/components/inserter/index.cjs.map +1 -1
  361. package/build/components/inserter/library.cjs +1 -1
  362. package/build/components/inserter/library.cjs.map +1 -1
  363. package/build/components/inserter/media-tab/media-list.cjs +1 -1
  364. package/build/components/inserter/media-tab/media-list.cjs.map +1 -1
  365. package/build/components/inserter/media-tab/media-panel.cjs +1 -1
  366. package/build/components/inserter/media-tab/media-panel.cjs.map +1 -1
  367. package/build/components/inserter/media-tab/media-preview.cjs +1 -1
  368. package/build/components/inserter/media-tab/media-preview.cjs.map +1 -1
  369. package/build/components/inserter/media-tab/media-tab.cjs +1 -1
  370. package/build/components/inserter/media-tab/media-tab.cjs.map +1 -1
  371. package/build/components/inserter/media-tab/utils.cjs +1 -1
  372. package/build/components/inserter/media-tab/utils.cjs.map +1 -1
  373. package/build/components/inserter/menu.cjs +20 -9
  374. package/build/components/inserter/menu.cjs.map +3 -3
  375. package/build/components/inserter/mobile-tab-navigation.cjs +1 -1
  376. package/build/components/inserter/mobile-tab-navigation.cjs.map +1 -1
  377. package/build/components/inserter/no-results.cjs +1 -1
  378. package/build/components/inserter/no-results.cjs.map +1 -1
  379. package/build/components/inserter/panel.cjs +1 -1
  380. package/build/components/inserter/panel.cjs.map +1 -1
  381. package/build/components/inserter/preview-panel.cjs +1 -1
  382. package/build/components/inserter/preview-panel.cjs.map +1 -1
  383. package/build/components/inserter/quick-inserter.cjs +31 -28
  384. package/build/components/inserter/quick-inserter.cjs.map +3 -3
  385. package/build/components/inserter/search-results.cjs +1 -1
  386. package/build/components/inserter/search-results.cjs.map +1 -1
  387. package/build/components/inserter/tips.cjs +1 -1
  388. package/build/components/inserter/tips.cjs.map +1 -1
  389. package/build/components/inserter-draggable-blocks/index.cjs +1 -1
  390. package/build/components/inserter-draggable-blocks/index.cjs.map +1 -1
  391. package/build/components/inserter-list-item/index.cjs +1 -1
  392. package/build/components/inserter-list-item/index.cjs.map +1 -1
  393. package/build/components/inserter-listbox/group.cjs +1 -1
  394. package/build/components/inserter-listbox/group.cjs.map +1 -1
  395. package/build/components/inserter-listbox/index.cjs +1 -1
  396. package/build/components/inserter-listbox/index.cjs.map +1 -1
  397. package/build/components/inserter-listbox/item.cjs +1 -1
  398. package/build/components/inserter-listbox/item.cjs.map +1 -1
  399. package/build/components/inserter-listbox/row.cjs +1 -1
  400. package/build/components/inserter-listbox/row.cjs.map +1 -1
  401. package/build/components/inspector-controls/block-support-slot-container.cjs +1 -1
  402. package/build/components/inspector-controls/block-support-slot-container.cjs.map +1 -1
  403. package/build/components/inspector-controls/block-support-tools-panel.cjs +1 -1
  404. package/build/components/inspector-controls/block-support-tools-panel.cjs.map +1 -1
  405. package/build/components/inspector-controls/fill.cjs +1 -1
  406. package/build/components/inspector-controls/fill.cjs.map +1 -1
  407. package/build/components/inspector-controls/groups.cjs +3 -1
  408. package/build/components/inspector-controls/groups.cjs.map +2 -2
  409. package/build/components/inspector-controls/index.cjs +1 -1
  410. package/build/components/inspector-controls/index.cjs.map +1 -1
  411. package/build/components/inspector-controls/last-item.cjs +1 -1
  412. package/build/components/inspector-controls/last-item.cjs.map +1 -1
  413. package/build/components/inspector-controls/list-view-content-popover.cjs +1 -1
  414. package/build/components/inspector-controls/list-view-content-popover.cjs.map +1 -1
  415. package/build/components/inspector-controls/slot.cjs +1 -1
  416. package/build/components/inspector-controls/slot.cjs.map +1 -1
  417. package/build/components/inspector-controls-tabs/advanced-controls-panel.cjs +1 -1
  418. package/build/components/inspector-controls-tabs/advanced-controls-panel.cjs.map +1 -1
  419. package/build/components/inspector-controls-tabs/content-tab.cjs +1 -1
  420. package/build/components/inspector-controls-tabs/content-tab.cjs.map +1 -1
  421. package/build/components/inspector-controls-tabs/index.cjs +1 -1
  422. package/build/components/inspector-controls-tabs/index.cjs.map +1 -1
  423. package/build/components/inspector-controls-tabs/position-controls-panel.cjs +1 -1
  424. package/build/components/inspector-controls-tabs/position-controls-panel.cjs.map +1 -1
  425. package/build/components/inspector-controls-tabs/settings-tab.cjs +1 -1
  426. package/build/components/inspector-controls-tabs/settings-tab.cjs.map +1 -1
  427. package/build/components/inspector-controls-tabs/styles-tab.cjs +2 -2
  428. package/build/components/inspector-controls-tabs/styles-tab.cjs.map +3 -3
  429. package/build/components/inspector-popover-header/index.cjs +1 -1
  430. package/build/components/inspector-popover-header/index.cjs.map +1 -1
  431. package/build/components/justify-content-control/index.cjs +1 -1
  432. package/build/components/justify-content-control/index.cjs.map +1 -1
  433. package/build/components/justify-content-control/ui.cjs +1 -1
  434. package/build/components/justify-content-control/ui.cjs.map +1 -1
  435. package/build/components/letter-spacing-control/index.cjs +1 -1
  436. package/build/components/letter-spacing-control/index.cjs.map +1 -1
  437. package/build/components/line-height-control/index.cjs +1 -1
  438. package/build/components/line-height-control/index.cjs.map +1 -1
  439. package/build/components/link-control/index.cjs +1 -1
  440. package/build/components/link-control/index.cjs.map +1 -1
  441. package/build/components/link-control/link-preview.cjs +1 -1
  442. package/build/components/link-control/link-preview.cjs.map +1 -1
  443. package/build/components/link-control/search-create-button.cjs +1 -1
  444. package/build/components/link-control/search-create-button.cjs.map +1 -1
  445. package/build/components/link-control/search-input.cjs +1 -1
  446. package/build/components/link-control/search-input.cjs.map +1 -1
  447. package/build/components/link-control/search-item.cjs +1 -1
  448. package/build/components/link-control/search-item.cjs.map +1 -1
  449. package/build/components/link-control/search-results.cjs +1 -1
  450. package/build/components/link-control/search-results.cjs.map +1 -1
  451. package/build/components/link-control/settings-drawer.cjs +1 -1
  452. package/build/components/link-control/settings-drawer.cjs.map +1 -1
  453. package/build/components/link-control/settings.cjs +1 -1
  454. package/build/components/link-control/settings.cjs.map +1 -1
  455. package/build/components/link-picker/link-picker.cjs +1 -1
  456. package/build/components/link-picker/link-picker.cjs.map +1 -1
  457. package/build/components/link-picker/link-preview.cjs +1 -1
  458. package/build/components/link-picker/link-preview.cjs.map +1 -1
  459. package/build/components/list-view/appender.cjs +1 -1
  460. package/build/components/list-view/appender.cjs.map +1 -1
  461. package/build/components/list-view/aria-referenced-text.cjs +1 -1
  462. package/build/components/list-view/aria-referenced-text.cjs.map +1 -1
  463. package/build/components/list-view/block-contents.cjs +1 -1
  464. package/build/components/list-view/block-contents.cjs.map +1 -1
  465. package/build/components/list-view/block-select-button.cjs +1 -1
  466. package/build/components/list-view/block-select-button.cjs.map +1 -1
  467. package/build/components/list-view/block.cjs +1 -1
  468. package/build/components/list-view/block.cjs.map +1 -1
  469. package/build/components/list-view/branch.cjs +1 -1
  470. package/build/components/list-view/branch.cjs.map +1 -1
  471. package/build/components/list-view/drop-indicator.cjs +1 -1
  472. package/build/components/list-view/drop-indicator.cjs.map +1 -1
  473. package/build/components/list-view/expander.cjs +1 -1
  474. package/build/components/list-view/expander.cjs.map +1 -1
  475. package/build/components/list-view/index.cjs +32 -6
  476. package/build/components/list-view/index.cjs.map +4 -4
  477. package/build/components/list-view/leaf.cjs +1 -1
  478. package/build/components/list-view/leaf.cjs.map +1 -1
  479. package/build/components/list-view/utils.cjs +13 -1
  480. package/build/components/list-view/utils.cjs.map +2 -2
  481. package/build/components/media-placeholder/index.cjs +2 -2
  482. package/build/components/media-placeholder/index.cjs.map +4 -4
  483. package/build/components/media-replace-flow/index.cjs +1 -1
  484. package/build/components/media-replace-flow/index.cjs.map +1 -1
  485. package/build/components/multi-selection-inspector/index.cjs +1 -1
  486. package/build/components/multi-selection-inspector/index.cjs.map +1 -1
  487. package/build/components/navigable-toolbar/index.cjs +1 -1
  488. package/build/components/navigable-toolbar/index.cjs.map +1 -1
  489. package/build/components/observe-typing/index.cjs +1 -1
  490. package/build/components/observe-typing/index.cjs.map +1 -1
  491. package/build/components/panel-color-settings/index.cjs +1 -1
  492. package/build/components/panel-color-settings/index.cjs.map +1 -1
  493. package/build/components/plain-text/index.cjs +1 -1
  494. package/build/components/plain-text/index.cjs.map +1 -1
  495. package/build/components/preset-input-control/custom-value-controls.cjs +1 -1
  496. package/build/components/preset-input-control/custom-value-controls.cjs.map +1 -1
  497. package/build/components/preset-input-control/index.cjs +1 -1
  498. package/build/components/preset-input-control/index.cjs.map +1 -1
  499. package/build/components/provider/block-refs-provider.cjs +1 -1
  500. package/build/components/provider/block-refs-provider.cjs.map +1 -1
  501. package/build/components/provider/index.cjs +26 -5
  502. package/build/components/provider/index.cjs.map +4 -4
  503. package/build/components/provider/with-registry-provider.cjs +1 -1
  504. package/build/components/provider/with-registry-provider.cjs.map +1 -1
  505. package/build/components/publish-date-time-picker/index.cjs +4 -3
  506. package/build/components/publish-date-time-picker/index.cjs.map +3 -3
  507. package/build/components/recursion-provider/index.cjs +1 -1
  508. package/build/components/recursion-provider/index.cjs.map +1 -1
  509. package/build/components/resizable-box-popover/index.cjs +1 -1
  510. package/build/components/resizable-box-popover/index.cjs.map +1 -1
  511. package/build/components/resolution-tool/index.cjs +1 -1
  512. package/build/components/resolution-tool/index.cjs.map +1 -1
  513. package/build/components/responsive-block-control/index.cjs +1 -1
  514. package/build/components/responsive-block-control/index.cjs.map +1 -1
  515. package/build/components/responsive-block-control/label.cjs +1 -1
  516. package/build/components/responsive-block-control/label.cjs.map +1 -1
  517. package/build/components/rich-text/content.cjs +1 -1
  518. package/build/components/rich-text/content.cjs.map +1 -1
  519. package/build/components/rich-text/event-listeners/enter.cjs +46 -39
  520. package/build/components/rich-text/event-listeners/enter.cjs.map +2 -2
  521. package/build/components/rich-text/format-edit.cjs +1 -1
  522. package/build/components/rich-text/format-edit.cjs.map +1 -1
  523. package/build/components/rich-text/format-toolbar/index.cjs +1 -1
  524. package/build/components/rich-text/format-toolbar/index.cjs.map +1 -1
  525. package/build/components/rich-text/format-toolbar-container.cjs +1 -1
  526. package/build/components/rich-text/format-toolbar-container.cjs.map +1 -1
  527. package/build/components/rich-text/get-rich-text-values.cjs +1 -1
  528. package/build/components/rich-text/get-rich-text-values.cjs.map +1 -1
  529. package/build/components/rich-text/index.cjs +8 -6
  530. package/build/components/rich-text/index.cjs.map +3 -3
  531. package/build/components/rich-text/multiline.cjs +106 -71
  532. package/build/components/rich-text/multiline.cjs.map +4 -4
  533. package/build/components/rich-text/toolbar-button.cjs +1 -1
  534. package/build/components/rich-text/toolbar-button.cjs.map +1 -1
  535. package/build/components/rich-text/utils.cjs +1 -1
  536. package/build/components/rich-text/utils.cjs.map +1 -1
  537. package/build/components/rich-text/with-deprecations.cjs +1 -1
  538. package/build/components/rich-text/with-deprecations.cjs.map +1 -1
  539. package/build/components/skip-to-selected-block/index.cjs +1 -1
  540. package/build/components/skip-to-selected-block/index.cjs.map +1 -1
  541. package/build/components/spacing-sizes-control/index.cjs +1 -1
  542. package/build/components/spacing-sizes-control/index.cjs.map +1 -1
  543. package/build/components/spacing-sizes-control/input-controls/axial.cjs +1 -1
  544. package/build/components/spacing-sizes-control/input-controls/axial.cjs.map +1 -1
  545. package/build/components/spacing-sizes-control/input-controls/separated.cjs +1 -1
  546. package/build/components/spacing-sizes-control/input-controls/separated.cjs.map +1 -1
  547. package/build/components/spacing-sizes-control/input-controls/single.cjs +1 -1
  548. package/build/components/spacing-sizes-control/input-controls/single.cjs.map +1 -1
  549. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.cjs +1 -1
  550. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.cjs.map +1 -1
  551. package/build/components/spacing-sizes-control/linked-button.cjs +1 -1
  552. package/build/components/spacing-sizes-control/linked-button.cjs.map +1 -1
  553. package/build/components/tabbed-sidebar/index.cjs +1 -1
  554. package/build/components/tabbed-sidebar/index.cjs.map +1 -1
  555. package/build/components/text-alignment-control/index.cjs +1 -1
  556. package/build/components/text-alignment-control/index.cjs.map +1 -1
  557. package/build/components/text-decoration-control/index.cjs +1 -1
  558. package/build/components/text-decoration-control/index.cjs.map +1 -1
  559. package/build/components/text-indent-control/index.cjs +1 -1
  560. package/build/components/text-indent-control/index.cjs.map +1 -1
  561. package/build/components/text-transform-control/index.cjs +1 -1
  562. package/build/components/text-transform-control/index.cjs.map +1 -1
  563. package/build/components/typewriter/index.cjs +1 -1
  564. package/build/components/typewriter/index.cjs.map +1 -1
  565. package/build/components/unit-control/index.cjs +1 -1
  566. package/build/components/unit-control/index.cjs.map +1 -1
  567. package/build/components/url-input/button.cjs +1 -1
  568. package/build/components/url-input/button.cjs.map +1 -1
  569. package/build/components/url-input/index.cjs +1 -1
  570. package/build/components/url-input/index.cjs.map +3 -3
  571. package/build/components/url-popover/image-url-input-ui.cjs +1 -1
  572. package/build/components/url-popover/image-url-input-ui.cjs.map +1 -1
  573. package/build/components/url-popover/index.cjs +1 -1
  574. package/build/components/url-popover/index.cjs.map +1 -1
  575. package/build/components/url-popover/link-editor.cjs +1 -1
  576. package/build/components/url-popover/link-editor.cjs.map +1 -1
  577. package/build/components/url-popover/link-viewer-url.cjs +1 -1
  578. package/build/components/url-popover/link-viewer-url.cjs.map +1 -1
  579. package/build/components/url-popover/link-viewer.cjs +1 -1
  580. package/build/components/url-popover/link-viewer.cjs.map +1 -1
  581. package/build/components/warning/index.cjs +1 -1
  582. package/build/components/warning/index.cjs.map +1 -1
  583. package/build/components/writing-flow/index.cjs +1 -1
  584. package/build/components/writing-flow/index.cjs.map +1 -1
  585. package/build/components/writing-flow/use-input.cjs +65 -13
  586. package/build/components/writing-flow/use-input.cjs.map +3 -3
  587. package/build/components/writing-flow/use-tab-nav.cjs +1 -1
  588. package/build/components/writing-flow/use-tab-nav.cjs.map +1 -1
  589. package/build/components/writing-mode-control/index.cjs +1 -1
  590. package/build/components/writing-mode-control/index.cjs.map +1 -1
  591. package/build/hooks/align.cjs +1 -1
  592. package/build/hooks/align.cjs.map +1 -1
  593. package/build/hooks/allowed-blocks.cjs +1 -1
  594. package/build/hooks/allowed-blocks.cjs.map +1 -1
  595. package/build/hooks/anchor.cjs +1 -1
  596. package/build/hooks/anchor.cjs.map +1 -1
  597. package/build/hooks/auto-inspector-controls.cjs +1 -1
  598. package/build/hooks/auto-inspector-controls.cjs.map +1 -1
  599. package/build/hooks/background.cjs +1 -1
  600. package/build/hooks/background.cjs.map +1 -1
  601. package/build/hooks/block-bindings.cjs +1 -1
  602. package/build/hooks/block-bindings.cjs.map +1 -1
  603. package/build/hooks/block-fields/fields-dropdown-menu.cjs +1 -1
  604. package/build/hooks/block-fields/fields-dropdown-menu.cjs.map +1 -1
  605. package/build/hooks/block-fields/index.cjs +1 -1
  606. package/build/hooks/block-fields/index.cjs.map +1 -1
  607. package/build/hooks/block-fields/link/index.cjs +1 -1
  608. package/build/hooks/block-fields/link/index.cjs.map +1 -1
  609. package/build/hooks/block-fields/media/index.cjs +1 -1
  610. package/build/hooks/block-fields/media/index.cjs.map +1 -1
  611. package/build/hooks/block-fields/rich-text/index.cjs +1 -1
  612. package/build/hooks/block-fields/rich-text/index.cjs.map +1 -1
  613. package/build/hooks/block-hooks.cjs +1 -1
  614. package/build/hooks/block-hooks.cjs.map +1 -1
  615. package/build/hooks/block-style-variation.cjs +1 -1
  616. package/build/hooks/block-style-variation.cjs.map +1 -1
  617. package/build/hooks/border.cjs +26 -4
  618. package/build/hooks/border.cjs.map +3 -3
  619. package/build/hooks/custom-class-name.cjs +1 -1
  620. package/build/hooks/custom-class-name.cjs.map +1 -1
  621. package/build/hooks/custom-css.cjs +1 -1
  622. package/build/hooks/custom-css.cjs.map +1 -1
  623. package/build/hooks/dimensions.cjs +10 -3
  624. package/build/hooks/dimensions.cjs.map +3 -3
  625. package/build/hooks/duotone.cjs +5 -4
  626. package/build/hooks/duotone.cjs.map +3 -3
  627. package/build/hooks/elements.cjs +1 -1
  628. package/build/hooks/elements.cjs.map +1 -1
  629. package/build/hooks/fit-text.cjs +1 -1
  630. package/build/hooks/fit-text.cjs.map +1 -1
  631. package/build/hooks/font-size.cjs +1 -1
  632. package/build/hooks/font-size.cjs.map +1 -1
  633. package/build/hooks/gap.cjs +8 -2
  634. package/build/hooks/gap.cjs.map +2 -2
  635. package/build/hooks/grid-visualizer.cjs +1 -1
  636. package/build/hooks/grid-visualizer.cjs.map +2 -2
  637. package/build/hooks/layout-child.cjs +36 -14
  638. package/build/hooks/layout-child.cjs.map +3 -3
  639. package/build/hooks/layout.cjs +24 -2
  640. package/build/hooks/layout.cjs.map +3 -3
  641. package/build/hooks/line-height.cjs +1 -1
  642. package/build/hooks/line-height.cjs.map +1 -1
  643. package/build/hooks/list-view.cjs +1 -1
  644. package/build/hooks/list-view.cjs.map +1 -1
  645. package/build/hooks/position.cjs +2 -2
  646. package/build/hooks/position.cjs.map +3 -3
  647. package/build/hooks/spacing-visualizer.cjs +1 -1
  648. package/build/hooks/spacing-visualizer.cjs.map +1 -1
  649. package/build/hooks/states.cjs +8 -5
  650. package/build/hooks/states.cjs.map +3 -3
  651. package/build/hooks/style.cjs +1 -1
  652. package/build/hooks/style.cjs.map +1 -1
  653. package/build/hooks/text-align.cjs +1 -1
  654. package/build/hooks/text-align.cjs.map +1 -1
  655. package/build/hooks/typography.cjs +1 -1
  656. package/build/hooks/typography.cjs.map +1 -1
  657. package/build/hooks/utils.cjs +1 -1
  658. package/build/hooks/utils.cjs.map +1 -1
  659. package/build/layouts/constrained.cjs +9 -2
  660. package/build/layouts/constrained.cjs.map +3 -3
  661. package/build/layouts/flex.cjs +10 -1
  662. package/build/layouts/flex.cjs.map +3 -3
  663. package/build/layouts/flow.cjs +4 -1
  664. package/build/layouts/flow.cjs.map +2 -2
  665. package/build/layouts/grid.cjs +6 -2
  666. package/build/layouts/grid.cjs.map +3 -3
  667. package/build/private-apis.cjs +3 -1
  668. package/build/private-apis.cjs.map +2 -2
  669. package/build/store/actions.cjs +1 -1
  670. package/build/store/actions.cjs.map +2 -2
  671. package/build-module/autocompleters/block.mjs +1 -1
  672. package/build-module/autocompleters/block.mjs.map +1 -1
  673. package/build-module/components/alignment-control/index.mjs +1 -1
  674. package/build-module/components/alignment-control/index.mjs.map +1 -1
  675. package/build-module/components/alignment-control/ui.mjs +1 -1
  676. package/build-module/components/alignment-control/ui.mjs.map +1 -1
  677. package/build-module/components/autocomplete/index.mjs +1 -1
  678. package/build-module/components/autocomplete/index.mjs.map +1 -1
  679. package/build-module/components/background-image-control/index.mjs +1 -1
  680. package/build-module/components/background-image-control/index.mjs.map +1 -1
  681. package/build-module/components/block-alignment-control/index.mjs +1 -1
  682. package/build-module/components/block-alignment-control/index.mjs.map +1 -1
  683. package/build-module/components/block-alignment-control/ui.mjs +1 -1
  684. package/build-module/components/block-alignment-control/ui.mjs.map +1 -1
  685. package/build-module/components/block-alignment-matrix-control/index.mjs +1 -1
  686. package/build-module/components/block-alignment-matrix-control/index.mjs.map +1 -1
  687. package/build-module/components/block-allowed-blocks/allowed-blocks-control.mjs +1 -1
  688. package/build-module/components/block-allowed-blocks/allowed-blocks-control.mjs.map +1 -1
  689. package/build-module/components/block-allowed-blocks/modal.mjs +1 -1
  690. package/build-module/components/block-allowed-blocks/modal.mjs.map +1 -1
  691. package/build-module/components/block-bindings/attribute-control.mjs +1 -1
  692. package/build-module/components/block-bindings/attribute-control.mjs.map +1 -1
  693. package/build-module/components/block-bindings/source-fields-list.mjs +1 -1
  694. package/build-module/components/block-bindings/source-fields-list.mjs.map +1 -1
  695. package/build-module/components/block-breadcrumb/index.mjs +1 -1
  696. package/build-module/components/block-breadcrumb/index.mjs.map +1 -1
  697. package/build-module/components/block-canvas/index.mjs +1 -1
  698. package/build-module/components/block-canvas/index.mjs.map +1 -1
  699. package/build-module/components/block-card/index.mjs +1 -1
  700. package/build-module/components/block-card/index.mjs.map +1 -1
  701. package/build-module/components/block-compare/block-view.mjs +1 -1
  702. package/build-module/components/block-compare/block-view.mjs.map +1 -1
  703. package/build-module/components/block-compare/index.mjs +1 -1
  704. package/build-module/components/block-compare/index.mjs.map +1 -1
  705. package/build-module/components/block-context/index.mjs +1 -1
  706. package/build-module/components/block-context/index.mjs.map +1 -1
  707. package/build-module/components/block-controls/fill.mjs +1 -1
  708. package/build-module/components/block-controls/fill.mjs.map +1 -1
  709. package/build-module/components/block-controls/index.mjs +1 -1
  710. package/build-module/components/block-controls/index.mjs.map +1 -1
  711. package/build-module/components/block-controls/slot.mjs +1 -1
  712. package/build-module/components/block-controls/slot.mjs.map +1 -1
  713. package/build-module/components/block-draggable/draggable-chip.mjs +1 -1
  714. package/build-module/components/block-draggable/draggable-chip.mjs.map +1 -1
  715. package/build-module/components/block-draggable/index.mjs +1 -1
  716. package/build-module/components/block-draggable/index.mjs.map +1 -1
  717. package/build-module/components/block-edit/edit.mjs +1 -1
  718. package/build-module/components/block-edit/edit.mjs.map +1 -1
  719. package/build-module/components/block-edit/index.mjs +1 -1
  720. package/build-module/components/block-edit/index.mjs.map +1 -1
  721. package/build-module/components/block-edit/multiple-usage-warning.mjs +1 -1
  722. package/build-module/components/block-edit/multiple-usage-warning.mjs.map +1 -1
  723. package/build-module/components/block-edit-visually-button/index.mjs +1 -1
  724. package/build-module/components/block-edit-visually-button/index.mjs.map +1 -1
  725. package/build-module/components/block-full-height-alignment-control/index.mjs +1 -1
  726. package/build-module/components/block-full-height-alignment-control/index.mjs.map +1 -1
  727. package/build-module/components/block-heading-level-dropdown/heading-level-icon.mjs +1 -1
  728. package/build-module/components/block-heading-level-dropdown/heading-level-icon.mjs.map +1 -1
  729. package/build-module/components/block-heading-level-dropdown/index.mjs +1 -1
  730. package/build-module/components/block-heading-level-dropdown/index.mjs.map +1 -1
  731. package/build-module/components/block-icon/index.mjs +1 -1
  732. package/build-module/components/block-icon/index.mjs.map +1 -1
  733. package/build-module/components/block-inspector/edit-contents.mjs +1 -1
  734. package/build-module/components/block-inspector/edit-contents.mjs.map +1 -1
  735. package/build-module/components/block-inspector/index.mjs +14 -10
  736. package/build-module/components/block-inspector/index.mjs.map +3 -3
  737. package/build-module/components/block-keyboard-shortcuts/index.mjs +173 -0
  738. package/build-module/components/block-keyboard-shortcuts/index.mjs.map +7 -0
  739. package/build-module/components/block-list/block-crash-warning.mjs +1 -1
  740. package/build-module/components/block-list/block-crash-warning.mjs.map +1 -1
  741. package/build-module/components/block-list/block-html.mjs +1 -1
  742. package/build-module/components/block-list/block-html.mjs.map +1 -1
  743. package/build-module/components/block-list/block-invalid-warning.mjs +1 -1
  744. package/build-module/components/block-list/block-invalid-warning.mjs.map +1 -1
  745. package/build-module/components/block-list/block.mjs +11 -4
  746. package/build-module/components/block-list/block.mjs.map +3 -3
  747. package/build-module/components/block-list/index.mjs +7 -2
  748. package/build-module/components/block-list/index.mjs.map +3 -3
  749. package/build-module/components/block-list/layout.mjs +1 -1
  750. package/build-module/components/block-list/layout.mjs.map +1 -1
  751. package/build-module/components/block-list/subdirectory-icon.mjs +1 -1
  752. package/build-module/components/block-list/subdirectory-icon.mjs.map +1 -1
  753. package/build-module/components/block-list/use-block-props/use-focus-first-element.mjs +4 -0
  754. package/build-module/components/block-list/use-block-props/use-focus-first-element.mjs.map +2 -2
  755. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.mjs +6 -7
  756. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.mjs.map +2 -2
  757. package/build-module/components/block-list/zoom-out-separator.mjs +1 -1
  758. package/build-module/components/block-list/zoom-out-separator.mjs.map +1 -1
  759. package/build-module/components/block-list-appender/index.mjs +1 -1
  760. package/build-module/components/block-list-appender/index.mjs.map +1 -1
  761. package/build-module/components/block-lock/menu-item.mjs +1 -1
  762. package/build-module/components/block-lock/menu-item.mjs.map +1 -1
  763. package/build-module/components/block-lock/modal.mjs +1 -1
  764. package/build-module/components/block-lock/modal.mjs.map +1 -1
  765. package/build-module/components/block-lock/toolbar.mjs +1 -1
  766. package/build-module/components/block-lock/toolbar.mjs.map +1 -1
  767. package/build-module/components/block-manager/category.mjs +1 -1
  768. package/build-module/components/block-manager/category.mjs.map +1 -1
  769. package/build-module/components/block-manager/checklist.mjs +1 -1
  770. package/build-module/components/block-manager/checklist.mjs.map +1 -1
  771. package/build-module/components/block-manager/index.mjs +1 -1
  772. package/build-module/components/block-manager/index.mjs.map +1 -1
  773. package/build-module/components/block-mover/button.mjs +1 -1
  774. package/build-module/components/block-mover/button.mjs.map +1 -1
  775. package/build-module/components/block-mover/index.mjs +1 -1
  776. package/build-module/components/block-mover/index.mjs.map +1 -1
  777. package/build-module/components/block-navigation/dropdown.mjs +1 -1
  778. package/build-module/components/block-navigation/dropdown.mjs.map +1 -1
  779. package/build-module/components/block-parent-selector/index.mjs +102 -33
  780. package/build-module/components/block-parent-selector/index.mjs.map +3 -3
  781. package/build-module/components/block-pattern-setup/index.mjs +1 -1
  782. package/build-module/components/block-pattern-setup/index.mjs.map +1 -1
  783. package/build-module/components/block-pattern-setup/setup-toolbar.mjs +1 -1
  784. package/build-module/components/block-pattern-setup/setup-toolbar.mjs.map +1 -1
  785. package/build-module/components/block-patterns-list/index.mjs +1 -1
  786. package/build-module/components/block-patterns-list/index.mjs.map +1 -1
  787. package/build-module/components/block-patterns-paging/index.mjs +1 -1
  788. package/build-module/components/block-patterns-paging/index.mjs.map +1 -1
  789. package/build-module/components/block-popover/cover.mjs +1 -1
  790. package/build-module/components/block-popover/cover.mjs.map +1 -1
  791. package/build-module/components/block-popover/drop-zone.mjs +1 -1
  792. package/build-module/components/block-popover/drop-zone.mjs.map +1 -1
  793. package/build-module/components/block-popover/inbetween.mjs +3 -3
  794. package/build-module/components/block-popover/inbetween.mjs.map +3 -3
  795. package/build-module/components/block-popover/index.mjs +1 -1
  796. package/build-module/components/block-popover/index.mjs.map +1 -1
  797. package/build-module/components/block-preview/auto.mjs +1 -1
  798. package/build-module/components/block-preview/auto.mjs.map +1 -1
  799. package/build-module/components/block-preview/index.mjs +1 -5
  800. package/build-module/components/block-preview/index.mjs.map +3 -3
  801. package/build-module/components/block-quick-navigation/index.mjs +1 -1
  802. package/build-module/components/block-quick-navigation/index.mjs.map +1 -1
  803. package/build-module/components/block-removal-warning-modal/index.mjs +1 -1
  804. package/build-module/components/block-removal-warning-modal/index.mjs.map +1 -1
  805. package/build-module/components/block-rename/modal.mjs +1 -1
  806. package/build-module/components/block-rename/modal.mjs.map +1 -1
  807. package/build-module/components/block-rename/rename-control.mjs +1 -1
  808. package/build-module/components/block-rename/rename-control.mjs.map +1 -1
  809. package/build-module/components/block-selection-clearer/index.mjs +1 -1
  810. package/build-module/components/block-selection-clearer/index.mjs.map +1 -1
  811. package/build-module/components/block-settings-menu/block-html-convert-button.mjs +1 -1
  812. package/build-module/components/block-settings-menu/block-html-convert-button.mjs.map +1 -1
  813. package/build-module/components/block-settings-menu/block-mode-toggle.mjs +1 -1
  814. package/build-module/components/block-settings-menu/block-mode-toggle.mjs.map +1 -1
  815. package/build-module/components/block-settings-menu/block-parent-selector-menu-item.mjs +1 -1
  816. package/build-module/components/block-settings-menu/block-parent-selector-menu-item.mjs.map +1 -1
  817. package/build-module/components/block-settings-menu/block-settings-dropdown.mjs +1 -1
  818. package/build-module/components/block-settings-menu/block-settings-dropdown.mjs.map +1 -1
  819. package/build-module/components/block-settings-menu/index.mjs +1 -1
  820. package/build-module/components/block-settings-menu/index.mjs.map +1 -1
  821. package/build-module/components/block-settings-menu-controls/index.mjs +1 -1
  822. package/build-module/components/block-settings-menu-controls/index.mjs.map +1 -1
  823. package/build-module/components/block-styles/index.mjs +80 -36
  824. package/build-module/components/block-styles/index.mjs.map +3 -3
  825. package/build-module/components/block-styles/menu-items.mjs +1 -1
  826. package/build-module/components/block-styles/menu-items.mjs.map +1 -1
  827. package/build-module/components/block-switcher/block-styles-menu.mjs +1 -1
  828. package/build-module/components/block-switcher/block-styles-menu.mjs.map +1 -1
  829. package/build-module/components/block-switcher/block-transformations-menu.mjs +1 -1
  830. package/build-module/components/block-switcher/block-transformations-menu.mjs.map +1 -1
  831. package/build-module/components/block-switcher/block-variation-transformations.mjs +1 -1
  832. package/build-module/components/block-switcher/block-variation-transformations.mjs.map +1 -1
  833. package/build-module/components/block-switcher/index.mjs +1 -1
  834. package/build-module/components/block-switcher/index.mjs.map +1 -1
  835. package/build-module/components/block-switcher/pattern-transformations-menu.mjs +1 -1
  836. package/build-module/components/block-switcher/pattern-transformations-menu.mjs.map +1 -1
  837. package/build-module/components/block-switcher/preview-block-popover.mjs +1 -1
  838. package/build-module/components/block-switcher/preview-block-popover.mjs.map +1 -1
  839. package/build-module/components/block-toolbar/block-styles-dropdown.mjs +1 -1
  840. package/build-module/components/block-toolbar/block-styles-dropdown.mjs.map +1 -1
  841. package/build-module/components/block-toolbar/block-toolbar-icon.mjs +1 -1
  842. package/build-module/components/block-toolbar/block-toolbar-icon.mjs.map +1 -1
  843. package/build-module/components/block-toolbar/change-design.mjs +1 -1
  844. package/build-module/components/block-toolbar/change-design.mjs.map +1 -1
  845. package/build-module/components/block-toolbar/edit-section-button.mjs +1 -1
  846. package/build-module/components/block-toolbar/edit-section-button.mjs.map +1 -1
  847. package/build-module/components/block-toolbar/index.mjs +1 -1
  848. package/build-module/components/block-toolbar/index.mjs.map +1 -1
  849. package/build-module/components/block-toolbar/pattern-overrides-dropdown.mjs +1 -1
  850. package/build-module/components/block-toolbar/pattern-overrides-dropdown.mjs.map +1 -1
  851. package/build-module/components/block-toolbar/switch-section-style.mjs +1 -1
  852. package/build-module/components/block-toolbar/switch-section-style.mjs.map +1 -1
  853. package/build-module/components/block-tools/block-toolbar-popover.mjs +1 -1
  854. package/build-module/components/block-tools/block-toolbar-popover.mjs.map +1 -1
  855. package/build-module/components/block-tools/empty-block-inserter.mjs +1 -1
  856. package/build-module/components/block-tools/empty-block-inserter.mjs.map +1 -1
  857. package/build-module/components/block-tools/index.mjs +1 -1
  858. package/build-module/components/block-tools/index.mjs.map +1 -1
  859. package/build-module/components/block-tools/insertion-point.mjs +1 -1
  860. package/build-module/components/block-tools/insertion-point.mjs.map +1 -1
  861. package/build-module/components/block-tools/zoom-out-mode-inserter-button.mjs +1 -1
  862. package/build-module/components/block-tools/zoom-out-mode-inserter-button.mjs.map +1 -1
  863. package/build-module/components/block-tools/zoom-out-mode-inserters.mjs +1 -1
  864. package/build-module/components/block-tools/zoom-out-mode-inserters.mjs.map +1 -1
  865. package/build-module/components/block-types-list/index.mjs +1 -1
  866. package/build-module/components/block-types-list/index.mjs.map +1 -1
  867. package/build-module/components/block-variation-picker/index.mjs +1 -1
  868. package/build-module/components/block-variation-picker/index.mjs.map +1 -1
  869. package/build-module/components/block-variation-transforms/index.mjs +1 -1
  870. package/build-module/components/block-variation-transforms/index.mjs.map +1 -1
  871. package/build-module/components/block-vertical-alignment-control/index.mjs +1 -1
  872. package/build-module/components/block-vertical-alignment-control/index.mjs.map +1 -1
  873. package/build-module/components/block-vertical-alignment-control/ui.mjs +1 -1
  874. package/build-module/components/block-vertical-alignment-control/ui.mjs.map +1 -1
  875. package/build-module/components/block-visibility/constants.mjs.map +2 -2
  876. package/build-module/components/block-visibility/modal.mjs +1 -1
  877. package/build-module/components/block-visibility/modal.mjs.map +1 -1
  878. package/build-module/components/block-visibility/viewport-menu-item.mjs +1 -1
  879. package/build-module/components/block-visibility/viewport-menu-item.mjs.map +1 -1
  880. package/build-module/components/block-visibility/viewport-toolbar.mjs +1 -1
  881. package/build-module/components/block-visibility/viewport-toolbar.mjs.map +1 -1
  882. package/build-module/components/block-visibility/viewport-visibility-info.mjs +1 -1
  883. package/build-module/components/block-visibility/viewport-visibility-info.mjs.map +1 -1
  884. package/build-module/components/border-radius-control/index.mjs +1 -1
  885. package/build-module/components/border-radius-control/index.mjs.map +1 -1
  886. package/build-module/components/border-radius-control/linked-button.mjs +1 -1
  887. package/build-module/components/border-radius-control/linked-button.mjs.map +1 -1
  888. package/build-module/components/button-block-appender/index.mjs +1 -1
  889. package/build-module/components/button-block-appender/index.mjs.map +1 -1
  890. package/build-module/components/child-layout-control/index.mjs +6 -6
  891. package/build-module/components/child-layout-control/index.mjs.map +2 -2
  892. package/build-module/components/color-palette/control.mjs +1 -1
  893. package/build-module/components/color-palette/control.mjs.map +1 -1
  894. package/build-module/components/color-palette/with-color-context.mjs +1 -1
  895. package/build-module/components/color-palette/with-color-context.mjs.map +1 -1
  896. package/build-module/components/color-style-selector/index.mjs +1 -1
  897. package/build-module/components/color-style-selector/index.mjs.map +1 -1
  898. package/build-module/components/colors/with-colors.mjs +57 -73
  899. package/build-module/components/colors/with-colors.mjs.map +3 -3
  900. package/build-module/components/colors-gradients/control.mjs +1 -1
  901. package/build-module/components/colors-gradients/control.mjs.map +1 -1
  902. package/build-module/components/colors-gradients/dropdown.mjs +1 -1
  903. package/build-module/components/colors-gradients/dropdown.mjs.map +1 -1
  904. package/build-module/components/colors-gradients/panel-color-gradient-settings.mjs +1 -1
  905. package/build-module/components/colors-gradients/panel-color-gradient-settings.mjs.map +1 -1
  906. package/build-module/components/contrast-checker/index.mjs +1 -1
  907. package/build-module/components/contrast-checker/index.mjs.map +1 -1
  908. package/build-module/components/convert-to-group-buttons/index.mjs +1 -1
  909. package/build-module/components/convert-to-group-buttons/index.mjs.map +1 -1
  910. package/build-module/components/convert-to-group-buttons/toolbar.mjs +1 -1
  911. package/build-module/components/convert-to-group-buttons/toolbar.mjs.map +1 -1
  912. package/build-module/components/copy-handler/index.mjs +1 -1
  913. package/build-module/components/copy-handler/index.mjs.map +1 -1
  914. package/build-module/components/date-format-picker/index.mjs +1 -1
  915. package/build-module/components/date-format-picker/index.mjs.map +1 -1
  916. package/build-module/components/default-block-appender/index.mjs +1 -1
  917. package/build-module/components/default-block-appender/index.mjs.map +1 -1
  918. package/build-module/components/dimension-control/index.mjs +1 -1
  919. package/build-module/components/dimension-control/index.mjs.map +1 -1
  920. package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs +5 -3
  921. package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs.map +3 -3
  922. package/build-module/components/dimensions-tool/index.mjs +20 -18
  923. package/build-module/components/dimensions-tool/index.mjs.map +3 -3
  924. package/build-module/components/dimensions-tool/scale-tool.mjs +1 -1
  925. package/build-module/components/dimensions-tool/scale-tool.mjs.map +1 -1
  926. package/build-module/components/dimensions-tool/utils.mjs +35 -0
  927. package/build-module/components/dimensions-tool/utils.mjs.map +7 -0
  928. package/build-module/components/dimensions-tool/width-height-tool.mjs +1 -1
  929. package/build-module/components/dimensions-tool/width-height-tool.mjs.map +1 -1
  930. package/build-module/components/duotone-control/index.mjs +3 -1
  931. package/build-module/components/duotone-control/index.mjs.map +3 -3
  932. package/build-module/components/editable-text/index.mjs +1 -1
  933. package/build-module/components/editable-text/index.mjs.map +1 -1
  934. package/build-module/components/editor-styles/index.mjs +1 -1
  935. package/build-module/components/editor-styles/index.mjs.map +1 -1
  936. package/build-module/components/fit-text-size-warning/index.mjs +1 -1
  937. package/build-module/components/fit-text-size-warning/index.mjs.map +1 -1
  938. package/build-module/components/font-appearance-control/index.mjs +1 -1
  939. package/build-module/components/font-appearance-control/index.mjs.map +1 -1
  940. package/build-module/components/font-family/index.mjs +1 -1
  941. package/build-module/components/font-family/index.mjs.map +1 -1
  942. package/build-module/components/font-sizes/font-size-picker.mjs +1 -1
  943. package/build-module/components/font-sizes/font-size-picker.mjs.map +1 -1
  944. package/build-module/components/font-sizes/with-font-sizes.mjs +1 -1
  945. package/build-module/components/font-sizes/with-font-sizes.mjs.map +1 -1
  946. package/build-module/components/global-styles/advanced-panel.mjs +6 -3
  947. package/build-module/components/global-styles/advanced-panel.mjs.map +3 -3
  948. package/build-module/components/global-styles/background-panel.mjs +1 -1
  949. package/build-module/components/global-styles/background-panel.mjs.map +2 -2
  950. package/build-module/components/global-styles/border-panel.mjs +3 -6
  951. package/build-module/components/global-styles/border-panel.mjs.map +3 -3
  952. package/build-module/components/global-styles/color-gradient-dropdown-item.mjs +1 -1
  953. package/build-module/components/global-styles/color-gradient-dropdown-item.mjs.map +1 -1
  954. package/build-module/components/global-styles/color-panel.mjs +15 -3
  955. package/build-module/components/global-styles/color-panel.mjs.map +3 -3
  956. package/build-module/components/global-styles/dimensions-panel.mjs +10 -6
  957. package/build-module/components/global-styles/dimensions-panel.mjs.map +3 -3
  958. package/build-module/components/global-styles/filters-panel.mjs +17 -10
  959. package/build-module/components/global-styles/filters-panel.mjs.map +3 -3
  960. package/build-module/components/global-styles/image-settings-panel.mjs +1 -1
  961. package/build-module/components/global-styles/image-settings-panel.mjs.map +1 -1
  962. package/build-module/components/global-styles/inheritance/index.mjs +1 -1
  963. package/build-module/components/global-styles/inheritance/index.mjs.map +1 -1
  964. package/build-module/components/global-styles/shadow-panel-components.mjs +17 -12
  965. package/build-module/components/global-styles/shadow-panel-components.mjs.map +3 -3
  966. package/build-module/components/global-styles/state-control-badges.mjs +1 -1
  967. package/build-module/components/global-styles/state-control-badges.mjs.map +1 -1
  968. package/build-module/components/global-styles/state-control.mjs +1 -1
  969. package/build-module/components/global-styles/state-control.mjs.map +1 -1
  970. package/build-module/components/global-styles/typography-panel.mjs +1 -1
  971. package/build-module/components/global-styles/typography-panel.mjs.map +1 -1
  972. package/build-module/components/global-styles/utils.mjs +8 -0
  973. package/build-module/components/global-styles/utils.mjs.map +2 -2
  974. package/build-module/components/grid/grid-item-movers.mjs +1 -1
  975. package/build-module/components/grid/grid-item-movers.mjs.map +1 -1
  976. package/build-module/components/grid/grid-item-resizer.mjs +1 -1
  977. package/build-module/components/grid/grid-item-resizer.mjs.map +1 -1
  978. package/build-module/components/grid/grid-visualizer.mjs +1 -1
  979. package/build-module/components/grid/grid-visualizer.mjs.map +1 -1
  980. package/build-module/components/height-control/index.mjs +1 -1
  981. package/build-module/components/height-control/index.mjs.map +1 -1
  982. package/build-module/components/html-element-control/index.mjs +1 -1
  983. package/build-module/components/html-element-control/index.mjs.map +1 -1
  984. package/build-module/components/iframe/index.mjs +1 -1
  985. package/build-module/components/iframe/index.mjs.map +1 -1
  986. package/build-module/components/image-editor/aspect-ratio-dropdown.mjs +1 -1
  987. package/build-module/components/image-editor/aspect-ratio-dropdown.mjs.map +1 -1
  988. package/build-module/components/image-editor/context.mjs +1 -1
  989. package/build-module/components/image-editor/context.mjs.map +1 -1
  990. package/build-module/components/image-editor/cropper.mjs +1 -1
  991. package/build-module/components/image-editor/cropper.mjs.map +1 -1
  992. package/build-module/components/image-editor/form-controls.mjs +1 -1
  993. package/build-module/components/image-editor/form-controls.mjs.map +1 -1
  994. package/build-module/components/image-editor/index.mjs +1 -1
  995. package/build-module/components/image-editor/index.mjs.map +1 -1
  996. package/build-module/components/image-editor/rotation-button.mjs +1 -1
  997. package/build-module/components/image-editor/rotation-button.mjs.map +1 -1
  998. package/build-module/components/image-editor/zoom-dropdown.mjs +1 -1
  999. package/build-module/components/image-editor/zoom-dropdown.mjs.map +1 -1
  1000. package/build-module/components/image-size-control/index.mjs +1 -1
  1001. package/build-module/components/image-size-control/index.mjs.map +1 -1
  1002. package/build-module/components/inner-blocks/button-block-appender.mjs +1 -1
  1003. package/build-module/components/inner-blocks/button-block-appender.mjs.map +1 -1
  1004. package/build-module/components/inner-blocks/default-block-appender.mjs +1 -1
  1005. package/build-module/components/inner-blocks/default-block-appender.mjs.map +1 -1
  1006. package/build-module/components/inner-blocks/index.mjs +6 -4
  1007. package/build-module/components/inner-blocks/index.mjs.map +3 -3
  1008. package/build-module/components/inner-content/index.mjs +1 -1
  1009. package/build-module/components/inner-content/index.mjs.map +1 -1
  1010. package/build-module/components/inserter/block-patterns-explorer/index.mjs +40 -23
  1011. package/build-module/components/inserter/block-patterns-explorer/index.mjs.map +3 -3
  1012. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.mjs +23 -57
  1013. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.mjs.map +3 -3
  1014. package/build-module/components/inserter/block-patterns-explorer/pattern-list.mjs +21 -46
  1015. package/build-module/components/inserter/block-patterns-explorer/pattern-list.mjs.map +3 -3
  1016. package/build-module/components/inserter/block-patterns-tab/index.mjs +1 -1
  1017. package/build-module/components/inserter/block-patterns-tab/index.mjs.map +1 -1
  1018. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.mjs +1 -1
  1019. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.mjs.map +1 -1
  1020. package/build-module/components/inserter/block-patterns-tab/patterns-filter.mjs +1 -1
  1021. package/build-module/components/inserter/block-patterns-tab/patterns-filter.mjs.map +1 -1
  1022. package/build-module/components/inserter/block-types-tab.mjs +1 -1
  1023. package/build-module/components/inserter/block-types-tab.mjs.map +1 -1
  1024. package/build-module/components/inserter/category-tabs/index.mjs +1 -1
  1025. package/build-module/components/inserter/category-tabs/index.mjs.map +1 -1
  1026. package/build-module/components/inserter/hooks/use-insertion-point.mjs +4 -4
  1027. package/build-module/components/inserter/hooks/use-insertion-point.mjs.map +2 -2
  1028. package/build-module/components/inserter/index.mjs +1 -1
  1029. package/build-module/components/inserter/index.mjs.map +1 -1
  1030. package/build-module/components/inserter/library.mjs +1 -1
  1031. package/build-module/components/inserter/library.mjs.map +1 -1
  1032. package/build-module/components/inserter/media-tab/media-list.mjs +1 -1
  1033. package/build-module/components/inserter/media-tab/media-list.mjs.map +1 -1
  1034. package/build-module/components/inserter/media-tab/media-panel.mjs +1 -1
  1035. package/build-module/components/inserter/media-tab/media-panel.mjs.map +1 -1
  1036. package/build-module/components/inserter/media-tab/media-preview.mjs +1 -1
  1037. package/build-module/components/inserter/media-tab/media-preview.mjs.map +1 -1
  1038. package/build-module/components/inserter/media-tab/media-tab.mjs +1 -1
  1039. package/build-module/components/inserter/media-tab/media-tab.mjs.map +1 -1
  1040. package/build-module/components/inserter/media-tab/utils.mjs +1 -1
  1041. package/build-module/components/inserter/media-tab/utils.mjs.map +1 -1
  1042. package/build-module/components/inserter/menu.mjs +21 -10
  1043. package/build-module/components/inserter/menu.mjs.map +3 -3
  1044. package/build-module/components/inserter/mobile-tab-navigation.mjs +1 -1
  1045. package/build-module/components/inserter/mobile-tab-navigation.mjs.map +1 -1
  1046. package/build-module/components/inserter/no-results.mjs +1 -1
  1047. package/build-module/components/inserter/no-results.mjs.map +1 -1
  1048. package/build-module/components/inserter/panel.mjs +1 -1
  1049. package/build-module/components/inserter/panel.mjs.map +1 -1
  1050. package/build-module/components/inserter/preview-panel.mjs +1 -1
  1051. package/build-module/components/inserter/preview-panel.mjs.map +1 -1
  1052. package/build-module/components/inserter/quick-inserter.mjs +31 -28
  1053. package/build-module/components/inserter/quick-inserter.mjs.map +3 -3
  1054. package/build-module/components/inserter/search-results.mjs +1 -1
  1055. package/build-module/components/inserter/search-results.mjs.map +1 -1
  1056. package/build-module/components/inserter/tips.mjs +1 -1
  1057. package/build-module/components/inserter/tips.mjs.map +1 -1
  1058. package/build-module/components/inserter-draggable-blocks/index.mjs +1 -1
  1059. package/build-module/components/inserter-draggable-blocks/index.mjs.map +1 -1
  1060. package/build-module/components/inserter-list-item/index.mjs +1 -1
  1061. package/build-module/components/inserter-list-item/index.mjs.map +1 -1
  1062. package/build-module/components/inserter-listbox/group.mjs +1 -1
  1063. package/build-module/components/inserter-listbox/group.mjs.map +1 -1
  1064. package/build-module/components/inserter-listbox/index.mjs +1 -1
  1065. package/build-module/components/inserter-listbox/index.mjs.map +1 -1
  1066. package/build-module/components/inserter-listbox/item.mjs +1 -1
  1067. package/build-module/components/inserter-listbox/item.mjs.map +1 -1
  1068. package/build-module/components/inserter-listbox/row.mjs +1 -1
  1069. package/build-module/components/inserter-listbox/row.mjs.map +1 -1
  1070. package/build-module/components/inspector-controls/block-support-slot-container.mjs +1 -1
  1071. package/build-module/components/inspector-controls/block-support-slot-container.mjs.map +1 -1
  1072. package/build-module/components/inspector-controls/block-support-tools-panel.mjs +1 -1
  1073. package/build-module/components/inspector-controls/block-support-tools-panel.mjs.map +1 -1
  1074. package/build-module/components/inspector-controls/fill.mjs +1 -1
  1075. package/build-module/components/inspector-controls/fill.mjs.map +1 -1
  1076. package/build-module/components/inspector-controls/groups.mjs +3 -1
  1077. package/build-module/components/inspector-controls/groups.mjs.map +2 -2
  1078. package/build-module/components/inspector-controls/index.mjs +1 -1
  1079. package/build-module/components/inspector-controls/index.mjs.map +1 -1
  1080. package/build-module/components/inspector-controls/last-item.mjs +1 -1
  1081. package/build-module/components/inspector-controls/last-item.mjs.map +1 -1
  1082. package/build-module/components/inspector-controls/list-view-content-popover.mjs +1 -1
  1083. package/build-module/components/inspector-controls/list-view-content-popover.mjs.map +1 -1
  1084. package/build-module/components/inspector-controls/slot.mjs +1 -1
  1085. package/build-module/components/inspector-controls/slot.mjs.map +1 -1
  1086. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.mjs +1 -1
  1087. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.mjs.map +1 -1
  1088. package/build-module/components/inspector-controls-tabs/content-tab.mjs +1 -1
  1089. package/build-module/components/inspector-controls-tabs/content-tab.mjs.map +1 -1
  1090. package/build-module/components/inspector-controls-tabs/index.mjs +1 -1
  1091. package/build-module/components/inspector-controls-tabs/index.mjs.map +1 -1
  1092. package/build-module/components/inspector-controls-tabs/position-controls-panel.mjs +1 -1
  1093. package/build-module/components/inspector-controls-tabs/position-controls-panel.mjs.map +1 -1
  1094. package/build-module/components/inspector-controls-tabs/settings-tab.mjs +1 -1
  1095. package/build-module/components/inspector-controls-tabs/settings-tab.mjs.map +1 -1
  1096. package/build-module/components/inspector-controls-tabs/styles-tab.mjs +2 -2
  1097. package/build-module/components/inspector-controls-tabs/styles-tab.mjs.map +3 -3
  1098. package/build-module/components/inspector-popover-header/index.mjs +1 -1
  1099. package/build-module/components/inspector-popover-header/index.mjs.map +1 -1
  1100. package/build-module/components/justify-content-control/index.mjs +1 -1
  1101. package/build-module/components/justify-content-control/index.mjs.map +1 -1
  1102. package/build-module/components/justify-content-control/ui.mjs +1 -1
  1103. package/build-module/components/justify-content-control/ui.mjs.map +1 -1
  1104. package/build-module/components/letter-spacing-control/index.mjs +1 -1
  1105. package/build-module/components/letter-spacing-control/index.mjs.map +1 -1
  1106. package/build-module/components/line-height-control/index.mjs +1 -1
  1107. package/build-module/components/line-height-control/index.mjs.map +1 -1
  1108. package/build-module/components/link-control/index.mjs +1 -1
  1109. package/build-module/components/link-control/index.mjs.map +1 -1
  1110. package/build-module/components/link-control/link-preview.mjs +1 -1
  1111. package/build-module/components/link-control/link-preview.mjs.map +1 -1
  1112. package/build-module/components/link-control/search-create-button.mjs +1 -1
  1113. package/build-module/components/link-control/search-create-button.mjs.map +1 -1
  1114. package/build-module/components/link-control/search-input.mjs +1 -1
  1115. package/build-module/components/link-control/search-input.mjs.map +1 -1
  1116. package/build-module/components/link-control/search-item.mjs +1 -1
  1117. package/build-module/components/link-control/search-item.mjs.map +1 -1
  1118. package/build-module/components/link-control/search-results.mjs +1 -1
  1119. package/build-module/components/link-control/search-results.mjs.map +1 -1
  1120. package/build-module/components/link-control/settings-drawer.mjs +1 -1
  1121. package/build-module/components/link-control/settings-drawer.mjs.map +1 -1
  1122. package/build-module/components/link-control/settings.mjs +1 -1
  1123. package/build-module/components/link-control/settings.mjs.map +1 -1
  1124. package/build-module/components/link-picker/link-picker.mjs +1 -1
  1125. package/build-module/components/link-picker/link-picker.mjs.map +1 -1
  1126. package/build-module/components/link-picker/link-preview.mjs +1 -1
  1127. package/build-module/components/link-picker/link-preview.mjs.map +1 -1
  1128. package/build-module/components/list-view/appender.mjs +1 -1
  1129. package/build-module/components/list-view/appender.mjs.map +1 -1
  1130. package/build-module/components/list-view/aria-referenced-text.mjs +1 -1
  1131. package/build-module/components/list-view/aria-referenced-text.mjs.map +1 -1
  1132. package/build-module/components/list-view/block-contents.mjs +1 -1
  1133. package/build-module/components/list-view/block-contents.mjs.map +1 -1
  1134. package/build-module/components/list-view/block-select-button.mjs +1 -1
  1135. package/build-module/components/list-view/block-select-button.mjs.map +1 -1
  1136. package/build-module/components/list-view/block.mjs +1 -1
  1137. package/build-module/components/list-view/block.mjs.map +1 -1
  1138. package/build-module/components/list-view/branch.mjs +1 -1
  1139. package/build-module/components/list-view/branch.mjs.map +1 -1
  1140. package/build-module/components/list-view/drop-indicator.mjs +1 -1
  1141. package/build-module/components/list-view/drop-indicator.mjs.map +1 -1
  1142. package/build-module/components/list-view/expander.mjs +1 -1
  1143. package/build-module/components/list-view/expander.mjs.map +1 -1
  1144. package/build-module/components/list-view/index.mjs +33 -6
  1145. package/build-module/components/list-view/index.mjs.map +4 -4
  1146. package/build-module/components/list-view/leaf.mjs +1 -1
  1147. package/build-module/components/list-view/leaf.mjs.map +1 -1
  1148. package/build-module/components/list-view/utils.mjs +13 -1
  1149. package/build-module/components/list-view/utils.mjs.map +2 -2
  1150. package/build-module/components/media-placeholder/index.mjs +4 -4
  1151. package/build-module/components/media-placeholder/index.mjs.map +3 -3
  1152. package/build-module/components/media-replace-flow/index.mjs +1 -1
  1153. package/build-module/components/media-replace-flow/index.mjs.map +1 -1
  1154. package/build-module/components/multi-selection-inspector/index.mjs +1 -1
  1155. package/build-module/components/multi-selection-inspector/index.mjs.map +1 -1
  1156. package/build-module/components/navigable-toolbar/index.mjs +1 -1
  1157. package/build-module/components/navigable-toolbar/index.mjs.map +1 -1
  1158. package/build-module/components/observe-typing/index.mjs +1 -1
  1159. package/build-module/components/observe-typing/index.mjs.map +1 -1
  1160. package/build-module/components/panel-color-settings/index.mjs +1 -1
  1161. package/build-module/components/panel-color-settings/index.mjs.map +1 -1
  1162. package/build-module/components/plain-text/index.mjs +1 -1
  1163. package/build-module/components/plain-text/index.mjs.map +1 -1
  1164. package/build-module/components/preset-input-control/custom-value-controls.mjs +1 -1
  1165. package/build-module/components/preset-input-control/custom-value-controls.mjs.map +1 -1
  1166. package/build-module/components/preset-input-control/index.mjs +1 -1
  1167. package/build-module/components/preset-input-control/index.mjs.map +1 -1
  1168. package/build-module/components/provider/block-refs-provider.mjs +1 -1
  1169. package/build-module/components/provider/block-refs-provider.mjs.map +1 -1
  1170. package/build-module/components/provider/index.mjs +27 -6
  1171. package/build-module/components/provider/index.mjs.map +3 -3
  1172. package/build-module/components/provider/with-registry-provider.mjs +1 -1
  1173. package/build-module/components/provider/with-registry-provider.mjs.map +1 -1
  1174. package/build-module/components/publish-date-time-picker/index.mjs +4 -3
  1175. package/build-module/components/publish-date-time-picker/index.mjs.map +3 -3
  1176. package/build-module/components/recursion-provider/index.mjs +1 -1
  1177. package/build-module/components/recursion-provider/index.mjs.map +1 -1
  1178. package/build-module/components/resizable-box-popover/index.mjs +1 -1
  1179. package/build-module/components/resizable-box-popover/index.mjs.map +1 -1
  1180. package/build-module/components/resolution-tool/index.mjs +1 -1
  1181. package/build-module/components/resolution-tool/index.mjs.map +1 -1
  1182. package/build-module/components/responsive-block-control/index.mjs +1 -1
  1183. package/build-module/components/responsive-block-control/index.mjs.map +1 -1
  1184. package/build-module/components/responsive-block-control/label.mjs +1 -1
  1185. package/build-module/components/responsive-block-control/label.mjs.map +1 -1
  1186. package/build-module/components/rich-text/content.mjs +1 -1
  1187. package/build-module/components/rich-text/content.mjs.map +1 -1
  1188. package/build-module/components/rich-text/event-listeners/enter.mjs +46 -39
  1189. package/build-module/components/rich-text/event-listeners/enter.mjs.map +2 -2
  1190. package/build-module/components/rich-text/format-edit.mjs +1 -1
  1191. package/build-module/components/rich-text/format-edit.mjs.map +1 -1
  1192. package/build-module/components/rich-text/format-toolbar/index.mjs +1 -1
  1193. package/build-module/components/rich-text/format-toolbar/index.mjs.map +1 -1
  1194. package/build-module/components/rich-text/format-toolbar-container.mjs +1 -1
  1195. package/build-module/components/rich-text/format-toolbar-container.mjs.map +1 -1
  1196. package/build-module/components/rich-text/get-rich-text-values.mjs +1 -1
  1197. package/build-module/components/rich-text/get-rich-text-values.mjs.map +1 -1
  1198. package/build-module/components/rich-text/index.mjs +8 -6
  1199. package/build-module/components/rich-text/index.mjs.map +3 -3
  1200. package/build-module/components/rich-text/multiline.mjs +113 -73
  1201. package/build-module/components/rich-text/multiline.mjs.map +3 -3
  1202. package/build-module/components/rich-text/toolbar-button.mjs +1 -1
  1203. package/build-module/components/rich-text/toolbar-button.mjs.map +1 -1
  1204. package/build-module/components/rich-text/utils.mjs +1 -1
  1205. package/build-module/components/rich-text/utils.mjs.map +1 -1
  1206. package/build-module/components/rich-text/with-deprecations.mjs +1 -1
  1207. package/build-module/components/rich-text/with-deprecations.mjs.map +1 -1
  1208. package/build-module/components/skip-to-selected-block/index.mjs +1 -1
  1209. package/build-module/components/skip-to-selected-block/index.mjs.map +1 -1
  1210. package/build-module/components/spacing-sizes-control/index.mjs +1 -1
  1211. package/build-module/components/spacing-sizes-control/index.mjs.map +1 -1
  1212. package/build-module/components/spacing-sizes-control/input-controls/axial.mjs +1 -1
  1213. package/build-module/components/spacing-sizes-control/input-controls/axial.mjs.map +1 -1
  1214. package/build-module/components/spacing-sizes-control/input-controls/separated.mjs +1 -1
  1215. package/build-module/components/spacing-sizes-control/input-controls/separated.mjs.map +1 -1
  1216. package/build-module/components/spacing-sizes-control/input-controls/single.mjs +1 -1
  1217. package/build-module/components/spacing-sizes-control/input-controls/single.mjs.map +1 -1
  1218. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.mjs +1 -1
  1219. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.mjs.map +1 -1
  1220. package/build-module/components/spacing-sizes-control/linked-button.mjs +1 -1
  1221. package/build-module/components/spacing-sizes-control/linked-button.mjs.map +1 -1
  1222. package/build-module/components/tabbed-sidebar/index.mjs +1 -1
  1223. package/build-module/components/tabbed-sidebar/index.mjs.map +1 -1
  1224. package/build-module/components/text-alignment-control/index.mjs +1 -1
  1225. package/build-module/components/text-alignment-control/index.mjs.map +1 -1
  1226. package/build-module/components/text-decoration-control/index.mjs +1 -1
  1227. package/build-module/components/text-decoration-control/index.mjs.map +1 -1
  1228. package/build-module/components/text-indent-control/index.mjs +1 -1
  1229. package/build-module/components/text-indent-control/index.mjs.map +1 -1
  1230. package/build-module/components/text-transform-control/index.mjs +1 -1
  1231. package/build-module/components/text-transform-control/index.mjs.map +1 -1
  1232. package/build-module/components/typewriter/index.mjs +1 -1
  1233. package/build-module/components/typewriter/index.mjs.map +1 -1
  1234. package/build-module/components/unit-control/index.mjs +1 -1
  1235. package/build-module/components/unit-control/index.mjs.map +1 -1
  1236. package/build-module/components/url-input/button.mjs +1 -1
  1237. package/build-module/components/url-input/button.mjs.map +1 -1
  1238. package/build-module/components/url-input/index.mjs +3 -3
  1239. package/build-module/components/url-input/index.mjs.map +2 -2
  1240. package/build-module/components/url-popover/image-url-input-ui.mjs +1 -1
  1241. package/build-module/components/url-popover/image-url-input-ui.mjs.map +1 -1
  1242. package/build-module/components/url-popover/index.mjs +1 -1
  1243. package/build-module/components/url-popover/index.mjs.map +1 -1
  1244. package/build-module/components/url-popover/link-editor.mjs +1 -1
  1245. package/build-module/components/url-popover/link-editor.mjs.map +1 -1
  1246. package/build-module/components/url-popover/link-viewer-url.mjs +1 -1
  1247. package/build-module/components/url-popover/link-viewer-url.mjs.map +1 -1
  1248. package/build-module/components/url-popover/link-viewer.mjs +1 -1
  1249. package/build-module/components/url-popover/link-viewer.mjs.map +1 -1
  1250. package/build-module/components/warning/index.mjs +1 -1
  1251. package/build-module/components/warning/index.mjs.map +1 -1
  1252. package/build-module/components/writing-flow/index.mjs +1 -1
  1253. package/build-module/components/writing-flow/index.mjs.map +1 -1
  1254. package/build-module/components/writing-flow/use-input.mjs +66 -14
  1255. package/build-module/components/writing-flow/use-input.mjs.map +3 -3
  1256. package/build-module/components/writing-flow/use-tab-nav.mjs +1 -1
  1257. package/build-module/components/writing-flow/use-tab-nav.mjs.map +1 -1
  1258. package/build-module/components/writing-mode-control/index.mjs +1 -1
  1259. package/build-module/components/writing-mode-control/index.mjs.map +1 -1
  1260. package/build-module/hooks/align.mjs +1 -1
  1261. package/build-module/hooks/align.mjs.map +1 -1
  1262. package/build-module/hooks/allowed-blocks.mjs +1 -1
  1263. package/build-module/hooks/allowed-blocks.mjs.map +1 -1
  1264. package/build-module/hooks/anchor.mjs +1 -1
  1265. package/build-module/hooks/anchor.mjs.map +1 -1
  1266. package/build-module/hooks/auto-inspector-controls.mjs +1 -1
  1267. package/build-module/hooks/auto-inspector-controls.mjs.map +1 -1
  1268. package/build-module/hooks/background.mjs +1 -1
  1269. package/build-module/hooks/background.mjs.map +1 -1
  1270. package/build-module/hooks/block-bindings.mjs +1 -1
  1271. package/build-module/hooks/block-bindings.mjs.map +1 -1
  1272. package/build-module/hooks/block-fields/fields-dropdown-menu.mjs +1 -1
  1273. package/build-module/hooks/block-fields/fields-dropdown-menu.mjs.map +1 -1
  1274. package/build-module/hooks/block-fields/index.mjs +1 -1
  1275. package/build-module/hooks/block-fields/index.mjs.map +1 -1
  1276. package/build-module/hooks/block-fields/link/index.mjs +1 -1
  1277. package/build-module/hooks/block-fields/link/index.mjs.map +1 -1
  1278. package/build-module/hooks/block-fields/media/index.mjs +1 -1
  1279. package/build-module/hooks/block-fields/media/index.mjs.map +1 -1
  1280. package/build-module/hooks/block-fields/rich-text/index.mjs +1 -1
  1281. package/build-module/hooks/block-fields/rich-text/index.mjs.map +1 -1
  1282. package/build-module/hooks/block-hooks.mjs +1 -1
  1283. package/build-module/hooks/block-hooks.mjs.map +1 -1
  1284. package/build-module/hooks/block-style-variation.mjs +1 -1
  1285. package/build-module/hooks/block-style-variation.mjs.map +1 -1
  1286. package/build-module/hooks/border.mjs +27 -9
  1287. package/build-module/hooks/border.mjs.map +3 -3
  1288. package/build-module/hooks/custom-class-name.mjs +1 -1
  1289. package/build-module/hooks/custom-class-name.mjs.map +1 -1
  1290. package/build-module/hooks/custom-css.mjs +1 -1
  1291. package/build-module/hooks/custom-css.mjs.map +1 -1
  1292. package/build-module/hooks/dimensions.mjs +10 -3
  1293. package/build-module/hooks/dimensions.mjs.map +3 -3
  1294. package/build-module/hooks/duotone.mjs +9 -5
  1295. package/build-module/hooks/duotone.mjs.map +3 -3
  1296. package/build-module/hooks/elements.mjs +1 -1
  1297. package/build-module/hooks/elements.mjs.map +1 -1
  1298. package/build-module/hooks/fit-text.mjs +1 -1
  1299. package/build-module/hooks/fit-text.mjs.map +1 -1
  1300. package/build-module/hooks/font-size.mjs +1 -1
  1301. package/build-module/hooks/font-size.mjs.map +1 -1
  1302. package/build-module/hooks/gap.mjs +6 -1
  1303. package/build-module/hooks/gap.mjs.map +2 -2
  1304. package/build-module/hooks/grid-visualizer.mjs +1 -1
  1305. package/build-module/hooks/grid-visualizer.mjs.map +2 -2
  1306. package/build-module/hooks/layout-child.mjs +37 -14
  1307. package/build-module/hooks/layout-child.mjs.map +3 -3
  1308. package/build-module/hooks/layout.mjs +23 -2
  1309. package/build-module/hooks/layout.mjs.map +3 -3
  1310. package/build-module/hooks/line-height.mjs +1 -1
  1311. package/build-module/hooks/line-height.mjs.map +1 -1
  1312. package/build-module/hooks/list-view.mjs +1 -1
  1313. package/build-module/hooks/list-view.mjs.map +1 -1
  1314. package/build-module/hooks/position.mjs +2 -2
  1315. package/build-module/hooks/position.mjs.map +3 -3
  1316. package/build-module/hooks/spacing-visualizer.mjs +1 -1
  1317. package/build-module/hooks/spacing-visualizer.mjs.map +1 -1
  1318. package/build-module/hooks/states.mjs +9 -6
  1319. package/build-module/hooks/states.mjs.map +3 -3
  1320. package/build-module/hooks/style.mjs +1 -1
  1321. package/build-module/hooks/style.mjs.map +1 -1
  1322. package/build-module/hooks/text-align.mjs +1 -1
  1323. package/build-module/hooks/text-align.mjs.map +1 -1
  1324. package/build-module/hooks/typography.mjs +1 -1
  1325. package/build-module/hooks/typography.mjs.map +1 -1
  1326. package/build-module/hooks/utils.mjs +1 -1
  1327. package/build-module/hooks/utils.mjs.map +1 -1
  1328. package/build-module/layouts/constrained.mjs +9 -2
  1329. package/build-module/layouts/constrained.mjs.map +3 -3
  1330. package/build-module/layouts/flex.mjs +10 -1
  1331. package/build-module/layouts/flex.mjs.map +3 -3
  1332. package/build-module/layouts/flow.mjs +4 -1
  1333. package/build-module/layouts/flow.mjs.map +2 -2
  1334. package/build-module/layouts/grid.mjs +6 -2
  1335. package/build-module/layouts/grid.mjs.map +3 -3
  1336. package/build-module/private-apis.mjs +3 -1
  1337. package/build-module/private-apis.mjs.map +2 -2
  1338. package/build-module/store/actions.mjs +1 -1
  1339. package/build-module/store/actions.mjs.map +2 -2
  1340. package/build-style/content-rtl.css +6 -0
  1341. package/build-style/content.css +6 -0
  1342. package/build-style/style-rtl.css +108 -83
  1343. package/build-style/style.css +108 -83
  1344. package/build-types/components/block-context/index.d.ts.map +1 -1
  1345. package/build-types/components/block-visibility/constants.d.ts +4 -3
  1346. package/build-types/components/block-visibility/constants.d.ts.map +1 -1
  1347. package/package.json +41 -44
  1348. package/src/components/background-image-control/README.md +122 -0
  1349. package/src/components/block-edit-visually-button/README.md +39 -0
  1350. package/src/components/block-editing-mode/README.md +72 -0
  1351. package/src/components/block-inspector/{index.js → index.jsx} +11 -8
  1352. package/src/components/block-keyboard-shortcuts/index.jsx +256 -0
  1353. package/src/components/block-list/{block.js → block.jsx} +7 -0
  1354. package/src/components/block-list/{index.js → index.jsx} +7 -1
  1355. package/src/components/block-list/use-block-props/use-focus-first-element.js +5 -0
  1356. package/src/components/block-list/use-block-props/use-selected-block-event-handlers.js +6 -8
  1357. package/src/components/block-parent-selector/index.jsx +147 -0
  1358. package/src/components/block-popover/README.md +10 -3
  1359. package/src/components/block-popover/{inbetween.js → inbetween.jsx} +8 -2
  1360. package/src/components/block-popover/stories/index.story.jsx +143 -0
  1361. package/src/components/block-preview/{index.js → index.jsx} +0 -2
  1362. package/src/components/block-styles/{index.js → index.jsx} +95 -43
  1363. package/src/components/block-styles/style.scss +5 -34
  1364. package/src/components/block-tools/style.scss +94 -0
  1365. package/src/components/block-visibility/constants.ts +4 -3
  1366. package/src/components/child-layout-control/{index.js → index.jsx} +5 -5
  1367. package/src/components/color-palette/test/__snapshots__/{control.js.snap → control.jsx.snap} +3 -29
  1368. package/src/components/colors/test/{with-colors.js → with-colors.jsx} +6 -7
  1369. package/src/components/colors/{with-colors.js → with-colors.jsx} +79 -105
  1370. package/src/components/dimensions-tool/{aspect-ratio-tool.js → aspect-ratio-tool.jsx} +16 -4
  1371. package/src/components/dimensions-tool/{index.js → index.jsx} +34 -22
  1372. package/src/components/dimensions-tool/test/{index.js → index.jsx} +166 -2
  1373. package/src/components/dimensions-tool/test/utils.js +51 -0
  1374. package/src/components/dimensions-tool/utils.js +67 -0
  1375. package/src/components/duotone-control/{index.js → index.jsx} +2 -0
  1376. package/src/components/duotone-control/test/index.jsx +100 -0
  1377. package/src/components/global-styles/{advanced-panel.js → advanced-panel.jsx} +5 -2
  1378. package/src/components/global-styles/{background-panel.js → background-panel.jsx} +2 -2
  1379. package/src/components/global-styles/{border-panel.js → border-panel.jsx} +11 -9
  1380. package/src/components/global-styles/{color-panel.js → color-panel.jsx} +13 -1
  1381. package/src/components/global-styles/{dimensions-panel.js → dimensions-panel.jsx} +17 -5
  1382. package/src/components/global-styles/{filters-panel.js → filters-panel.jsx} +24 -10
  1383. package/src/components/global-styles/{shadow-panel-components.js → shadow-panel-components.jsx} +38 -11
  1384. package/src/components/global-styles/test/{background-panel.js → background-panel.jsx} +1 -1
  1385. package/src/components/global-styles/test/{border-panel.js → border-panel.jsx} +230 -0
  1386. package/src/components/global-styles/test/{color-panel.js → color-panel.jsx} +24 -0
  1387. package/src/components/global-styles/test/{dimensions-panel.js → dimensions-panel.jsx} +98 -7
  1388. package/src/components/global-styles/test/{filters-panel.js → filters-panel.jsx} +84 -0
  1389. package/src/components/global-styles/test/inherited-value-context-core.js +1 -1
  1390. package/src/components/global-styles/test/{inherited-value-context.js → inherited-value-context.jsx} +1 -1
  1391. package/src/components/global-styles/test/{typography-panel.js → typography-panel.jsx} +1 -1
  1392. package/src/components/global-styles/test/utils.js +30 -0
  1393. package/src/components/global-styles/utils.js +23 -0
  1394. package/src/components/inner-blocks/{index.js → index.jsx} +11 -2
  1395. package/src/components/inner-blocks/stories/index.story.jsx +246 -0
  1396. package/src/components/inserter/block-patterns-explorer/{index.js → index.jsx} +24 -11
  1397. package/src/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.jsx +33 -0
  1398. package/src/components/inserter/block-patterns-explorer/{pattern-list.js → pattern-list.jsx} +22 -47
  1399. package/src/components/inserter/hooks/use-insertion-point.js +9 -4
  1400. package/src/components/inserter/{menu.js → menu.jsx} +24 -11
  1401. package/src/components/inserter/{quick-inserter.js → quick-inserter.jsx} +15 -13
  1402. package/src/components/inserter/style.scss +44 -66
  1403. package/src/components/inspector-controls/groups.js +2 -0
  1404. package/src/components/inspector-controls-tabs/README.md +92 -0
  1405. package/src/components/inspector-controls-tabs/{styles-tab.js → styles-tab.jsx} +1 -1
  1406. package/src/components/link-control/test/{index.js → index.jsx} +5 -0
  1407. package/src/components/list-view/{index.js → index.jsx} +50 -7
  1408. package/src/components/list-view/utils.js +16 -1
  1409. package/src/components/media-placeholder/{index.js → index.jsx} +9 -4
  1410. package/src/components/plain-text/stories/index.story.jsx +3 -0
  1411. package/src/components/provider/{index.js → index.jsx} +45 -1
  1412. package/src/components/publish-date-time-picker/README.md +10 -0
  1413. package/src/components/publish-date-time-picker/{index.js → index.jsx} +17 -14
  1414. package/src/components/rich-text/content.scss +6 -0
  1415. package/src/components/rich-text/event-listeners/enter.js +58 -45
  1416. package/src/components/rich-text/{index.js → index.jsx} +9 -4
  1417. package/src/components/rich-text/multiline.jsx +186 -0
  1418. package/src/components/url-input/{index.js → index.jsx} +2 -2
  1419. package/src/components/url-input/test/fixtures/validated-input-control-deprecation.js +27 -0
  1420. package/src/components/url-input/test/{index.js → index.jsx} +5 -0
  1421. package/src/components/url-popover/README.md +7 -0
  1422. package/src/components/url-popover/stories/index.story.jsx +133 -47
  1423. package/src/components/writing-flow/use-input.js +105 -15
  1424. package/src/hooks/block-hooks.scss +0 -9
  1425. package/src/hooks/{border.js → border.jsx} +27 -8
  1426. package/src/hooks/{dimensions.js → dimensions.jsx} +8 -1
  1427. package/src/hooks/{duotone.js → duotone.jsx} +23 -7
  1428. package/src/hooks/gap.js +16 -0
  1429. package/src/hooks/{grid-visualizer.js → grid-visualizer.jsx} +1 -1
  1430. package/src/hooks/{layout-child.js → layout-child.jsx} +41 -9
  1431. package/src/hooks/{layout.js → layout.jsx} +117 -71
  1432. package/src/hooks/{position.js → position.jsx} +1 -1
  1433. package/src/hooks/{states.js → states.jsx} +8 -5
  1434. package/src/hooks/test/gap.js +31 -1
  1435. package/src/hooks/test/layout-child.js +60 -1
  1436. package/src/hooks/test/layout.js +27 -0
  1437. package/src/layouts/{constrained.js → constrained.jsx} +9 -1
  1438. package/src/layouts/{flex.js → flex.jsx} +15 -0
  1439. package/src/layouts/flow.js +4 -1
  1440. package/src/layouts/{grid.js → grid.jsx} +9 -1
  1441. package/src/layouts/test/{constrained.js → constrained.jsx} +26 -0
  1442. package/src/layouts/test/flow.js +26 -0
  1443. package/src/layouts/test/{grid.js → grid.jsx} +46 -0
  1444. package/src/private-apis.js +2 -0
  1445. package/src/store/actions.js +14 -1
  1446. package/build/components/floating-toolbar/nav-up-icon.cjs +0 -52
  1447. package/build/components/floating-toolbar/nav-up-icon.cjs.map +0 -7
  1448. package/build/components/gradients/with-gradient.cjs +0 -36
  1449. package/build/components/gradients/with-gradient.cjs.map +0 -7
  1450. package/build/components/inserter-button/sparkles.cjs +0 -36
  1451. package/build/components/inserter-button/sparkles.cjs.map +0 -7
  1452. package/build-module/components/floating-toolbar/nav-up-icon.mjs +0 -31
  1453. package/build-module/components/floating-toolbar/nav-up-icon.mjs.map +0 -7
  1454. package/build-module/components/gradients/with-gradient.mjs +0 -11
  1455. package/build-module/components/gradients/with-gradient.mjs.map +0 -7
  1456. package/build-module/components/inserter-button/sparkles.mjs +0 -15
  1457. package/build-module/components/inserter-button/sparkles.mjs.map +0 -7
  1458. package/build-style/default-editor-styles-rtl.css +0 -68
  1459. package/build-style/default-editor-styles.css +0 -68
  1460. package/src/components/block-parent-selector/index.js +0 -66
  1461. package/src/components/floating-toolbar/nav-up-icon.js +0 -22
  1462. package/src/components/gradients/with-gradient.js +0 -9
  1463. package/src/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +0 -71
  1464. package/src/components/inserter-button/README.md +0 -62
  1465. package/src/components/inserter-button/sparkles.js +0 -12
  1466. package/src/components/rich-text/multiline.js +0 -146
  1467. package/src/default-editor-styles.scss +0 -25
  1468. /package/src/autocompleters/{block.js → block.jsx} +0 -0
  1469. /package/src/components/alignment-control/{index.js → index.jsx} +0 -0
  1470. /package/src/components/alignment-control/test/__snapshots__/{index.js.snap → index.jsx.snap} +0 -0
  1471. /package/src/components/alignment-control/test/{index.js → index.jsx} +0 -0
  1472. /package/src/components/alignment-control/{ui.js → ui.jsx} +0 -0
  1473. /package/src/components/autocomplete/{index.js → index.jsx} +0 -0
  1474. /package/src/components/background-image-control/{index.js → index.jsx} +0 -0
  1475. /package/src/components/block-alignment-control/{index.js → index.jsx} +0 -0
  1476. /package/src/components/block-alignment-control/test/__snapshots__/{index.js.snap → index.jsx.snap} +0 -0
  1477. /package/src/components/block-alignment-control/test/{index.js → index.jsx} +0 -0
  1478. /package/src/components/block-alignment-control/{ui.js → ui.jsx} +0 -0
  1479. /package/src/components/block-alignment-matrix-control/{index.js → index.jsx} +0 -0
  1480. /package/src/components/block-allowed-blocks/{allowed-blocks-control.js → allowed-blocks-control.jsx} +0 -0
  1481. /package/src/components/block-allowed-blocks/{modal.js → modal.jsx} +0 -0
  1482. /package/src/components/block-bindings/{attribute-control.js → attribute-control.jsx} +0 -0
  1483. /package/src/components/block-bindings/{source-fields-list.js → source-fields-list.jsx} +0 -0
  1484. /package/src/components/block-breadcrumb/{index.js → index.jsx} +0 -0
  1485. /package/src/components/block-breadcrumb/test/__snapshots__/{index.js.snap → index.jsx.snap} +0 -0
  1486. /package/src/components/block-breadcrumb/test/{index.js → index.jsx} +0 -0
  1487. /package/src/components/block-canvas/{index.js → index.jsx} +0 -0
  1488. /package/src/components/block-card/{index.js → index.jsx} +0 -0
  1489. /package/src/components/block-compare/{block-view.js → block-view.jsx} +0 -0
  1490. /package/src/components/block-compare/{index.js → index.jsx} +0 -0
  1491. /package/src/components/block-compare/test/__snapshots__/{block-view.js.snap → block-view.jsx.snap} +0 -0
  1492. /package/src/components/block-compare/test/{block-view.js → block-view.jsx} +0 -0
  1493. /package/src/components/block-context/{index.js → index.jsx} +0 -0
  1494. /package/src/components/block-controls/{fill.js → fill.jsx} +0 -0
  1495. /package/src/components/block-controls/{index.js → index.jsx} +0 -0
  1496. /package/src/components/block-controls/{slot.js → slot.jsx} +0 -0
  1497. /package/src/components/block-controls/test/{index.js → index.jsx} +0 -0
  1498. /package/src/components/block-draggable/{draggable-chip.js → draggable-chip.jsx} +0 -0
  1499. /package/src/components/block-draggable/{index.js → index.jsx} +0 -0
  1500. /package/src/components/block-edit/{edit.js → edit.jsx} +0 -0
  1501. /package/src/components/block-edit/{index.js → index.jsx} +0 -0
  1502. /package/src/components/block-edit/{multiple-usage-warning.js → multiple-usage-warning.jsx} +0 -0
  1503. /package/src/components/block-edit/test/{edit.js → edit.jsx} +0 -0
  1504. /package/src/components/block-edit-visually-button/{index.js → index.jsx} +0 -0
  1505. /package/src/components/block-full-height-alignment-control/{index.js → index.jsx} +0 -0
  1506. /package/src/components/block-heading-level-dropdown/{heading-level-icon.js → heading-level-icon.jsx} +0 -0
  1507. /package/src/components/block-heading-level-dropdown/{index.js → index.jsx} +0 -0
  1508. /package/src/components/block-icon/{index.js → index.jsx} +0 -0
  1509. /package/src/components/block-icon/test/__snapshots__/{index.js.snap → index.jsx.snap} +0 -0
  1510. /package/src/components/block-icon/test/{index.js → index.jsx} +0 -0
  1511. /package/src/components/block-inspector/{edit-contents.js → edit-contents.jsx} +0 -0
  1512. /package/src/components/block-list/{block-crash-warning.js → block-crash-warning.jsx} +0 -0
  1513. /package/src/components/block-list/{block-html.js → block-html.jsx} +0 -0
  1514. /package/src/components/block-list/{block-invalid-warning.js → block-invalid-warning.jsx} +0 -0
  1515. /package/src/components/block-list/{layout.js → layout.jsx} +0 -0
  1516. /package/src/components/block-list/{subdirectory-icon.js → subdirectory-icon.jsx} +0 -0
  1517. /package/src/components/block-list/{zoom-out-separator.js → zoom-out-separator.jsx} +0 -0
  1518. /package/src/components/block-list-appender/{index.js → index.jsx} +0 -0
  1519. /package/src/components/block-lock/{menu-item.js → menu-item.jsx} +0 -0
  1520. /package/src/components/block-lock/{modal.js → modal.jsx} +0 -0
  1521. /package/src/components/block-lock/{toolbar.js → toolbar.jsx} +0 -0
  1522. /package/src/components/block-manager/{category.js → category.jsx} +0 -0
  1523. /package/src/components/block-manager/{checklist.js → checklist.jsx} +0 -0
  1524. /package/src/components/block-manager/{index.js → index.jsx} +0 -0
  1525. /package/src/components/block-mover/{button.js → button.jsx} +0 -0
  1526. /package/src/components/block-mover/{index.js → index.jsx} +0 -0
  1527. /package/src/components/block-navigation/{dropdown.js → dropdown.jsx} +0 -0
  1528. /package/src/components/block-pattern-setup/{index.js → index.jsx} +0 -0
  1529. /package/src/components/block-pattern-setup/{setup-toolbar.js → setup-toolbar.jsx} +0 -0
  1530. /package/src/components/block-patterns-list/{index.js → index.jsx} +0 -0
  1531. /package/src/components/block-patterns-paging/{index.js → index.jsx} +0 -0
  1532. /package/src/components/block-popover/{cover.js → cover.jsx} +0 -0
  1533. /package/src/components/block-popover/{drop-zone.js → drop-zone.jsx} +0 -0
  1534. /package/src/components/block-popover/{index.js → index.jsx} +0 -0
  1535. /package/src/components/block-preview/{auto.js → auto.jsx} +0 -0
  1536. /package/src/components/block-preview/test/{index.js → index.jsx} +0 -0
  1537. /package/src/components/block-quick-navigation/{index.js → index.jsx} +0 -0
  1538. /package/src/components/block-removal-warning-modal/{index.js → index.jsx} +0 -0
  1539. /package/src/components/block-rename/{modal.js → modal.jsx} +0 -0
  1540. /package/src/components/block-rename/{rename-control.js → rename-control.jsx} +0 -0
  1541. /package/src/components/block-selection-clearer/{index.js → index.jsx} +0 -0
  1542. /package/src/components/block-selection-clearer/test/{index.js → index.jsx} +0 -0
  1543. /package/src/components/block-settings-menu/{block-html-convert-button.js → block-html-convert-button.jsx} +0 -0
  1544. /package/src/components/block-settings-menu/{block-mode-toggle.js → block-mode-toggle.jsx} +0 -0
  1545. /package/src/components/block-settings-menu/{block-parent-selector-menu-item.js → block-parent-selector-menu-item.jsx} +0 -0
  1546. /package/src/components/block-settings-menu/{block-settings-dropdown.js → block-settings-dropdown.jsx} +0 -0
  1547. /package/src/components/block-settings-menu/{index.js → index.jsx} +0 -0
  1548. /package/src/components/block-settings-menu/test/{block-mode-toggle.js → block-mode-toggle.jsx} +0 -0
  1549. /package/src/components/block-settings-menu-controls/{index.js → index.jsx} +0 -0
  1550. /package/src/components/block-styles/{menu-items.js → menu-items.jsx} +0 -0
  1551. /package/src/components/block-switcher/{block-styles-menu.js → block-styles-menu.jsx} +0 -0
  1552. /package/src/components/block-switcher/{block-transformations-menu.js → block-transformations-menu.jsx} +0 -0
  1553. /package/src/components/block-switcher/{block-variation-transformations.js → block-variation-transformations.jsx} +0 -0
  1554. /package/src/components/block-switcher/{index.js → index.jsx} +0 -0
  1555. /package/src/components/block-switcher/{pattern-transformations-menu.js → pattern-transformations-menu.jsx} +0 -0
  1556. /package/src/components/block-switcher/{preview-block-popover.js → preview-block-popover.jsx} +0 -0
  1557. /package/src/components/block-switcher/test/{index.js → index.jsx} +0 -0
  1558. /package/src/components/block-title/test/{index.js → index.jsx} +0 -0
  1559. /package/src/components/block-toolbar/{block-styles-dropdown.js → block-styles-dropdown.jsx} +0 -0
  1560. /package/src/components/block-toolbar/{block-toolbar-icon.js → block-toolbar-icon.jsx} +0 -0
  1561. /package/src/components/block-toolbar/{change-design.js → change-design.jsx} +0 -0
  1562. /package/src/components/block-toolbar/{edit-section-button.js → edit-section-button.jsx} +0 -0
  1563. /package/src/components/block-toolbar/{index.js → index.jsx} +0 -0
  1564. /package/src/components/block-toolbar/{pattern-overrides-dropdown.js → pattern-overrides-dropdown.jsx} +0 -0
  1565. /package/src/components/block-toolbar/{switch-section-style.js → switch-section-style.jsx} +0 -0
  1566. /package/src/components/block-toolbar/test/{block-toolbar-icon.js → block-toolbar-icon.jsx} +0 -0
  1567. /package/src/components/block-tools/{block-toolbar-popover.js → block-toolbar-popover.jsx} +0 -0
  1568. /package/src/components/block-tools/{empty-block-inserter.js → empty-block-inserter.jsx} +0 -0
  1569. /package/src/components/block-tools/{index.js → index.jsx} +0 -0
  1570. /package/src/components/block-tools/{insertion-point.js → insertion-point.jsx} +0 -0
  1571. /package/src/components/block-tools/{zoom-out-mode-inserter-button.js → zoom-out-mode-inserter-button.jsx} +0 -0
  1572. /package/src/components/block-tools/{zoom-out-mode-inserters.js → zoom-out-mode-inserters.jsx} +0 -0
  1573. /package/src/components/block-types-list/{index.js → index.jsx} +0 -0
  1574. /package/src/components/block-variation-picker/{index.js → index.jsx} +0 -0
  1575. /package/src/components/block-variation-transforms/{index.js → index.jsx} +0 -0
  1576. /package/src/components/block-vertical-alignment-control/{index.js → index.jsx} +0 -0
  1577. /package/src/components/block-vertical-alignment-control/test/__snapshots__/{index.js.snap → index.jsx.snap} +0 -0
  1578. /package/src/components/block-vertical-alignment-control/test/{index.js → index.jsx} +0 -0
  1579. /package/src/components/block-vertical-alignment-control/{ui.js → ui.jsx} +0 -0
  1580. /package/src/components/block-visibility/{modal.js → modal.jsx} +0 -0
  1581. /package/src/components/block-visibility/{viewport-menu-item.js → viewport-menu-item.jsx} +0 -0
  1582. /package/src/components/block-visibility/{viewport-toolbar.js → viewport-toolbar.jsx} +0 -0
  1583. /package/src/components/block-visibility/{viewport-visibility-info.js → viewport-visibility-info.jsx} +0 -0
  1584. /package/src/components/border-radius-control/{index.js → index.jsx} +0 -0
  1585. /package/src/components/border-radius-control/{linked-button.js → linked-button.jsx} +0 -0
  1586. /package/src/components/border-radius-control/test/{index.js → index.jsx} +0 -0
  1587. /package/src/components/button-block-appender/{index.js → index.jsx} +0 -0
  1588. /package/src/components/child-layout-control/test/{index.js → index.jsx} +0 -0
  1589. /package/src/components/color-palette/{control.js → control.jsx} +0 -0
  1590. /package/src/components/color-palette/test/{control.js → control.jsx} +0 -0
  1591. /package/src/components/color-palette/{with-color-context.js → with-color-context.jsx} +0 -0
  1592. /package/src/components/color-style-selector/{index.js → index.jsx} +0 -0
  1593. /package/src/components/colors-gradients/{control.js → control.jsx} +0 -0
  1594. /package/src/components/colors-gradients/{dropdown.js → dropdown.jsx} +0 -0
  1595. /package/src/components/colors-gradients/{panel-color-gradient-settings.js → panel-color-gradient-settings.jsx} +0 -0
  1596. /package/src/components/colors-gradients/test/{control.js → control.jsx} +0 -0
  1597. /package/src/components/contrast-checker/{index.js → index.jsx} +0 -0
  1598. /package/src/components/contrast-checker/test/{index.js → index.jsx} +0 -0
  1599. /package/src/components/convert-to-group-buttons/{index.js → index.jsx} +0 -0
  1600. /package/src/components/convert-to-group-buttons/{toolbar.js → toolbar.jsx} +0 -0
  1601. /package/src/components/copy-handler/{index.js → index.jsx} +0 -0
  1602. /package/src/components/date-format-picker/{index.js → index.jsx} +0 -0
  1603. /package/src/components/default-block-appender/{index.js → index.jsx} +0 -0
  1604. /package/src/components/default-block-appender/test/__snapshots__/{index.js.snap → index.jsx.snap} +0 -0
  1605. /package/src/components/default-block-appender/test/{index.js → index.jsx} +0 -0
  1606. /package/src/components/dimension-control/{index.js → index.jsx} +0 -0
  1607. /package/src/components/dimensions-tool/{scale-tool.js → scale-tool.jsx} +0 -0
  1608. /package/src/components/dimensions-tool/{width-height-tool.js → width-height-tool.jsx} +0 -0
  1609. /package/src/components/editable-text/{index.js → index.jsx} +0 -0
  1610. /package/src/components/editor-styles/{index.js → index.jsx} +0 -0
  1611. /package/src/components/fit-text-size-warning/{index.js → index.jsx} +0 -0
  1612. /package/src/components/font-appearance-control/{index.js → index.jsx} +0 -0
  1613. /package/src/components/font-family/{index.js → index.jsx} +0 -0
  1614. /package/src/components/font-sizes/{font-size-picker.js → font-size-picker.jsx} +0 -0
  1615. /package/src/components/font-sizes/{with-font-sizes.js → with-font-sizes.jsx} +0 -0
  1616. /package/src/components/global-styles/{color-gradient-dropdown-item.js → color-gradient-dropdown-item.jsx} +0 -0
  1617. /package/src/components/global-styles/{image-settings-panel.js → image-settings-panel.jsx} +0 -0
  1618. /package/src/components/global-styles/inheritance/{index.js → index.jsx} +0 -0
  1619. /package/src/components/global-styles/inheritance/test/{index.js → index.jsx} +0 -0
  1620. /package/src/components/global-styles/{state-control-badges.js → state-control-badges.jsx} +0 -0
  1621. /package/src/components/global-styles/{state-control.js → state-control.jsx} +0 -0
  1622. /package/src/components/global-styles/test/{state-control-badges.js → state-control-badges.jsx} +0 -0
  1623. /package/src/components/global-styles/test/{typography-panel-core.js → typography-panel-core.jsx} +0 -0
  1624. /package/src/components/global-styles/{typography-panel.js → typography-panel.jsx} +0 -0
  1625. /package/src/components/grid/{grid-item-movers.js → grid-item-movers.jsx} +0 -0
  1626. /package/src/components/grid/{grid-item-resizer.js → grid-item-resizer.jsx} +0 -0
  1627. /package/src/components/grid/{grid-visualizer.js → grid-visualizer.jsx} +0 -0
  1628. /package/src/components/height-control/{index.js → index.jsx} +0 -0
  1629. /package/src/components/html-element-control/{index.js → index.jsx} +0 -0
  1630. /package/src/components/iframe/{index.js → index.jsx} +0 -0
  1631. /package/src/components/image-editor/{aspect-ratio-dropdown.js → aspect-ratio-dropdown.jsx} +0 -0
  1632. /package/src/components/image-editor/{context.js → context.jsx} +0 -0
  1633. /package/src/components/image-editor/{cropper.js → cropper.jsx} +0 -0
  1634. /package/src/components/image-editor/{form-controls.js → form-controls.jsx} +0 -0
  1635. /package/src/components/image-editor/{index.js → index.jsx} +0 -0
  1636. /package/src/components/image-editor/{rotation-button.js → rotation-button.jsx} +0 -0
  1637. /package/src/components/image-editor/{zoom-dropdown.js → zoom-dropdown.jsx} +0 -0
  1638. /package/src/components/image-size-control/{index.js → index.jsx} +0 -0
  1639. /package/src/components/image-size-control/test/{index.js → index.jsx} +0 -0
  1640. /package/src/components/inner-blocks/{button-block-appender.js → button-block-appender.jsx} +0 -0
  1641. /package/src/components/inner-blocks/{default-block-appender.js → default-block-appender.jsx} +0 -0
  1642. /package/src/components/inner-blocks/test/__snapshots__/{index.js.snap → index.jsx.snap} +0 -0
  1643. /package/src/components/inner-blocks/test/{index.js → index.jsx} +0 -0
  1644. /package/src/components/inner-content/{index.js → index.jsx} +0 -0
  1645. /package/src/components/inner-content/test/{index.js → index.jsx} +0 -0
  1646. /package/src/components/inserter/block-patterns-tab/{index.js → index.jsx} +0 -0
  1647. /package/src/components/inserter/block-patterns-tab/{pattern-category-previews.js → pattern-category-previews.jsx} +0 -0
  1648. /package/src/components/inserter/block-patterns-tab/{patterns-filter.js → patterns-filter.jsx} +0 -0
  1649. /package/src/components/inserter/{block-types-tab.js → block-types-tab.jsx} +0 -0
  1650. /package/src/components/inserter/category-tabs/{index.js → index.jsx} +0 -0
  1651. /package/src/components/inserter/{index.js → index.jsx} +0 -0
  1652. /package/src/components/inserter/{library.js → library.jsx} +0 -0
  1653. /package/src/components/inserter/media-tab/{media-list.js → media-list.jsx} +0 -0
  1654. /package/src/components/inserter/media-tab/{media-panel.js → media-panel.jsx} +0 -0
  1655. /package/src/components/inserter/media-tab/{media-preview.js → media-preview.jsx} +0 -0
  1656. /package/src/components/inserter/media-tab/{media-tab.js → media-tab.jsx} +0 -0
  1657. /package/src/components/inserter/media-tab/test/{media-panel.js → media-panel.jsx} +0 -0
  1658. /package/src/components/inserter/media-tab/{utils.js → utils.jsx} +0 -0
  1659. /package/src/components/inserter/{mobile-tab-navigation.js → mobile-tab-navigation.jsx} +0 -0
  1660. /package/src/components/inserter/{no-results.js → no-results.jsx} +0 -0
  1661. /package/src/components/inserter/{panel.js → panel.jsx} +0 -0
  1662. /package/src/components/inserter/{preview-panel.js → preview-panel.jsx} +0 -0
  1663. /package/src/components/inserter/{search-results.js → search-results.jsx} +0 -0
  1664. /package/src/components/inserter/{tips.js → tips.jsx} +0 -0
  1665. /package/src/components/inserter-draggable-blocks/{index.js → index.jsx} +0 -0
  1666. /package/src/components/inserter-list-item/{index.js → index.jsx} +0 -0
  1667. /package/src/components/inserter-listbox/{group.js → group.jsx} +0 -0
  1668. /package/src/components/inserter-listbox/{index.js → index.jsx} +0 -0
  1669. /package/src/components/inserter-listbox/{item.js → item.jsx} +0 -0
  1670. /package/src/components/inserter-listbox/{row.js → row.jsx} +0 -0
  1671. /package/src/components/inspector-controls/{block-support-slot-container.js → block-support-slot-container.jsx} +0 -0
  1672. /package/src/components/inspector-controls/{block-support-tools-panel.js → block-support-tools-panel.jsx} +0 -0
  1673. /package/src/components/inspector-controls/{fill.js → fill.jsx} +0 -0
  1674. /package/src/components/inspector-controls/{index.js → index.jsx} +0 -0
  1675. /package/src/components/inspector-controls/{last-item.js → last-item.jsx} +0 -0
  1676. /package/src/components/inspector-controls/{list-view-content-popover.js → list-view-content-popover.jsx} +0 -0
  1677. /package/src/components/inspector-controls/{slot.js → slot.jsx} +0 -0
  1678. /package/src/components/inspector-controls-tabs/{advanced-controls-panel.js → advanced-controls-panel.jsx} +0 -0
  1679. /package/src/components/inspector-controls-tabs/{content-tab.js → content-tab.jsx} +0 -0
  1680. /package/src/components/inspector-controls-tabs/{index.js → index.jsx} +0 -0
  1681. /package/src/components/inspector-controls-tabs/{position-controls-panel.js → position-controls-panel.jsx} +0 -0
  1682. /package/src/components/inspector-controls-tabs/{settings-tab.js → settings-tab.jsx} +0 -0
  1683. /package/src/components/inspector-popover-header/{index.js → index.jsx} +0 -0
  1684. /package/src/components/justify-content-control/{index.js → index.jsx} +0 -0
  1685. /package/src/components/justify-content-control/{ui.js → ui.jsx} +0 -0
  1686. /package/src/components/letter-spacing-control/{index.js → index.jsx} +0 -0
  1687. /package/src/components/line-height-control/{index.js → index.jsx} +0 -0
  1688. /package/src/components/line-height-control/test/{index.js → index.jsx} +0 -0
  1689. /package/src/components/link-control/{index.js → index.jsx} +0 -0
  1690. /package/src/components/link-control/{link-preview.js → link-preview.jsx} +0 -0
  1691. /package/src/components/link-control/{search-create-button.js → search-create-button.jsx} +0 -0
  1692. /package/src/components/link-control/{search-input.js → search-input.jsx} +0 -0
  1693. /package/src/components/link-control/{search-item.js → search-item.jsx} +0 -0
  1694. /package/src/components/link-control/{search-results.js → search-results.jsx} +0 -0
  1695. /package/src/components/link-control/{settings-drawer.js → settings-drawer.jsx} +0 -0
  1696. /package/src/components/link-control/{settings.js → settings.jsx} +0 -0
  1697. /package/src/components/link-control/test/{url-normalization.test.js → url-normalization.test.jsx} +0 -0
  1698. /package/src/components/link-picker/{link-picker.js → link-picker.jsx} +0 -0
  1699. /package/src/components/link-picker/{link-preview.js → link-preview.jsx} +0 -0
  1700. /package/src/components/link-picker/test/{index.js → index.jsx} +0 -0
  1701. /package/src/components/list-view/{appender.js → appender.jsx} +0 -0
  1702. /package/src/components/list-view/{aria-referenced-text.js → aria-referenced-text.jsx} +0 -0
  1703. /package/src/components/list-view/{block-contents.js → block-contents.jsx} +0 -0
  1704. /package/src/components/list-view/{block-select-button.js → block-select-button.jsx} +0 -0
  1705. /package/src/components/list-view/{block.js → block.jsx} +0 -0
  1706. /package/src/components/list-view/{branch.js → branch.jsx} +0 -0
  1707. /package/src/components/list-view/{drop-indicator.js → drop-indicator.jsx} +0 -0
  1708. /package/src/components/list-view/{expander.js → expander.jsx} +0 -0
  1709. /package/src/components/list-view/{leaf.js → leaf.jsx} +0 -0
  1710. /package/src/components/media-placeholder/test/{index.js → index.jsx} +0 -0
  1711. /package/src/components/media-replace-flow/{index.js → index.jsx} +0 -0
  1712. /package/src/components/media-replace-flow/test/{index.js → index.jsx} +0 -0
  1713. /package/src/components/multi-selection-inspector/{index.js → index.jsx} +0 -0
  1714. /package/src/components/navigable-toolbar/{index.js → index.jsx} +0 -0
  1715. /package/src/components/observe-typing/{index.js → index.jsx} +0 -0
  1716. /package/src/components/panel-color-settings/{index.js → index.jsx} +0 -0
  1717. /package/src/components/panel-color-settings/test/{index.js → index.jsx} +0 -0
  1718. /package/src/components/plain-text/{index.js → index.jsx} +0 -0
  1719. /package/src/components/preset-input-control/{custom-value-controls.js → custom-value-controls.jsx} +0 -0
  1720. /package/src/components/preset-input-control/{index.js → index.jsx} +0 -0
  1721. /package/src/components/preset-input-control/test/{index.js → index.jsx} +0 -0
  1722. /package/src/components/provider/{block-refs-provider.js → block-refs-provider.jsx} +0 -0
  1723. /package/src/components/provider/test/{experimental-provider.js → experimental-provider.jsx} +0 -0
  1724. /package/src/components/provider/test/{use-block-sync.js → use-block-sync.jsx} +0 -0
  1725. /package/src/components/provider/{with-registry-provider.js → with-registry-provider.jsx} +0 -0
  1726. /package/src/components/recursion-provider/{index.js → index.jsx} +0 -0
  1727. /package/src/components/recursion-provider/test/{index.js → index.jsx} +0 -0
  1728. /package/src/components/resizable-box-popover/{index.js → index.jsx} +0 -0
  1729. /package/src/components/resolution-tool/{index.js → index.jsx} +0 -0
  1730. /package/src/components/responsive-block-control/{index.js → index.jsx} +0 -0
  1731. /package/src/components/responsive-block-control/{label.js → label.jsx} +0 -0
  1732. /package/src/components/responsive-block-control/test/{index.js → index.jsx} +0 -0
  1733. /package/src/components/rich-text/{content.js → content.jsx} +0 -0
  1734. /package/src/components/rich-text/{format-edit.js → format-edit.jsx} +0 -0
  1735. /package/src/components/rich-text/format-toolbar/{index.js → index.jsx} +0 -0
  1736. /package/src/components/rich-text/{format-toolbar-container.js → format-toolbar-container.jsx} +0 -0
  1737. /package/src/components/rich-text/{get-rich-text-values.js → get-rich-text-values.jsx} +0 -0
  1738. /package/src/components/rich-text/{toolbar-button.js → toolbar-button.jsx} +0 -0
  1739. /package/src/components/rich-text/{utils.js → utils.jsx} +0 -0
  1740. /package/src/components/rich-text/{with-deprecations.js → with-deprecations.jsx} +0 -0
  1741. /package/src/components/skip-to-selected-block/{index.js → index.jsx} +0 -0
  1742. /package/src/components/spacing-sizes-control/{index.js → index.jsx} +0 -0
  1743. /package/src/components/spacing-sizes-control/input-controls/{axial.js → axial.jsx} +0 -0
  1744. /package/src/components/spacing-sizes-control/input-controls/{separated.js → separated.jsx} +0 -0
  1745. /package/src/components/spacing-sizes-control/input-controls/{single.js → single.jsx} +0 -0
  1746. /package/src/components/spacing-sizes-control/input-controls/{spacing-input-control.js → spacing-input-control.jsx} +0 -0
  1747. /package/src/components/spacing-sizes-control/{linked-button.js → linked-button.jsx} +0 -0
  1748. /package/src/components/spacing-sizes-control/test/{index.js → index.jsx} +0 -0
  1749. /package/src/components/tabbed-sidebar/{index.js → index.jsx} +0 -0
  1750. /package/src/components/text-alignment-control/{index.js → index.jsx} +0 -0
  1751. /package/src/components/text-decoration-control/{index.js → index.jsx} +0 -0
  1752. /package/src/components/text-indent-control/{index.js → index.jsx} +0 -0
  1753. /package/src/components/text-transform-control/{index.js → index.jsx} +0 -0
  1754. /package/src/components/typewriter/{index.js → index.jsx} +0 -0
  1755. /package/src/components/unit-control/{index.js → index.jsx} +0 -0
  1756. /package/src/components/url-input/{button.js → button.jsx} +0 -0
  1757. /package/src/components/url-input/test/{button.js → button.jsx} +0 -0
  1758. /package/src/components/url-popover/{image-url-input-ui.js → image-url-input-ui.jsx} +0 -0
  1759. /package/src/components/url-popover/{index.js → index.jsx} +0 -0
  1760. /package/src/components/url-popover/{link-editor.js → link-editor.jsx} +0 -0
  1761. /package/src/components/url-popover/{link-viewer-url.js → link-viewer-url.jsx} +0 -0
  1762. /package/src/components/url-popover/{link-viewer.js → link-viewer.jsx} +0 -0
  1763. /package/src/components/use-block-display-information/test/{index.js → index.jsx} +0 -0
  1764. /package/src/components/warning/{index.js → index.jsx} +0 -0
  1765. /package/src/components/warning/test/__snapshots__/{index.js.snap → index.jsx.snap} +0 -0
  1766. /package/src/components/warning/test/{index.js → index.jsx} +0 -0
  1767. /package/src/components/writing-flow/{index.js → index.jsx} +0 -0
  1768. /package/src/components/writing-flow/{use-tab-nav.js → use-tab-nav.jsx} +0 -0
  1769. /package/src/components/writing-mode-control/{index.js → index.jsx} +0 -0
  1770. /package/src/hooks/{align.js → align.jsx} +0 -0
  1771. /package/src/hooks/{allowed-blocks.js → allowed-blocks.jsx} +0 -0
  1772. /package/src/hooks/{anchor.js → anchor.jsx} +0 -0
  1773. /package/src/hooks/{auto-inspector-controls.js → auto-inspector-controls.jsx} +0 -0
  1774. /package/src/hooks/{background.js → background.jsx} +0 -0
  1775. /package/src/hooks/{block-bindings.js → block-bindings.jsx} +0 -0
  1776. /package/src/hooks/block-fields/{fields-dropdown-menu.js → fields-dropdown-menu.jsx} +0 -0
  1777. /package/src/hooks/block-fields/{index.js → index.jsx} +0 -0
  1778. /package/src/hooks/block-fields/link/{index.js → index.jsx} +0 -0
  1779. /package/src/hooks/block-fields/media/{index.js → index.jsx} +0 -0
  1780. /package/src/hooks/block-fields/rich-text/{index.js → index.jsx} +0 -0
  1781. /package/src/hooks/{block-hooks.js → block-hooks.jsx} +0 -0
  1782. /package/src/hooks/{block-style-variation.js → block-style-variation.jsx} +0 -0
  1783. /package/src/hooks/{custom-class-name.js → custom-class-name.jsx} +0 -0
  1784. /package/src/hooks/{custom-css.js → custom-css.jsx} +0 -0
  1785. /package/src/hooks/{elements.js → elements.jsx} +0 -0
  1786. /package/src/hooks/{fit-text.js → fit-text.jsx} +0 -0
  1787. /package/src/hooks/{font-size.js → font-size.jsx} +0 -0
  1788. /package/src/hooks/{line-height.js → line-height.jsx} +0 -0
  1789. /package/src/hooks/{list-view.js → list-view.jsx} +0 -0
  1790. /package/src/hooks/{spacing-visualizer.js → spacing-visualizer.jsx} +0 -0
  1791. /package/src/hooks/{style.js → style.jsx} +0 -0
  1792. /package/src/hooks/test/{align.js → align.jsx} +0 -0
  1793. /package/src/hooks/test/{background.js → background.jsx} +0 -0
  1794. /package/src/hooks/test/{custom-class-name.js → custom-class-name.jsx} +0 -0
  1795. /package/src/hooks/test/{inherited-value-wiring.js → inherited-value-wiring.jsx} +0 -0
  1796. /package/src/hooks/test/{settings.js → settings.jsx} +0 -0
  1797. /package/src/hooks/test/{style.js → style.jsx} +0 -0
  1798. /package/src/hooks/test/{text-align.js → text-align.jsx} +0 -0
  1799. /package/src/hooks/{text-align.js → text-align.jsx} +0 -0
  1800. /package/src/hooks/{typography.js → typography.jsx} +0 -0
  1801. /package/src/hooks/{utils.js → utils.jsx} +0 -0
  1802. /package/src/layouts/test/{flex.js → flex.jsx} +0 -0
  1803. /package/src/store/test/{selectors.js → selectors.jsx} +0 -0
  1804. /package/src/utils/test/{dom.js → dom.jsx} +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/components/link-picker/link-preview.js"],
3
+ "sources": ["../../../src/components/link-picker/link-preview.jsx"],
4
4
  "sourcesContent": ["import {\n\t__experimentalTruncate as Truncate,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tFlexItem,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { Icon, chevronDown } from '@wordpress/icons';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport { unlock } from '../../lock-unlock';\n\nconst { Badge: WCBadge } = unlock( componentsPrivateApis );\n\n/**\n * Link preview component that displays the current link information.\n * This is a presentational component meant to be wrapped in a button.\n *\n * @param {Object} props - Component props\n * @param {string} props.title - Display title for the link\n * @param {string} props.url - Display URL for the link\n * @param {string} props.image - Optional image URL for the link preview\n * @param {Array<Object>} props.badges - Optional array of badge objects with label and intent\n */\nexport function LinkPreview( { title, url, image, badges } ) {\n\treturn (\n\t\t<HStack justify=\"space-between\" alignment=\"top\">\n\t\t\t<FlexItem className=\"link-preview-button__content\">\n\t\t\t\t<HStack alignment=\"top\">\n\t\t\t\t\t{ image && (\n\t\t\t\t\t\t<FlexItem className=\"link-preview-button__image-container\">\n\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\tclassName=\"link-preview-button__image\"\n\t\t\t\t\t\t\t\tsrc={ image }\n\t\t\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t) }\n\n\t\t\t\t\t<VStack\n\t\t\t\t\t\tclassName=\"link-preview-button__details\"\n\t\t\t\t\t\talignment=\"topLeft\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Truncate\n\t\t\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\t\t\tclassName=\"link-preview-button__title\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ stripHTML( title ) }\n\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t{ url && (\n\t\t\t\t\t\t\t<Truncate\n\t\t\t\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\t\t\t\tclassName=\"link-preview-button__hint\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ url }\n\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ badges && badges.length > 0 && (\n\t\t\t\t\t\t\t<HStack\n\t\t\t\t\t\t\t\tclassName=\"link-preview-button__badges\"\n\t\t\t\t\t\t\t\talignment=\"left\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ badges.map( ( badge ) => (\n\t\t\t\t\t\t\t\t\t<WCBadge\n\t\t\t\t\t\t\t\t\t\tkey={ `${ badge.label }|${ badge.intent }` }\n\t\t\t\t\t\t\t\t\t\tintent={ badge.intent }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ badge.label }\n\t\t\t\t\t\t\t\t\t</WCBadge>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</VStack>\n\t\t\t\t</HStack>\n\t\t\t</FlexItem>\n\t\t\t<Icon icon={ chevronDown } className=\"link-preview-button__icon\" />\n\t\t</HStack>\n\t);\n}\n"],
5
5
  "mappings": ";AAAA;AAAA,EACC,0BAA0B;AAAA,EAC1B,wBAAwB;AAAA,EACxB,wBAAwB;AAAA,EACxB;AAAA,EACA,eAAe;AAAA,OACT;AACP,SAAS,MAAM,mBAAmB;AAClC,SAAS,uBAAuB,iBAAiB;AACjD,SAAS,cAAc;AAqBhB,cAQF,YARE;AAnBP,IAAM,EAAE,OAAO,QAAQ,IAAI,OAAQ,qBAAsB;AAYlD,SAAS,YAAa,EAAE,OAAO,KAAK,OAAO,OAAO,GAAI;AAC5D,SACC,qBAAC,UAAO,SAAQ,iBAAgB,WAAU,OACzC;AAAA,wBAAC,YAAS,WAAU,gCACnB,+BAAC,UAAO,WAAU,OACf;AAAA,eACD,oBAAC,YAAS,WAAU,wCACnB;AAAA,QAAC;AAAA;AAAA,UACA,WAAU;AAAA,UACV,KAAM;AAAA,UACN,KAAI;AAAA;AAAA,MACL,GACD;AAAA,MAGD;AAAA,QAAC;AAAA;AAAA,UACA,WAAU;AAAA,UACV,WAAU;AAAA,UAEV;AAAA;AAAA,cAAC;AAAA;AAAA,gBACA,eAAgB;AAAA,gBAChB,WAAU;AAAA,gBAER,oBAAW,KAAM;AAAA;AAAA,YACpB;AAAA,YACE,OACD;AAAA,cAAC;AAAA;AAAA,gBACA,eAAgB;AAAA,gBAChB,WAAU;AAAA,gBAER;AAAA;AAAA,YACH;AAAA,YAEC,UAAU,OAAO,SAAS,KAC3B;AAAA,cAAC;AAAA;AAAA,gBACA,WAAU;AAAA,gBACV,WAAU;AAAA,gBAER,iBAAO,IAAK,CAAE,UACf;AAAA,kBAAC;AAAA;AAAA,oBAEA,QAAS,MAAM;AAAA,oBAEb,gBAAM;AAAA;AAAA,kBAHF,GAAI,MAAM,KAAM,IAAK,MAAM,MAAO;AAAA,gBAIzC,CACC;AAAA;AAAA,YACH;AAAA;AAAA;AAAA,MAEF;AAAA,OACD,GACD;AAAA,IACA,oBAAC,QAAK,MAAO,aAAc,WAAU,6BAA4B;AAAA,KAClE;AAEF;",
6
6
  "names": []
@@ -1,4 +1,4 @@
1
- // packages/block-editor/src/components/list-view/appender.js
1
+ // packages/block-editor/src/components/list-view/appender.jsx
2
2
  import { useInstanceId } from "@wordpress/compose";
3
3
  import { speak } from "@wordpress/a11y";
4
4
  import { useSelect } from "@wordpress/data";
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/components/list-view/appender.js"],
3
+ "sources": ["../../../src/components/list-view/appender.jsx"],
4
4
  "sourcesContent": ["import { useInstanceId } from '@wordpress/compose';\nimport { speak } from '@wordpress/a11y';\nimport { useSelect } from '@wordpress/data';\nimport { forwardRef, useEffect } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as blockEditorStore } from '../../store';\nimport useBlockDisplayTitle from '../block-title/use-block-display-title';\nimport { useInsertedBlockClientId, useListViewContext } from './context';\nimport Inserter from '../inserter';\nimport AriaReferencedText from './aria-referenced-text';\nimport { unlock } from '../../lock-unlock';\n\nexport const Appender = forwardRef(\n\t( { nestingLevel, blockCount, clientId, ...props }, ref ) => {\n\t\tconst { setInsertedBlockClientId } = useListViewContext();\n\t\tconst insertedBlockClientId = useInsertedBlockClientId();\n\n\t\tconst instanceId = useInstanceId( Appender );\n\t\tconst { directInsert, hideInserter } = useSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst { getBlockListSettings, getTemplateLock, isZoomOut } =\n\t\t\t\t\tunlock( select( blockEditorStore ) );\n\n\t\t\t\tconst settings = getBlockListSettings( clientId );\n\t\t\t\tconst directInsertValue = settings?.directInsert || false;\n\t\t\t\tconst hideInserterValue =\n\t\t\t\t\t!! getTemplateLock( clientId ) || isZoomOut();\n\n\t\t\t\treturn {\n\t\t\t\t\tdirectInsert: directInsertValue,\n\t\t\t\t\thideInserter: hideInserterValue,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ clientId ]\n\t\t);\n\n\t\tconst blockTitle = useBlockDisplayTitle( {\n\t\t\tclientId,\n\t\t\tcontext: 'list-view',\n\t\t} );\n\n\t\tconst insertedBlockTitle = useBlockDisplayTitle( {\n\t\t\tclientId: insertedBlockClientId,\n\t\t\tcontext: 'list-view',\n\t\t} );\n\n\t\tuseEffect( () => {\n\t\t\tif ( ! insertedBlockTitle?.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tspeak(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: name of block being inserted (i.e. Paragraph, Image, Group etc)\n\t\t\t\t\t__( '%s block inserted' ),\n\t\t\t\t\tinsertedBlockTitle\n\t\t\t\t),\n\t\t\t\t'assertive'\n\t\t\t);\n\t\t}, [ insertedBlockTitle ] );\n\n\t\tif ( hideInserter ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst descriptionId = `list-view-appender__${ instanceId }`;\n\t\tconst description = sprintf(\n\t\t\t/* translators: 1: The name of the block. 2: The numerical position of the block. 3: The level of nesting for the block. */\n\t\t\t__( 'Append to %1$s block at position %2$d, Level %3$d' ),\n\t\t\tblockTitle,\n\t\t\tblockCount + 1,\n\t\t\tnestingLevel\n\t\t);\n\n\t\treturn (\n\t\t\t<div className=\"list-view-appender\">\n\t\t\t\t<Inserter\n\t\t\t\t\tref={ ref }\n\t\t\t\t\trootClientId={ clientId }\n\t\t\t\t\tposition=\"bottom right\"\n\t\t\t\t\tisAppender\n\t\t\t\t\tselectBlockOnInsert={ false }\n\t\t\t\t\tshouldDirectInsert={ directInsert }\n\t\t\t\t\t__experimentalIsQuick\n\t\t\t\t\t{ ...props }\n\t\t\t\t\ttoggleProps={ { 'aria-describedby': descriptionId } }\n\t\t\t\t\tonSelectOrClose={ ( maybeInsertedBlock ) => {\n\t\t\t\t\t\tif ( maybeInsertedBlock?.clientId ) {\n\t\t\t\t\t\t\tsetInsertedBlockClientId(\n\t\t\t\t\t\t\t\tmaybeInsertedBlock.clientId\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<AriaReferencedText id={ descriptionId }>\n\t\t\t\t\t{ description }\n\t\t\t\t</AriaReferencedText>\n\t\t\t</div>\n\t\t);\n\t}\n);\n"],
5
5
  "mappings": ";AAAA,SAAS,qBAAqB;AAC9B,SAAS,aAAa;AACtB,SAAS,iBAAiB;AAC1B,SAAS,YAAY,iBAAiB;AACtC,SAAS,IAAI,eAAe;AAC5B,SAAS,SAAS,wBAAwB;AAC1C,OAAO,0BAA0B;AACjC,SAAS,0BAA0B,0BAA0B;AAC7D,OAAO,cAAc;AACrB,OAAO,wBAAwB;AAC/B,SAAS,cAAc;AAiEpB,SACC,KADD;AA/DI,IAAM,WAAW;AAAA,EACvB,CAAE,EAAE,cAAc,YAAY,UAAU,GAAG,MAAM,GAAG,QAAS;AAC5D,UAAM,EAAE,yBAAyB,IAAI,mBAAmB;AACxD,UAAM,wBAAwB,yBAAyB;AAEvD,UAAM,aAAa,cAAe,QAAS;AAC3C,UAAM,EAAE,cAAc,aAAa,IAAI;AAAA,MACtC,CAAE,WAAY;AACb,cAAM,EAAE,sBAAsB,iBAAiB,UAAU,IACxD,OAAQ,OAAQ,gBAAiB,CAAE;AAEpC,cAAM,WAAW,qBAAsB,QAAS;AAChD,cAAM,oBAAoB,UAAU,gBAAgB;AACpD,cAAM,oBACL,CAAC,CAAE,gBAAiB,QAAS,KAAK,UAAU;AAE7C,eAAO;AAAA,UACN,cAAc;AAAA,UACd,cAAc;AAAA,QACf;AAAA,MACD;AAAA,MACA,CAAE,QAAS;AAAA,IACZ;AAEA,UAAM,aAAa,qBAAsB;AAAA,MACxC;AAAA,MACA,SAAS;AAAA,IACV,CAAE;AAEF,UAAM,qBAAqB,qBAAsB;AAAA,MAChD,UAAU;AAAA,MACV,SAAS;AAAA,IACV,CAAE;AAEF,cAAW,MAAM;AAChB,UAAK,CAAE,oBAAoB,QAAS;AACnC;AAAA,MACD;AAEA;AAAA,QACC;AAAA;AAAA,UAEC,GAAI,mBAAoB;AAAA,UACxB;AAAA,QACD;AAAA,QACA;AAAA,MACD;AAAA,IACD,GAAG,CAAE,kBAAmB,CAAE;AAE1B,QAAK,cAAe;AACnB,aAAO;AAAA,IACR;AAEA,UAAM,gBAAgB,uBAAwB,UAAW;AACzD,UAAM,cAAc;AAAA;AAAA,MAEnB,GAAI,mDAAoD;AAAA,MACxD;AAAA,MACA,aAAa;AAAA,MACb;AAAA,IACD;AAEA,WACC,qBAAC,SAAI,WAAU,sBACd;AAAA;AAAA,QAAC;AAAA;AAAA,UACA;AAAA,UACA,cAAe;AAAA,UACf,UAAS;AAAA,UACT,YAAU;AAAA,UACV,qBAAsB;AAAA,UACtB,oBAAqB;AAAA,UACrB,uBAAqB;AAAA,UACnB,GAAG;AAAA,UACL,aAAc,EAAE,oBAAoB,cAAc;AAAA,UAClD,iBAAkB,CAAE,uBAAwB;AAC3C,gBAAK,oBAAoB,UAAW;AACnC;AAAA,gBACC,mBAAmB;AAAA,cACpB;AAAA,YACD;AAAA,UACD;AAAA;AAAA,MACD;AAAA,MACA,oBAAC,sBAAmB,IAAK,eACtB,uBACH;AAAA,OACD;AAAA,EAEF;AACD;",
6
6
  "names": []
@@ -1,4 +1,4 @@
1
- // packages/block-editor/src/components/list-view/aria-referenced-text.js
1
+ // packages/block-editor/src/components/list-view/aria-referenced-text.jsx
2
2
  import { createElement } from "react";
3
3
  function AriaReferencedText({ children, ...props }) {
4
4
  return /* @__PURE__ */ createElement("div", { hidden: true, ...props, key: children }, children);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/components/list-view/aria-referenced-text.js"],
3
+ "sources": ["../../../src/components/list-view/aria-referenced-text.jsx"],
4
4
  "sourcesContent": ["/**\n * A component specifically designed to be used as an element referenced\n * by ARIA attributes such as `aria-labelledby` or `aria-describedby`.\n *\n * Keying on the text is what makes this component more than a plain `div`:\n * it makes React replace the element rather than update the existing text\n * node in place. Firefox fails to recompute the accessible description when\n * only the text node of a hidden element changes, so screen readers announce\n * a stale value.\n *\n * @see https://github.com/WordPress/gutenberg/pull/51035\n *\n * @param {Object} props Props.\n * @param {string} props.children Text to reference. Must be a string, since\n * it is used as the key.\n */\nexport default function AriaReferencedText( { children, ...props } ) {\n\treturn (\n\t\t<div hidden { ...props } key={ children }>\n\t\t\t{ children }\n\t\t</div>\n\t);\n}\n"],
5
5
  "mappings": ";AAkBE;AAFa,SAAR,mBAAqC,EAAE,UAAU,GAAG,MAAM,GAAI;AACpE,SACC,8BAAC,SAAI,QAAM,MAAG,GAAG,OAAQ,KAAM,YAC5B,QACH;AAEF;",
6
6
  "names": []
@@ -1,4 +1,4 @@
1
- // packages/block-editor/src/components/list-view/block-contents.js
1
+ // packages/block-editor/src/components/list-view/block-contents.jsx
2
2
  import { forwardRef } from "@wordpress/element";
3
3
  import ListViewBlockSelectButton from "./block-select-button.mjs";
4
4
  import BlockDraggable from "../block-draggable/index.mjs";
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/components/list-view/block-contents.js"],
3
+ "sources": ["../../../src/components/list-view/block-contents.jsx"],
4
4
  "sourcesContent": ["import { forwardRef } from '@wordpress/element';\nimport ListViewBlockSelectButton from './block-select-button';\nimport BlockDraggable from '../block-draggable';\nimport { useInsertedBlockClientId, useListViewContext } from './context';\n\n/**\n * Renders the additional block content for the row of the block that was just\n * inserted. Reading the inserted block from its own context keeps an insert\n * from re-rendering the contents of every other row.\n *\n * @param {Object} props Component props.\n * @param {string} props.clientId The client ID of the block for this row.\n */\nfunction InsertedBlockContent( { clientId } ) {\n\tconst { AdditionalBlockContent, setInsertedBlockClientId } =\n\t\tuseListViewContext();\n\tconst insertedBlockClientId = useInsertedBlockClientId();\n\n\tif ( ! AdditionalBlockContent || insertedBlockClientId !== clientId ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<AdditionalBlockContent\n\t\t\tinsertedBlockClientId={ insertedBlockClientId }\n\t\t\tsetInsertedBlockClientId={ setInsertedBlockClientId }\n\t\t/>\n\t);\n}\n\nconst ListViewBlockContents = forwardRef(\n\t(\n\t\t{\n\t\t\tonClick,\n\t\t\tonToggleExpanded,\n\t\t\tclientId,\n\t\t\tisExpanded,\n\t\t\tselectedClientIds,\n\t\t\t...props\n\t\t},\n\t\tref\n\t) => {\n\t\t// Only include all selected blocks if the currently clicked on block\n\t\t// is one of the selected blocks. This ensures that if a user attempts\n\t\t// to drag a block that isn't part of the selection, they're still able\n\t\t// to drag it and rearrange its position.\n\t\tconst draggableClientIds = selectedClientIds.includes( clientId )\n\t\t\t? selectedClientIds\n\t\t\t: [ clientId ];\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<InsertedBlockContent clientId={ clientId } />\n\t\t\t\t<BlockDraggable\n\t\t\t\t\tappendToOwnerDocument\n\t\t\t\t\tclientIds={ draggableClientIds }\n\t\t\t\t\tcloneClassname=\"block-editor-list-view-draggable-chip\"\n\t\t\t\t>\n\t\t\t\t\t{ ( { draggable, onDragStart, onDragEnd } ) => (\n\t\t\t\t\t\t<ListViewBlockSelectButton\n\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\tclassName=\"block-editor-list-view-block-contents\"\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t\tonToggleExpanded={ onToggleExpanded }\n\t\t\t\t\t\t\tdraggable={ draggable }\n\t\t\t\t\t\t\tonDragStart={ onDragStart }\n\t\t\t\t\t\t\tonDragEnd={ onDragEnd }\n\t\t\t\t\t\t\tisExpanded={ isExpanded }\n\t\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</BlockDraggable>\n\t\t\t</>\n\t\t);\n\t}\n);\n\nexport default ListViewBlockContents;\n"],
5
5
  "mappings": ";AAAA,SAAS,kBAAkB;AAC3B,OAAO,+BAA+B;AACtC,OAAO,oBAAoB;AAC3B,SAAS,0BAA0B,0BAA0B;AAoB3D,SA4BC,UA5BD,KA4BC,YA5BD;AAVF,SAAS,qBAAsB,EAAE,SAAS,GAAI;AAC7C,QAAM,EAAE,wBAAwB,yBAAyB,IACxD,mBAAmB;AACpB,QAAM,wBAAwB,yBAAyB;AAEvD,MAAK,CAAE,0BAA0B,0BAA0B,UAAW;AACrE,WAAO;AAAA,EACR;AAEA,SACC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,EACD;AAEF;AAEA,IAAM,wBAAwB;AAAA,EAC7B,CACC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACJ,GACA,QACI;AAKJ,UAAM,qBAAqB,kBAAkB,SAAU,QAAS,IAC7D,oBACA,CAAE,QAAS;AAEd,WACC,iCACC;AAAA,0BAAC,wBAAqB,UAAsB;AAAA,MAC5C;AAAA,QAAC;AAAA;AAAA,UACA,uBAAqB;AAAA,UACrB,WAAY;AAAA,UACZ,gBAAe;AAAA,UAEb,WAAE,EAAE,WAAW,aAAa,UAAU,MACvC;AAAA,YAAC;AAAA;AAAA,cACA;AAAA,cACA,WAAU;AAAA,cACV;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACA;AAAA,cACE,GAAG;AAAA;AAAA,UACN;AAAA;AAAA,MAEF;AAAA,OACD;AAAA,EAEF;AACD;AAEA,IAAO,yBAAQ;",
6
6
  "names": []
@@ -1,4 +1,4 @@
1
- // packages/block-editor/src/components/list-view/block-select-button.js
1
+ // packages/block-editor/src/components/list-view/block-select-button.jsx
2
2
  import clsx from "clsx";
3
3
  import { __experimentalTruncate as Truncate } from "@wordpress/components";
4
4
  import { forwardRef } from "@wordpress/element";
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/components/list-view/block-select-button.js"],
3
+ "sources": ["../../../src/components/list-view/block-select-button.jsx"],
4
4
  "sourcesContent": ["import clsx from 'clsx';\nimport { __experimentalTruncate as Truncate } from '@wordpress/components';\nimport { forwardRef } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as blocksStore } from '@wordpress/blocks';\nimport {\n\tIcon,\n\tlockSmall as lock,\n\tpinSmall,\n\tsymbol,\n\tunseen,\n} from '@wordpress/icons';\nimport { SPACE, ENTER } from '@wordpress/keycodes';\nimport { Stack, Tooltip } from '@wordpress/ui';\nimport BlockIcon from '../block-icon';\nimport useBlockDisplayTitle from '../block-title/use-block-display-title';\nimport ListViewExpander from './expander';\nimport useListViewImages from './use-list-view-images';\nimport { store as blockEditorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nfunction ListViewBlockSelectButton(\n\t{\n\t\tclassName,\n\t\tclientId,\n\t\tonClick,\n\t\tonContextMenu,\n\t\tonMouseDown,\n\t\tonToggleExpanded,\n\t\ttabIndex,\n\t\tonFocus,\n\t\tonDragStart,\n\t\tonDragEnd,\n\t\tdraggable,\n\t\tisExpanded,\n\t\tariaDescribedBy,\n\t\tvisibilityLabel,\n\t\tisDisabled = false,\n\t},\n\tref\n) {\n\tconst blockTitle = useBlockDisplayTitle( {\n\t\tclientId,\n\t\tcontext: 'list-view',\n\t} );\n\tconst { icon, anchor, isSticky, isLocked } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tgetBlock,\n\t\t\t\tisSectionBlock,\n\t\t\t\tisLockedBlock,\n\t\t\t} = unlock( select( blockEditorStore ) );\n\t\t\tconst { getBlockType, getActiveBlockVariation } =\n\t\t\t\tselect( blocksStore );\n\n\t\t\tconst attributes = getBlockAttributes( clientId );\n\t\t\tconst blockName = getBlockName( clientId );\n\n\t\t\t// Pattern-sourced section blocks show the pattern icon.\n\t\t\t// Everything else resolves its variation or block type icon.\n\t\t\tlet blockIcon = symbol;\n\t\t\tif (\n\t\t\t\t! attributes?.metadata?.patternName ||\n\t\t\t\t! isSectionBlock( clientId )\n\t\t\t) {\n\t\t\t\tconst match = getActiveBlockVariation(\n\t\t\t\t\tblockName,\n\t\t\t\t\tattributes,\n\t\t\t\t\tundefined,\n\t\t\t\t\tgetBlock( clientId )?.innerContent\n\t\t\t\t);\n\t\t\t\tblockIcon = match?.icon || getBlockType( blockName )?.icon;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\ticon: blockIcon,\n\t\t\t\tanchor: attributes?.anchor,\n\t\t\t\tisSticky: attributes?.style?.position?.type === 'sticky',\n\t\t\t\tisLocked: isLockedBlock( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst shouldShowLockIcon = isLocked;\n\tconst images = useListViewImages( { clientId, isExpanded } );\n\n\t// The `href` attribute triggers the browser's native HTML drag operations.\n\t// When the link is dragged, the element's outerHTML is set in DataTransfer object as text/html.\n\t// We need to clear any HTML drag data to prevent `pasteHandler` from firing\n\t// inside the `useOnBlockDrop` hook.\n\tconst onDragStartHandler = ( event ) => {\n\t\tevent.dataTransfer.clearData();\n\t\tonDragStart?.( event );\n\t};\n\n\t/**\n\t * @param {KeyboardEvent} event\n\t */\n\tfunction onKeyDown( event ) {\n\t\tif ( event.keyCode === ENTER || event.keyCode === SPACE ) {\n\t\t\tonClick( event );\n\t\t}\n\t}\n\n\treturn (\n\t\t// Disabled list view items intentionally omit href so TreeGrid skips them.\n\t\t// eslint-disable-next-line jsx-a11y/anchor-is-valid\n\t\t<a\n\t\t\tclassName={ clsx(\n\t\t\t\t'block-editor-list-view-block-select-button',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t\tonClick={ onClick }\n\t\t\tonContextMenu={ onContextMenu }\n\t\t\tonKeyDown={ onKeyDown }\n\t\t\tonMouseDown={ onMouseDown }\n\t\t\tref={ ref }\n\t\t\ttabIndex={ tabIndex }\n\t\t\tonFocus={ onFocus }\n\t\t\tonDragStart={ onDragStartHandler }\n\t\t\tonDragEnd={ onDragEnd }\n\t\t\tdraggable={ draggable }\n\t\t\thref={ isDisabled ? undefined : `#block-${ clientId }` }\n\t\t\taria-disabled={ isDisabled ? true : undefined }\n\t\t\taria-describedby={ ariaDescribedBy }\n\t\t\taria-expanded={ isExpanded }\n\t\t>\n\t\t\t<ListViewExpander onClick={ onToggleExpanded } />\n\t\t\t<BlockIcon icon={ icon } showColors context=\"list-view\" />\n\t\t\t<Stack\n\t\t\t\talign=\"center\"\n\t\t\t\tclassName=\"block-editor-list-view-block-select-button__label-wrapper\"\n\t\t\t\tjustify=\"flex-start\"\n\t\t\t\tgap=\"xs\"\n\t\t\t>\n\t\t\t\t<span className=\"block-editor-list-view-block-select-button__title\">\n\t\t\t\t\t<Truncate ellipsizeMode=\"auto\">{ blockTitle }</Truncate>\n\t\t\t\t</span>\n\t\t\t\t{ !! anchor && (\n\t\t\t\t\t<span className=\"block-editor-list-view-block-select-button__anchor-wrapper\">\n\t\t\t\t\t\t<span className=\"block-editor-list-view-block-select-button__anchor\">\n\t\t\t\t\t\t\t{ anchor }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t\t{ isSticky && (\n\t\t\t\t\t<span className=\"block-editor-list-view-block-select-button__sticky\">\n\t\t\t\t\t\t<Icon icon={ pinSmall } />\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t\t{ images.length ? (\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName=\"block-editor-list-view-block-select-button__images\"\n\t\t\t\t\t\taria-hidden\n\t\t\t\t\t>\n\t\t\t\t\t\t{ images.map( ( image, index ) => (\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tclassName=\"block-editor-list-view-block-select-button__image\"\n\t\t\t\t\t\t\t\tkey={ image.clientId }\n\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\tbackgroundImage: `url(${ image.url })`,\n\t\t\t\t\t\t\t\t\tzIndex: images.length - index, // Ensure the first image is on top, and subsequent images are behind.\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</span>\n\t\t\t\t) : null }\n\t\t\t\t{ !! visibilityLabel && (\n\t\t\t\t\t// The tooltip below is a sighted-hover affordance for\n\t\t\t\t\t// the (decorative) visibility icon. The same\n\t\t\t\t\t// `visibilityLabel` is exposed to assistive technology\n\t\t\t\t\t// via the row's `aria-describedby`, which references the\n\t\t\t\t\t// hidden `AriaReferencedText` rendered by the parent\n\t\t\t\t\t// `ListViewBlock`.\n\t\t\t\t\t<Tooltip.Root>\n\t\t\t\t\t\t<Tooltip.Trigger\n\t\t\t\t\t\t\trender={\n\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-list-view-block-select-button__block-visibility\"\n\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Icon icon={ unseen } />\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Tooltip.Popup>{ visibilityLabel }</Tooltip.Popup>\n\t\t\t\t\t</Tooltip.Root>\n\t\t\t\t) }\n\t\t\t\t{ shouldShowLockIcon && (\n\t\t\t\t\t<span className=\"block-editor-list-view-block-select-button__lock\">\n\t\t\t\t\t\t<Icon icon={ lock } />\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t</Stack>\n\t\t</a>\n\t);\n}\n\nexport default forwardRef( ListViewBlockSelectButton );\n"],
5
5
  "mappings": "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",
6
6
  "names": []
@@ -1,4 +1,4 @@
1
- // packages/block-editor/src/components/list-view/block.js
1
+ // packages/block-editor/src/components/list-view/block.jsx
2
2
  import clsx from "clsx";
3
3
  import { hasBlockSupport, store as blocksStore } from "@wordpress/blocks";
4
4
  import {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/components/list-view/block.js"],
3
+ "sources": ["../../../src/components/list-view/block.jsx"],
4
4
  "sourcesContent": ["import clsx from 'clsx';\nimport { hasBlockSupport, store as blocksStore } from '@wordpress/blocks';\nimport {\n\t__experimentalTreeGridCell as TreeGridCell,\n\t__experimentalTreeGridItem as TreeGridItem,\n} from '@wordpress/components';\nimport { useInstanceId, useDebounce } from '@wordpress/compose';\nimport { moreVertical } from '@wordpress/icons';\nimport {\n\tuseCallback,\n\tuseMemo,\n\tuseState,\n\tuseRef,\n\tmemo,\n} from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { BACKSPACE, DELETE } from '@wordpress/keycodes';\nimport { isShallowEqual } from '@wordpress/is-shallow-equal';\nimport { __unstableUseShortcutEventMatch as useShortcutEventMatch } from '@wordpress/keyboard-shortcuts';\nimport { speak } from '@wordpress/a11y';\nimport ListViewLeaf from './leaf';\nimport useListViewScrollIntoView from './use-list-view-scroll-into-view';\nimport {\n\tBlockMoverUpButton,\n\tBlockMoverDownButton,\n} from '../block-mover/button';\nimport ListViewBlockContents from './block-contents';\nimport { useListViewContext } from './context';\nimport {\n\tgetBlockPositionDescription,\n\tgetBlockPropertiesDescription,\n\tfocusListItem,\n} from './utils';\nimport { store as blockEditorStore } from '../../store';\nimport { groupBlocks } from '../../utils/group-blocks';\nimport { getPositionTypeLabel } from '../use-block-display-information';\nimport { BlockRenameModal } from '../block-rename';\nimport AriaReferencedText from './aria-referenced-text';\nimport { unlock } from '../../lock-unlock';\nimport usePasteStyles from '../use-paste-styles';\nimport { getBlockVisibilityLabel } from '../block-visibility';\n\nfunction ListViewBlock( {\n\tclientId,\n\tdisplacement,\n\tisAfterDraggedBlocks,\n\tisDragged,\n\tisNesting,\n\tisSelected,\n\tisBranchSelected,\n\tselectBlock,\n\tposition,\n\tlevel,\n\trowCount,\n\tsiblingBlockCount,\n\tshowBlockMovers,\n\tpath,\n\tisExpanded,\n\tselectedClientIds,\n\tisSyncedBranch,\n} ) {\n\tconst cellRef = useRef( null );\n\tconst rowRef = useRef( null );\n\tconst settingsRef = useRef( null );\n\tconst [ isHovered, setIsHovered ] = useState( false );\n\tconst [ settingsAnchorRect, setSettingsAnchorRect ] = useState();\n\tconst [ isRenameModalOpen, setIsRenameModalOpen ] = useState( false );\n\n\tconst isFirstSelectedBlock =\n\t\tisSelected && selectedClientIds[ 0 ] === clientId;\n\tconst isLastSelectedBlock =\n\t\tisSelected &&\n\t\tselectedClientIds[ selectedClientIds.length - 1 ] === clientId;\n\n\tconst {\n\t\ttoggleBlockHighlight,\n\t\tduplicateBlocks,\n\t\tmultiSelect,\n\t\treplaceBlocks,\n\t\tremoveBlocks,\n\t\tinsertAfterBlock,\n\t\tinsertBeforeBlock,\n\t\tshowViewportModal,\n\t\tstopEditingContentOnlySection,\n\t} = unlock( useDispatch( blockEditorStore ) );\n\n\tconst debouncedToggleBlockHighlight = useDebounce(\n\t\ttoggleBlockHighlight,\n\t\t50\n\t);\n\n\tconst {\n\t\tcanInsertBlockType,\n\t\tgetSelectedBlockClientIds,\n\t\tgetPreviousBlockClientId,\n\t\tgetBlockRootClientId,\n\t\tgetBlockOrder,\n\t\tgetBlockParents,\n\t\tgetBlockEditingMode,\n\t\tgetBlocksByClientId,\n\t\tcanEditBlock,\n\t\tcanMoveBlock,\n\t\tcanRemoveBlocks,\n\t\tisGroupable,\n\t} = useSelect( blockEditorStore );\n\tconst { getGroupingBlockName } = useSelect( blocksStore );\n\n\tconst pasteStyles = usePasteStyles();\n\n\tconst {\n\t\tblockName,\n\t\tblockVisibility,\n\t\tblockEditingMode,\n\t\tallowRightClickOverrides,\n\t\teditedSection,\n\t\tviewportSettings,\n\t\tblockVisibilitySetting,\n\t\tpositionLabel,\n\t\tisSynced,\n\t\tisLocked,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tgetBlockEditingMode: getBlockEditingModeForClientId,\n\t\t\t\tgetSettings,\n\t\t\t\tgetEditedContentOnlySection,\n\t\t\t\tisSyncedBlock,\n\t\t\t\tisLockedBlock,\n\t\t\t} = unlock( select( blockEditorStore ) );\n\t\t\tconst settings = getSettings();\n\t\t\tconst attributes = getBlockAttributes( clientId );\n\n\t\t\treturn {\n\t\t\t\tblockName: getBlockName( clientId ),\n\t\t\t\tblockVisibility: attributes?.metadata?.blockVisibility,\n\t\t\t\tblockEditingMode: getBlockEditingModeForClientId( clientId ),\n\t\t\t\tallowRightClickOverrides: settings.allowRightClickOverrides,\n\t\t\t\teditedSection: getEditedContentOnlySection(),\n\t\t\t\tviewportSettings: settings.__experimentalFeatures?.viewport,\n\t\t\t\tblockVisibilitySetting:\n\t\t\t\t\tsettings.__experimentalFeatures?.blockVisibility\n\t\t\t\t\t\t?.allowEditing,\n\t\t\t\tpositionLabel: getPositionTypeLabel( attributes ),\n\t\t\t\tisSynced: isSyncedBlock( clientId ),\n\t\t\t\tisLocked: isLockedBlock( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst isDisabled = blockEditingMode === 'disabled';\n\tconst canRename =\n\t\t!! blockName && hasBlockSupport( blockName, 'renaming', true );\n\n\tconst showBlockActions =\n\t\t// When a block hides its toolbar it also hides the block settings menu,\n\t\t// since that menu is part of the toolbar in the editor canvas.\n\t\t// List View respects this by also hiding the block settings menu.\n\t\thasBlockSupport( blockName, '__experimentalToolbar', true );\n\tconst instanceId = useInstanceId( ListViewBlock );\n\tconst descriptionId = `list-view-block-select-button__description-${ instanceId }`;\n\n\tconst {\n\t\tBlockSettingsMenu,\n\t\tlistViewInstanceId,\n\t\tupdateExpansion,\n\t\tsetInsertedBlockClientId,\n\t\ttreeGridElementRef,\n\t\trootClientId,\n\t} = useListViewContext();\n\tconst isMatch = useShortcutEventMatch();\n\n\t// Determine which blocks to update:\n\t// If the current (focused) block is part of the block selection, use the whole selection.\n\t// If the focused block is not part of the block selection, only update the focused block.\n\tfunction getBlocksToUpdate() {\n\t\tconst selectedBlockClientIds = getSelectedBlockClientIds();\n\t\tconst isUpdatingSelectedBlocks =\n\t\t\tselectedBlockClientIds.includes( clientId );\n\t\tconst firstBlockClientId = isUpdatingSelectedBlocks\n\t\t\t? selectedBlockClientIds[ 0 ]\n\t\t\t: clientId;\n\t\tconst firstBlockRootClientId =\n\t\t\tgetBlockRootClientId( firstBlockClientId );\n\n\t\tconst blocksToUpdate = isUpdatingSelectedBlocks\n\t\t\t? selectedBlockClientIds\n\t\t\t: [ clientId ];\n\n\t\treturn {\n\t\t\tblocksToUpdate,\n\t\t\tfirstBlockClientId,\n\t\t\tfirstBlockRootClientId,\n\t\t\tselectedBlockClientIds,\n\t\t};\n\t}\n\n\t/**\n\t * @param {KeyboardEvent} event\n\t */\n\tasync function onKeyDown( event ) {\n\t\tif ( event.defaultPrevented ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Do not handle events if it comes from modals;\n\t\t// retain the default behavior for these keys.\n\t\tif ( event.target.closest( '[role=dialog]' ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( editedSection && isMatch( 'core/block-editor/unselect', event ) ) {\n\t\t\tevent.stopPropagation();\n\t\t\tevent.preventDefault();\n\t\t\tstopEditingContentOnlySection();\n\t\t\treturn;\n\t\t}\n\n\t\tconst isDeleteKey = [ BACKSPACE, DELETE ].includes( event.keyCode );\n\n\t\t// If multiple blocks are selected, deselect all blocks when the user\n\t\t// presses the escape key.\n\t\tif (\n\t\t\tisMatch( 'core/block-editor/unselect', event ) &&\n\t\t\tselectedClientIds.length > 0\n\t\t) {\n\t\t\tevent.stopPropagation();\n\t\t\tevent.preventDefault();\n\t\t\tselectBlock( event, undefined );\n\t\t} else if (\n\t\t\tisDeleteKey ||\n\t\t\tisMatch( 'core/block-editor/remove', event )\n\t\t) {\n\t\t\tconst {\n\t\t\t\tblocksToUpdate: blocksToDelete,\n\t\t\t\tfirstBlockClientId,\n\t\t\t\tfirstBlockRootClientId,\n\t\t\t\tselectedBlockClientIds,\n\t\t\t} = getBlocksToUpdate();\n\n\t\t\t// Don't update the selection if the blocks cannot be deleted.\n\t\t\tif ( ! canRemoveBlocks( blocksToDelete ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet blockToFocus =\n\t\t\t\tgetPreviousBlockClientId( firstBlockClientId ) ??\n\t\t\t\t// If the previous block is not found (when the first block is deleted),\n\t\t\t\t// fallback to focus the parent block.\n\t\t\t\tfirstBlockRootClientId;\n\n\t\t\tremoveBlocks( blocksToDelete, false );\n\n\t\t\t// Update the selection if the original selection has been removed.\n\t\t\tconst shouldUpdateSelection =\n\t\t\t\tselectedBlockClientIds.length > 0 &&\n\t\t\t\tgetSelectedBlockClientIds().length === 0;\n\n\t\t\t// If there's no previous block nor parent block, focus the first block.\n\t\t\tif ( ! blockToFocus ) {\n\t\t\t\tblockToFocus = getBlockOrder()[ 0 ];\n\t\t\t}\n\n\t\t\tupdateFocusAndSelection( blockToFocus, shouldUpdateSelection );\n\t\t} else if ( isMatch( 'core/block-editor/paste-styles', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tconst blocks = getBlocksByClientId( blocksToUpdate );\n\n\t\t\tpasteStyles( blocks );\n\t\t} else if ( isMatch( 'core/block-editor/duplicate', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { blocksToUpdate, firstBlockRootClientId } =\n\t\t\t\tgetBlocksToUpdate();\n\n\t\t\tconst canDuplicate = getBlocksByClientId( blocksToUpdate ).every(\n\t\t\t\t( blockToUpdate ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t!! blockToUpdate &&\n\t\t\t\t\t\thasBlockSupport(\n\t\t\t\t\t\t\tblockToUpdate.name,\n\t\t\t\t\t\t\t'multiple',\n\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t) &&\n\t\t\t\t\t\tcanInsertBlockType(\n\t\t\t\t\t\t\tblockToUpdate.name,\n\t\t\t\t\t\t\tfirstBlockRootClientId\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\tif ( canDuplicate ) {\n\t\t\t\tconst updatedBlocks = await duplicateBlocks(\n\t\t\t\t\tblocksToUpdate,\n\t\t\t\t\tfalse\n\t\t\t\t);\n\n\t\t\t\tif ( updatedBlocks?.length ) {\n\t\t\t\t\t// If blocks have been duplicated, focus the first duplicated block.\n\t\t\t\t\tupdateFocusAndSelection( updatedBlocks[ 0 ], false );\n\t\t\t\t}\n\t\t\t}\n\t\t} else if ( isMatch( 'core/block-editor/insert-before', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tawait insertBeforeBlock( blocksToUpdate[ 0 ] );\n\t\t\tconst newlySelectedBlocks = getSelectedBlockClientIds();\n\n\t\t\t// Focus the first block of the newly inserted blocks, to keep focus within the list view.\n\t\t\tupdateFocusAndSelection( newlySelectedBlocks[ 0 ], false );\n\t\t} else if ( isMatch( 'core/block-editor/insert-after', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tawait insertAfterBlock( blocksToUpdate.at( -1 ) );\n\t\t\tconst newlySelectedBlocks = getSelectedBlockClientIds();\n\n\t\t\t// Focus the first block of the newly inserted blocks, to keep focus within the list view.\n\t\t\tupdateFocusAndSelection( newlySelectedBlocks[ 0 ], false );\n\t\t} else if ( isMatch( 'core/block-editor/select-all', event ) ) {\n\t\t\tevent.preventDefault();\n\n\t\t\tconst { firstBlockRootClientId, selectedBlockClientIds } =\n\t\t\t\tgetBlocksToUpdate();\n\t\t\tconst blockClientIds = getBlockOrder( firstBlockRootClientId );\n\t\t\tif ( ! blockClientIds.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// If we have selected all sibling nested blocks, try selecting up a level.\n\t\t\t// This is a similar implementation to that used by `useSelectAll`.\n\t\t\t// `isShallowEqual` is used for the list view instead of a length check,\n\t\t\t// as the array of siblings of the currently focused block may be a different\n\t\t\t// set of blocks from the current block selection if the user is focused\n\t\t\t// on a different part of the list view from the block selection.\n\t\t\tif ( isShallowEqual( selectedBlockClientIds, blockClientIds ) ) {\n\t\t\t\t// Only select up a level if the first block is not the root block.\n\t\t\t\t// This ensures that the block selection can't break out of the root block\n\t\t\t\t// used by the list view, if the list view is only showing a partial hierarchy.\n\t\t\t\tif (\n\t\t\t\t\tfirstBlockRootClientId &&\n\t\t\t\t\tfirstBlockRootClientId !== rootClientId\n\t\t\t\t) {\n\t\t\t\t\tupdateFocusAndSelection( firstBlockRootClientId, true );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Select all while passing `null` to skip focusing to the editor canvas,\n\t\t\t// and retain focus within the list view.\n\t\t\tmultiSelect(\n\t\t\t\tblockClientIds[ 0 ],\n\t\t\t\tblockClientIds[ blockClientIds.length - 1 ],\n\t\t\t\tnull\n\t\t\t);\n\t\t} else if ( isMatch( 'core/block-editor/collapse-list-view', event ) ) {\n\t\t\tevent.preventDefault();\n\t\t\tconst { firstBlockClientId } = getBlocksToUpdate();\n\t\t\tconst blockParents = getBlockParents( firstBlockClientId, false );\n\t\t\t// Collapse all blocks and expand the block's parents.\n\t\t\tupdateExpansion( { type: 'replace', clientIds: blockParents } );\n\t\t} else if ( isMatch( 'core/block-editor/group', event ) ) {\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tif ( blocksToUpdate.length > 1 && isGroupable( blocksToUpdate ) ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tconst blocks = getBlocksByClientId( blocksToUpdate );\n\t\t\t\tconst groupingBlockName = getGroupingBlockName();\n\t\t\t\tconst newBlocks = groupBlocks( blocks, groupingBlockName );\n\t\t\t\treplaceBlocks( blocksToUpdate, newBlocks );\n\t\t\t\tspeak( __( 'Selected blocks are grouped.' ) );\n\t\t\t\tconst newlySelectedBlocks = getSelectedBlockClientIds();\n\t\t\t\t// Focus the first block of the newly inserted blocks, to keep focus within the list view.\n\t\t\t\tupdateFocusAndSelection( newlySelectedBlocks[ 0 ], false );\n\t\t\t}\n\t\t} else if (\n\t\t\tisMatch( 'core/block-editor/toggle-block-visibility', event )\n\t\t) {\n\t\t\tif ( blockVisibilitySetting === false ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tevent.preventDefault();\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tconst blocks = getBlocksByClientId( blocksToUpdate );\n\t\t\tconst supportsBlockVisibility = blocks.every( ( _block ) =>\n\t\t\t\thasBlockSupport( _block.name, 'visibility', true )\n\t\t\t);\n\n\t\t\tif ( ! supportsBlockVisibility ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Don't allow visibility toggle for blocks that\n\t\t\t// are not in the default editing mode.\n\t\t\tif (\n\t\t\t\tblocksToUpdate.some(\n\t\t\t\t\t( id ) => getBlockEditingMode( id ) !== 'default'\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Open the visibility breakpoints modal.\n\t\t\tshowViewportModal( blocksToUpdate );\n\t\t} else if ( isMatch( 'core/block-editor/rename', event ) ) {\n\t\t\tconst { blocksToUpdate } = getBlocksToUpdate();\n\t\t\tconst isContentOnly =\n\t\t\t\tgetBlockEditingMode( blocksToUpdate[ 0 ] ) === 'contentOnly';\n\t\t\tif ( blocksToUpdate.length === 1 && canRename && ! isContentOnly ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tsetIsRenameModalOpen( true );\n\t\t\t}\n\t\t}\n\t}\n\n\tconst onMouseEnter = useCallback( () => {\n\t\tsetIsHovered( true );\n\t\tdebouncedToggleBlockHighlight( clientId, true );\n\t}, [ clientId, setIsHovered, debouncedToggleBlockHighlight ] );\n\tconst onMouseLeave = useCallback( () => {\n\t\tsetIsHovered( false );\n\t\tdebouncedToggleBlockHighlight( clientId, false );\n\t}, [ clientId, setIsHovered, debouncedToggleBlockHighlight ] );\n\n\tconst selectEditorBlock = useCallback(\n\t\t( event ) => {\n\t\t\t// For keyboard activation (Enter/Space on a link), transfer focus\n\t\t\t// to the canvas with the caret at the end of the block.\n\t\t\t// For mouse clicks, keep focus in the list view so that subsequent\n\t\t\t// keyboard operations (arrow navigation, copy/paste) still work.\n\t\t\tconst isKeyboardActivation = event?.detail === 0;\n\t\t\tselectBlock( event, clientId, isKeyboardActivation ? -1 : null );\n\t\t\tevent.preventDefault();\n\t\t},\n\t\t[ clientId, selectBlock ]\n\t);\n\n\tconst updateFocusAndSelection = useCallback(\n\t\t( focusClientId, shouldSelectBlock ) => {\n\t\t\tif ( shouldSelectBlock ) {\n\t\t\t\tselectBlock( undefined, focusClientId, null, null );\n\t\t\t}\n\n\t\t\tfocusListItem( focusClientId, treeGridElementRef?.current );\n\t\t},\n\t\t[ selectBlock, treeGridElementRef ]\n\t);\n\n\tconst toggleExpanded = useCallback(\n\t\t( event ) => {\n\t\t\t// Prevent shift+click from opening link in a new window when toggling.\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\tif ( isExpanded === undefined ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tupdateExpansion( {\n\t\t\t\ttype: isExpanded ? 'collapse' : 'expand',\n\t\t\t\tclientIds: [ clientId ],\n\t\t\t} );\n\t\t},\n\t\t[ clientId, updateExpansion, isExpanded ]\n\t);\n\n\t// Allow right-clicking an item in the List View to open up the block settings dropdown.\n\tconst onContextMenu = useCallback(\n\t\t( event ) => {\n\t\t\tconst { ownerDocument } = settingsRef?.current || {};\n\t\t\tif ( ! ownerDocument || ! ownerDocument.hasFocus() ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( showBlockActions && allowRightClickOverrides ) {\n\t\t\t\tsettingsRef.current?.click();\n\t\t\t\t// Ensure the position of the settings dropdown is at the cursor.\n\t\t\t\tsetSettingsAnchorRect(\n\t\t\t\t\tnew window.DOMRect( event.clientX, event.clientY, 0, 0 )\n\t\t\t\t);\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t},\n\t\t[ allowRightClickOverrides, settingsRef, showBlockActions ]\n\t);\n\n\tconst onMouseDown = useCallback(\n\t\t( event ) => {\n\t\t\t// Prevent right-click from focusing the block,\n\t\t\t// because focus will be handled when opening the block settings dropdown.\n\t\t\tif ( allowRightClickOverrides && event.button === 2 ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t},\n\t\t[ allowRightClickOverrides ]\n\t);\n\n\tconst settingsPopoverAnchor = useMemo( () => {\n\t\tconst { ownerDocument } = rowRef?.current || {};\n\n\t\t// If no custom position is set, the settings dropdown will be anchored to the\n\t\t// DropdownMenu toggle button.\n\t\tif ( ! settingsAnchorRect || ! ownerDocument ) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\t// Position the settings dropdown at the cursor when right-clicking a block.\n\t\treturn {\n\t\t\townerDocument,\n\t\t\tgetBoundingClientRect() {\n\t\t\t\treturn settingsAnchorRect;\n\t\t\t},\n\t\t};\n\t}, [ settingsAnchorRect ] );\n\n\tconst clearSettingsAnchorRect = useCallback( () => {\n\t\t// Clear the custom position for the settings dropdown so that it is restored back\n\t\t// to being anchored to the DropdownMenu toggle button.\n\t\tsetSettingsAnchorRect( undefined );\n\t}, [ setSettingsAnchorRect ] );\n\n\t// Pass in a ref to the row, so that it can be scrolled\n\t// into view when selected. For long lists, the placeholder for the\n\t// selected block is also observed, within ListViewLeafPlaceholder.\n\tuseListViewScrollIntoView( {\n\t\tisSelected,\n\t\trowItemRef: rowRef,\n\t\tselectedClientIds,\n\t} );\n\n\t// When switching between rendering modes (such as template preview and content only),\n\t// it is possible for a block to temporarily be unavailable. In this case, we should not\n\t// render the leaf, to avoid errors further down the tree.\n\tif ( ! blockName ) {\n\t\treturn null;\n\t}\n\n\tconst blockPositionDescription = getBlockPositionDescription(\n\t\tposition,\n\t\tsiblingBlockCount,\n\t\tlevel\n\t);\n\n\tconst blockPropertiesDescription = getBlockPropertiesDescription(\n\t\tpositionLabel,\n\t\tisLocked\n\t);\n\n\t// Determine label based on where block is hidden (not when/current viewport)\n\tconst blockVisibilityDescription = getBlockVisibilityLabel(\n\t\tblockVisibility,\n\t\tviewportSettings\n\t);\n\n\tconst hasSiblings = siblingBlockCount > 0;\n\tconst canShowBlockActions = showBlockActions && ! isDisabled;\n\tconst hasRenderedMovers = showBlockMovers && hasSiblings && ! isDisabled;\n\tconst moverCellClassName = clsx(\n\t\t'block-editor-list-view-block__mover-cell',\n\t\t{ 'is-visible': isHovered || isSelected }\n\t);\n\n\tconst listViewBlockSettingsClassName = clsx(\n\t\t'block-editor-list-view-block__menu-cell',\n\t\t{ 'is-visible': isHovered || isFirstSelectedBlock }\n\t);\n\n\tlet colSpan;\n\tif ( hasRenderedMovers ) {\n\t\tcolSpan = 2;\n\t} else if ( ! canShowBlockActions ) {\n\t\tcolSpan = 3;\n\t}\n\n\tconst classes = clsx( {\n\t\t'is-selected': isSelected,\n\t\t'is-first-selected': isFirstSelectedBlock,\n\t\t'is-last-selected': isLastSelectedBlock,\n\t\t'is-branch-selected': isBranchSelected,\n\t\t'is-synced-branch': isSyncedBranch,\n\t\t'is-dragging': isDragged,\n\t\t'has-single-cell': ! showBlockActions,\n\t\t'is-synced': isSynced,\n\t\t'is-draggable': canMoveBlock && ! isDisabled,\n\t\t'is-displacement-normal': displacement === 'normal',\n\t\t'is-displacement-up': displacement === 'up',\n\t\t'is-displacement-down': displacement === 'down',\n\t\t'is-after-dragged-blocks': isAfterDraggedBlocks,\n\t\t'is-nesting': isNesting,\n\t\t'is-disabled': isDisabled,\n\t} );\n\n\t// Only include all selected blocks if the currently clicked on block\n\t// is one of the selected blocks. This ensures that if a user attempts\n\t// to alter a block that isn't part of the selection, they're still able\n\t// to do so.\n\tconst dropdownClientIds = selectedClientIds.includes( clientId )\n\t\t? selectedClientIds\n\t\t: [ clientId ];\n\n\tconst getListViewBlockTabIndex = ( rovingTabIndex ) => {\n\t\tif ( isDisabled ) {\n\t\t\treturn -1;\n\t\t}\n\n\t\t// Detect if there is a block in the canvas currently being edited and multi-selection is not happening.\n\t\tif ( isSelected && selectedClientIds.length === 1 ) {\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn rovingTabIndex;\n\t};\n\n\treturn (\n\t\t<ListViewLeaf\n\t\t\tclassName={ classes }\n\t\t\tisDragged={ isDragged }\n\t\t\tonKeyDown={ onKeyDown }\n\t\t\tonMouseEnter={ isDisabled ? undefined : onMouseEnter }\n\t\t\tonMouseLeave={ isDisabled ? undefined : onMouseLeave }\n\t\t\tonFocus={ isDisabled ? undefined : onMouseEnter }\n\t\t\tonBlur={ isDisabled ? undefined : onMouseLeave }\n\t\t\tlevel={ level }\n\t\t\tposition={ position }\n\t\t\trowCount={ rowCount }\n\t\t\tpath={ path }\n\t\t\tid={ `list-view-${ listViewInstanceId }-block-${ clientId }` }\n\t\t\tdata-block={ clientId }\n\t\t\tdata-expanded={ canEditBlock ? isExpanded : undefined }\n\t\t\tref={ rowRef }\n\t\t>\n\t\t\t<TreeGridCell\n\t\t\t\tclassName=\"block-editor-list-view-block__contents-cell\"\n\t\t\t\tcolSpan={ colSpan }\n\t\t\t\tref={ cellRef }\n\t\t\t\taria-selected={ !! isSelected }\n\t\t\t>\n\t\t\t\t{ ( { ref, tabIndex, onFocus } ) => (\n\t\t\t\t\t<div className=\"block-editor-list-view-block__contents-container\">\n\t\t\t\t\t\t<ListViewBlockContents\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tonClick={ selectEditorBlock }\n\t\t\t\t\t\t\tonContextMenu={\n\t\t\t\t\t\t\t\tisDisabled ? undefined : onContextMenu\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonMouseDown={ onMouseDown }\n\t\t\t\t\t\t\tonToggleExpanded={\n\t\t\t\t\t\t\t\tisDisabled ? undefined : toggleExpanded\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\ttabIndex={ getListViewBlockTabIndex( tabIndex ) }\n\t\t\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\t\t\tisExpanded={ canEditBlock ? isExpanded : undefined }\n\t\t\t\t\t\t\tselectedClientIds={ selectedClientIds }\n\t\t\t\t\t\t\tariaDescribedBy={ descriptionId }\n\t\t\t\t\t\t\tvisibilityLabel={ blockVisibilityDescription }\n\t\t\t\t\t\t\tisDisabled={ isDisabled }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<AriaReferencedText id={ descriptionId }>\n\t\t\t\t\t\t\t{ [\n\t\t\t\t\t\t\t\tblockPositionDescription,\n\t\t\t\t\t\t\t\tblockPropertiesDescription,\n\t\t\t\t\t\t\t\tblockVisibilityDescription,\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t.filter( Boolean )\n\t\t\t\t\t\t\t\t.join( ' ' ) }\n\t\t\t\t\t\t</AriaReferencedText>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</TreeGridCell>\n\t\t\t{ hasRenderedMovers && (\n\t\t\t\t<>\n\t\t\t\t\t<TreeGridCell\n\t\t\t\t\t\tclassName={ moverCellClassName }\n\t\t\t\t\t\twithoutGridItem\n\t\t\t\t\t>\n\t\t\t\t\t\t<TreeGridItem>\n\t\t\t\t\t\t\t{ ( { ref, tabIndex, onFocus } ) => (\n\t\t\t\t\t\t\t\t<BlockMoverUpButton\n\t\t\t\t\t\t\t\t\torientation=\"vertical\"\n\t\t\t\t\t\t\t\t\tclientIds={ [ clientId ] }\n\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\ttabIndex={ tabIndex }\n\t\t\t\t\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</TreeGridItem>\n\t\t\t\t\t\t<TreeGridItem>\n\t\t\t\t\t\t\t{ ( { ref, tabIndex, onFocus } ) => (\n\t\t\t\t\t\t\t\t<BlockMoverDownButton\n\t\t\t\t\t\t\t\t\torientation=\"vertical\"\n\t\t\t\t\t\t\t\t\tclientIds={ [ clientId ] }\n\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\ttabIndex={ tabIndex }\n\t\t\t\t\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</TreeGridItem>\n\t\t\t\t\t</TreeGridCell>\n\t\t\t\t</>\n\t\t\t) }\n\n\t\t\t{ canShowBlockActions && BlockSettingsMenu && (\n\t\t\t\t<TreeGridCell\n\t\t\t\t\tclassName={ listViewBlockSettingsClassName }\n\t\t\t\t\taria-selected={ !! isSelected }\n\t\t\t\t\tref={ settingsRef }\n\t\t\t\t>\n\t\t\t\t\t{ ( { ref, tabIndex, onFocus } ) => (\n\t\t\t\t\t\t<BlockSettingsMenu\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tclientIds={ dropdownClientIds }\n\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\tlabel={ __( 'Options' ) }\n\t\t\t\t\t\t\tpopoverProps={ {\n\t\t\t\t\t\t\t\tanchor: settingsPopoverAnchor, // Used to position the settings at the cursor on right-click.\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\t\tref,\n\t\t\t\t\t\t\t\tclassName: 'block-editor-list-view-block__menu',\n\t\t\t\t\t\t\t\ttabIndex,\n\t\t\t\t\t\t\t\tonClick: clearSettingsAnchorRect,\n\t\t\t\t\t\t\t\tonFocus,\n\t\t\t\t\t\t\t\tsize: 'small',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tdisableOpenOnArrowDown\n\t\t\t\t\t\t\tupdateExpansion={ updateExpansion }\n\t\t\t\t\t\t\tsetInsertedBlockClientId={\n\t\t\t\t\t\t\t\tsetInsertedBlockClientId\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t__experimentalSelectBlock={\n\t\t\t\t\t\t\t\tupdateFocusAndSelection\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisContentOnlyListView={\n\t\t\t\t\t\t\t\t!! rootClientId &&\n\t\t\t\t\t\t\t\tgetBlockEditingMode( rootClientId ) ===\n\t\t\t\t\t\t\t\t\t'contentOnly'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</TreeGridCell>\n\t\t\t) }\n\t\t\t{ isRenameModalOpen && (\n\t\t\t\t<BlockRenameModal\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tonClose={ () => setIsRenameModalOpen( false ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</ListViewLeaf>\n\t);\n}\n\nexport default memo( ListViewBlock );\n"],
5
5
  "mappings": "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",
6
6
  "names": []
@@ -1,4 +1,4 @@
1
- // packages/block-editor/src/components/list-view/branch.js
1
+ // packages/block-editor/src/components/list-view/branch.jsx
2
2
  import {
3
3
  __experimentalTreeGridRow as TreeGridRow,
4
4
  __experimentalTreeGridCell as TreeGridCell
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/components/list-view/branch.js"],
3
+ "sources": ["../../../src/components/list-view/branch.jsx"],
4
4
  "sourcesContent": ["import {\n\t__experimentalTreeGridRow as TreeGridRow,\n\t__experimentalTreeGridCell as TreeGridCell,\n} from '@wordpress/components';\nimport { memo } from '@wordpress/element';\nimport { AsyncModeProvider, useSelect } from '@wordpress/data';\nimport { Appender } from './appender';\nimport ListViewBlock from './block';\nimport { useListViewTreeState } from './context';\nimport {\n\tBLOCK_LIST_ITEM_HEIGHT,\n\tgetDragDisplacementValues,\n\tisClientIdSelected,\n} from './utils';\nimport { store as blockEditorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\n/**\n * Given a block, returns the total number of blocks in that subtree. This is used to help determine\n * the list position of a block.\n *\n * When a block is collapsed, we do not count their children as part of that total. In the current drag\n * implementation dragged blocks and their children are not counted.\n *\n * @param {Object} block block tree\n * @param {Object} expansionState state that notes which branches are collapsed\n * @param {Array} draggedClientIds a list of dragged client ids\n * @param {boolean} isExpandedByDefault flag to determine the default fallback expanded state.\n * @return {number} block count\n */\nfunction countBlocks(\n\tblock,\n\texpansionState,\n\tdraggedClientIds,\n\tisExpandedByDefault\n) {\n\tconst isDragged = draggedClientIds?.includes( block.clientId );\n\tif ( isDragged ) {\n\t\treturn 0;\n\t}\n\tconst isExpanded = expansionState[ block.clientId ] ?? isExpandedByDefault;\n\tif ( ! isExpanded ) {\n\t\treturn 1;\n\t}\n\treturn block.innerBlocks.reduce(\n\t\t( count, innerBlock ) =>\n\t\t\tcount +\n\t\t\tcountBlocks(\n\t\t\t\tinnerBlock,\n\t\t\t\texpansionState,\n\t\t\t\tdraggedClientIds,\n\t\t\t\tisExpandedByDefault\n\t\t\t),\n\t\t1\n\t);\n}\n\nconst noop = () => {};\n\nfunction ListViewBranch( props ) {\n\tconst {\n\t\tblocks,\n\t\tselectBlock = noop,\n\t\tshowBlockMovers,\n\t\tselectedClientIds,\n\t\tlevel = 1,\n\t\tpath = '',\n\t\tisBranchSelected = false,\n\t\tlistPosition = 0,\n\t\tfixedListWindow,\n\t\tisExpanded,\n\t\tparentId,\n\t\tisSyncedBranch = false,\n\t\tshowAppender: showAppenderProp = true,\n\t} = props;\n\n\tconst { canParentExpand, isParentSynced } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! parentId ) {\n\t\t\t\treturn { canParentExpand: true, isParentSynced: false };\n\t\t\t}\n\t\t\tconst { canEditBlock, isSyncedBlock } = unlock(\n\t\t\t\tselect( blockEditorStore )\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tcanParentExpand: canEditBlock( parentId ),\n\t\t\t\tisParentSynced: isSyncedBlock( parentId ),\n\t\t\t};\n\t\t},\n\t\t[ parentId ]\n\t);\n\n\tconst syncedBranch = isSyncedBranch || isParentSynced;\n\n\tconst {\n\t\tblockDropPosition,\n\t\tblockDropTargetIndex,\n\t\tfirstDraggedBlockIndex,\n\t\tblockIndexes,\n\t\texpansionState,\n\t\tdraggedClientIds,\n\t} = useListViewTreeState();\n\n\tif ( ! canParentExpand ) {\n\t\treturn null;\n\t}\n\n\t// Only show the appender at the first level.\n\tconst showAppender = showAppenderProp && level === 1;\n\tconst filteredBlocks = blocks.filter( Boolean );\n\tconst blockCount = filteredBlocks.length;\n\t// The appender means an extra row in List View, so add 1 to the row count.\n\tconst rowCount = showAppender ? blockCount + 1 : blockCount;\n\tlet nextPosition = listPosition;\n\n\tconst rows = [];\n\n\t// A run of blocks outside of the render window becomes one spacer row that\n\t// stands in for their height.\n\tlet placeholderRows = 0;\n\tlet placeholderKey;\n\n\t// Adds the pending placeholder row, if there is one. Call before\n\t// adding a real row.\n\tconst pushPlaceholderRow = () => {\n\t\tif ( ! placeholderRows ) {\n\t\t\treturn;\n\t\t}\n\t\trows.push(\n\t\t\t<tr key={ `placeholder-${ placeholderKey }` }>\n\t\t\t\t<td\n\t\t\t\t\tclassName=\"block-editor-list-view-placeholder\"\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\theight: placeholderRows * BLOCK_LIST_ITEM_HEIGHT,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</tr>\n\t\t);\n\t\tplaceholderRows = 0;\n\t\tplaceholderKey = undefined;\n\t};\n\n\tfilteredBlocks.forEach( ( block, index ) => {\n\t\tconst { clientId, innerBlocks } = block;\n\n\t\t// The next sibling is offset by this block's subtree.\n\t\tconst blockListPosition = nextPosition;\n\t\tnextPosition += countBlocks(\n\t\t\tblock,\n\t\t\texpansionState,\n\t\t\tdraggedClientIds,\n\t\t\tisExpanded\n\t\t);\n\n\t\tconst isDragged = !! draggedClientIds?.includes( clientId );\n\n\t\tconst { itemInView } = fixedListWindow;\n\t\tconst blockInView = itemInView( blockListPosition );\n\n\t\tconst position = index + 1;\n\t\tconst updatedPath =\n\t\t\tpath.length > 0 ? `${ path }_${ position }` : `${ position }`;\n\t\tconst hasNestedBlocks = !! innerBlocks?.length;\n\n\t\tconst shouldExpand = hasNestedBlocks\n\t\t\t? expansionState[ clientId ] ?? isExpanded\n\t\t\t: undefined;\n\n\t\t// Make updates to the selected or dragged blocks synchronous,\n\t\t// but asynchronous for any other block.\n\t\tconst isSelected = isClientIdSelected( clientId, selectedClientIds );\n\t\tconst isSelectedBranch =\n\t\t\tisBranchSelected || ( isSelected && hasNestedBlocks );\n\n\t\t// To avoid performance issues, we only render blocks that are in view,\n\t\t// or blocks that are selected or dragged. If a block is selected,\n\t\t// it is only counted if it is the first of the block selection.\n\t\t// This prevents the entire tree from being rendered when a branch is\n\t\t// selected, or a user selects all blocks, while still enabling scroll\n\t\t// into view behavior when selecting a block or opening the list view.\n\t\t// The first and last blocks of the list are always rendered, to ensure\n\t\t// that Home and End keys work as expected.\n\t\tconst showBlock =\n\t\t\tisDragged ||\n\t\t\tblockInView ||\n\t\t\t( isSelected && clientId === selectedClientIds[ 0 ] ) ||\n\t\t\tindex === 0 ||\n\t\t\tindex === blockCount - 1;\n\n\t\tconst showNestedBlocks = hasNestedBlocks && shouldExpand && ! isDragged;\n\n\t\tif ( ! showBlock ) {\n\t\t\tplaceholderRows += 1;\n\t\t\tplaceholderKey ??= clientId;\n\n\t\t\t// Inner blocks of an off-window block may still be in view.\n\t\t\tif ( ! showNestedBlocks ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tpushPlaceholderRow();\n\n\t\t// Determine the displacement of the block while dragging. This\n\t\t// works out whether the current block should be displaced up or\n\t\t// down, relative to the dragged blocks and the drop target.\n\t\tconst { displacement, isAfterDraggedBlocks, isNesting } =\n\t\t\tgetDragDisplacementValues( {\n\t\t\t\tblockIndexes,\n\t\t\t\tblockDropTargetIndex,\n\t\t\t\tblockDropPosition,\n\t\t\t\tclientId,\n\t\t\t\tfirstDraggedBlockIndex,\n\t\t\t\tisDragged,\n\t\t\t} );\n\n\t\trows.push(\n\t\t\t<AsyncModeProvider key={ clientId } value={ ! isSelected }>\n\t\t\t\t{ showBlock && (\n\t\t\t\t\t<ListViewBlock\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tselectBlock={ selectBlock }\n\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\tisBranchSelected={ isSelectedBranch }\n\t\t\t\t\t\tisDragged={ isDragged }\n\t\t\t\t\t\tlevel={ level }\n\t\t\t\t\t\tposition={ position }\n\t\t\t\t\t\trowCount={ rowCount }\n\t\t\t\t\t\tsiblingBlockCount={ blockCount }\n\t\t\t\t\t\tshowBlockMovers={ showBlockMovers }\n\t\t\t\t\t\tpath={ updatedPath }\n\t\t\t\t\t\tisExpanded={ isDragged ? false : shouldExpand }\n\t\t\t\t\t\tselectedClientIds={ selectedClientIds }\n\t\t\t\t\t\tisSyncedBranch={ syncedBranch }\n\t\t\t\t\t\tdisplacement={ displacement }\n\t\t\t\t\t\tisAfterDraggedBlocks={ isAfterDraggedBlocks }\n\t\t\t\t\t\tisNesting={ isNesting }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ showNestedBlocks && (\n\t\t\t\t\t<ListViewBranch\n\t\t\t\t\t\tparentId={ clientId }\n\t\t\t\t\t\tblocks={ innerBlocks }\n\t\t\t\t\t\tselectBlock={ selectBlock }\n\t\t\t\t\t\tshowBlockMovers={ showBlockMovers }\n\t\t\t\t\t\tlevel={ level + 1 }\n\t\t\t\t\t\tpath={ updatedPath }\n\t\t\t\t\t\tlistPosition={ blockListPosition + 1 }\n\t\t\t\t\t\tfixedListWindow={ fixedListWindow }\n\t\t\t\t\t\tisBranchSelected={ isSelectedBranch }\n\t\t\t\t\t\tselectedClientIds={ selectedClientIds }\n\t\t\t\t\t\tisExpanded={ isExpanded }\n\t\t\t\t\t\tisSyncedBranch={ syncedBranch }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</AsyncModeProvider>\n\t\t);\n\t} );\n\n\tpushPlaceholderRow();\n\n\treturn (\n\t\t<>\n\t\t\t{ rows }\n\t\t\t{ showAppender && (\n\t\t\t\t<TreeGridRow\n\t\t\t\t\tlevel={ level }\n\t\t\t\t\tsetSize={ rowCount }\n\t\t\t\t\tpositionInSet={ rowCount }\n\t\t\t\t\tisExpanded\n\t\t\t\t>\n\t\t\t\t\t<TreeGridCell>\n\t\t\t\t\t\t{ ( treeGridCellProps ) => (\n\t\t\t\t\t\t\t<Appender\n\t\t\t\t\t\t\t\tclientId={ parentId }\n\t\t\t\t\t\t\t\tnestingLevel={ level }\n\t\t\t\t\t\t\t\tblockCount={ blockCount }\n\t\t\t\t\t\t\t\t{ ...treeGridCellProps }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</TreeGridCell>\n\t\t\t\t</TreeGridRow>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default memo( ListViewBranch );\n"],
5
5
  "mappings": "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",
6
6
  "names": []
@@ -1,4 +1,4 @@
1
- // packages/block-editor/src/components/list-view/drop-indicator.js
1
+ // packages/block-editor/src/components/list-view/drop-indicator.jsx
2
2
  import clsx from "clsx";
3
3
  import {
4
4
  Popover,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/components/list-view/drop-indicator.js"],
3
+ "sources": ["../../../src/components/list-view/drop-indicator.jsx"],
4
4
  "sourcesContent": ["import clsx from 'clsx';\nimport {\n\tPopover,\n\t__experimentalTruncate as Truncate,\n} from '@wordpress/components';\nimport { getScrollContainer } from '@wordpress/dom';\nimport { useCallback, useMemo } from '@wordpress/element';\nimport { isRTL } from '@wordpress/i18n';\nimport { Stack } from '@wordpress/ui';\nimport BlockIcon from '../block-icon';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport useBlockDisplayTitle from '../block-title/use-block-display-title';\nimport ListViewExpander from './expander';\n\nexport default function ListViewDropIndicatorPreview( {\n\tdraggedBlockClientId,\n\tlistViewRef,\n\tblockDropTarget,\n} ) {\n\tconst blockInformation = useBlockDisplayInformation( draggedBlockClientId );\n\tconst blockTitle = useBlockDisplayTitle( {\n\t\tclientId: draggedBlockClientId,\n\t\tcontext: 'list-view',\n\t} );\n\n\tconst { rootClientId, clientId, dropPosition } = blockDropTarget || {};\n\n\tconst [ rootBlockElement, blockElement ] = useMemo( () => {\n\t\tif ( ! listViewRef.current ) {\n\t\t\treturn [];\n\t\t}\n\n\t\t// The rootClientId will be defined whenever dropping into inner\n\t\t// block lists, but is undefined when dropping at the root level.\n\t\tconst _rootBlockElement = rootClientId\n\t\t\t? listViewRef.current.querySelector(\n\t\t\t\t\t`[data-block=\"${ rootClientId }\"]`\n\t\t\t )\n\t\t\t: undefined;\n\n\t\t// The clientId represents the sibling block, the dragged block will\n\t\t// usually be inserted adjacent to it. It will be undefined when\n\t\t// dropping a block into an empty block list.\n\t\tconst _blockElement = clientId\n\t\t\t? listViewRef.current.querySelector(\n\t\t\t\t\t`[data-block=\"${ clientId }\"]`\n\t\t\t )\n\t\t\t: undefined;\n\n\t\treturn [ _rootBlockElement, _blockElement ];\n\t}, [ listViewRef, rootClientId, clientId ] );\n\n\t// The targetElement is the element that the drop indicator will appear\n\t// before or after. When dropping into an empty block list, blockElement\n\t// is undefined, so the indicator will appear after the rootBlockElement.\n\tconst targetElement = blockElement || rootBlockElement;\n\n\tconst rtl = isRTL();\n\n\tconst getDropIndicatorWidth = useCallback(\n\t\t( targetElementRect, indent ) => {\n\t\t\tif ( ! targetElement ) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\t// Default to assuming that the width of the drop indicator\n\t\t\t// should be the same as the target element.\n\t\t\tlet width = targetElement.offsetWidth;\n\n\t\t\t// In deeply nested lists, where a scrollbar is present,\n\t\t\t// the width of the drop indicator should be the width of\n\t\t\t// the scroll container, minus the distance from the left\n\t\t\t// edge of the scroll container to the left edge of the\n\t\t\t// target element.\n\t\t\tconst scrollContainer = getScrollContainer(\n\t\t\t\ttargetElement,\n\t\t\t\t'horizontal'\n\t\t\t);\n\n\t\t\tconst ownerDocument = targetElement.ownerDocument;\n\t\t\tconst windowScroll =\n\t\t\t\tscrollContainer === ownerDocument.body ||\n\t\t\t\tscrollContainer === ownerDocument.documentElement;\n\n\t\t\tif ( scrollContainer && ! windowScroll ) {\n\t\t\t\tconst scrollContainerRect =\n\t\t\t\t\tscrollContainer.getBoundingClientRect();\n\n\t\t\t\tconst distanceBetweenContainerAndTarget = isRTL()\n\t\t\t\t\t? scrollContainerRect.right - targetElementRect.right\n\t\t\t\t\t: targetElementRect.left - scrollContainerRect.left;\n\n\t\t\t\tconst scrollContainerWidth = scrollContainer.clientWidth;\n\n\t\t\t\tif (\n\t\t\t\t\tscrollContainerWidth <\n\t\t\t\t\twidth + distanceBetweenContainerAndTarget\n\t\t\t\t) {\n\t\t\t\t\twidth =\n\t\t\t\t\t\tscrollContainerWidth -\n\t\t\t\t\t\tdistanceBetweenContainerAndTarget;\n\t\t\t\t}\n\n\t\t\t\t// LTR logic for ensuring the drop indicator does not extend\n\t\t\t\t// beyond the right edge of the scroll container.\n\t\t\t\tif (\n\t\t\t\t\t! rtl &&\n\t\t\t\t\ttargetElementRect.left + indent < scrollContainerRect.left\n\t\t\t\t) {\n\t\t\t\t\twidth -= scrollContainerRect.left - targetElementRect.left;\n\t\t\t\t\treturn width;\n\t\t\t\t}\n\n\t\t\t\t// RTL logic for ensuring the drop indicator does not extend\n\t\t\t\t// beyond the right edge of the scroll container.\n\t\t\t\tif (\n\t\t\t\t\trtl &&\n\t\t\t\t\ttargetElementRect.right - indent > scrollContainerRect.right\n\t\t\t\t) {\n\t\t\t\t\twidth -=\n\t\t\t\t\t\ttargetElementRect.right - scrollContainerRect.right;\n\t\t\t\t\treturn width;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Subtract the indent from the final width of the indicator.\n\t\t\treturn width - indent;\n\t\t},\n\t\t[ rtl, targetElement ]\n\t);\n\n\tconst style = useMemo( () => {\n\t\tif ( ! targetElement ) {\n\t\t\treturn {};\n\t\t}\n\n\t\tconst targetElementRect = targetElement.getBoundingClientRect();\n\n\t\treturn {\n\t\t\twidth: getDropIndicatorWidth( targetElementRect, 0 ),\n\t\t};\n\t}, [ getDropIndicatorWidth, targetElement ] );\n\n\tconst horizontalScrollOffsetStyle = useMemo( () => {\n\t\tif ( ! targetElement ) {\n\t\t\treturn {};\n\t\t}\n\n\t\tconst scrollContainer = getScrollContainer( targetElement );\n\t\tconst ownerDocument = targetElement.ownerDocument;\n\t\tconst windowScroll =\n\t\t\tscrollContainer === ownerDocument.body ||\n\t\t\tscrollContainer === ownerDocument.documentElement;\n\n\t\tif ( scrollContainer && ! windowScroll ) {\n\t\t\tconst scrollContainerRect = scrollContainer.getBoundingClientRect();\n\t\t\tconst targetElementRect = targetElement.getBoundingClientRect();\n\n\t\t\tconst distanceBetweenContainerAndTarget = rtl\n\t\t\t\t? scrollContainerRect.right - targetElementRect.right\n\t\t\t\t: targetElementRect.left - scrollContainerRect.left;\n\n\t\t\tif ( ! rtl && scrollContainerRect.left > targetElementRect.left ) {\n\t\t\t\treturn {\n\t\t\t\t\ttransform: `translateX( ${ distanceBetweenContainerAndTarget }px )`,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif ( rtl && scrollContainerRect.right < targetElementRect.right ) {\n\t\t\t\treturn {\n\t\t\t\t\ttransform: `translateX( ${\n\t\t\t\t\t\tdistanceBetweenContainerAndTarget * -1\n\t\t\t\t\t}px )`,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\treturn {};\n\t}, [ rtl, targetElement ] );\n\n\tconst ariaLevel = useMemo( () => {\n\t\tif ( ! rootBlockElement ) {\n\t\t\treturn 1;\n\t\t}\n\n\t\tconst _ariaLevel = parseInt(\n\t\t\trootBlockElement.getAttribute( 'aria-level' ),\n\t\t\t10\n\t\t);\n\n\t\treturn _ariaLevel ? _ariaLevel + 1 : 1;\n\t}, [ rootBlockElement ] );\n\n\tconst hasAdjacentSelectedBranch = useMemo( () => {\n\t\tif ( ! targetElement ) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn targetElement.classList.contains( 'is-branch-selected' );\n\t}, [ targetElement ] );\n\n\tconst popoverAnchor = useMemo( () => {\n\t\tconst isValidDropPosition =\n\t\t\tdropPosition === 'top' ||\n\t\t\tdropPosition === 'bottom' ||\n\t\t\tdropPosition === 'inside';\n\t\tif ( ! targetElement || ! isValidDropPosition ) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn {\n\t\t\tcontextElement: targetElement,\n\t\t\tgetBoundingClientRect() {\n\t\t\t\tconst rect = targetElement.getBoundingClientRect();\n\t\t\t\t// In RTL languages, the drop indicator should be positioned\n\t\t\t\t// to the left of the target element, with the width of the\n\t\t\t\t// indicator determining the indent at the right edge of the\n\t\t\t\t// target element. In LTR languages, the drop indicator should\n\t\t\t\t// end at the right edge of the target element, with the indent\n\t\t\t\t// added to the position of the left edge of the target element.\n\t\t\t\t// let left = rtl ? rect.left : rect.left + indent;\n\t\t\t\tlet left = rect.left;\n\t\t\t\tlet top = 0;\n\n\t\t\t\t// In deeply nested lists, where a scrollbar is present,\n\t\t\t\t// the width of the drop indicator should be the width of\n\t\t\t\t// the visible area of the scroll container. Additionally,\n\t\t\t\t// the left edge of the drop indicator line needs to be\n\t\t\t\t// offset by the distance the left edge of the target element\n\t\t\t\t// and the left edge of the scroll container. The ensures\n\t\t\t\t// that the drop indicator position never breaks out of the\n\t\t\t\t// visible area of the scroll container.\n\t\t\t\tconst scrollContainer = getScrollContainer(\n\t\t\t\t\ttargetElement,\n\t\t\t\t\t'horizontal'\n\t\t\t\t);\n\n\t\t\t\tconst doc = targetElement.ownerDocument;\n\t\t\t\tconst windowScroll =\n\t\t\t\t\tscrollContainer === doc.body ||\n\t\t\t\t\tscrollContainer === doc.documentElement;\n\n\t\t\t\t// If the scroll container is not the window, offset the left position, if need be.\n\t\t\t\tif ( scrollContainer && ! windowScroll ) {\n\t\t\t\t\tconst scrollContainerRect =\n\t\t\t\t\t\tscrollContainer.getBoundingClientRect();\n\n\t\t\t\t\t// In RTL languages, a vertical scrollbar is present on the\n\t\t\t\t\t// left edge of the scroll container. The width of the\n\t\t\t\t\t// scrollbar needs to be accounted for when positioning the\n\t\t\t\t\t// drop indicator.\n\t\t\t\t\tconst scrollbarWidth = rtl\n\t\t\t\t\t\t? scrollContainer.offsetWidth -\n\t\t\t\t\t\t scrollContainer.clientWidth\n\t\t\t\t\t\t: 0;\n\n\t\t\t\t\tif ( left < scrollContainerRect.left + scrollbarWidth ) {\n\t\t\t\t\t\tleft = scrollContainerRect.left + scrollbarWidth;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif ( dropPosition === 'top' ) {\n\t\t\t\t\ttop = rect.top - rect.height * 2;\n\t\t\t\t} else {\n\t\t\t\t\t// `dropPosition` is either `bottom` or `inside`\n\t\t\t\t\ttop = rect.top;\n\t\t\t\t}\n\n\t\t\t\tconst width = getDropIndicatorWidth( rect, 0 );\n\t\t\t\tconst height = rect.height;\n\n\t\t\t\treturn new window.DOMRect( left, top, width, height );\n\t\t\t},\n\t\t};\n\t}, [ targetElement, dropPosition, getDropIndicatorWidth, rtl ] );\n\n\tif ( ! targetElement ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Popover\n\t\t\tanimate={ false }\n\t\t\tanchor={ popoverAnchor }\n\t\t\tfocusOnMount={ false }\n\t\t\tclassName=\"block-editor-list-view-drop-indicator--preview\"\n\t\t\tvariant=\"unstyled\"\n\t\t\tflip={ false }\n\t\t\tresize\n\t\t>\n\t\t\t<div\n\t\t\t\tstyle={ style }\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\t'block-editor-list-view-drop-indicator__line',\n\t\t\t\t\t{\n\t\t\t\t\t\t'block-editor-list-view-drop-indicator__line--darker':\n\t\t\t\t\t\t\thasAdjacentSelectedBranch,\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"block-editor-list-view-leaf\"\n\t\t\t\t\taria-level={ ariaLevel }\n\t\t\t\t>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t'block-editor-list-view-block-select-button',\n\t\t\t\t\t\t\t'block-editor-list-view-block-contents'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tstyle={ horizontalScrollOffsetStyle }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ListViewExpander onClick={ () => {} } />\n\t\t\t\t\t\t<BlockIcon\n\t\t\t\t\t\t\ticon={ blockInformation?.icon }\n\t\t\t\t\t\t\tshowColors\n\t\t\t\t\t\t\tcontext=\"list-view\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Stack\n\t\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\t\tclassName=\"block-editor-list-view-block-select-button__label-wrapper\"\n\t\t\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\t\t\tgap=\"xs\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span className=\"block-editor-list-view-block-select-button__title\">\n\t\t\t\t\t\t\t\t<Truncate ellipsizeMode=\"auto\">\n\t\t\t\t\t\t\t\t\t{ blockTitle }\n\t\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</Stack>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div className=\"block-editor-list-view-block__menu-cell\"></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Popover>\n\t);\n}\n"],
5
5
  "mappings": "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",
6
6
  "names": []
@@ -1,4 +1,4 @@
1
- // packages/block-editor/src/components/list-view/expander.js
1
+ // packages/block-editor/src/components/list-view/expander.jsx
2
2
  import { chevronRightSmall, chevronLeftSmall, Icon } from "@wordpress/icons";
3
3
  import { isRTL } from "@wordpress/i18n";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/components/list-view/expander.js"],
3
+ "sources": ["../../../src/components/list-view/expander.jsx"],
4
4
  "sourcesContent": ["import { chevronRightSmall, chevronLeftSmall, Icon } from '@wordpress/icons';\nimport { isRTL } from '@wordpress/i18n';\n\nexport default function ListViewExpander( { onClick } ) {\n\treturn (\n\t\t// Keyboard events are handled by TreeGrid see: components/src/tree-grid/index.js\n\t\t//\n\t\t// The expander component is implemented as a pseudo element in the w3 example\n\t\t// https://www.w3.org/TR/wai-aria-practices/examples/treegrid/treegrid-1.html\n\t\t//\n\t\t// We've mimicked this by adding an icon with aria-hidden set to true to hide this from the accessibility tree.\n\t\t// For the current tree grid implementation, please do not try to make this a button.\n\t\t<span\n\t\t\tclassName=\"block-editor-list-view__expander\"\n\t\t\tonClick={\n\t\t\t\tonClick\n\t\t\t\t\t? ( event ) => onClick( event, { forceToggle: true } )\n\t\t\t\t\t: undefined\n\t\t\t}\n\t\t\taria-hidden=\"true\"\n\t\t\tdata-testid=\"list-view-expander\"\n\t\t>\n\t\t\t<Icon icon={ isRTL() ? chevronLeftSmall : chevronRightSmall } />\n\t\t</span>\n\t);\n}\n"],
5
5
  "mappings": ";AAAA,SAAS,mBAAmB,kBAAkB,YAAY;AAC1D,SAAS,aAAa;AAqBnB;AAnBY,SAAR,iBAAmC,EAAE,QAAQ,GAAI;AACvD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQC;AAAA,MAAC;AAAA;AAAA,QACA,WAAU;AAAA,QACV,SACC,UACG,CAAE,UAAW,QAAS,OAAO,EAAE,aAAa,KAAK,CAAE,IACnD;AAAA,QAEJ,eAAY;AAAA,QACZ,eAAY;AAAA,QAEZ,8BAAC,QAAK,MAAO,MAAM,IAAI,mBAAmB,mBAAoB;AAAA;AAAA,IAC/D;AAAA;AAEF;",
6
6
  "names": []
@@ -1,8 +1,9 @@
1
- // packages/block-editor/src/components/list-view/index.js
1
+ // packages/block-editor/src/components/list-view/index.jsx
2
2
  import clsx from "clsx";
3
3
  import {
4
4
  useInstanceId,
5
5
  useMergeRefs,
6
+ useRefEffect,
6
7
  __experimentalUseFixedWindowList as useFixedWindowList
7
8
  } from "@wordpress/compose";
8
9
  import { isShallowEqual } from "@wordpress/is-shallow-equal";
@@ -65,6 +66,7 @@ function ListViewComponent({
65
66
  showBlockMovers = false,
66
67
  isExpanded = false,
67
68
  showAppender = false,
69
+ focusOnMount = false,
68
70
  blockSettingsMenu: BlockSettingsMenu = BlockSettingsDropdown,
69
71
  rootClientId,
70
72
  description,
@@ -124,18 +126,43 @@ function ListViewComponent({
124
126
  const clipBoardRef = useClipboardHandler({
125
127
  selectBlock: selectEditorBlock
126
128
  });
127
- const focusSelectedBlock = useCallback(
129
+ const focusOnMountRef = useRefEffect(
128
130
  (node) => {
131
+ if (!focusOnMount) {
132
+ return;
133
+ }
134
+ const controller = new window.AbortController();
135
+ const focusRow2 = (clientId) => focusListItem(clientId, node, controller.signal).then(
136
+ () => controller.abort()
137
+ );
138
+ node.ownerDocument.addEventListener(
139
+ "focusin",
140
+ () => controller.abort(),
141
+ { once: true, signal: controller.signal }
142
+ );
129
143
  const [firstSelectedClientId] = getSelectedBlockClientIds();
130
- if (firstSelectedClientId && node) {
131
- focusListItem(firstSelectedClientId, node);
144
+ if (firstSelectedClientId) {
145
+ focusRow2(firstSelectedClientId);
146
+ return () => controller.abort();
132
147
  }
148
+ const timerId = setTimeout(() => {
149
+ const firstClientId = node.querySelector(
150
+ "[role=row][data-block]"
151
+ )?.dataset.block;
152
+ if (firstClientId) {
153
+ focusRow2(firstClientId);
154
+ }
155
+ }, 0);
156
+ return () => {
157
+ clearTimeout(timerId);
158
+ controller.abort();
159
+ };
133
160
  },
134
- [getSelectedBlockClientIds]
161
+ [focusOnMount, getSelectedBlockClientIds]
135
162
  );
136
163
  const treeGridRef = useMergeRefs([
137
164
  clipBoardRef,
138
- focusSelectedBlock,
165
+ focusOnMountRef,
139
166
  elementRef,
140
167
  dropZoneRef,
141
168
  ref
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/components/list-view/index.js"],
4
- "sourcesContent": ["import clsx from 'clsx';\nimport {\n\tuseInstanceId,\n\tuseMergeRefs,\n\t__experimentalUseFixedWindowList as useFixedWindowList,\n} from '@wordpress/compose';\nimport { isShallowEqual } from '@wordpress/is-shallow-equal';\nimport { __experimentalTreeGrid as TreeGrid } from '@wordpress/components';\nimport { VisuallyHidden } from '@wordpress/ui';\nimport { AsyncModeProvider, useSelect } from '@wordpress/data';\nimport deprecated from '@wordpress/deprecated';\nimport {\n\tuseCallback,\n\tuseMemo,\n\tuseRef,\n\tuseReducer,\n\tforwardRef,\n\tuseState,\n} from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport ListViewBranch from './branch';\nimport {\n\tListViewContext,\n\tListViewInsertedBlockContext,\n\tListViewTreeStateContext,\n} from './context';\nimport ListViewDropIndicatorPreview from './drop-indicator';\nimport useBlockSelection from './use-block-selection';\nimport useListViewBlockIndexes from './use-list-view-block-indexes';\nimport useListViewClientIds from './use-list-view-client-ids';\nimport useListViewCollapseItems from './use-list-view-collapse-items';\nimport useListViewDropZone from './use-list-view-drop-zone';\nimport useListViewExpandSelectedItem from './use-list-view-expand-selected-item';\nimport { store as blockEditorStore } from '../../store';\nimport { BlockSettingsDropdown } from '../block-settings-menu/block-settings-dropdown';\nimport { BLOCK_LIST_ITEM_HEIGHT, focusListItem } from './utils';\nimport useClipboardHandler from './use-clipboard-handler';\n\nconst expansion = ( state, action ) => {\n\tconst { type, clientIds } = action;\n\n\t// Overwrite the state: only the listed blocks stay expanded, every other\n\t// block falls back to the list view's default.\n\tif ( type === 'replace' ) {\n\t\tconst next = Object.fromEntries(\n\t\t\tclientIds.map( ( id ) => [ id, true ] )\n\t\t);\n\t\treturn isShallowEqual( state, next ) ? state : next;\n\t}\n\n\tif ( type !== 'expand' && type !== 'collapse' ) {\n\t\treturn state;\n\t}\n\n\tconst isExpand = type === 'expand';\n\t// An unrecorded block is not the same as an explicitly collapsed one,\n\t// because the fallback depends on the `isExpanded` prop.\n\tconst changed = clientIds.filter( ( id ) => state[ id ] !== isExpand );\n\n\tif ( ! changed.length ) {\n\t\treturn state;\n\t}\n\n\treturn {\n\t\t...state,\n\t\t...Object.fromEntries( changed.map( ( id ) => [ id, isExpand ] ) ),\n\t};\n};\n\n/** @typedef {React.ComponentType} ComponentType */\n/** @typedef {React.Ref<HTMLElement>} Ref */\n\n/**\n * Show a hierarchical list of blocks.\n *\n * @param {Object} props Components props.\n * @param {string} props.id An HTML element id for the root element of ListView.\n * @param {Array} props.blocks _deprecated_ Custom subset of block client IDs to be used instead of the default hierarchy.\n * @param {?HTMLElement} props.dropZoneElement Optional element to be used as the drop zone.\n * @param {?boolean} props.showBlockMovers Flag to enable block movers. Defaults to `false`.\n * @param {?boolean} props.isExpanded Flag to determine whether nested levels are expanded by default. Defaults to `false`.\n * @param {?boolean} props.showAppender Flag to show or hide the block appender. Defaults to `false`.\n * @param {?ComponentType} props.blockSettingsMenu Optional more menu substitution. Defaults to the standard `BlockSettingsDropdown` component.\n * @param {string} props.rootClientId The client id of the root block from which we determine the blocks to show in the list.\n * @param {string} props.description Optional accessible description for the tree grid component.\n * @param {?Function} props.onSelect Optional callback to be invoked when a block is selected. Receives the block object that was selected.\n * @param {?ComponentType} props.additionalBlockContent Component that renders additional block content UI.\n * @param {Ref} ref Forwarded ref\n */\nfunction ListViewComponent(\n\t{\n\t\tid,\n\t\tblocks,\n\t\tdropZoneElement,\n\t\tshowBlockMovers = false,\n\t\tisExpanded = false,\n\t\tshowAppender = false,\n\t\tblockSettingsMenu: BlockSettingsMenu = BlockSettingsDropdown,\n\t\trootClientId,\n\t\tdescription,\n\t\tonSelect,\n\t\tadditionalBlockContent: AdditionalBlockContent,\n\t},\n\tref\n) {\n\t// This can be removed once we no longer need to support the blocks prop.\n\tif ( blocks ) {\n\t\tdeprecated(\n\t\t\t'`blocks` property in `wp.blockEditor.__experimentalListView`',\n\t\t\t{\n\t\t\t\tsince: '6.3',\n\t\t\t\talternative: '`rootClientId` property',\n\t\t\t}\n\t\t);\n\t}\n\n\tconst instanceId = useInstanceId( ListViewComponent );\n\tconst { clientIdsTree, draggedClientIds, selectedClientIds } =\n\t\tuseListViewClientIds( { blocks, rootClientId } );\n\tconst blockIndexes = useListViewBlockIndexes( clientIdsTree );\n\n\tconst { getBlock, getSelectedBlockClientIds } =\n\t\tuseSelect( blockEditorStore );\n\tconst { visibleBlockCount } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getGlobalBlockCount, getClientIdsOfDescendants } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst draggedBlockCount =\n\t\t\t\tdraggedClientIds?.length > 0\n\t\t\t\t\t? getClientIdsOfDescendants( draggedClientIds ).length + 1\n\t\t\t\t\t: 0;\n\t\t\treturn {\n\t\t\t\tvisibleBlockCount: getGlobalBlockCount() - draggedBlockCount,\n\t\t\t};\n\t\t},\n\t\t[ draggedClientIds ]\n\t);\n\n\tconst { updateBlockSelection } = useBlockSelection();\n\n\tconst [ expansionState, updateExpansion ] = useReducer( expansion, {} );\n\n\tconst [ insertedBlockClientId, setInsertedBlockClientId ] =\n\t\tuseState( null );\n\n\tconst { setSelectedTreeId } = useListViewExpandSelectedItem( {\n\t\tfirstSelectedBlockClientId: selectedClientIds[ 0 ],\n\t\tupdateExpansion,\n\t} );\n\tconst selectEditorBlock = useCallback(\n\t\t/**\n\t\t * @param {MouseEvent | KeyboardEvent | undefined} event\n\t\t * @param {string} blockClientId\n\t\t * @param {null | undefined | -1 | 1} focusPosition\n\t\t */\n\t\t( event, blockClientId, focusPosition ) => {\n\t\t\tupdateBlockSelection( event, blockClientId, null, focusPosition );\n\t\t\tsetSelectedTreeId( blockClientId );\n\t\t\tif ( onSelect ) {\n\t\t\t\tonSelect( getBlock( blockClientId ) );\n\t\t\t}\n\t\t},\n\t\t[ setSelectedTreeId, updateBlockSelection, onSelect, getBlock ]\n\t);\n\n\tconst { ref: dropZoneRef, target: blockDropTarget } = useListViewDropZone( {\n\t\tdropZoneElement,\n\t\tupdateExpansion,\n\t} );\n\tconst elementRef = useRef();\n\n\t// Allow handling of copy, cut, and paste events.\n\tconst clipBoardRef = useClipboardHandler( {\n\t\tselectBlock: selectEditorBlock,\n\t} );\n\n\tconst focusSelectedBlock = useCallback(\n\t\t( node ) => {\n\t\t\tconst [ firstSelectedClientId ] = getSelectedBlockClientIds();\n\t\t\t// If a blocks are already selected when the list view is initially\n\t\t\t// mounted, shift focus to the first selected block.\n\t\t\tif ( firstSelectedClientId && node ) {\n\t\t\t\tfocusListItem( firstSelectedClientId, node );\n\t\t\t}\n\t\t},\n\t\t[ getSelectedBlockClientIds ]\n\t);\n\n\tconst treeGridRef = useMergeRefs( [\n\t\tclipBoardRef,\n\t\tfocusSelectedBlock,\n\t\telementRef,\n\t\tdropZoneRef,\n\t\tref,\n\t] );\n\n\tconst expandRow = useCallback( ( row ) => {\n\t\tconst clientId = row?.dataset?.block;\n\t\tif ( clientId ) {\n\t\t\tupdateExpansion( { type: 'expand', clientIds: [ clientId ] } );\n\t\t}\n\t}, [] );\n\tconst collapseRow = useCallback( ( row ) => {\n\t\tconst clientId = row?.dataset?.block;\n\t\tif ( clientId ) {\n\t\t\tupdateExpansion( { type: 'collapse', clientIds: [ clientId ] } );\n\t\t}\n\t}, [] );\n\tconst focusRow = useCallback(\n\t\t( event, startRow, endRow ) => {\n\t\t\tif ( event.shiftKey ) {\n\t\t\t\tupdateBlockSelection(\n\t\t\t\t\tevent,\n\t\t\t\t\tstartRow?.dataset?.block,\n\t\t\t\t\tendRow?.dataset?.block\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ updateBlockSelection ]\n\t);\n\n\tuseListViewCollapseItems( { updateExpansion } );\n\n\tconst firstDraggedBlockClientId = draggedClientIds?.[ 0 ];\n\n\t// Convert a blockDropTarget into indexes relative to the blocks in the list view.\n\t// These values are used to determine which blocks should be displaced to make room\n\t// for the drop indicator. See `ListViewBranch` and `getDragDisplacementValues`.\n\tconst { blockDropTargetIndex, blockDropPosition, firstDraggedBlockIndex } =\n\t\tuseMemo( () => {\n\t\t\tlet _blockDropTargetIndex, _firstDraggedBlockIndex;\n\n\t\t\tif ( blockDropTarget?.clientId ) {\n\t\t\t\tconst foundBlockIndex =\n\t\t\t\t\tblockIndexes[ blockDropTarget.clientId ];\n\t\t\t\t// If dragging below or inside the block, treat the drop target as the next block.\n\t\t\t\t_blockDropTargetIndex =\n\t\t\t\t\tfoundBlockIndex === undefined ||\n\t\t\t\t\tblockDropTarget?.dropPosition === 'top'\n\t\t\t\t\t\t? foundBlockIndex\n\t\t\t\t\t\t: foundBlockIndex + 1;\n\t\t\t} else if ( blockDropTarget === null ) {\n\t\t\t\t// A `null` value is used to indicate that the user is dragging outside of the list view.\n\t\t\t\t_blockDropTargetIndex = null;\n\t\t\t}\n\n\t\t\tif ( firstDraggedBlockClientId ) {\n\t\t\t\tconst foundBlockIndex =\n\t\t\t\t\tblockIndexes[ firstDraggedBlockClientId ];\n\t\t\t\t_firstDraggedBlockIndex =\n\t\t\t\t\tfoundBlockIndex === undefined ||\n\t\t\t\t\tblockDropTarget?.dropPosition === 'top'\n\t\t\t\t\t\t? foundBlockIndex\n\t\t\t\t\t\t: foundBlockIndex + 1;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tblockDropTargetIndex: _blockDropTargetIndex,\n\t\t\t\tblockDropPosition: blockDropTarget?.dropPosition,\n\t\t\t\tfirstDraggedBlockIndex: _firstDraggedBlockIndex,\n\t\t\t};\n\t\t}, [ blockDropTarget, blockIndexes, firstDraggedBlockClientId ] );\n\n\t// Values that stay stable for the lifetime of the List View.\n\tconst contextValue = useMemo(\n\t\t() => ( {\n\t\t\tAdditionalBlockContent,\n\t\t\tBlockSettingsMenu,\n\t\t\tlistViewInstanceId: instanceId,\n\t\t\trootClientId,\n\t\t\tsetInsertedBlockClientId,\n\t\t\ttreeGridElementRef: elementRef,\n\t\t\tupdateExpansion,\n\t\t} ),\n\t\t[\n\t\t\tAdditionalBlockContent,\n\t\t\tBlockSettingsMenu,\n\t\t\tinstanceId,\n\t\t\trootClientId,\n\t\t\tsetInsertedBlockClientId,\n\t\t\tupdateExpansion,\n\t\t]\n\t);\n\n\t// Values that change while expanding, collapsing, or dragging.\n\tconst treeStateContextValue = useMemo(\n\t\t() => ( {\n\t\t\tblockDropPosition,\n\t\t\tblockDropTargetIndex,\n\t\t\tblockIndexes,\n\t\t\tdraggedClientIds,\n\t\t\texpansionState,\n\t\t\tfirstDraggedBlockIndex,\n\t\t} ),\n\t\t[\n\t\t\tblockDropPosition,\n\t\t\tblockDropTargetIndex,\n\t\t\tblockIndexes,\n\t\t\tdraggedClientIds,\n\t\t\texpansionState,\n\t\t\tfirstDraggedBlockIndex,\n\t\t]\n\t);\n\n\tconst [ fixedListWindow ] = useFixedWindowList(\n\t\telementRef,\n\t\tBLOCK_LIST_ITEM_HEIGHT,\n\t\tvisibleBlockCount,\n\t\t{\n\t\t\t// Ensure that the windowing logic is recalculated when the expanded state changes.\n\t\t\t// This is necessary because expanding a collapsed block in a short list view can\n\t\t\t// switch the list view to a tall list view with a scrollbar, and vice versa.\n\t\t\t// When this happens, the windowing logic needs to be recalculated to ensure that\n\t\t\t// the correct number of blocks are rendered, by rechecking for a scroll container.\n\t\t\texpandedState: expansionState,\n\t\t\tuseWindowing: true,\n\t\t\twindowOverscan: 40,\n\t\t}\n\t);\n\n\t// If there are no blocks to show and we're not showing the appender, do not render the list view.\n\tif ( ! clientIdsTree.length && ! showAppender ) {\n\t\treturn null;\n\t}\n\n\tconst describedById =\n\t\tdescription && `block-editor-list-view-description-${ instanceId }`;\n\n\treturn (\n\t\t<AsyncModeProvider value>\n\t\t\t<ListViewDropIndicatorPreview\n\t\t\t\tdraggedBlockClientId={ firstDraggedBlockClientId }\n\t\t\t\tlistViewRef={ elementRef }\n\t\t\t\tblockDropTarget={ blockDropTarget }\n\t\t\t/>\n\t\t\t{ description && (\n\t\t\t\t<VisuallyHidden id={ describedById }>\n\t\t\t\t\t{ description }\n\t\t\t\t</VisuallyHidden>\n\t\t\t) }\n\t\t\t<TreeGrid\n\t\t\t\tid={ id }\n\t\t\t\tclassName={ clsx( 'block-editor-list-view-tree', {\n\t\t\t\t\t'is-dragging':\n\t\t\t\t\t\tdraggedClientIds?.length > 0 &&\n\t\t\t\t\t\tblockDropTargetIndex !== undefined,\n\t\t\t\t} ) }\n\t\t\t\taria-label={ __( 'Block navigation structure' ) }\n\t\t\t\tref={ treeGridRef }\n\t\t\t\tonCollapseRow={ collapseRow }\n\t\t\t\tonExpandRow={ expandRow }\n\t\t\t\tonFocusRow={ focusRow }\n\t\t\t\tapplicationAriaLabel={ __( 'Block navigation structure' ) }\n\t\t\t\taria-describedby={ describedById }\n\t\t\t\tstyle={ {\n\t\t\t\t\t'--wp-admin--list-view-dragged-items-height':\n\t\t\t\t\t\tdraggedClientIds?.length\n\t\t\t\t\t\t\t? `${\n\t\t\t\t\t\t\t\t\tBLOCK_LIST_ITEM_HEIGHT *\n\t\t\t\t\t\t\t\t\t( draggedClientIds.length - 1 )\n\t\t\t\t\t\t\t }px`\n\t\t\t\t\t\t\t: null,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ListViewContext.Provider value={ contextValue }>\n\t\t\t\t\t<ListViewInsertedBlockContext.Provider\n\t\t\t\t\t\tvalue={ insertedBlockClientId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ListViewTreeStateContext.Provider\n\t\t\t\t\t\t\tvalue={ treeStateContextValue }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ListViewBranch\n\t\t\t\t\t\t\t\tblocks={ clientIdsTree }\n\t\t\t\t\t\t\t\tparentId={ rootClientId }\n\t\t\t\t\t\t\t\tselectBlock={ selectEditorBlock }\n\t\t\t\t\t\t\t\tshowBlockMovers={ showBlockMovers }\n\t\t\t\t\t\t\t\tfixedListWindow={ fixedListWindow }\n\t\t\t\t\t\t\t\tselectedClientIds={ selectedClientIds }\n\t\t\t\t\t\t\t\tisExpanded={ isExpanded }\n\t\t\t\t\t\t\t\tshowAppender={ showAppender }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ListViewTreeStateContext.Provider>\n\t\t\t\t\t</ListViewInsertedBlockContext.Provider>\n\t\t\t\t</ListViewContext.Provider>\n\t\t\t</TreeGrid>\n\t\t</AsyncModeProvider>\n\t);\n}\n\n// This is the private API for the ListView component.\n// It allows access to all props, not just the public ones.\nexport const PrivateListView = forwardRef( ListViewComponent );\n\n// This is the public API for the ListView component.\n// We wrap the PrivateListView component to hide some props from the public API.\nexport default forwardRef( ( props, ref ) => {\n\treturn (\n\t\t<PrivateListView\n\t\t\tref={ ref }\n\t\t\t{ ...props }\n\t\t\tshowAppender={ false }\n\t\t\trootClientId={ null }\n\t\t\tonSelect={ null }\n\t\t\tadditionalBlockContent={ null }\n\t\t\tblockSettingsMenu={ undefined }\n\t\t/>\n\t);\n} );\n"],
5
- "mappings": "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",
6
- "names": []
3
+ "sources": ["../../../src/components/list-view/index.jsx"],
4
+ "sourcesContent": ["import clsx from 'clsx';\nimport {\n\tuseInstanceId,\n\tuseMergeRefs,\n\tuseRefEffect,\n\t__experimentalUseFixedWindowList as useFixedWindowList,\n} from '@wordpress/compose';\nimport { isShallowEqual } from '@wordpress/is-shallow-equal';\nimport { __experimentalTreeGrid as TreeGrid } from '@wordpress/components';\nimport { VisuallyHidden } from '@wordpress/ui';\nimport { AsyncModeProvider, useSelect } from '@wordpress/data';\nimport deprecated from '@wordpress/deprecated';\nimport {\n\tuseCallback,\n\tuseMemo,\n\tuseRef,\n\tuseReducer,\n\tforwardRef,\n\tuseState,\n} from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport ListViewBranch from './branch';\nimport {\n\tListViewContext,\n\tListViewInsertedBlockContext,\n\tListViewTreeStateContext,\n} from './context';\nimport ListViewDropIndicatorPreview from './drop-indicator';\nimport useBlockSelection from './use-block-selection';\nimport useListViewBlockIndexes from './use-list-view-block-indexes';\nimport useListViewClientIds from './use-list-view-client-ids';\nimport useListViewCollapseItems from './use-list-view-collapse-items';\nimport useListViewDropZone from './use-list-view-drop-zone';\nimport useListViewExpandSelectedItem from './use-list-view-expand-selected-item';\nimport { store as blockEditorStore } from '../../store';\nimport { BlockSettingsDropdown } from '../block-settings-menu/block-settings-dropdown';\nimport { BLOCK_LIST_ITEM_HEIGHT, focusListItem } from './utils';\nimport useClipboardHandler from './use-clipboard-handler';\n\nconst expansion = ( state, action ) => {\n\tconst { type, clientIds } = action;\n\n\t// Overwrite the state: only the listed blocks stay expanded, every other\n\t// block falls back to the list view's default.\n\tif ( type === 'replace' ) {\n\t\tconst next = Object.fromEntries(\n\t\t\tclientIds.map( ( id ) => [ id, true ] )\n\t\t);\n\t\treturn isShallowEqual( state, next ) ? state : next;\n\t}\n\n\tif ( type !== 'expand' && type !== 'collapse' ) {\n\t\treturn state;\n\t}\n\n\tconst isExpand = type === 'expand';\n\t// An unrecorded block is not the same as an explicitly collapsed one,\n\t// because the fallback depends on the `isExpanded` prop.\n\tconst changed = clientIds.filter( ( id ) => state[ id ] !== isExpand );\n\n\tif ( ! changed.length ) {\n\t\treturn state;\n\t}\n\n\treturn {\n\t\t...state,\n\t\t...Object.fromEntries( changed.map( ( id ) => [ id, isExpand ] ) ),\n\t};\n};\n\n/** @typedef {React.ComponentType} ComponentType */\n/** @typedef {React.Ref<HTMLElement>} Ref */\n\n/**\n * Show a hierarchical list of blocks.\n *\n * @param {Object} props Components props.\n * @param {string} props.id An HTML element id for the root element of ListView.\n * @param {Array} props.blocks _deprecated_ Custom subset of block client IDs to be used instead of the default hierarchy.\n * @param {?HTMLElement} props.dropZoneElement Optional element to be used as the drop zone.\n * @param {?boolean} props.showBlockMovers Flag to enable block movers. Defaults to `false`.\n * @param {?boolean} props.isExpanded Flag to determine whether nested levels are expanded by default. Defaults to `false`.\n * @param {?boolean} props.showAppender Flag to show or hide the block appender. Defaults to `false`.\n * @param {?boolean} props.focusOnMount Flag to move focus into the list when it mounts. Defaults to `false`.\n * @param {?ComponentType} props.blockSettingsMenu Optional more menu substitution. Defaults to the standard `BlockSettingsDropdown` component.\n * @param {string} props.rootClientId The client id of the root block from which we determine the blocks to show in the list.\n * @param {string} props.description Optional accessible description for the tree grid component.\n * @param {?Function} props.onSelect Optional callback to be invoked when a block is selected. Receives the block object that was selected.\n * @param {?ComponentType} props.additionalBlockContent Component that renders additional block content UI.\n * @param {Ref} ref Forwarded ref\n */\nfunction ListViewComponent(\n\t{\n\t\tid,\n\t\tblocks,\n\t\tdropZoneElement,\n\t\tshowBlockMovers = false,\n\t\tisExpanded = false,\n\t\tshowAppender = false,\n\t\tfocusOnMount = false,\n\t\tblockSettingsMenu: BlockSettingsMenu = BlockSettingsDropdown,\n\t\trootClientId,\n\t\tdescription,\n\t\tonSelect,\n\t\tadditionalBlockContent: AdditionalBlockContent,\n\t},\n\tref\n) {\n\t// This can be removed once we no longer need to support the blocks prop.\n\tif ( blocks ) {\n\t\tdeprecated(\n\t\t\t'`blocks` property in `wp.blockEditor.__experimentalListView`',\n\t\t\t{\n\t\t\t\tsince: '6.3',\n\t\t\t\talternative: '`rootClientId` property',\n\t\t\t}\n\t\t);\n\t}\n\n\tconst instanceId = useInstanceId( ListViewComponent );\n\tconst { clientIdsTree, draggedClientIds, selectedClientIds } =\n\t\tuseListViewClientIds( { blocks, rootClientId } );\n\tconst blockIndexes = useListViewBlockIndexes( clientIdsTree );\n\n\tconst { getBlock, getSelectedBlockClientIds } =\n\t\tuseSelect( blockEditorStore );\n\tconst { visibleBlockCount } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getGlobalBlockCount, getClientIdsOfDescendants } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst draggedBlockCount =\n\t\t\t\tdraggedClientIds?.length > 0\n\t\t\t\t\t? getClientIdsOfDescendants( draggedClientIds ).length + 1\n\t\t\t\t\t: 0;\n\t\t\treturn {\n\t\t\t\tvisibleBlockCount: getGlobalBlockCount() - draggedBlockCount,\n\t\t\t};\n\t\t},\n\t\t[ draggedClientIds ]\n\t);\n\n\tconst { updateBlockSelection } = useBlockSelection();\n\n\tconst [ expansionState, updateExpansion ] = useReducer( expansion, {} );\n\n\tconst [ insertedBlockClientId, setInsertedBlockClientId ] =\n\t\tuseState( null );\n\n\tconst { setSelectedTreeId } = useListViewExpandSelectedItem( {\n\t\tfirstSelectedBlockClientId: selectedClientIds[ 0 ],\n\t\tupdateExpansion,\n\t} );\n\tconst selectEditorBlock = useCallback(\n\t\t/**\n\t\t * @param {MouseEvent | KeyboardEvent | undefined} event\n\t\t * @param {string} blockClientId\n\t\t * @param {null | undefined | -1 | 1} focusPosition\n\t\t */\n\t\t( event, blockClientId, focusPosition ) => {\n\t\t\tupdateBlockSelection( event, blockClientId, null, focusPosition );\n\t\t\tsetSelectedTreeId( blockClientId );\n\t\t\tif ( onSelect ) {\n\t\t\t\tonSelect( getBlock( blockClientId ) );\n\t\t\t}\n\t\t},\n\t\t[ setSelectedTreeId, updateBlockSelection, onSelect, getBlock ]\n\t);\n\n\tconst { ref: dropZoneRef, target: blockDropTarget } = useListViewDropZone( {\n\t\tdropZoneElement,\n\t\tupdateExpansion,\n\t} );\n\tconst elementRef = useRef();\n\n\t// Allow handling of copy, cut, and paste events.\n\tconst clipBoardRef = useClipboardHandler( {\n\t\tselectBlock: selectEditorBlock,\n\t} );\n\n\tconst focusOnMountRef = useRefEffect(\n\t\t( node ) => {\n\t\t\t// A list that mounts as a side effect of selecting a block, the\n\t\t\t// block inspector's for one, would pull focus out of whatever the\n\t\t\t// user is editing, so taking focus is opt-in.\n\t\t\tif ( ! focusOnMount ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst controller = new window.AbortController();\n\t\t\tconst focusRow = ( clientId ) =>\n\t\t\t\tfocusListItem( clientId, node, controller.signal ).then( () =>\n\t\t\t\t\tcontroller.abort()\n\t\t\t\t);\n\n\t\t\t// Anything that takes focus first has a better claim to it. The row\n\t\t\t// is not always there yet either, because a nested block waits on\n\t\t\t// its ancestors expanding.\n\t\t\tnode.ownerDocument.addEventListener(\n\t\t\t\t'focusin',\n\t\t\t\t() => controller.abort(),\n\t\t\t\t{ once: true, signal: controller.signal }\n\t\t\t);\n\n\t\t\tconst [ firstSelectedClientId ] = getSelectedBlockClientIds();\n\n\t\t\tif ( firstSelectedClientId ) {\n\t\t\t\tfocusRow( firstSelectedClientId );\n\t\t\t\treturn () => controller.abort();\n\t\t\t}\n\n\t\t\t// With nothing selected the top of the list gets focus, but only\n\t\t\t// once the click that opened the list is over. Focusing a row costs\n\t\t\t// a style and layout pass, and inside that commit it lands on a\n\t\t\t// document that is still dirty.\n\t\t\tconst timerId = setTimeout( () => {\n\t\t\t\tconst firstClientId = node.querySelector(\n\t\t\t\t\t'[role=row][data-block]'\n\t\t\t\t)?.dataset.block;\n\t\t\t\tif ( firstClientId ) {\n\t\t\t\t\tfocusRow( firstClientId );\n\t\t\t\t}\n\t\t\t}, 0 );\n\n\t\t\treturn () => {\n\t\t\t\tclearTimeout( timerId );\n\t\t\t\tcontroller.abort();\n\t\t\t};\n\t\t},\n\t\t[ focusOnMount, getSelectedBlockClientIds ]\n\t);\n\n\tconst treeGridRef = useMergeRefs( [\n\t\tclipBoardRef,\n\t\tfocusOnMountRef,\n\t\telementRef,\n\t\tdropZoneRef,\n\t\tref,\n\t] );\n\n\tconst expandRow = useCallback( ( row ) => {\n\t\tconst clientId = row?.dataset?.block;\n\t\tif ( clientId ) {\n\t\t\tupdateExpansion( { type: 'expand', clientIds: [ clientId ] } );\n\t\t}\n\t}, [] );\n\tconst collapseRow = useCallback( ( row ) => {\n\t\tconst clientId = row?.dataset?.block;\n\t\tif ( clientId ) {\n\t\t\tupdateExpansion( { type: 'collapse', clientIds: [ clientId ] } );\n\t\t}\n\t}, [] );\n\tconst focusRow = useCallback(\n\t\t( event, startRow, endRow ) => {\n\t\t\tif ( event.shiftKey ) {\n\t\t\t\tupdateBlockSelection(\n\t\t\t\t\tevent,\n\t\t\t\t\tstartRow?.dataset?.block,\n\t\t\t\t\tendRow?.dataset?.block\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ updateBlockSelection ]\n\t);\n\n\tuseListViewCollapseItems( { updateExpansion } );\n\n\tconst firstDraggedBlockClientId = draggedClientIds?.[ 0 ];\n\n\t// Convert a blockDropTarget into indexes relative to the blocks in the list view.\n\t// These values are used to determine which blocks should be displaced to make room\n\t// for the drop indicator. See `ListViewBranch` and `getDragDisplacementValues`.\n\tconst { blockDropTargetIndex, blockDropPosition, firstDraggedBlockIndex } =\n\t\tuseMemo( () => {\n\t\t\tlet _blockDropTargetIndex, _firstDraggedBlockIndex;\n\n\t\t\tif ( blockDropTarget?.clientId ) {\n\t\t\t\tconst foundBlockIndex =\n\t\t\t\t\tblockIndexes[ blockDropTarget.clientId ];\n\t\t\t\t// If dragging below or inside the block, treat the drop target as the next block.\n\t\t\t\t_blockDropTargetIndex =\n\t\t\t\t\tfoundBlockIndex === undefined ||\n\t\t\t\t\tblockDropTarget?.dropPosition === 'top'\n\t\t\t\t\t\t? foundBlockIndex\n\t\t\t\t\t\t: foundBlockIndex + 1;\n\t\t\t} else if ( blockDropTarget === null ) {\n\t\t\t\t// A `null` value is used to indicate that the user is dragging outside of the list view.\n\t\t\t\t_blockDropTargetIndex = null;\n\t\t\t}\n\n\t\t\tif ( firstDraggedBlockClientId ) {\n\t\t\t\tconst foundBlockIndex =\n\t\t\t\t\tblockIndexes[ firstDraggedBlockClientId ];\n\t\t\t\t_firstDraggedBlockIndex =\n\t\t\t\t\tfoundBlockIndex === undefined ||\n\t\t\t\t\tblockDropTarget?.dropPosition === 'top'\n\t\t\t\t\t\t? foundBlockIndex\n\t\t\t\t\t\t: foundBlockIndex + 1;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tblockDropTargetIndex: _blockDropTargetIndex,\n\t\t\t\tblockDropPosition: blockDropTarget?.dropPosition,\n\t\t\t\tfirstDraggedBlockIndex: _firstDraggedBlockIndex,\n\t\t\t};\n\t\t}, [ blockDropTarget, blockIndexes, firstDraggedBlockClientId ] );\n\n\t// Values that stay stable for the lifetime of the List View.\n\tconst contextValue = useMemo(\n\t\t() => ( {\n\t\t\tAdditionalBlockContent,\n\t\t\tBlockSettingsMenu,\n\t\t\tlistViewInstanceId: instanceId,\n\t\t\trootClientId,\n\t\t\tsetInsertedBlockClientId,\n\t\t\ttreeGridElementRef: elementRef,\n\t\t\tupdateExpansion,\n\t\t} ),\n\t\t[\n\t\t\tAdditionalBlockContent,\n\t\t\tBlockSettingsMenu,\n\t\t\tinstanceId,\n\t\t\trootClientId,\n\t\t\tsetInsertedBlockClientId,\n\t\t\tupdateExpansion,\n\t\t]\n\t);\n\n\t// Values that change while expanding, collapsing, or dragging.\n\tconst treeStateContextValue = useMemo(\n\t\t() => ( {\n\t\t\tblockDropPosition,\n\t\t\tblockDropTargetIndex,\n\t\t\tblockIndexes,\n\t\t\tdraggedClientIds,\n\t\t\texpansionState,\n\t\t\tfirstDraggedBlockIndex,\n\t\t} ),\n\t\t[\n\t\t\tblockDropPosition,\n\t\t\tblockDropTargetIndex,\n\t\t\tblockIndexes,\n\t\t\tdraggedClientIds,\n\t\t\texpansionState,\n\t\t\tfirstDraggedBlockIndex,\n\t\t]\n\t);\n\n\tconst [ fixedListWindow ] = useFixedWindowList(\n\t\telementRef,\n\t\tBLOCK_LIST_ITEM_HEIGHT,\n\t\tvisibleBlockCount,\n\t\t{\n\t\t\t// Ensure that the windowing logic is recalculated when the expanded state changes.\n\t\t\t// This is necessary because expanding a collapsed block in a short list view can\n\t\t\t// switch the list view to a tall list view with a scrollbar, and vice versa.\n\t\t\t// When this happens, the windowing logic needs to be recalculated to ensure that\n\t\t\t// the correct number of blocks are rendered, by rechecking for a scroll container.\n\t\t\texpandedState: expansionState,\n\t\t\tuseWindowing: true,\n\t\t\twindowOverscan: 40,\n\t\t}\n\t);\n\n\t// If there are no blocks to show and we're not showing the appender, do not render the list view.\n\tif ( ! clientIdsTree.length && ! showAppender ) {\n\t\treturn null;\n\t}\n\n\tconst describedById =\n\t\tdescription && `block-editor-list-view-description-${ instanceId }`;\n\n\treturn (\n\t\t<AsyncModeProvider value>\n\t\t\t<ListViewDropIndicatorPreview\n\t\t\t\tdraggedBlockClientId={ firstDraggedBlockClientId }\n\t\t\t\tlistViewRef={ elementRef }\n\t\t\t\tblockDropTarget={ blockDropTarget }\n\t\t\t/>\n\t\t\t{ description && (\n\t\t\t\t<VisuallyHidden id={ describedById }>\n\t\t\t\t\t{ description }\n\t\t\t\t</VisuallyHidden>\n\t\t\t) }\n\t\t\t<TreeGrid\n\t\t\t\tid={ id }\n\t\t\t\tclassName={ clsx( 'block-editor-list-view-tree', {\n\t\t\t\t\t'is-dragging':\n\t\t\t\t\t\tdraggedClientIds?.length > 0 &&\n\t\t\t\t\t\tblockDropTargetIndex !== undefined,\n\t\t\t\t} ) }\n\t\t\t\taria-label={ __( 'Block navigation structure' ) }\n\t\t\t\tref={ treeGridRef }\n\t\t\t\tonCollapseRow={ collapseRow }\n\t\t\t\tonExpandRow={ expandRow }\n\t\t\t\tonFocusRow={ focusRow }\n\t\t\t\tapplicationAriaLabel={ __( 'Block navigation structure' ) }\n\t\t\t\taria-describedby={ describedById }\n\t\t\t\tstyle={ {\n\t\t\t\t\t'--wp-admin--list-view-dragged-items-height':\n\t\t\t\t\t\tdraggedClientIds?.length\n\t\t\t\t\t\t\t? `${\n\t\t\t\t\t\t\t\t\tBLOCK_LIST_ITEM_HEIGHT *\n\t\t\t\t\t\t\t\t\t( draggedClientIds.length - 1 )\n\t\t\t\t\t\t\t }px`\n\t\t\t\t\t\t\t: null,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ListViewContext.Provider value={ contextValue }>\n\t\t\t\t\t<ListViewInsertedBlockContext.Provider\n\t\t\t\t\t\tvalue={ insertedBlockClientId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ListViewTreeStateContext.Provider\n\t\t\t\t\t\t\tvalue={ treeStateContextValue }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ListViewBranch\n\t\t\t\t\t\t\t\tblocks={ clientIdsTree }\n\t\t\t\t\t\t\t\tparentId={ rootClientId }\n\t\t\t\t\t\t\t\tselectBlock={ selectEditorBlock }\n\t\t\t\t\t\t\t\tshowBlockMovers={ showBlockMovers }\n\t\t\t\t\t\t\t\tfixedListWindow={ fixedListWindow }\n\t\t\t\t\t\t\t\tselectedClientIds={ selectedClientIds }\n\t\t\t\t\t\t\t\tisExpanded={ isExpanded }\n\t\t\t\t\t\t\t\tshowAppender={ showAppender }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ListViewTreeStateContext.Provider>\n\t\t\t\t\t</ListViewInsertedBlockContext.Provider>\n\t\t\t\t</ListViewContext.Provider>\n\t\t\t</TreeGrid>\n\t\t</AsyncModeProvider>\n\t);\n}\n\n// This is the private API for the ListView component.\n// It allows access to all props, not just the public ones.\nexport const PrivateListView = forwardRef( ListViewComponent );\n\n// This is the public API for the ListView component.\n// We wrap the PrivateListView component to hide some props from the public API.\nexport default forwardRef( ( props, ref ) => {\n\treturn (\n\t\t<PrivateListView\n\t\t\tref={ ref }\n\t\t\t{ ...props }\n\t\t\tshowAppender={ false }\n\t\t\trootClientId={ null }\n\t\t\tonSelect={ null }\n\t\t\tadditionalBlockContent={ null }\n\t\t\tblockSettingsMenu={ undefined }\n\t\t/>\n\t);\n} );\n"],
5
+ "mappings": "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",
6
+ "names": ["focusRow"]
7
7
  }
@@ -1,4 +1,4 @@
1
- // packages/block-editor/src/components/list-view/leaf.js
1
+ // packages/block-editor/src/components/list-view/leaf.jsx
2
2
  import { animated } from "@react-spring/web";
3
3
  import clsx from "clsx";
4
4
  import { __experimentalTreeGridRow as TreeGridRow } from "@wordpress/components";
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/components/list-view/leaf.js"],
3
+ "sources": ["../../../src/components/list-view/leaf.jsx"],
4
4
  "sourcesContent": ["import { animated } from '@react-spring/web';\nimport clsx from 'clsx';\nimport { __experimentalTreeGridRow as TreeGridRow } from '@wordpress/components';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { forwardRef } from '@wordpress/element';\nimport useMovingAnimation from '../use-moving-animation';\n\nconst AnimatedTreeGridRow = animated( TreeGridRow );\n\nconst ListViewLeaf = forwardRef(\n\t(\n\t\t{\n\t\t\tisDragged,\n\t\t\tisSelected,\n\t\t\tposition,\n\t\t\tlevel,\n\t\t\trowCount,\n\t\t\tchildren,\n\t\t\tclassName,\n\t\t\tpath,\n\t\t\t...props\n\t\t},\n\t\tref\n\t) => {\n\t\tconst animationRef = useMovingAnimation( {\n\t\t\tclientId: props[ 'data-block' ],\n\t\t\tenableAnimation: true,\n\t\t\ttriggerAnimationOnChange: path,\n\t\t} );\n\n\t\tconst mergedRef = useMergeRefs( [ ref, animationRef ] );\n\n\t\treturn (\n\t\t\t<AnimatedTreeGridRow\n\t\t\t\tref={ mergedRef }\n\t\t\t\tclassName={ clsx( 'block-editor-list-view-leaf', className ) }\n\t\t\t\tlevel={ level }\n\t\t\t\tpositionInSet={ position }\n\t\t\t\tsetSize={ rowCount }\n\t\t\t\tisExpanded={ undefined }\n\t\t\t\t{ ...props }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</AnimatedTreeGridRow>\n\t\t);\n\t}\n);\n\nexport default ListViewLeaf;\n"],
5
5
  "mappings": ";AAAA,SAAS,gBAAgB;AACzB,OAAO,UAAU;AACjB,SAAS,6BAA6B,mBAAmB;AACzD,SAAS,oBAAoB;AAC7B,SAAS,kBAAkB;AAC3B,OAAO,wBAAwB;AA4B5B;AA1BH,IAAM,sBAAsB,SAAU,WAAY;AAElD,IAAM,eAAe;AAAA,EACpB,CACC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACJ,GACA,QACI;AACJ,UAAM,eAAe,mBAAoB;AAAA,MACxC,UAAU,MAAO,YAAa;AAAA,MAC9B,iBAAiB;AAAA,MACjB,0BAA0B;AAAA,IAC3B,CAAE;AAEF,UAAM,YAAY,aAAc,CAAE,KAAK,YAAa,CAAE;AAEtD,WACC;AAAA,MAAC;AAAA;AAAA,QACA,KAAM;AAAA,QACN,WAAY,KAAM,+BAA+B,SAAU;AAAA,QAC3D;AAAA,QACA,eAAgB;AAAA,QAChB,SAAU;AAAA,QACV,YAAa;AAAA,QACX,GAAG;AAAA,QAEH;AAAA;AAAA,IACH;AAAA,EAEF;AACD;AAEA,IAAO,eAAQ;",
6
6
  "names": []
@@ -29,7 +29,7 @@ function getCommonDepthClientIds(startId, endId, startParents, endParents) {
29
29
  end
30
30
  };
31
31
  }
32
- function focusListItem(focusClientId, treeGridElement) {
32
+ function focusListItem(focusClientId, treeGridElement, signal) {
33
33
  if (!treeGridElement) {
34
34
  return;
35
35
  }
@@ -50,11 +50,23 @@ function focusListItem(focusClientId, treeGridElement) {
50
50
  childList: true,
51
51
  subtree: true
52
52
  });
53
+ signal?.addEventListener(
54
+ "abort",
55
+ () => {
56
+ clearTimeout(timer);
57
+ observer.disconnect();
58
+ resolve(null);
59
+ },
60
+ { once: true }
61
+ );
53
62
  timer = setTimeout(() => {
54
63
  observer.disconnect();
55
64
  resolve(null);
56
65
  }, 3e3);
57
66
  }).then((element) => {
67
+ if (signal?.aborted) {
68
+ return;
69
+ }
58
70
  if (element && element.isConnected) {
59
71
  focus.focusable.find(element)?.[0]?.focus();
60
72
  }