@wordpress/block-editor 16.1.0 → 16.2.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 (1906) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/README.md +13 -1
  3. package/build/autocompleters/block.cjs.map +2 -2
  4. package/build/components/alignment-control/index.cjs.map +2 -2
  5. package/build/components/alignment-control/ui.cjs.map +2 -2
  6. package/build/components/autocomplete/index.cjs.map +2 -2
  7. package/build/components/background-image-control/index.cjs.map +2 -2
  8. package/build/components/block-actions/index.cjs +2 -1
  9. package/build/components/block-actions/index.cjs.map +2 -2
  10. package/build/components/block-alignment-control/constants.cjs.map +2 -2
  11. package/build/components/block-alignment-control/index.cjs.map +2 -2
  12. package/build/components/block-alignment-control/ui.cjs.map +2 -2
  13. package/build/components/block-alignment-control/use-available-alignments.cjs.map +2 -2
  14. package/build/components/block-alignment-matrix-control/index.cjs.map +2 -2
  15. package/build/components/block-allowed-blocks/allowed-blocks-control.cjs.map +2 -2
  16. package/build/components/block-allowed-blocks/modal.cjs.map +2 -2
  17. package/build/components/block-bindings/attribute-control.cjs.map +2 -2
  18. package/build/components/block-bindings/index.cjs.map +2 -2
  19. package/build/components/block-bindings/source-fields-list.cjs.map +2 -2
  20. package/build/components/block-bindings/use-block-bindings-utils.cjs.map +2 -2
  21. package/build/components/block-breadcrumb/index.cjs.map +2 -2
  22. package/build/components/block-canvas/index.cjs.map +2 -2
  23. package/build/components/block-card/index.cjs.map +2 -2
  24. package/build/components/block-compare/block-view.cjs.map +2 -2
  25. package/build/components/block-compare/index.cjs.map +2 -2
  26. package/build/components/block-content-overlay/index.cjs.map +2 -2
  27. package/build/components/block-context/index.cjs.map +2 -2
  28. package/build/components/block-controls/fill.cjs.map +2 -2
  29. package/build/components/block-controls/groups.cjs.map +2 -2
  30. package/build/components/block-controls/hook.cjs.map +2 -2
  31. package/build/components/block-controls/index.cjs.map +2 -2
  32. package/build/components/block-controls/slot.cjs.map +2 -2
  33. package/build/components/block-draggable/draggable-chip.cjs.map +2 -2
  34. package/build/components/block-draggable/index.cjs.map +2 -2
  35. package/build/components/block-draggable/use-scroll-when-dragging.cjs.map +2 -2
  36. package/build/components/block-edit/context.cjs.map +2 -2
  37. package/build/components/block-edit/edit.cjs.map +2 -2
  38. package/build/components/block-edit/index.cjs.map +2 -2
  39. package/build/components/block-edit/multiple-usage-warning.cjs.map +2 -2
  40. package/build/components/block-edit-visually-button/index.cjs.map +2 -2
  41. package/build/components/block-editing-mode/index.cjs.map +2 -2
  42. package/build/components/block-full-height-alignment-control/index.cjs.map +2 -2
  43. package/build/components/block-heading-level-dropdown/heading-level-icon.cjs.map +2 -2
  44. package/build/components/block-heading-level-dropdown/index.cjs.map +2 -2
  45. package/build/components/block-icon/index.cjs.map +2 -2
  46. package/build/components/block-inspector/edit-contents.cjs +48 -40
  47. package/build/components/block-inspector/edit-contents.cjs.map +3 -3
  48. package/build/components/block-inspector/index.cjs +9 -4
  49. package/build/components/block-inspector/index.cjs.map +2 -2
  50. package/build/components/block-inspector/inspector-pre-tabs-slot-fill.cjs.map +2 -2
  51. package/build/components/block-inspector/useBlockInspectorAnimationSettings.cjs.map +2 -2
  52. package/build/components/block-list/block-crash-boundary.cjs.map +2 -2
  53. package/build/components/block-list/block-crash-warning.cjs.map +2 -2
  54. package/build/components/block-list/block-html.cjs.map +2 -2
  55. package/build/components/block-list/block-invalid-warning.cjs.map +2 -2
  56. package/build/components/block-list/block.cjs +36 -10
  57. package/build/components/block-list/block.cjs.map +3 -3
  58. package/build/components/block-list/index.cjs +33 -9
  59. package/build/components/block-list/index.cjs.map +2 -2
  60. package/build/components/block-list/layout.cjs.map +2 -2
  61. package/build/components/block-list/private-block-context.cjs.map +2 -2
  62. package/build/components/block-list/subdirectory-icon.cjs.map +2 -2
  63. package/build/components/block-list/use-block-props/index.cjs +36 -2
  64. package/build/components/block-list/use-block-props/index.cjs.map +3 -3
  65. package/build/components/block-list/use-block-props/use-block-refs.cjs.map +2 -2
  66. package/build/components/block-list/use-block-props/use-firefox-draggable-compatibility.cjs.map +2 -2
  67. package/build/components/block-list/use-block-props/use-focus-first-element.cjs.map +2 -2
  68. package/build/components/block-list/use-block-props/use-focus-handler.cjs.map +2 -2
  69. package/build/components/block-list/use-block-props/use-intersection-observer.cjs.map +2 -2
  70. package/build/components/block-list/use-block-props/use-is-hovered.cjs.map +2 -2
  71. package/build/components/block-list/use-block-props/use-register-block-event-handlers.cjs.map +2 -2
  72. package/build/components/block-list/use-block-props/use-scroll-into-view.cjs.map +2 -2
  73. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.cjs.map +2 -2
  74. package/build/components/block-list/use-in-between-inserter.cjs.map +2 -2
  75. package/build/components/block-list/zoom-out-separator.cjs.map +2 -2
  76. package/build/components/block-list-appender/index.cjs.map +2 -2
  77. package/build/components/block-lock/menu-item.cjs.map +2 -2
  78. package/build/components/block-lock/modal.cjs.map +2 -2
  79. package/build/components/block-lock/toolbar.cjs.map +2 -2
  80. package/build/components/block-lock/use-block-lock.cjs.map +2 -2
  81. package/build/components/block-manager/category.cjs.map +2 -2
  82. package/build/components/block-manager/checklist.cjs.map +2 -2
  83. package/build/components/block-manager/index.cjs.map +2 -2
  84. package/build/components/block-mover/button.cjs +15 -9
  85. package/build/components/block-mover/button.cjs.map +2 -2
  86. package/build/components/block-mover/index.cjs.map +2 -2
  87. package/build/components/block-mover/mover-description.cjs.map +2 -2
  88. package/build/components/block-navigation/dropdown.cjs.map +2 -2
  89. package/build/components/block-parent-selector/index.cjs.map +2 -2
  90. package/build/components/block-pattern-setup/index.cjs.map +2 -2
  91. package/build/components/block-pattern-setup/setup-toolbar.cjs.map +2 -2
  92. package/build/components/block-pattern-setup/use-patterns-setup.cjs.map +2 -2
  93. package/build/components/block-patterns-list/index.cjs.map +2 -2
  94. package/build/components/block-patterns-paging/index.cjs.map +2 -2
  95. package/build/components/block-popover/cover.cjs.map +2 -2
  96. package/build/components/block-popover/drop-zone.cjs.map +2 -2
  97. package/build/components/block-popover/inbetween.cjs.map +2 -2
  98. package/build/components/block-popover/index.cjs.map +2 -2
  99. package/build/components/block-popover/use-popover-scroll.cjs.map +2 -2
  100. package/build/components/block-preview/async.cjs.map +2 -2
  101. package/build/components/block-preview/auto.cjs.map +2 -2
  102. package/build/components/block-preview/index.cjs.map +2 -2
  103. package/build/components/block-quick-navigation/index.cjs.map +2 -2
  104. package/build/components/block-removal-warning-modal/index.cjs.map +2 -2
  105. package/build/components/block-rename/modal.cjs.map +2 -2
  106. package/build/components/block-rename/rename-control.cjs.map +2 -2
  107. package/build/components/block-rename/use-block-rename.cjs.map +2 -2
  108. package/build/components/block-selection-clearer/index.cjs.map +2 -2
  109. package/build/components/block-settings-menu/block-html-convert-button.cjs.map +2 -2
  110. package/build/components/block-settings-menu/block-mode-toggle.cjs.map +2 -2
  111. package/build/components/block-settings-menu/block-parent-selector-menu-item.cjs.map +2 -2
  112. package/build/components/block-settings-menu/block-settings-dropdown.cjs +1 -1
  113. package/build/components/block-settings-menu/block-settings-dropdown.cjs.map +2 -2
  114. package/build/components/block-settings-menu/block-settings-menu-first-item.cjs.map +2 -2
  115. package/build/components/block-settings-menu/index.cjs.map +2 -2
  116. package/build/components/block-settings-menu-controls/index.cjs.map +2 -2
  117. package/build/components/block-styles/index.cjs.map +2 -2
  118. package/build/components/block-styles/menu-items.cjs.map +2 -2
  119. package/build/components/block-styles/use-styles-for-block.cjs.map +2 -2
  120. package/build/components/block-styles/utils.cjs.map +2 -2
  121. package/build/components/block-switcher/block-styles-menu.cjs.map +2 -2
  122. package/build/components/block-switcher/block-transformations-menu.cjs.map +2 -2
  123. package/build/components/block-switcher/block-variation-transformations.cjs.map +2 -2
  124. package/build/components/block-switcher/index.cjs.map +2 -2
  125. package/build/components/block-switcher/pattern-transformations-menu.cjs.map +2 -2
  126. package/build/components/block-switcher/preview-block-popover.cjs.map +2 -2
  127. package/build/components/block-switcher/use-transformed-patterns.cjs.map +2 -2
  128. package/build/components/block-switcher/utils.cjs.map +2 -2
  129. package/build/components/block-title/index.cjs.map +2 -2
  130. package/build/components/block-title/use-block-display-title.cjs.map +2 -2
  131. package/build/components/block-toolbar/block-styles-dropdown.cjs.map +2 -2
  132. package/build/components/block-toolbar/block-toolbar-icon.cjs.map +2 -2
  133. package/build/components/block-toolbar/block-toolbar-last-item.cjs.map +2 -2
  134. package/build/components/block-toolbar/change-design.cjs.map +2 -2
  135. package/build/components/block-toolbar/edit-section-button.cjs.map +2 -2
  136. package/build/components/block-toolbar/index.cjs.map +2 -2
  137. package/build/components/block-toolbar/pattern-overrides-dropdown.cjs.map +2 -2
  138. package/build/components/block-toolbar/switch-section-style.cjs.map +2 -2
  139. package/build/components/block-toolbar/use-has-block-toolbar.cjs.map +2 -2
  140. package/build/components/block-toolbar/utils.cjs.map +2 -2
  141. package/build/components/block-tools/block-toolbar-popover.cjs.map +2 -2
  142. package/build/components/block-tools/empty-block-inserter.cjs.map +2 -2
  143. package/build/components/block-tools/index.cjs +2 -4
  144. package/build/components/block-tools/index.cjs.map +2 -2
  145. package/build/components/block-tools/insertion-point.cjs.map +2 -2
  146. package/build/components/block-tools/use-block-toolbar-popover-props.cjs.map +2 -2
  147. package/build/components/block-tools/use-selected-block-tool-props.cjs.map +2 -2
  148. package/build/components/block-tools/use-show-block-tools.cjs.map +2 -2
  149. package/build/components/block-tools/zoom-out-mode-inserter-button.cjs.map +2 -2
  150. package/build/components/block-tools/zoom-out-mode-inserters.cjs.map +2 -2
  151. package/build/components/block-types-list/index.cjs.map +2 -2
  152. package/build/components/block-variation-picker/index.cjs.map +2 -2
  153. package/build/components/block-variation-transforms/index.cjs.map +2 -2
  154. package/build/components/block-vertical-alignment-control/index.cjs.map +2 -2
  155. package/build/components/block-vertical-alignment-control/ui.cjs.map +2 -2
  156. package/build/components/block-visibility/constants.cjs +1 -1
  157. package/build/components/block-visibility/constants.cjs.map +3 -3
  158. package/build/components/block-visibility/modal.cjs.map +2 -2
  159. package/build/components/block-visibility/use-block-visibility.cjs +15 -17
  160. package/build/components/block-visibility/use-block-visibility.cjs.map +3 -3
  161. package/build/components/block-visibility/utils.cjs.map +2 -2
  162. package/build/components/block-visibility/viewport-menu-item.cjs.map +2 -2
  163. package/build/components/block-visibility/viewport-toolbar.cjs.map +2 -2
  164. package/build/components/block-visibility/viewport-visibility-info.cjs.map +2 -2
  165. package/build/components/border-radius-control/constants.cjs.map +2 -2
  166. package/build/components/border-radius-control/index.cjs.map +2 -2
  167. package/build/components/border-radius-control/linked-button.cjs.map +2 -2
  168. package/build/components/border-radius-control/utils.cjs.map +2 -2
  169. package/build/components/button-block-appender/index.cjs.map +2 -2
  170. package/build/components/child-layout-control/index.cjs.map +2 -2
  171. package/build/components/collab/note-icon-slot.cjs.map +2 -2
  172. package/build/components/collab/note-icon-toolbar-slot.cjs.map +2 -2
  173. package/build/components/color-palette/control.cjs.map +2 -2
  174. package/build/components/color-palette/index.cjs.map +2 -2
  175. package/build/components/color-palette/with-color-context.cjs.map +2 -2
  176. package/build/components/color-style-selector/index.cjs.map +2 -2
  177. package/build/components/colors/utils.cjs +2 -4
  178. package/build/components/colors/utils.cjs.map +3 -3
  179. package/build/components/colors/with-colors.cjs +2 -4
  180. package/build/components/colors/with-colors.cjs.map +3 -3
  181. package/build/components/colors-gradients/control.cjs.map +2 -2
  182. package/build/components/colors-gradients/dropdown.cjs.map +2 -2
  183. package/build/components/colors-gradients/panel-color-gradient-settings.cjs +5 -5
  184. package/build/components/colors-gradients/panel-color-gradient-settings.cjs.map +2 -2
  185. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.cjs.map +2 -2
  186. package/build/components/contrast-checker/index.cjs.map +2 -2
  187. package/build/components/convert-to-group-buttons/index.cjs +2 -5
  188. package/build/components/convert-to-group-buttons/index.cjs.map +2 -2
  189. package/build/components/convert-to-group-buttons/toolbar.cjs +2 -4
  190. package/build/components/convert-to-group-buttons/toolbar.cjs.map +2 -2
  191. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.cjs.map +2 -2
  192. package/build/components/copy-handler/index.cjs.map +2 -2
  193. package/build/components/date-format-picker/index.cjs.map +2 -2
  194. package/build/components/default-block-appender/index.cjs.map +2 -2
  195. package/build/components/dimension-control/index.cjs.map +2 -2
  196. package/build/components/dimensions-tool/aspect-ratio-tool.cjs.map +2 -2
  197. package/build/components/dimensions-tool/index.cjs.map +2 -2
  198. package/build/components/dimensions-tool/scale-tool.cjs.map +2 -2
  199. package/build/components/dimensions-tool/width-height-tool.cjs.map +2 -2
  200. package/build/components/duotone-control/index.cjs.map +2 -2
  201. package/build/components/editable-text/index.cjs.map +2 -2
  202. package/build/components/editor-styles/index.cjs.map +2 -2
  203. package/build/components/fit-text-size-warning/index.cjs.map +2 -2
  204. package/build/components/floating-toolbar/nav-up-icon.cjs.map +2 -2
  205. package/build/components/font-appearance-control/index.cjs.map +2 -2
  206. package/build/components/font-family/index.cjs.map +2 -2
  207. package/build/components/font-sizes/font-size-picker.cjs.map +2 -2
  208. package/build/components/font-sizes/utils.cjs +2 -4
  209. package/build/components/font-sizes/utils.cjs.map +3 -3
  210. package/build/components/font-sizes/with-font-sizes.cjs.map +2 -2
  211. package/build/components/global-styles/advanced-panel.cjs.map +2 -2
  212. package/build/components/global-styles/background-panel.cjs.map +2 -2
  213. package/build/components/global-styles/border-panel.cjs.map +2 -2
  214. package/build/components/global-styles/color-gradient-dropdown-item.cjs.map +2 -2
  215. package/build/components/global-styles/color-panel.cjs.map +2 -2
  216. package/build/components/global-styles/dimensions-panel.cjs.map +2 -2
  217. package/build/components/global-styles/filters-panel.cjs.map +2 -2
  218. package/build/components/global-styles/hooks.cjs.map +2 -2
  219. package/build/components/global-styles/image-settings-panel.cjs.map +2 -2
  220. package/build/components/global-styles/inheritance/index.cjs.map +2 -2
  221. package/build/components/global-styles/inherited-value-context.cjs.map +2 -2
  222. package/build/components/global-styles/shadow-panel-components.cjs.map +2 -2
  223. package/build/components/global-styles/state-control-badges.cjs.map +2 -2
  224. package/build/components/global-styles/state-control.cjs.map +2 -2
  225. package/build/components/global-styles/typography-panel.cjs.map +2 -2
  226. package/build/components/global-styles/typography-utils.cjs.map +2 -2
  227. package/build/components/global-styles/utils.cjs.map +2 -2
  228. package/build/components/gradients/use-gradient.cjs.map +2 -2
  229. package/build/components/gradients/with-gradient.cjs.map +2 -2
  230. package/build/components/grid/grid-item-movers.cjs.map +2 -2
  231. package/build/components/grid/grid-item-resizer.cjs.map +2 -2
  232. package/build/components/grid/grid-visualizer.cjs.map +2 -2
  233. package/build/components/grid/use-get-number-of-blocks-before-cell.cjs.map +2 -2
  234. package/build/components/grid/use-grid-layout-sync.cjs.map +2 -2
  235. package/build/components/height-control/index.cjs.map +2 -2
  236. package/build/components/html-element-control/index.cjs.map +2 -2
  237. package/build/components/html-element-control/messages.cjs.map +2 -2
  238. package/build/components/iframe/index.cjs +19 -24
  239. package/build/components/iframe/index.cjs.map +2 -2
  240. package/build/components/iframe/use-scale-canvas.cjs +20 -6
  241. package/build/components/iframe/use-scale-canvas.cjs.map +2 -2
  242. package/build/components/image-editor/aspect-ratio-dropdown.cjs.map +2 -2
  243. package/build/components/image-editor/context.cjs.map +2 -2
  244. package/build/components/image-editor/cropper.cjs.map +2 -2
  245. package/build/components/image-editor/form-controls.cjs.map +2 -2
  246. package/build/components/image-editor/index.cjs.map +2 -2
  247. package/build/components/image-editor/rotation-button.cjs.map +2 -2
  248. package/build/components/image-editor/use-save-image.cjs.map +2 -2
  249. package/build/components/image-editor/use-transform-image.cjs.map +2 -2
  250. package/build/components/image-editor/zoom-dropdown.cjs.map +2 -2
  251. package/build/components/image-size-control/index.cjs.map +2 -2
  252. package/build/components/image-size-control/use-dimension-handler.cjs.map +2 -2
  253. package/build/components/inner-blocks/button-block-appender.cjs.map +2 -2
  254. package/build/components/inner-blocks/default-block-appender.cjs.map +2 -2
  255. package/build/components/inner-blocks/index.cjs.map +2 -2
  256. package/build/components/inner-blocks/use-block-context.cjs.map +2 -2
  257. package/build/components/inner-blocks/use-inner-block-template-sync.cjs +34 -7
  258. package/build/components/inner-blocks/use-inner-block-template-sync.cjs.map +3 -3
  259. package/build/components/inner-blocks/use-nested-settings-update.cjs.map +2 -2
  260. package/build/components/inner-content/index.cjs.map +2 -2
  261. package/build/components/inserter/block-patterns-explorer/index.cjs.map +2 -2
  262. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.cjs.map +2 -2
  263. package/build/components/inserter/block-patterns-explorer/pattern-list.cjs.map +2 -2
  264. package/build/components/inserter/block-patterns-tab/index.cjs.map +2 -2
  265. package/build/components/inserter/block-patterns-tab/pattern-category-previews.cjs.map +2 -2
  266. package/build/components/inserter/block-patterns-tab/patterns-filter.cjs.map +2 -2
  267. package/build/components/inserter/block-patterns-tab/use-pattern-categories.cjs.map +2 -2
  268. package/build/components/inserter/block-patterns-tab/utils.cjs.map +2 -2
  269. package/build/components/inserter/block-types-tab.cjs.map +2 -2
  270. package/build/components/inserter/category-tabs/index.cjs.map +2 -2
  271. package/build/components/inserter/hooks/use-block-types-state.cjs.map +2 -2
  272. package/build/components/inserter/hooks/use-insertion-point.cjs.map +2 -2
  273. package/build/components/inserter/hooks/use-patterns-paging.cjs.map +2 -2
  274. package/build/components/inserter/hooks/use-patterns-state.cjs.map +2 -2
  275. package/build/components/inserter/index.cjs +4 -13
  276. package/build/components/inserter/index.cjs.map +2 -2
  277. package/build/components/inserter/library.cjs.map +2 -2
  278. package/build/components/inserter/media-tab/hooks.cjs.map +2 -2
  279. package/build/components/inserter/media-tab/media-list.cjs.map +2 -2
  280. package/build/components/inserter/media-tab/media-panel.cjs.map +2 -2
  281. package/build/components/inserter/media-tab/media-preview.cjs.map +2 -2
  282. package/build/components/inserter/media-tab/media-tab.cjs.map +2 -2
  283. package/build/components/inserter/media-tab/utils.cjs.map +2 -2
  284. package/build/components/inserter/menu.cjs.map +2 -2
  285. package/build/components/inserter/mobile-tab-navigation.cjs.map +2 -2
  286. package/build/components/inserter/no-results.cjs.map +2 -2
  287. package/build/components/inserter/panel.cjs.map +2 -2
  288. package/build/components/inserter/preview-panel.cjs.map +2 -2
  289. package/build/components/inserter/quick-inserter.cjs.map +2 -2
  290. package/build/components/inserter/search-items.cjs.map +2 -2
  291. package/build/components/inserter/search-results.cjs.map +2 -2
  292. package/build/components/inserter/tips.cjs.map +2 -2
  293. package/build/components/inserter-button/sparkles.cjs.map +2 -2
  294. package/build/components/inserter-draggable-blocks/index.cjs.map +2 -2
  295. package/build/components/inserter-list-item/index.cjs.map +2 -2
  296. package/build/components/inserter-listbox/context.cjs.map +2 -2
  297. package/build/components/inserter-listbox/group.cjs.map +2 -2
  298. package/build/components/inserter-listbox/index.cjs.map +2 -2
  299. package/build/components/inserter-listbox/item.cjs.map +2 -2
  300. package/build/components/inserter-listbox/row.cjs.map +2 -2
  301. package/build/components/inserter-menu-extension/index.cjs.map +2 -2
  302. package/build/components/inspector-controls/block-support-slot-container.cjs.map +2 -2
  303. package/build/components/inspector-controls/block-support-tools-panel.cjs.map +2 -2
  304. package/build/components/inspector-controls/fill.cjs +15 -17
  305. package/build/components/inspector-controls/fill.cjs.map +2 -2
  306. package/build/components/inspector-controls/groups.cjs.map +2 -2
  307. package/build/components/inspector-controls/index.cjs.map +2 -2
  308. package/build/components/inspector-controls/last-item.cjs.map +2 -2
  309. package/build/components/inspector-controls/list-view-content-popover.cjs.map +2 -2
  310. package/build/components/inspector-controls/slot.cjs.map +2 -2
  311. package/build/components/inspector-controls-tabs/advanced-controls-panel.cjs.map +2 -2
  312. package/build/components/inspector-controls-tabs/content-tab.cjs.map +2 -2
  313. package/build/components/inspector-controls-tabs/index.cjs.map +2 -2
  314. package/build/components/inspector-controls-tabs/position-controls-panel.cjs.map +2 -2
  315. package/build/components/inspector-controls-tabs/settings-tab.cjs.map +2 -2
  316. package/build/components/inspector-controls-tabs/styles-tab.cjs.map +2 -2
  317. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.cjs.map +2 -2
  318. package/build/components/inspector-controls-tabs/utils.cjs.map +2 -2
  319. package/build/components/inspector-popover-header/index.cjs.map +2 -2
  320. package/build/components/justify-content-control/index.cjs.map +2 -2
  321. package/build/components/justify-content-control/ui.cjs.map +2 -2
  322. package/build/components/keyboard-shortcuts/index.cjs.map +2 -2
  323. package/build/components/letter-spacing-control/index.cjs.map +2 -2
  324. package/build/components/line-height-control/index.cjs.map +2 -2
  325. package/build/components/link-control/constants.cjs.map +2 -2
  326. package/build/components/link-control/index.cjs.map +2 -2
  327. package/build/components/link-control/is-url-like.cjs.map +2 -2
  328. package/build/components/link-control/link-preview.cjs.map +2 -2
  329. package/build/components/link-control/normalize-url.cjs.map +2 -2
  330. package/build/components/link-control/search-create-button.cjs.map +2 -2
  331. package/build/components/link-control/search-input.cjs.map +2 -2
  332. package/build/components/link-control/search-item.cjs.map +2 -2
  333. package/build/components/link-control/search-results.cjs +1 -1
  334. package/build/components/link-control/search-results.cjs.map +2 -2
  335. package/build/components/link-control/settings-drawer.cjs.map +2 -2
  336. package/build/components/link-control/settings.cjs.map +2 -2
  337. package/build/components/link-control/use-create-page.cjs.map +2 -2
  338. package/build/components/link-control/use-internal-value.cjs.map +2 -2
  339. package/build/components/link-control/use-rich-url-data.cjs +1 -1
  340. package/build/components/link-control/use-rich-url-data.cjs.map +2 -2
  341. package/build/components/link-control/use-search-handler.cjs.map +2 -2
  342. package/build/components/link-control/viewer-slot.cjs.map +2 -2
  343. package/build/components/link-picker/link-picker.cjs.map +2 -2
  344. package/build/components/link-picker/link-preview.cjs.map +2 -2
  345. package/build/components/list-view/appender.cjs +6 -3
  346. package/build/components/list-view/appender.cjs.map +2 -2
  347. package/build/components/list-view/aria-referenced-text.cjs +2 -9
  348. package/build/components/list-view/aria-referenced-text.cjs.map +2 -2
  349. package/build/components/list-view/block-contents.cjs +17 -20
  350. package/build/components/list-view/block-contents.cjs.map +2 -2
  351. package/build/components/list-view/block-select-button.cjs +40 -19
  352. package/build/components/list-view/block-select-button.cjs.map +3 -3
  353. package/build/components/list-view/block.cjs +38 -41
  354. package/build/components/list-view/block.cjs.map +3 -3
  355. package/build/components/list-view/branch.cjs +93 -77
  356. package/build/components/list-view/branch.cjs.map +3 -3
  357. package/build/components/list-view/context.cjs +16 -2
  358. package/build/components/list-view/context.cjs.map +2 -2
  359. package/build/components/list-view/drop-indicator.cjs +4 -3
  360. package/build/components/list-view/drop-indicator.cjs.map +3 -3
  361. package/build/components/list-view/expander.cjs.map +2 -2
  362. package/build/components/list-view/index.cjs +83 -96
  363. package/build/components/list-view/index.cjs.map +2 -2
  364. package/build/components/list-view/leaf.cjs.map +2 -2
  365. package/build/components/list-view/use-block-selection.cjs.map +2 -2
  366. package/build/components/list-view/use-clipboard-handler.cjs.map +2 -2
  367. package/build/components/list-view/use-list-view-block-indexes.cjs.map +2 -2
  368. package/build/components/list-view/use-list-view-client-ids.cjs.map +2 -2
  369. package/build/components/list-view/use-list-view-collapse-items.cjs +3 -4
  370. package/build/components/list-view/use-list-view-collapse-items.cjs.map +2 -2
  371. package/build/components/list-view/use-list-view-drop-zone.cjs +7 -13
  372. package/build/components/list-view/use-list-view-drop-zone.cjs.map +2 -2
  373. package/build/components/list-view/use-list-view-expand-selected-item.cjs +3 -3
  374. package/build/components/list-view/use-list-view-expand-selected-item.cjs.map +2 -2
  375. package/build/components/list-view/use-list-view-images.cjs +4 -3
  376. package/build/components/list-view/use-list-view-images.cjs.map +2 -2
  377. package/build/components/list-view/use-list-view-scroll-into-view.cjs.map +2 -2
  378. package/build/components/list-view/utils.cjs +6 -3
  379. package/build/components/list-view/utils.cjs.map +2 -2
  380. package/build/components/media-placeholder/index.cjs.map +2 -2
  381. package/build/components/media-replace-flow/index.cjs.map +2 -2
  382. package/build/components/media-upload/check.cjs.map +2 -2
  383. package/build/components/media-upload/index.cjs.map +2 -2
  384. package/build/components/multi-selection-inspector/index.cjs +33 -12
  385. package/build/components/multi-selection-inspector/index.cjs.map +3 -3
  386. package/build/components/navigable-toolbar/index.cjs +29 -18
  387. package/build/components/navigable-toolbar/index.cjs.map +2 -2
  388. package/build/components/observe-typing/index.cjs.map +2 -2
  389. package/build/components/panel-color-settings/index.cjs.map +2 -2
  390. package/build/components/plain-text/index.cjs.map +2 -2
  391. package/build/components/preset-input-control/custom-value-controls.cjs.map +2 -2
  392. package/build/components/preset-input-control/index.cjs.map +2 -2
  393. package/build/components/preview-options/index.cjs.map +2 -2
  394. package/build/components/provider/block-refs-provider.cjs.map +2 -2
  395. package/build/components/provider/index.cjs.map +2 -2
  396. package/build/components/provider/selection-context.cjs.map +2 -2
  397. package/build/components/provider/use-block-sync.cjs.map +2 -2
  398. package/build/components/provider/use-media-upload-settings.cjs.map +2 -2
  399. package/build/components/provider/with-registry-provider.cjs.map +2 -2
  400. package/build/components/publish-date-time-picker/index.cjs.map +2 -2
  401. package/build/components/recursion-provider/index.cjs.map +2 -2
  402. package/build/components/resizable-box-popover/index.cjs.map +2 -2
  403. package/build/components/resolution-tool/index.cjs.map +2 -2
  404. package/build/components/responsive-block-control/index.cjs.map +2 -2
  405. package/build/components/responsive-block-control/label.cjs.map +2 -2
  406. package/build/components/rich-text/content.cjs.map +2 -2
  407. package/build/components/rich-text/event-listeners/before-input-rules.cjs.map +2 -2
  408. package/build/components/rich-text/event-listeners/delete.cjs.map +2 -2
  409. package/build/components/rich-text/event-listeners/enter.cjs.map +2 -2
  410. package/build/components/rich-text/event-listeners/firefox-compat.cjs.map +2 -2
  411. package/build/components/rich-text/event-listeners/index.cjs.map +2 -2
  412. package/build/components/rich-text/event-listeners/input-events.cjs.map +2 -2
  413. package/build/components/rich-text/event-listeners/input-rules.cjs +13 -10
  414. package/build/components/rich-text/event-listeners/input-rules.cjs.map +2 -2
  415. package/build/components/rich-text/event-listeners/insert-replacement-text.cjs.map +2 -2
  416. package/build/components/rich-text/event-listeners/paste-handler.cjs +8 -1
  417. package/build/components/rich-text/event-listeners/paste-handler.cjs.map +2 -2
  418. package/build/components/rich-text/event-listeners/remove-browser-shortcuts.cjs.map +2 -2
  419. package/build/components/rich-text/event-listeners/shortcuts.cjs.map +2 -2
  420. package/build/components/rich-text/event-listeners/undo-automatic-change.cjs.map +2 -2
  421. package/build/components/rich-text/format-edit.cjs.map +2 -2
  422. package/build/components/rich-text/format-toolbar/index.cjs.map +2 -2
  423. package/build/components/rich-text/format-toolbar-container.cjs.map +2 -2
  424. package/build/components/rich-text/get-rich-text-values.cjs.map +2 -2
  425. package/build/components/rich-text/index.cjs.map +2 -2
  426. package/build/components/rich-text/multiline.cjs.map +2 -2
  427. package/build/components/rich-text/prevent-event-discovery.cjs.map +2 -2
  428. package/build/components/rich-text/toolbar-button.cjs.map +2 -2
  429. package/build/components/rich-text/use-mark-persistent.cjs.map +2 -2
  430. package/build/components/rich-text/utils.cjs.map +2 -2
  431. package/build/components/rich-text/with-deprecations.cjs.map +2 -2
  432. package/build/components/selection-scroll-into-view/index.cjs.map +2 -2
  433. package/build/components/skip-to-selected-block/index.cjs.map +2 -2
  434. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.cjs.map +2 -2
  435. package/build/components/spacing-sizes-control/index.cjs +2 -2
  436. package/build/components/spacing-sizes-control/index.cjs.map +2 -2
  437. package/build/components/spacing-sizes-control/input-controls/axial.cjs.map +2 -2
  438. package/build/components/spacing-sizes-control/input-controls/separated.cjs.map +2 -2
  439. package/build/components/spacing-sizes-control/input-controls/single.cjs.map +2 -2
  440. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.cjs.map +2 -2
  441. package/build/components/spacing-sizes-control/linked-button.cjs.map +2 -2
  442. package/build/components/spacing-sizes-control/utils.cjs.map +2 -2
  443. package/build/components/tabbed-sidebar/index.cjs.map +2 -2
  444. package/build/components/text-alignment-control/index.cjs.map +2 -2
  445. package/build/components/text-decoration-control/index.cjs.map +2 -2
  446. package/build/components/text-indent-control/index.cjs.map +2 -2
  447. package/build/components/text-transform-control/index.cjs.map +2 -2
  448. package/build/components/tool-selector/index.cjs.map +2 -2
  449. package/build/components/typewriter/index.cjs.map +2 -2
  450. package/build/components/unit-control/index.cjs.map +2 -2
  451. package/build/components/url-input/button.cjs.map +2 -2
  452. package/build/components/url-input/index.cjs +28 -46
  453. package/build/components/url-input/index.cjs.map +2 -2
  454. package/build/components/url-popover/image-url-input-ui.cjs +2 -2
  455. package/build/components/url-popover/image-url-input-ui.cjs.map +2 -2
  456. package/build/components/url-popover/index.cjs.map +2 -2
  457. package/build/components/url-popover/link-editor.cjs.map +2 -2
  458. package/build/components/url-popover/link-viewer-url.cjs.map +2 -2
  459. package/build/components/url-popover/link-viewer.cjs.map +2 -2
  460. package/build/components/use-block-commands/index.cjs +2 -1
  461. package/build/components/use-block-commands/index.cjs.map +2 -2
  462. package/build/components/use-block-display-information/index.cjs +6 -1
  463. package/build/components/use-block-display-information/index.cjs.map +2 -2
  464. package/build/components/use-block-drop-zone/index.cjs.map +2 -2
  465. package/build/components/use-flash-editable-blocks/index.cjs.map +2 -2
  466. package/build/components/use-list-view-panel-state/index.cjs.map +2 -2
  467. package/build/components/use-moving-animation/index.cjs +2 -2
  468. package/build/components/use-moving-animation/index.cjs.map +2 -2
  469. package/build/components/use-on-block-drop/index.cjs.map +2 -2
  470. package/build/components/use-paste-styles/index.cjs.map +2 -2
  471. package/build/components/use-resize-canvas/index.cjs.map +2 -2
  472. package/build/components/use-settings/index.cjs.map +2 -2
  473. package/build/components/warning/index.cjs.map +2 -2
  474. package/build/components/writing-flow/index.cjs.map +2 -2
  475. package/build/components/writing-flow/use-arrow-nav.cjs +6 -1
  476. package/build/components/writing-flow/use-arrow-nav.cjs.map +2 -2
  477. package/build/components/writing-flow/use-click-selection.cjs.map +2 -2
  478. package/build/components/writing-flow/use-clipboard-handler.cjs +29 -4
  479. package/build/components/writing-flow/use-clipboard-handler.cjs.map +3 -3
  480. package/build/components/writing-flow/use-drag-selection.cjs.map +2 -2
  481. package/build/components/writing-flow/use-editable-root-event-handlers.cjs.map +2 -2
  482. package/build/components/writing-flow/use-editable-root.cjs.map +2 -2
  483. package/build/components/writing-flow/use-home-end.cjs.map +2 -2
  484. package/build/components/writing-flow/use-input.cjs.map +2 -2
  485. package/build/components/writing-flow/use-multi-selection.cjs.map +2 -2
  486. package/build/components/writing-flow/use-preview-mode-nav.cjs.map +2 -2
  487. package/build/components/writing-flow/use-select-all.cjs.map +2 -2
  488. package/build/components/writing-flow/use-selection-observer.cjs.map +2 -2
  489. package/build/components/writing-flow/use-tab-nav.cjs +3 -1
  490. package/build/components/writing-flow/use-tab-nav.cjs.map +2 -2
  491. package/build/components/writing-flow/utils.cjs.map +2 -2
  492. package/build/components/writing-mode-control/index.cjs.map +2 -2
  493. package/build/hooks/align.cjs.map +2 -2
  494. package/build/hooks/allowed-blocks.cjs.map +2 -2
  495. package/build/hooks/anchor.cjs.map +2 -2
  496. package/build/hooks/aria-label.cjs.map +2 -2
  497. package/build/hooks/auto-inspector-controls.cjs.map +2 -2
  498. package/build/hooks/background.cjs +1 -4
  499. package/build/hooks/background.cjs.map +2 -2
  500. package/build/hooks/block-bindings.cjs.map +2 -2
  501. package/build/hooks/block-fields/fields-dropdown-menu.cjs.map +2 -2
  502. package/build/hooks/block-fields/index.cjs.map +2 -2
  503. package/build/hooks/block-fields/link/index.cjs.map +2 -2
  504. package/build/hooks/block-fields/media/index.cjs.map +2 -2
  505. package/build/hooks/block-fields/rich-text/index.cjs.map +2 -2
  506. package/build/hooks/block-fields/use-inspector-popover-placement.cjs.map +2 -2
  507. package/build/hooks/block-hooks.cjs.map +2 -2
  508. package/build/hooks/block-renaming.cjs.map +2 -2
  509. package/build/hooks/block-style-state.cjs.map +2 -2
  510. package/build/hooks/block-style-variation.cjs.map +2 -2
  511. package/build/hooks/border.cjs.map +2 -2
  512. package/build/hooks/color.cjs.map +2 -2
  513. package/build/hooks/compat.cjs.map +2 -2
  514. package/build/hooks/contrast-checker.cjs.map +2 -2
  515. package/build/hooks/custom-class-name.cjs.map +2 -2
  516. package/build/hooks/dimensions.cjs.map +2 -2
  517. package/build/hooks/duotone.cjs.map +2 -2
  518. package/build/hooks/elements.cjs.map +2 -2
  519. package/build/hooks/fit-text.cjs.map +2 -2
  520. package/build/hooks/font-family.cjs +2 -4
  521. package/build/hooks/font-family.cjs.map +3 -3
  522. package/build/hooks/font-size.cjs.map +2 -2
  523. package/build/hooks/gap.cjs.map +2 -2
  524. package/build/hooks/generated-class-name.cjs.map +2 -2
  525. package/build/hooks/grid-visualizer.cjs.map +2 -2
  526. package/build/hooks/index.cjs.map +2 -2
  527. package/build/hooks/layout-child.cjs.map +2 -2
  528. package/build/hooks/layout.cjs +4 -4
  529. package/build/hooks/layout.cjs.map +3 -3
  530. package/build/hooks/line-height.cjs.map +2 -2
  531. package/build/hooks/list-view.cjs.map +2 -2
  532. package/build/hooks/lock.cjs.map +2 -2
  533. package/build/hooks/metadata.cjs.map +2 -2
  534. package/build/hooks/position.cjs.map +2 -2
  535. package/build/hooks/settings.cjs.map +2 -2
  536. package/build/hooks/spacing-visualizer.cjs.map +2 -2
  537. package/build/hooks/state-utils.cjs.map +2 -2
  538. package/build/hooks/states.cjs.map +2 -2
  539. package/build/hooks/style.cjs.map +2 -2
  540. package/build/hooks/supports.cjs.map +2 -2
  541. package/build/hooks/text-align.cjs.map +2 -2
  542. package/build/hooks/typography.cjs.map +2 -2
  543. package/build/hooks/use-border-props.cjs.map +2 -2
  544. package/build/hooks/use-cached-truthy.cjs.map +2 -2
  545. package/build/hooks/use-color-props.cjs.map +2 -2
  546. package/build/hooks/use-content-only-section-edit.cjs.map +2 -2
  547. package/build/hooks/use-dimensions-props.cjs.map +2 -2
  548. package/build/hooks/use-shadow-props.cjs.map +2 -2
  549. package/build/hooks/use-spacing-props.cjs.map +2 -2
  550. package/build/hooks/use-typography-props.cjs +2 -4
  551. package/build/hooks/use-typography-props.cjs.map +3 -3
  552. package/build/hooks/use-zoom-out.cjs.map +2 -2
  553. package/build/hooks/utils.cjs.map +2 -2
  554. package/build/index.cjs.map +2 -2
  555. package/build/layouts/constrained.cjs.map +2 -2
  556. package/build/layouts/flex.cjs.map +2 -2
  557. package/build/layouts/flow.cjs.map +2 -2
  558. package/build/layouts/grid.cjs.map +2 -2
  559. package/build/layouts/index.cjs.map +2 -2
  560. package/build/layouts/utils.cjs.map +2 -2
  561. package/build/lock-unlock.cjs.map +2 -2
  562. package/build/private-apis.cjs.map +2 -2
  563. package/build/store/actions.cjs +104 -36
  564. package/build/store/actions.cjs.map +3 -3
  565. package/build/store/defaults.cjs +2 -0
  566. package/build/store/defaults.cjs.map +2 -2
  567. package/build/store/get-block-settings.cjs.map +2 -2
  568. package/build/store/index.cjs.map +2 -2
  569. package/build/store/private-actions.cjs +19 -2
  570. package/build/store/private-actions.cjs.map +2 -2
  571. package/build/store/private-selectors.cjs +28 -10
  572. package/build/store/private-selectors.cjs.map +2 -2
  573. package/build/store/reducer.cjs +3 -1
  574. package/build/store/reducer.cjs.map +2 -2
  575. package/build/store/selectors.cjs +21 -8
  576. package/build/store/selectors.cjs.map +2 -2
  577. package/build/store/utils.cjs.map +2 -2
  578. package/build/utils/fit-text-frontend.cjs.map +2 -2
  579. package/build/utils/format-font-style.cjs.map +2 -2
  580. package/build/utils/format-font-weight.cjs.map +2 -2
  581. package/build/utils/get-font-styles-and-weights.cjs.map +2 -2
  582. package/build/utils/group-blocks.cjs +42 -0
  583. package/build/utils/group-blocks.cjs.map +7 -0
  584. package/build/utils/native-undo.cjs.map +2 -2
  585. package/build/utils/pasting.cjs.map +2 -2
  586. package/build/utils/selection.cjs.map +2 -2
  587. package/build/utils/sibling-block-attributes.cjs +45 -0
  588. package/build/utils/sibling-block-attributes.cjs.map +7 -0
  589. package/build/utils/transform-styles/index.cjs.map +2 -2
  590. package/build/utils/use-notify-copy.cjs.map +2 -2
  591. package/build-module/autocompleters/block.mjs.map +2 -2
  592. package/build-module/components/alignment-control/index.mjs.map +2 -2
  593. package/build-module/components/alignment-control/ui.mjs.map +2 -2
  594. package/build-module/components/autocomplete/index.mjs.map +2 -2
  595. package/build-module/components/background-image-control/index.mjs.map +2 -2
  596. package/build-module/components/block-actions/index.mjs +3 -6
  597. package/build-module/components/block-actions/index.mjs.map +2 -2
  598. package/build-module/components/block-alignment-control/constants.mjs.map +2 -2
  599. package/build-module/components/block-alignment-control/index.mjs.map +2 -2
  600. package/build-module/components/block-alignment-control/ui.mjs.map +2 -2
  601. package/build-module/components/block-alignment-control/use-available-alignments.mjs.map +2 -2
  602. package/build-module/components/block-alignment-matrix-control/index.mjs.map +2 -2
  603. package/build-module/components/block-allowed-blocks/allowed-blocks-control.mjs.map +2 -2
  604. package/build-module/components/block-allowed-blocks/modal.mjs.map +2 -2
  605. package/build-module/components/block-bindings/attribute-control.mjs.map +2 -2
  606. package/build-module/components/block-bindings/index.mjs.map +2 -2
  607. package/build-module/components/block-bindings/source-fields-list.mjs.map +2 -2
  608. package/build-module/components/block-bindings/use-block-bindings-utils.mjs.map +2 -2
  609. package/build-module/components/block-breadcrumb/index.mjs.map +2 -2
  610. package/build-module/components/block-canvas/index.mjs.map +2 -2
  611. package/build-module/components/block-card/index.mjs.map +2 -2
  612. package/build-module/components/block-compare/block-view.mjs.map +2 -2
  613. package/build-module/components/block-compare/index.mjs.map +2 -2
  614. package/build-module/components/block-content-overlay/index.mjs.map +2 -2
  615. package/build-module/components/block-context/index.mjs.map +2 -2
  616. package/build-module/components/block-controls/fill.mjs.map +2 -2
  617. package/build-module/components/block-controls/groups.mjs.map +2 -2
  618. package/build-module/components/block-controls/hook.mjs.map +2 -2
  619. package/build-module/components/block-controls/index.mjs.map +2 -2
  620. package/build-module/components/block-controls/slot.mjs.map +2 -2
  621. package/build-module/components/block-draggable/draggable-chip.mjs.map +2 -2
  622. package/build-module/components/block-draggable/index.mjs.map +2 -2
  623. package/build-module/components/block-draggable/use-scroll-when-dragging.mjs.map +2 -2
  624. package/build-module/components/block-edit/context.mjs.map +2 -2
  625. package/build-module/components/block-edit/edit.mjs.map +2 -2
  626. package/build-module/components/block-edit/index.mjs.map +2 -2
  627. package/build-module/components/block-edit/multiple-usage-warning.mjs.map +2 -2
  628. package/build-module/components/block-edit-visually-button/index.mjs.map +2 -2
  629. package/build-module/components/block-editing-mode/index.mjs.map +2 -2
  630. package/build-module/components/block-full-height-alignment-control/index.mjs.map +2 -2
  631. package/build-module/components/block-heading-level-dropdown/heading-level-icon.mjs.map +2 -2
  632. package/build-module/components/block-heading-level-dropdown/index.mjs.map +2 -2
  633. package/build-module/components/block-icon/index.mjs.map +2 -2
  634. package/build-module/components/block-inspector/edit-contents.mjs +49 -41
  635. package/build-module/components/block-inspector/edit-contents.mjs.map +2 -2
  636. package/build-module/components/block-inspector/index.mjs +9 -4
  637. package/build-module/components/block-inspector/index.mjs.map +2 -2
  638. package/build-module/components/block-inspector/inspector-pre-tabs-slot-fill.mjs.map +2 -2
  639. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.mjs.map +2 -2
  640. package/build-module/components/block-list/block-crash-boundary.mjs.map +2 -2
  641. package/build-module/components/block-list/block-crash-warning.mjs.map +2 -2
  642. package/build-module/components/block-list/block-html.mjs.map +2 -2
  643. package/build-module/components/block-list/block-invalid-warning.mjs.map +2 -2
  644. package/build-module/components/block-list/block.mjs +36 -10
  645. package/build-module/components/block-list/block.mjs.map +3 -3
  646. package/build-module/components/block-list/index.mjs +34 -10
  647. package/build-module/components/block-list/index.mjs.map +2 -2
  648. package/build-module/components/block-list/layout.mjs.map +2 -2
  649. package/build-module/components/block-list/private-block-context.mjs.map +2 -2
  650. package/build-module/components/block-list/subdirectory-icon.mjs.map +2 -2
  651. package/build-module/components/block-list/use-block-props/index.mjs +36 -2
  652. package/build-module/components/block-list/use-block-props/index.mjs.map +2 -2
  653. package/build-module/components/block-list/use-block-props/use-block-refs.mjs.map +2 -2
  654. package/build-module/components/block-list/use-block-props/use-firefox-draggable-compatibility.mjs.map +2 -2
  655. package/build-module/components/block-list/use-block-props/use-focus-first-element.mjs.map +2 -2
  656. package/build-module/components/block-list/use-block-props/use-focus-handler.mjs.map +2 -2
  657. package/build-module/components/block-list/use-block-props/use-intersection-observer.mjs.map +2 -2
  658. package/build-module/components/block-list/use-block-props/use-is-hovered.mjs.map +2 -2
  659. package/build-module/components/block-list/use-block-props/use-register-block-event-handlers.mjs.map +2 -2
  660. package/build-module/components/block-list/use-block-props/use-scroll-into-view.mjs.map +2 -2
  661. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.mjs.map +2 -2
  662. package/build-module/components/block-list/use-in-between-inserter.mjs.map +2 -2
  663. package/build-module/components/block-list/zoom-out-separator.mjs.map +2 -2
  664. package/build-module/components/block-list-appender/index.mjs.map +2 -2
  665. package/build-module/components/block-lock/menu-item.mjs.map +2 -2
  666. package/build-module/components/block-lock/modal.mjs.map +2 -2
  667. package/build-module/components/block-lock/toolbar.mjs.map +2 -2
  668. package/build-module/components/block-lock/use-block-lock.mjs.map +2 -2
  669. package/build-module/components/block-manager/category.mjs.map +2 -2
  670. package/build-module/components/block-manager/checklist.mjs.map +2 -2
  671. package/build-module/components/block-manager/index.mjs.map +2 -2
  672. package/build-module/components/block-mover/button.mjs +17 -11
  673. package/build-module/components/block-mover/button.mjs.map +2 -2
  674. package/build-module/components/block-mover/index.mjs.map +2 -2
  675. package/build-module/components/block-mover/mover-description.mjs.map +2 -2
  676. package/build-module/components/block-navigation/dropdown.mjs.map +2 -2
  677. package/build-module/components/block-parent-selector/index.mjs.map +2 -2
  678. package/build-module/components/block-pattern-setup/index.mjs.map +2 -2
  679. package/build-module/components/block-pattern-setup/setup-toolbar.mjs.map +2 -2
  680. package/build-module/components/block-pattern-setup/use-patterns-setup.mjs.map +2 -2
  681. package/build-module/components/block-patterns-list/index.mjs.map +2 -2
  682. package/build-module/components/block-patterns-paging/index.mjs.map +2 -2
  683. package/build-module/components/block-popover/cover.mjs.map +2 -2
  684. package/build-module/components/block-popover/drop-zone.mjs.map +2 -2
  685. package/build-module/components/block-popover/inbetween.mjs.map +2 -2
  686. package/build-module/components/block-popover/index.mjs.map +2 -2
  687. package/build-module/components/block-popover/use-popover-scroll.mjs.map +2 -2
  688. package/build-module/components/block-preview/async.mjs.map +2 -2
  689. package/build-module/components/block-preview/auto.mjs.map +2 -2
  690. package/build-module/components/block-preview/index.mjs.map +2 -2
  691. package/build-module/components/block-quick-navigation/index.mjs.map +2 -2
  692. package/build-module/components/block-removal-warning-modal/index.mjs.map +2 -2
  693. package/build-module/components/block-rename/modal.mjs.map +2 -2
  694. package/build-module/components/block-rename/rename-control.mjs.map +2 -2
  695. package/build-module/components/block-rename/use-block-rename.mjs.map +2 -2
  696. package/build-module/components/block-selection-clearer/index.mjs.map +2 -2
  697. package/build-module/components/block-settings-menu/block-html-convert-button.mjs.map +2 -2
  698. package/build-module/components/block-settings-menu/block-mode-toggle.mjs.map +2 -2
  699. package/build-module/components/block-settings-menu/block-parent-selector-menu-item.mjs.map +2 -2
  700. package/build-module/components/block-settings-menu/block-settings-dropdown.mjs +1 -1
  701. package/build-module/components/block-settings-menu/block-settings-dropdown.mjs.map +2 -2
  702. package/build-module/components/block-settings-menu/block-settings-menu-first-item.mjs.map +2 -2
  703. package/build-module/components/block-settings-menu/index.mjs.map +2 -2
  704. package/build-module/components/block-settings-menu-controls/index.mjs.map +2 -2
  705. package/build-module/components/block-styles/index.mjs.map +2 -2
  706. package/build-module/components/block-styles/menu-items.mjs.map +2 -2
  707. package/build-module/components/block-styles/use-styles-for-block.mjs.map +2 -2
  708. package/build-module/components/block-styles/utils.mjs.map +2 -2
  709. package/build-module/components/block-switcher/block-styles-menu.mjs.map +2 -2
  710. package/build-module/components/block-switcher/block-transformations-menu.mjs.map +2 -2
  711. package/build-module/components/block-switcher/block-variation-transformations.mjs.map +2 -2
  712. package/build-module/components/block-switcher/index.mjs.map +2 -2
  713. package/build-module/components/block-switcher/pattern-transformations-menu.mjs.map +2 -2
  714. package/build-module/components/block-switcher/preview-block-popover.mjs.map +2 -2
  715. package/build-module/components/block-switcher/use-transformed-patterns.mjs.map +2 -2
  716. package/build-module/components/block-switcher/utils.mjs.map +2 -2
  717. package/build-module/components/block-title/index.mjs.map +2 -2
  718. package/build-module/components/block-title/use-block-display-title.mjs.map +2 -2
  719. package/build-module/components/block-toolbar/block-styles-dropdown.mjs.map +2 -2
  720. package/build-module/components/block-toolbar/block-toolbar-icon.mjs.map +2 -2
  721. package/build-module/components/block-toolbar/block-toolbar-last-item.mjs.map +2 -2
  722. package/build-module/components/block-toolbar/change-design.mjs.map +2 -2
  723. package/build-module/components/block-toolbar/edit-section-button.mjs.map +2 -2
  724. package/build-module/components/block-toolbar/index.mjs.map +2 -2
  725. package/build-module/components/block-toolbar/pattern-overrides-dropdown.mjs.map +2 -2
  726. package/build-module/components/block-toolbar/switch-section-style.mjs.map +2 -2
  727. package/build-module/components/block-toolbar/use-has-block-toolbar.mjs.map +2 -2
  728. package/build-module/components/block-toolbar/utils.mjs.map +2 -2
  729. package/build-module/components/block-tools/block-toolbar-popover.mjs.map +2 -2
  730. package/build-module/components/block-tools/empty-block-inserter.mjs.map +2 -2
  731. package/build-module/components/block-tools/index.mjs +3 -9
  732. package/build-module/components/block-tools/index.mjs.map +2 -2
  733. package/build-module/components/block-tools/insertion-point.mjs.map +2 -2
  734. package/build-module/components/block-tools/use-block-toolbar-popover-props.mjs.map +2 -2
  735. package/build-module/components/block-tools/use-selected-block-tool-props.mjs.map +2 -2
  736. package/build-module/components/block-tools/use-show-block-tools.mjs.map +2 -2
  737. package/build-module/components/block-tools/zoom-out-mode-inserter-button.mjs.map +2 -2
  738. package/build-module/components/block-tools/zoom-out-mode-inserters.mjs.map +2 -2
  739. package/build-module/components/block-types-list/index.mjs.map +2 -2
  740. package/build-module/components/block-variation-picker/index.mjs.map +2 -2
  741. package/build-module/components/block-variation-transforms/index.mjs.map +2 -2
  742. package/build-module/components/block-vertical-alignment-control/index.mjs.map +2 -2
  743. package/build-module/components/block-vertical-alignment-control/ui.mjs.map +2 -2
  744. package/build-module/components/block-visibility/constants.mjs +1 -1
  745. package/build-module/components/block-visibility/constants.mjs.map +3 -3
  746. package/build-module/components/block-visibility/modal.mjs.map +2 -2
  747. package/build-module/components/block-visibility/use-block-visibility.mjs +15 -17
  748. package/build-module/components/block-visibility/use-block-visibility.mjs.map +3 -3
  749. package/build-module/components/block-visibility/utils.mjs.map +2 -2
  750. package/build-module/components/block-visibility/viewport-menu-item.mjs.map +2 -2
  751. package/build-module/components/block-visibility/viewport-toolbar.mjs.map +2 -2
  752. package/build-module/components/block-visibility/viewport-visibility-info.mjs.map +2 -2
  753. package/build-module/components/border-radius-control/constants.mjs.map +2 -2
  754. package/build-module/components/border-radius-control/index.mjs.map +2 -2
  755. package/build-module/components/border-radius-control/linked-button.mjs.map +2 -2
  756. package/build-module/components/border-radius-control/utils.mjs.map +2 -2
  757. package/build-module/components/button-block-appender/index.mjs.map +2 -2
  758. package/build-module/components/child-layout-control/index.mjs.map +2 -2
  759. package/build-module/components/collab/note-icon-slot.mjs.map +2 -2
  760. package/build-module/components/collab/note-icon-toolbar-slot.mjs.map +2 -2
  761. package/build-module/components/color-palette/control.mjs.map +2 -2
  762. package/build-module/components/color-palette/index.mjs.map +2 -2
  763. package/build-module/components/color-palette/with-color-context.mjs.map +2 -2
  764. package/build-module/components/color-style-selector/index.mjs.map +2 -2
  765. package/build-module/components/colors/utils.mjs +1 -3
  766. package/build-module/components/colors/utils.mjs.map +2 -2
  767. package/build-module/components/colors/with-colors.mjs +1 -3
  768. package/build-module/components/colors/with-colors.mjs.map +2 -2
  769. package/build-module/components/colors-gradients/control.mjs.map +2 -2
  770. package/build-module/components/colors-gradients/dropdown.mjs.map +2 -2
  771. package/build-module/components/colors-gradients/panel-color-gradient-settings.mjs +5 -5
  772. package/build-module/components/colors-gradients/panel-color-gradient-settings.mjs.map +2 -2
  773. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.mjs.map +2 -2
  774. package/build-module/components/contrast-checker/index.mjs.map +2 -2
  775. package/build-module/components/convert-to-group-buttons/index.mjs +2 -5
  776. package/build-module/components/convert-to-group-buttons/index.mjs.map +2 -2
  777. package/build-module/components/convert-to-group-buttons/toolbar.mjs +3 -5
  778. package/build-module/components/convert-to-group-buttons/toolbar.mjs.map +2 -2
  779. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.mjs.map +2 -2
  780. package/build-module/components/copy-handler/index.mjs.map +2 -2
  781. package/build-module/components/date-format-picker/index.mjs.map +2 -2
  782. package/build-module/components/default-block-appender/index.mjs.map +2 -2
  783. package/build-module/components/dimension-control/index.mjs.map +2 -2
  784. package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs.map +2 -2
  785. package/build-module/components/dimensions-tool/index.mjs.map +2 -2
  786. package/build-module/components/dimensions-tool/scale-tool.mjs.map +2 -2
  787. package/build-module/components/dimensions-tool/width-height-tool.mjs.map +2 -2
  788. package/build-module/components/duotone-control/index.mjs.map +2 -2
  789. package/build-module/components/editable-text/index.mjs.map +2 -2
  790. package/build-module/components/editor-styles/index.mjs.map +2 -2
  791. package/build-module/components/fit-text-size-warning/index.mjs.map +2 -2
  792. package/build-module/components/floating-toolbar/nav-up-icon.mjs.map +2 -2
  793. package/build-module/components/font-appearance-control/index.mjs.map +2 -2
  794. package/build-module/components/font-family/index.mjs.map +2 -2
  795. package/build-module/components/font-sizes/font-size-picker.mjs.map +2 -2
  796. package/build-module/components/font-sizes/utils.mjs +1 -3
  797. package/build-module/components/font-sizes/utils.mjs.map +2 -2
  798. package/build-module/components/font-sizes/with-font-sizes.mjs.map +2 -2
  799. package/build-module/components/global-styles/advanced-panel.mjs.map +2 -2
  800. package/build-module/components/global-styles/background-panel.mjs.map +2 -2
  801. package/build-module/components/global-styles/border-panel.mjs.map +2 -2
  802. package/build-module/components/global-styles/color-gradient-dropdown-item.mjs.map +2 -2
  803. package/build-module/components/global-styles/color-panel.mjs.map +2 -2
  804. package/build-module/components/global-styles/dimensions-panel.mjs.map +2 -2
  805. package/build-module/components/global-styles/filters-panel.mjs.map +2 -2
  806. package/build-module/components/global-styles/hooks.mjs.map +2 -2
  807. package/build-module/components/global-styles/image-settings-panel.mjs.map +2 -2
  808. package/build-module/components/global-styles/inheritance/index.mjs.map +2 -2
  809. package/build-module/components/global-styles/inherited-value-context.mjs.map +2 -2
  810. package/build-module/components/global-styles/shadow-panel-components.mjs.map +2 -2
  811. package/build-module/components/global-styles/state-control-badges.mjs.map +2 -2
  812. package/build-module/components/global-styles/state-control.mjs.map +2 -2
  813. package/build-module/components/global-styles/typography-panel.mjs.map +2 -2
  814. package/build-module/components/global-styles/typography-utils.mjs.map +2 -2
  815. package/build-module/components/global-styles/utils.mjs.map +2 -2
  816. package/build-module/components/gradients/use-gradient.mjs.map +2 -2
  817. package/build-module/components/gradients/with-gradient.mjs.map +2 -2
  818. package/build-module/components/grid/grid-item-movers.mjs.map +2 -2
  819. package/build-module/components/grid/grid-item-resizer.mjs.map +2 -2
  820. package/build-module/components/grid/grid-visualizer.mjs.map +2 -2
  821. package/build-module/components/grid/use-get-number-of-blocks-before-cell.mjs.map +2 -2
  822. package/build-module/components/grid/use-grid-layout-sync.mjs.map +2 -2
  823. package/build-module/components/height-control/index.mjs.map +2 -2
  824. package/build-module/components/html-element-control/index.mjs.map +2 -2
  825. package/build-module/components/html-element-control/messages.mjs.map +2 -2
  826. package/build-module/components/iframe/index.mjs +19 -24
  827. package/build-module/components/iframe/index.mjs.map +2 -2
  828. package/build-module/components/iframe/use-scale-canvas.mjs +21 -7
  829. package/build-module/components/iframe/use-scale-canvas.mjs.map +2 -2
  830. package/build-module/components/image-editor/aspect-ratio-dropdown.mjs.map +2 -2
  831. package/build-module/components/image-editor/context.mjs.map +2 -2
  832. package/build-module/components/image-editor/cropper.mjs.map +2 -2
  833. package/build-module/components/image-editor/form-controls.mjs.map +2 -2
  834. package/build-module/components/image-editor/index.mjs.map +2 -2
  835. package/build-module/components/image-editor/rotation-button.mjs.map +2 -2
  836. package/build-module/components/image-editor/use-save-image.mjs.map +2 -2
  837. package/build-module/components/image-editor/use-transform-image.mjs.map +2 -2
  838. package/build-module/components/image-editor/zoom-dropdown.mjs.map +2 -2
  839. package/build-module/components/image-size-control/index.mjs.map +2 -2
  840. package/build-module/components/image-size-control/use-dimension-handler.mjs.map +2 -2
  841. package/build-module/components/inner-blocks/button-block-appender.mjs.map +2 -2
  842. package/build-module/components/inner-blocks/default-block-appender.mjs.map +2 -2
  843. package/build-module/components/inner-blocks/index.mjs.map +2 -2
  844. package/build-module/components/inner-blocks/use-block-context.mjs.map +2 -2
  845. package/build-module/components/inner-blocks/use-inner-block-template-sync.mjs +35 -8
  846. package/build-module/components/inner-blocks/use-inner-block-template-sync.mjs.map +2 -2
  847. package/build-module/components/inner-blocks/use-nested-settings-update.mjs.map +2 -2
  848. package/build-module/components/inner-content/index.mjs.map +2 -2
  849. package/build-module/components/inserter/block-patterns-explorer/index.mjs.map +2 -2
  850. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.mjs.map +2 -2
  851. package/build-module/components/inserter/block-patterns-explorer/pattern-list.mjs.map +2 -2
  852. package/build-module/components/inserter/block-patterns-tab/index.mjs.map +2 -2
  853. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.mjs.map +2 -2
  854. package/build-module/components/inserter/block-patterns-tab/patterns-filter.mjs.map +2 -2
  855. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.mjs.map +2 -2
  856. package/build-module/components/inserter/block-patterns-tab/utils.mjs.map +2 -2
  857. package/build-module/components/inserter/block-types-tab.mjs.map +2 -2
  858. package/build-module/components/inserter/category-tabs/index.mjs.map +2 -2
  859. package/build-module/components/inserter/hooks/use-block-types-state.mjs.map +2 -2
  860. package/build-module/components/inserter/hooks/use-insertion-point.mjs.map +2 -2
  861. package/build-module/components/inserter/hooks/use-patterns-paging.mjs.map +2 -2
  862. package/build-module/components/inserter/hooks/use-patterns-state.mjs.map +2 -2
  863. package/build-module/components/inserter/index.mjs +4 -13
  864. package/build-module/components/inserter/index.mjs.map +2 -2
  865. package/build-module/components/inserter/library.mjs.map +2 -2
  866. package/build-module/components/inserter/media-tab/hooks.mjs.map +2 -2
  867. package/build-module/components/inserter/media-tab/media-list.mjs.map +2 -2
  868. package/build-module/components/inserter/media-tab/media-panel.mjs.map +2 -2
  869. package/build-module/components/inserter/media-tab/media-preview.mjs.map +2 -2
  870. package/build-module/components/inserter/media-tab/media-tab.mjs.map +2 -2
  871. package/build-module/components/inserter/media-tab/utils.mjs.map +2 -2
  872. package/build-module/components/inserter/menu.mjs.map +2 -2
  873. package/build-module/components/inserter/mobile-tab-navigation.mjs.map +2 -2
  874. package/build-module/components/inserter/no-results.mjs.map +2 -2
  875. package/build-module/components/inserter/panel.mjs.map +2 -2
  876. package/build-module/components/inserter/preview-panel.mjs.map +2 -2
  877. package/build-module/components/inserter/quick-inserter.mjs.map +2 -2
  878. package/build-module/components/inserter/search-items.mjs.map +2 -2
  879. package/build-module/components/inserter/search-results.mjs.map +2 -2
  880. package/build-module/components/inserter/tips.mjs.map +2 -2
  881. package/build-module/components/inserter-button/sparkles.mjs.map +2 -2
  882. package/build-module/components/inserter-draggable-blocks/index.mjs.map +2 -2
  883. package/build-module/components/inserter-list-item/index.mjs.map +2 -2
  884. package/build-module/components/inserter-listbox/context.mjs.map +2 -2
  885. package/build-module/components/inserter-listbox/group.mjs.map +2 -2
  886. package/build-module/components/inserter-listbox/index.mjs.map +2 -2
  887. package/build-module/components/inserter-listbox/item.mjs.map +2 -2
  888. package/build-module/components/inserter-listbox/row.mjs.map +2 -2
  889. package/build-module/components/inserter-menu-extension/index.mjs.map +2 -2
  890. package/build-module/components/inspector-controls/block-support-slot-container.mjs.map +2 -2
  891. package/build-module/components/inspector-controls/block-support-tools-panel.mjs.map +2 -2
  892. package/build-module/components/inspector-controls/fill.mjs +15 -17
  893. package/build-module/components/inspector-controls/fill.mjs.map +2 -2
  894. package/build-module/components/inspector-controls/groups.mjs.map +2 -2
  895. package/build-module/components/inspector-controls/index.mjs.map +2 -2
  896. package/build-module/components/inspector-controls/last-item.mjs.map +2 -2
  897. package/build-module/components/inspector-controls/list-view-content-popover.mjs.map +2 -2
  898. package/build-module/components/inspector-controls/slot.mjs.map +2 -2
  899. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.mjs.map +2 -2
  900. package/build-module/components/inspector-controls-tabs/content-tab.mjs.map +2 -2
  901. package/build-module/components/inspector-controls-tabs/index.mjs.map +2 -2
  902. package/build-module/components/inspector-controls-tabs/position-controls-panel.mjs.map +2 -2
  903. package/build-module/components/inspector-controls-tabs/settings-tab.mjs.map +2 -2
  904. package/build-module/components/inspector-controls-tabs/styles-tab.mjs.map +2 -2
  905. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.mjs.map +2 -2
  906. package/build-module/components/inspector-controls-tabs/utils.mjs.map +2 -2
  907. package/build-module/components/inspector-popover-header/index.mjs.map +2 -2
  908. package/build-module/components/justify-content-control/index.mjs.map +2 -2
  909. package/build-module/components/justify-content-control/ui.mjs.map +2 -2
  910. package/build-module/components/keyboard-shortcuts/index.mjs.map +2 -2
  911. package/build-module/components/letter-spacing-control/index.mjs.map +2 -2
  912. package/build-module/components/line-height-control/index.mjs.map +2 -2
  913. package/build-module/components/link-control/constants.mjs.map +2 -2
  914. package/build-module/components/link-control/index.mjs.map +2 -2
  915. package/build-module/components/link-control/is-url-like.mjs.map +2 -2
  916. package/build-module/components/link-control/link-preview.mjs.map +2 -2
  917. package/build-module/components/link-control/normalize-url.mjs.map +2 -2
  918. package/build-module/components/link-control/search-create-button.mjs.map +2 -2
  919. package/build-module/components/link-control/search-input.mjs.map +2 -2
  920. package/build-module/components/link-control/search-item.mjs.map +2 -2
  921. package/build-module/components/link-control/search-results.mjs +1 -1
  922. package/build-module/components/link-control/search-results.mjs.map +2 -2
  923. package/build-module/components/link-control/settings-drawer.mjs.map +2 -2
  924. package/build-module/components/link-control/settings.mjs.map +2 -2
  925. package/build-module/components/link-control/use-create-page.mjs.map +2 -2
  926. package/build-module/components/link-control/use-internal-value.mjs.map +2 -2
  927. package/build-module/components/link-control/use-rich-url-data.mjs +1 -1
  928. package/build-module/components/link-control/use-rich-url-data.mjs.map +2 -2
  929. package/build-module/components/link-control/use-search-handler.mjs.map +2 -2
  930. package/build-module/components/link-control/viewer-slot.mjs.map +2 -2
  931. package/build-module/components/link-picker/link-picker.mjs.map +2 -2
  932. package/build-module/components/link-picker/link-preview.mjs.map +2 -2
  933. package/build-module/components/list-view/appender.mjs +7 -4
  934. package/build-module/components/list-view/appender.mjs.map +2 -2
  935. package/build-module/components/list-view/aria-referenced-text.mjs +2 -9
  936. package/build-module/components/list-view/aria-referenced-text.mjs.map +2 -2
  937. package/build-module/components/list-view/block-contents.mjs +18 -21
  938. package/build-module/components/list-view/block-contents.mjs.map +2 -2
  939. package/build-module/components/list-view/block-select-button.mjs +49 -26
  940. package/build-module/components/list-view/block-select-button.mjs.map +2 -2
  941. package/build-module/components/list-view/block.mjs +40 -47
  942. package/build-module/components/list-view/block.mjs.map +2 -2
  943. package/build-module/components/list-view/branch.mjs +100 -80
  944. package/build-module/components/list-view/branch.mjs.map +2 -2
  945. package/build-module/components/list-view/context.mjs +11 -1
  946. package/build-module/components/list-view/context.mjs.map +2 -2
  947. package/build-module/components/list-view/drop-indicator.mjs +6 -6
  948. package/build-module/components/list-view/drop-indicator.mjs.map +2 -2
  949. package/build-module/components/list-view/expander.mjs.map +2 -2
  950. package/build-module/components/list-view/index.mjs +87 -95
  951. package/build-module/components/list-view/index.mjs.map +2 -2
  952. package/build-module/components/list-view/leaf.mjs.map +2 -2
  953. package/build-module/components/list-view/use-block-selection.mjs.map +2 -2
  954. package/build-module/components/list-view/use-clipboard-handler.mjs.map +2 -2
  955. package/build-module/components/list-view/use-list-view-block-indexes.mjs.map +2 -2
  956. package/build-module/components/list-view/use-list-view-client-ids.mjs.map +2 -2
  957. package/build-module/components/list-view/use-list-view-collapse-items.mjs +3 -4
  958. package/build-module/components/list-view/use-list-view-collapse-items.mjs.map +2 -2
  959. package/build-module/components/list-view/use-list-view-drop-zone.mjs +7 -13
  960. package/build-module/components/list-view/use-list-view-drop-zone.mjs.map +2 -2
  961. package/build-module/components/list-view/use-list-view-expand-selected-item.mjs +3 -3
  962. package/build-module/components/list-view/use-list-view-expand-selected-item.mjs.map +2 -2
  963. package/build-module/components/list-view/use-list-view-images.mjs +4 -3
  964. package/build-module/components/list-view/use-list-view-images.mjs.map +2 -2
  965. package/build-module/components/list-view/use-list-view-scroll-into-view.mjs.map +2 -2
  966. package/build-module/components/list-view/utils.mjs +5 -3
  967. package/build-module/components/list-view/utils.mjs.map +2 -2
  968. package/build-module/components/media-placeholder/index.mjs.map +2 -2
  969. package/build-module/components/media-replace-flow/index.mjs.map +2 -2
  970. package/build-module/components/media-upload/check.mjs.map +2 -2
  971. package/build-module/components/media-upload/index.mjs.map +2 -2
  972. package/build-module/components/multi-selection-inspector/index.mjs +33 -12
  973. package/build-module/components/multi-selection-inspector/index.mjs.map +2 -2
  974. package/build-module/components/navigable-toolbar/index.mjs +30 -18
  975. package/build-module/components/navigable-toolbar/index.mjs.map +2 -2
  976. package/build-module/components/observe-typing/index.mjs.map +2 -2
  977. package/build-module/components/panel-color-settings/index.mjs.map +2 -2
  978. package/build-module/components/plain-text/index.mjs.map +2 -2
  979. package/build-module/components/preset-input-control/custom-value-controls.mjs.map +2 -2
  980. package/build-module/components/preset-input-control/index.mjs.map +2 -2
  981. package/build-module/components/preview-options/index.mjs.map +2 -2
  982. package/build-module/components/provider/block-refs-provider.mjs.map +2 -2
  983. package/build-module/components/provider/index.mjs.map +2 -2
  984. package/build-module/components/provider/selection-context.mjs.map +2 -2
  985. package/build-module/components/provider/use-block-sync.mjs.map +2 -2
  986. package/build-module/components/provider/use-media-upload-settings.mjs.map +2 -2
  987. package/build-module/components/provider/with-registry-provider.mjs.map +2 -2
  988. package/build-module/components/publish-date-time-picker/index.mjs.map +2 -2
  989. package/build-module/components/recursion-provider/index.mjs.map +2 -2
  990. package/build-module/components/resizable-box-popover/index.mjs.map +2 -2
  991. package/build-module/components/resolution-tool/index.mjs.map +2 -2
  992. package/build-module/components/responsive-block-control/index.mjs.map +2 -2
  993. package/build-module/components/responsive-block-control/label.mjs.map +2 -2
  994. package/build-module/components/rich-text/content.mjs.map +2 -2
  995. package/build-module/components/rich-text/event-listeners/before-input-rules.mjs.map +2 -2
  996. package/build-module/components/rich-text/event-listeners/delete.mjs.map +2 -2
  997. package/build-module/components/rich-text/event-listeners/enter.mjs.map +2 -2
  998. package/build-module/components/rich-text/event-listeners/firefox-compat.mjs.map +2 -2
  999. package/build-module/components/rich-text/event-listeners/index.mjs.map +2 -2
  1000. package/build-module/components/rich-text/event-listeners/input-events.mjs.map +2 -2
  1001. package/build-module/components/rich-text/event-listeners/input-rules.mjs +13 -10
  1002. package/build-module/components/rich-text/event-listeners/input-rules.mjs.map +2 -2
  1003. package/build-module/components/rich-text/event-listeners/insert-replacement-text.mjs.map +2 -2
  1004. package/build-module/components/rich-text/event-listeners/paste-handler.mjs +8 -1
  1005. package/build-module/components/rich-text/event-listeners/paste-handler.mjs.map +2 -2
  1006. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.mjs.map +2 -2
  1007. package/build-module/components/rich-text/event-listeners/shortcuts.mjs.map +2 -2
  1008. package/build-module/components/rich-text/event-listeners/undo-automatic-change.mjs.map +2 -2
  1009. package/build-module/components/rich-text/format-edit.mjs.map +2 -2
  1010. package/build-module/components/rich-text/format-toolbar/index.mjs.map +2 -2
  1011. package/build-module/components/rich-text/format-toolbar-container.mjs.map +2 -2
  1012. package/build-module/components/rich-text/get-rich-text-values.mjs.map +2 -2
  1013. package/build-module/components/rich-text/index.mjs.map +2 -2
  1014. package/build-module/components/rich-text/multiline.mjs.map +2 -2
  1015. package/build-module/components/rich-text/prevent-event-discovery.mjs.map +2 -2
  1016. package/build-module/components/rich-text/toolbar-button.mjs.map +2 -2
  1017. package/build-module/components/rich-text/use-mark-persistent.mjs.map +2 -2
  1018. package/build-module/components/rich-text/utils.mjs.map +2 -2
  1019. package/build-module/components/rich-text/with-deprecations.mjs.map +2 -2
  1020. package/build-module/components/selection-scroll-into-view/index.mjs.map +2 -2
  1021. package/build-module/components/skip-to-selected-block/index.mjs.map +2 -2
  1022. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.mjs.map +2 -2
  1023. package/build-module/components/spacing-sizes-control/index.mjs +2 -2
  1024. package/build-module/components/spacing-sizes-control/index.mjs.map +2 -2
  1025. package/build-module/components/spacing-sizes-control/input-controls/axial.mjs.map +2 -2
  1026. package/build-module/components/spacing-sizes-control/input-controls/separated.mjs.map +2 -2
  1027. package/build-module/components/spacing-sizes-control/input-controls/single.mjs.map +2 -2
  1028. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.mjs.map +2 -2
  1029. package/build-module/components/spacing-sizes-control/linked-button.mjs.map +2 -2
  1030. package/build-module/components/spacing-sizes-control/utils.mjs.map +2 -2
  1031. package/build-module/components/tabbed-sidebar/index.mjs.map +2 -2
  1032. package/build-module/components/text-alignment-control/index.mjs.map +2 -2
  1033. package/build-module/components/text-decoration-control/index.mjs.map +2 -2
  1034. package/build-module/components/text-indent-control/index.mjs.map +2 -2
  1035. package/build-module/components/text-transform-control/index.mjs.map +2 -2
  1036. package/build-module/components/tool-selector/index.mjs.map +2 -2
  1037. package/build-module/components/typewriter/index.mjs.map +2 -2
  1038. package/build-module/components/unit-control/index.mjs.map +2 -2
  1039. package/build-module/components/url-input/button.mjs.map +2 -2
  1040. package/build-module/components/url-input/index.mjs +28 -46
  1041. package/build-module/components/url-input/index.mjs.map +2 -2
  1042. package/build-module/components/url-popover/image-url-input-ui.mjs +2 -2
  1043. package/build-module/components/url-popover/image-url-input-ui.mjs.map +2 -2
  1044. package/build-module/components/url-popover/index.mjs.map +2 -2
  1045. package/build-module/components/url-popover/link-editor.mjs.map +2 -2
  1046. package/build-module/components/url-popover/link-viewer-url.mjs.map +2 -2
  1047. package/build-module/components/url-popover/link-viewer.mjs.map +2 -2
  1048. package/build-module/components/use-block-commands/index.mjs +2 -1
  1049. package/build-module/components/use-block-commands/index.mjs.map +2 -2
  1050. package/build-module/components/use-block-display-information/index.mjs +2 -1
  1051. package/build-module/components/use-block-display-information/index.mjs.map +2 -2
  1052. package/build-module/components/use-block-drop-zone/index.mjs.map +2 -2
  1053. package/build-module/components/use-flash-editable-blocks/index.mjs.map +2 -2
  1054. package/build-module/components/use-list-view-panel-state/index.mjs.map +2 -2
  1055. package/build-module/components/use-moving-animation/index.mjs +2 -2
  1056. package/build-module/components/use-moving-animation/index.mjs.map +2 -2
  1057. package/build-module/components/use-on-block-drop/index.mjs.map +2 -2
  1058. package/build-module/components/use-paste-styles/index.mjs.map +2 -2
  1059. package/build-module/components/use-resize-canvas/index.mjs.map +2 -2
  1060. package/build-module/components/use-settings/index.mjs.map +2 -2
  1061. package/build-module/components/warning/index.mjs.map +2 -2
  1062. package/build-module/components/writing-flow/index.mjs.map +2 -2
  1063. package/build-module/components/writing-flow/use-arrow-nav.mjs +11 -2
  1064. package/build-module/components/writing-flow/use-arrow-nav.mjs.map +2 -2
  1065. package/build-module/components/writing-flow/use-click-selection.mjs.map +2 -2
  1066. package/build-module/components/writing-flow/use-clipboard-handler.mjs +31 -5
  1067. package/build-module/components/writing-flow/use-clipboard-handler.mjs.map +2 -2
  1068. package/build-module/components/writing-flow/use-drag-selection.mjs.map +2 -2
  1069. package/build-module/components/writing-flow/use-editable-root-event-handlers.mjs.map +2 -2
  1070. package/build-module/components/writing-flow/use-editable-root.mjs.map +2 -2
  1071. package/build-module/components/writing-flow/use-home-end.mjs.map +2 -2
  1072. package/build-module/components/writing-flow/use-input.mjs.map +2 -2
  1073. package/build-module/components/writing-flow/use-multi-selection.mjs.map +2 -2
  1074. package/build-module/components/writing-flow/use-preview-mode-nav.mjs.map +2 -2
  1075. package/build-module/components/writing-flow/use-select-all.mjs.map +2 -2
  1076. package/build-module/components/writing-flow/use-selection-observer.mjs.map +2 -2
  1077. package/build-module/components/writing-flow/use-tab-nav.mjs +3 -1
  1078. package/build-module/components/writing-flow/use-tab-nav.mjs.map +2 -2
  1079. package/build-module/components/writing-flow/utils.mjs.map +2 -2
  1080. package/build-module/components/writing-mode-control/index.mjs.map +2 -2
  1081. package/build-module/hooks/align.mjs.map +2 -2
  1082. package/build-module/hooks/allowed-blocks.mjs.map +2 -2
  1083. package/build-module/hooks/anchor.mjs.map +2 -2
  1084. package/build-module/hooks/aria-label.mjs.map +2 -2
  1085. package/build-module/hooks/auto-inspector-controls.mjs.map +2 -2
  1086. package/build-module/hooks/background.mjs +1 -4
  1087. package/build-module/hooks/background.mjs.map +2 -2
  1088. package/build-module/hooks/block-bindings.mjs.map +2 -2
  1089. package/build-module/hooks/block-fields/fields-dropdown-menu.mjs.map +2 -2
  1090. package/build-module/hooks/block-fields/index.mjs.map +2 -2
  1091. package/build-module/hooks/block-fields/link/index.mjs.map +2 -2
  1092. package/build-module/hooks/block-fields/media/index.mjs.map +2 -2
  1093. package/build-module/hooks/block-fields/rich-text/index.mjs.map +2 -2
  1094. package/build-module/hooks/block-fields/use-inspector-popover-placement.mjs.map +2 -2
  1095. package/build-module/hooks/block-hooks.mjs.map +2 -2
  1096. package/build-module/hooks/block-renaming.mjs.map +2 -2
  1097. package/build-module/hooks/block-style-state.mjs.map +2 -2
  1098. package/build-module/hooks/block-style-variation.mjs.map +2 -2
  1099. package/build-module/hooks/border.mjs.map +2 -2
  1100. package/build-module/hooks/color.mjs.map +2 -2
  1101. package/build-module/hooks/compat.mjs.map +2 -2
  1102. package/build-module/hooks/contrast-checker.mjs.map +2 -2
  1103. package/build-module/hooks/custom-class-name.mjs.map +2 -2
  1104. package/build-module/hooks/dimensions.mjs.map +2 -2
  1105. package/build-module/hooks/duotone.mjs.map +2 -2
  1106. package/build-module/hooks/elements.mjs.map +2 -2
  1107. package/build-module/hooks/fit-text.mjs.map +2 -2
  1108. package/build-module/hooks/font-family.mjs +1 -3
  1109. package/build-module/hooks/font-family.mjs.map +2 -2
  1110. package/build-module/hooks/font-size.mjs.map +2 -2
  1111. package/build-module/hooks/gap.mjs.map +2 -2
  1112. package/build-module/hooks/generated-class-name.mjs.map +2 -2
  1113. package/build-module/hooks/grid-visualizer.mjs.map +2 -2
  1114. package/build-module/hooks/index.mjs.map +2 -2
  1115. package/build-module/hooks/layout-child.mjs.map +2 -2
  1116. package/build-module/hooks/layout.mjs +2 -3
  1117. package/build-module/hooks/layout.mjs.map +2 -2
  1118. package/build-module/hooks/line-height.mjs.map +2 -2
  1119. package/build-module/hooks/list-view.mjs.map +2 -2
  1120. package/build-module/hooks/lock.mjs.map +2 -2
  1121. package/build-module/hooks/metadata.mjs.map +2 -2
  1122. package/build-module/hooks/position.mjs.map +2 -2
  1123. package/build-module/hooks/settings.mjs.map +2 -2
  1124. package/build-module/hooks/spacing-visualizer.mjs.map +2 -2
  1125. package/build-module/hooks/state-utils.mjs.map +2 -2
  1126. package/build-module/hooks/states.mjs.map +2 -2
  1127. package/build-module/hooks/style.mjs.map +2 -2
  1128. package/build-module/hooks/supports.mjs.map +2 -2
  1129. package/build-module/hooks/text-align.mjs.map +2 -2
  1130. package/build-module/hooks/typography.mjs.map +2 -2
  1131. package/build-module/hooks/use-border-props.mjs.map +2 -2
  1132. package/build-module/hooks/use-cached-truthy.mjs.map +2 -2
  1133. package/build-module/hooks/use-color-props.mjs.map +2 -2
  1134. package/build-module/hooks/use-content-only-section-edit.mjs.map +2 -2
  1135. package/build-module/hooks/use-dimensions-props.mjs.map +2 -2
  1136. package/build-module/hooks/use-shadow-props.mjs.map +2 -2
  1137. package/build-module/hooks/use-spacing-props.mjs.map +2 -2
  1138. package/build-module/hooks/use-typography-props.mjs +1 -3
  1139. package/build-module/hooks/use-typography-props.mjs.map +2 -2
  1140. package/build-module/hooks/use-zoom-out.mjs.map +2 -2
  1141. package/build-module/hooks/utils.mjs.map +2 -2
  1142. package/build-module/index.mjs.map +2 -2
  1143. package/build-module/layouts/constrained.mjs.map +2 -2
  1144. package/build-module/layouts/flex.mjs.map +2 -2
  1145. package/build-module/layouts/flow.mjs.map +2 -2
  1146. package/build-module/layouts/grid.mjs.map +2 -2
  1147. package/build-module/layouts/index.mjs.map +2 -2
  1148. package/build-module/layouts/utils.mjs.map +2 -2
  1149. package/build-module/lock-unlock.mjs.map +2 -2
  1150. package/build-module/private-apis.mjs.map +2 -2
  1151. package/build-module/store/actions.mjs +104 -36
  1152. package/build-module/store/actions.mjs.map +3 -3
  1153. package/build-module/store/defaults.mjs +2 -0
  1154. package/build-module/store/defaults.mjs.map +2 -2
  1155. package/build-module/store/get-block-settings.mjs.map +2 -2
  1156. package/build-module/store/index.mjs.map +2 -2
  1157. package/build-module/store/private-actions.mjs +19 -2
  1158. package/build-module/store/private-actions.mjs.map +2 -2
  1159. package/build-module/store/private-selectors.mjs +27 -10
  1160. package/build-module/store/private-selectors.mjs.map +2 -2
  1161. package/build-module/store/reducer.mjs +3 -1
  1162. package/build-module/store/reducer.mjs.map +2 -2
  1163. package/build-module/store/selectors.mjs +21 -8
  1164. package/build-module/store/selectors.mjs.map +2 -2
  1165. package/build-module/store/utils.mjs.map +2 -2
  1166. package/build-module/utils/fit-text-frontend.mjs.map +2 -2
  1167. package/build-module/utils/format-font-style.mjs.map +2 -2
  1168. package/build-module/utils/format-font-weight.mjs.map +2 -2
  1169. package/build-module/utils/get-font-styles-and-weights.mjs.map +2 -2
  1170. package/build-module/utils/group-blocks.mjs +21 -0
  1171. package/build-module/utils/group-blocks.mjs.map +7 -0
  1172. package/build-module/utils/native-undo.mjs.map +2 -2
  1173. package/build-module/utils/pasting.mjs.map +2 -2
  1174. package/build-module/utils/selection.mjs.map +2 -2
  1175. package/build-module/utils/sibling-block-attributes.mjs +20 -0
  1176. package/build-module/utils/sibling-block-attributes.mjs.map +7 -0
  1177. package/build-module/utils/transform-styles/index.mjs.map +2 -2
  1178. package/build-module/utils/use-notify-copy.mjs.map +2 -2
  1179. package/build-style/content-rtl.css +2 -2
  1180. package/build-style/content.css +2 -2
  1181. package/build-style/style-rtl.css +37 -5
  1182. package/build-style/style.css +37 -5
  1183. package/build-types/components/block-context/index.d.ts.map +1 -1
  1184. package/build-types/components/block-visibility/constants.d.ts +44 -0
  1185. package/build-types/components/block-visibility/constants.d.ts.map +1 -0
  1186. package/build-types/components/block-visibility/use-block-visibility.d.ts +35 -0
  1187. package/build-types/components/block-visibility/use-block-visibility.d.ts.map +1 -0
  1188. package/build-types/lock-unlock.d.ts +2 -0
  1189. package/build-types/lock-unlock.d.ts.map +1 -0
  1190. package/build-types/utils/fit-text-frontend.d.ts +0 -5
  1191. package/build-types/utils/fit-text-frontend.d.ts.map +1 -1
  1192. package/build-types/utils/format-font-style.d.ts +0 -3
  1193. package/build-types/utils/format-font-style.d.ts.map +1 -1
  1194. package/build-types/utils/format-font-weight.d.ts +0 -3
  1195. package/build-types/utils/format-font-weight.d.ts.map +1 -1
  1196. package/build-types/utils/get-font-styles-and-weights.d.ts.map +1 -1
  1197. package/build-types/utils/pasting.d.ts.map +1 -1
  1198. package/build-types/utils/selection.d.ts.map +1 -1
  1199. package/build-types/utils/transform-styles/index.d.ts +0 -3
  1200. package/build-types/utils/transform-styles/index.d.ts.map +1 -1
  1201. package/package.json +42 -41
  1202. package/src/autocompleters/block.js +0 -7
  1203. package/src/autocompleters/test/block.js +0 -7
  1204. package/src/components/alignment-control/index.js +0 -3
  1205. package/src/components/alignment-control/stories/aliginment-toolbar.story.jsx +0 -7
  1206. package/src/components/alignment-control/stories/index.story.jsx +0 -7
  1207. package/src/components/alignment-control/test/index.js +0 -11
  1208. package/src/components/alignment-control/ui.js +0 -3
  1209. package/src/components/autocomplete/index.js +0 -7
  1210. package/src/components/background-image-control/index.js +0 -12
  1211. package/src/components/background-image-control/test/index.js +0 -4
  1212. package/src/components/block-actions/README.md +67 -0
  1213. package/src/components/block-actions/index.js +3 -14
  1214. package/src/components/block-alignment-control/constants.js +0 -3
  1215. package/src/components/block-alignment-control/index.js +0 -3
  1216. package/src/components/block-alignment-control/test/index.js +0 -7
  1217. package/src/components/block-alignment-control/ui.js +0 -11
  1218. package/src/components/block-alignment-control/use-available-alignments.js +0 -7
  1219. package/src/components/block-alignment-matrix-control/index.js +0 -3
  1220. package/src/components/block-alignment-matrix-control/stories/index.story.jsx +0 -7
  1221. package/src/components/block-allowed-blocks/allowed-blocks-control.js +0 -7
  1222. package/src/components/block-allowed-blocks/modal.js +0 -7
  1223. package/src/components/block-bindings/attribute-control.js +10 -11
  1224. package/src/components/block-bindings/index.js +0 -3
  1225. package/src/components/block-bindings/source-fields-list.js +0 -11
  1226. package/src/components/block-bindings/test/use-block-bindings-utils.js +1 -12
  1227. package/src/components/block-bindings/use-block-bindings-utils.js +0 -7
  1228. package/src/components/block-breadcrumb/index.js +0 -7
  1229. package/src/components/block-breadcrumb/test/index.js +0 -7
  1230. package/src/components/block-canvas/index.js +0 -7
  1231. package/src/components/block-card/index.js +0 -11
  1232. package/src/components/block-compare/block-view.js +0 -3
  1233. package/src/components/block-compare/index.js +0 -11
  1234. package/src/components/block-compare/test/block-view.js +0 -7
  1235. package/src/components/block-content-overlay/index.js +0 -7
  1236. package/src/components/block-context/README.md +0 -1
  1237. package/src/components/block-context/index.js +0 -3
  1238. package/src/components/block-controls/README.md +0 -3
  1239. package/src/components/block-controls/fill.js +0 -7
  1240. package/src/components/block-controls/groups.js +0 -3
  1241. package/src/components/block-controls/hook.js +0 -7
  1242. package/src/components/block-controls/index.js +0 -3
  1243. package/src/components/block-controls/slot.js +0 -7
  1244. package/src/components/block-controls/test/index.js +0 -11
  1245. package/src/components/block-draggable/draggable-chip.js +0 -7
  1246. package/src/components/block-draggable/index.js +0 -7
  1247. package/src/components/block-draggable/stories/index.story.jsx +0 -3
  1248. package/src/components/block-draggable/use-scroll-when-dragging.js +0 -3
  1249. package/src/components/block-edit/context.js +0 -3
  1250. package/src/components/block-edit/edit.js +0 -11
  1251. package/src/components/block-edit/index.js +0 -7
  1252. package/src/components/block-edit/multiple-usage-warning.js +0 -7
  1253. package/src/components/block-edit/test/edit.js +0 -11
  1254. package/src/components/block-edit-visually-button/index.js +0 -7
  1255. package/src/components/block-editing-mode/index.js +0 -7
  1256. package/src/components/block-full-height-alignment-control/index.js +0 -3
  1257. package/src/components/block-heading-level-dropdown/heading-level-icon.js +0 -3
  1258. package/src/components/block-heading-level-dropdown/index.js +0 -7
  1259. package/src/components/block-heading-level-dropdown/stories/index.story.jsx +0 -7
  1260. package/src/components/block-icon/index.js +0 -7
  1261. package/src/components/block-icon/stories/index.story.ts +0 -7
  1262. package/src/components/block-icon/test/index.js +0 -11
  1263. package/src/components/block-inspector/edit-contents.js +27 -32
  1264. package/src/components/block-inspector/index.js +7 -8
  1265. package/src/components/block-inspector/inspector-pre-tabs-slot-fill.js +0 -3
  1266. package/src/components/block-inspector/useBlockInspectorAnimationSettings.js +0 -7
  1267. package/src/components/block-list/README.md +98 -0
  1268. package/src/components/block-list/block-crash-boundary.js +0 -3
  1269. package/src/components/block-list/block-crash-warning.js +0 -7
  1270. package/src/components/block-list/block-html.js +0 -11
  1271. package/src/components/block-list/block-invalid-warning.js +0 -7
  1272. package/src/components/block-list/block.js +57 -23
  1273. package/src/components/block-list/index.js +62 -24
  1274. package/src/components/block-list/layout.js +0 -7
  1275. package/src/components/block-list/private-block-context.js +0 -3
  1276. package/src/components/block-list/subdirectory-icon.js +0 -3
  1277. package/src/components/block-list/use-block-props/index.js +57 -12
  1278. package/src/components/block-list/use-block-props/use-block-refs.js +0 -7
  1279. package/src/components/block-list/use-block-props/use-firefox-draggable-compatibility.js +0 -3
  1280. package/src/components/block-list/use-block-props/use-focus-first-element.js +0 -7
  1281. package/src/components/block-list/use-block-props/use-focus-handler.js +0 -7
  1282. package/src/components/block-list/use-block-props/use-intersection-observer.js +0 -7
  1283. package/src/components/block-list/use-block-props/use-is-hovered.js +0 -7
  1284. package/src/components/block-list/use-block-props/use-register-block-event-handlers.js +0 -7
  1285. package/src/components/block-list/use-block-props/use-scroll-into-view.js +0 -3
  1286. package/src/components/block-list/use-block-props/use-selected-block-event-handlers.js +0 -7
  1287. package/src/components/block-list/use-in-between-inserter.js +0 -7
  1288. package/src/components/block-list/zoom-out-separator.js +0 -11
  1289. package/src/components/block-list-appender/index.js +0 -11
  1290. package/src/components/block-lock/README.md +66 -0
  1291. package/src/components/block-lock/menu-item.js +0 -7
  1292. package/src/components/block-lock/modal.js +0 -7
  1293. package/src/components/block-lock/toolbar.js +0 -7
  1294. package/src/components/block-lock/use-block-lock.js +0 -7
  1295. package/src/components/block-manager/category.js +0 -7
  1296. package/src/components/block-manager/checklist.js +0 -7
  1297. package/src/components/block-manager/index.js +0 -7
  1298. package/src/components/block-mover/button.js +17 -26
  1299. package/src/components/block-mover/index.js +0 -12
  1300. package/src/components/block-mover/mover-description.js +0 -3
  1301. package/src/components/block-mover/stories/index.story.jsx +0 -7
  1302. package/src/components/block-mover/test/mover-description.js +0 -3
  1303. package/src/components/block-navigation/dropdown.js +0 -11
  1304. package/src/components/block-parent-selector/index.js +0 -7
  1305. package/src/components/block-pattern-setup/index.js +0 -8
  1306. package/src/components/block-pattern-setup/setup-toolbar.js +0 -7
  1307. package/src/components/block-pattern-setup/use-patterns-setup.js +0 -7
  1308. package/src/components/block-patterns-list/index.js +0 -11
  1309. package/src/components/block-patterns-list/stories/index.story.jsx +3 -10
  1310. package/src/components/block-patterns-paging/index.js +0 -3
  1311. package/src/components/block-popover/cover.js +0 -7
  1312. package/src/components/block-popover/drop-zone.js +0 -7
  1313. package/src/components/block-popover/inbetween.js +0 -11
  1314. package/src/components/block-popover/index.js +0 -11
  1315. package/src/components/block-popover/use-popover-scroll.js +0 -3
  1316. package/src/components/block-preview/async.js +0 -3
  1317. package/src/components/block-preview/auto.js +0 -7
  1318. package/src/components/block-preview/index.js +0 -11
  1319. package/src/components/block-preview/test/index.js +0 -11
  1320. package/src/components/block-quick-navigation/index.js +0 -7
  1321. package/src/components/block-removal-warning-modal/index.js +0 -7
  1322. package/src/components/block-rename/modal.js +0 -7
  1323. package/src/components/block-rename/rename-control.js +0 -7
  1324. package/src/components/block-rename/use-block-rename.js +0 -3
  1325. package/src/components/block-selection-clearer/index.js +0 -7
  1326. package/src/components/block-selection-clearer/test/index.js +0 -11
  1327. package/src/components/block-settings-menu/block-html-convert-button.js +0 -7
  1328. package/src/components/block-settings-menu/block-mode-toggle.js +0 -7
  1329. package/src/components/block-settings-menu/block-parent-selector-menu-item.js +0 -7
  1330. package/src/components/block-settings-menu/block-settings-dropdown.js +1 -8
  1331. package/src/components/block-settings-menu/block-settings-menu-first-item.js +0 -3
  1332. package/src/components/block-settings-menu/index.js +0 -7
  1333. package/src/components/block-settings-menu/test/block-mode-toggle.js +0 -11
  1334. package/src/components/block-settings-menu-controls/index.js +0 -7
  1335. package/src/components/block-styles/index.js +0 -11
  1336. package/src/components/block-styles/menu-items.js +0 -3
  1337. package/src/components/block-styles/test/utils.js +0 -3
  1338. package/src/components/block-styles/use-styles-for-block.js +0 -7
  1339. package/src/components/block-styles/utils.js +0 -3
  1340. package/src/components/block-switcher/block-styles-menu.js +0 -7
  1341. package/src/components/block-switcher/block-transformations-menu.js +0 -7
  1342. package/src/components/block-switcher/block-variation-transformations.js +0 -7
  1343. package/src/components/block-switcher/index.js +0 -7
  1344. package/src/components/block-switcher/pattern-transformations-menu.js +0 -8
  1345. package/src/components/block-switcher/preview-block-popover.js +0 -7
  1346. package/src/components/block-switcher/test/index.js +0 -11
  1347. package/src/components/block-switcher/test/use-transformed.patterns.js +0 -7
  1348. package/src/components/block-switcher/test/utils.js +0 -7
  1349. package/src/components/block-switcher/use-transformed-patterns.js +0 -7
  1350. package/src/components/block-switcher/utils.js +0 -3
  1351. package/src/components/block-title/index.js +0 -4
  1352. package/src/components/block-title/stories/index.story.jsx +0 -7
  1353. package/src/components/block-title/test/index.js +0 -11
  1354. package/src/components/block-title/use-block-display-title.js +0 -7
  1355. package/src/components/block-toolbar/block-styles-dropdown.js +0 -7
  1356. package/src/components/block-toolbar/block-toolbar-icon.js +0 -7
  1357. package/src/components/block-toolbar/block-toolbar-last-item.js +0 -3
  1358. package/src/components/block-toolbar/change-design.js +0 -7
  1359. package/src/components/block-toolbar/edit-section-button.js +0 -7
  1360. package/src/components/block-toolbar/index.js +0 -11
  1361. package/src/components/block-toolbar/pattern-overrides-dropdown.js +0 -7
  1362. package/src/components/block-toolbar/switch-section-style.js +0 -7
  1363. package/src/components/block-toolbar/test/block-toolbar-icon.js +0 -11
  1364. package/src/components/block-toolbar/use-has-block-toolbar.js +0 -6
  1365. package/src/components/block-toolbar/utils.js +0 -7
  1366. package/src/components/block-tools/block-toolbar-popover.js +0 -9
  1367. package/src/components/block-tools/empty-block-inserter.js +0 -7
  1368. package/src/components/block-tools/index.js +3 -20
  1369. package/src/components/block-tools/insertion-point.js +0 -11
  1370. package/src/components/block-tools/use-block-toolbar-popover-props.js +0 -7
  1371. package/src/components/block-tools/use-selected-block-tool-props.js +0 -7
  1372. package/src/components/block-tools/use-show-block-tools.js +0 -7
  1373. package/src/components/block-tools/zoom-out-mode-inserter-button.js +0 -7
  1374. package/src/components/block-tools/zoom-out-mode-inserters.js +0 -7
  1375. package/src/components/block-types-list/index.js +0 -7
  1376. package/src/components/block-variation-picker/index.js +0 -7
  1377. package/src/components/block-variation-transforms/index.js +0 -7
  1378. package/src/components/block-vertical-alignment-control/index.js +0 -3
  1379. package/src/components/block-vertical-alignment-control/test/index.js +0 -7
  1380. package/src/components/block-vertical-alignment-control/ui.js +0 -3
  1381. package/src/components/block-visibility/{constants.js → constants.ts} +10 -4
  1382. package/src/components/block-visibility/modal.js +0 -11
  1383. package/src/components/block-visibility/test/use-block-visibility.js +0 -12
  1384. package/src/components/block-visibility/test/utils.js +0 -3
  1385. package/src/components/block-visibility/use-block-visibility.ts +92 -0
  1386. package/src/components/block-visibility/utils.js +0 -7
  1387. package/src/components/block-visibility/viewport-menu-item.js +0 -7
  1388. package/src/components/block-visibility/viewport-toolbar.js +0 -7
  1389. package/src/components/block-visibility/viewport-visibility-info.js +0 -7
  1390. package/src/components/border-radius-control/README.md +0 -3
  1391. package/src/components/border-radius-control/constants.js +0 -3
  1392. package/src/components/border-radius-control/index.js +0 -7
  1393. package/src/components/border-radius-control/linked-button.js +0 -3
  1394. package/src/components/border-radius-control/stories/index.story.jsx +0 -7
  1395. package/src/components/border-radius-control/test/index.js +0 -12
  1396. package/src/components/border-radius-control/test/utils.js +0 -3
  1397. package/src/components/border-radius-control/utils.js +0 -7
  1398. package/src/components/button-block-appender/index.js +0 -11
  1399. package/src/components/child-layout-control/index.js +0 -7
  1400. package/src/components/child-layout-control/test/index.js +0 -11
  1401. package/src/components/collab/note-icon-slot.js +0 -3
  1402. package/src/components/collab/note-icon-toolbar-slot.js +0 -3
  1403. package/src/components/color-palette/control.js +0 -3
  1404. package/src/components/color-palette/index.js +0 -7
  1405. package/src/components/color-palette/stories/control.story.jsx +0 -7
  1406. package/src/components/color-palette/test/control.js +0 -7
  1407. package/src/components/color-palette/with-color-context.js +0 -7
  1408. package/src/components/color-style-selector/index.js +0 -3
  1409. package/src/components/colors/test/utils.js +0 -3
  1410. package/src/components/colors/test/with-colors.js +0 -7
  1411. package/src/components/colors/utils.js +1 -15
  1412. package/src/components/colors/with-colors.js +1 -11
  1413. package/src/components/colors-gradients/control.js +0 -11
  1414. package/src/components/colors-gradients/dropdown.js +0 -15
  1415. package/src/components/colors-gradients/panel-color-gradient-settings.js +21 -28
  1416. package/src/components/colors-gradients/style.scss +17 -7
  1417. package/src/components/colors-gradients/test/control.js +0 -7
  1418. package/src/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +0 -7
  1419. package/src/components/contrast-checker/index.js +0 -7
  1420. package/src/components/contrast-checker/stories/index.story.ts +0 -3
  1421. package/src/components/contrast-checker/test/index.js +0 -11
  1422. package/src/components/convert-to-group-buttons/index.js +2 -13
  1423. package/src/components/convert-to-group-buttons/toolbar.js +3 -12
  1424. package/src/components/convert-to-group-buttons/use-convert-to-group-button-props.js +0 -7
  1425. package/src/components/copy-handler/index.js +0 -7
  1426. package/src/components/date-format-picker/index.js +0 -3
  1427. package/src/components/date-format-picker/stories/index.story.jsx +0 -7
  1428. package/src/components/default-block-appender/content.scss +6 -3
  1429. package/src/components/default-block-appender/index.js +0 -11
  1430. package/src/components/default-block-appender/test/index.js +0 -7
  1431. package/src/components/dimension-control/index.js +0 -11
  1432. package/src/components/dimension-control/stories/index.story.jsx +0 -7
  1433. package/src/components/dimensions-tool/aspect-ratio-tool.js +0 -6
  1434. package/src/components/dimensions-tool/index.js +0 -7
  1435. package/src/components/dimensions-tool/scale-tool.js +0 -3
  1436. package/src/components/dimensions-tool/stories/aspect-ratio-tool.story.jsx +0 -7
  1437. package/src/components/dimensions-tool/stories/index.story.jsx +0 -7
  1438. package/src/components/dimensions-tool/stories/scale-tool.story.jsx +0 -7
  1439. package/src/components/dimensions-tool/stories/width-height-tool.story.jsx +0 -7
  1440. package/src/components/dimensions-tool/test/index.js +0 -11
  1441. package/src/components/dimensions-tool/width-height-tool.js +0 -3
  1442. package/src/components/duotone-control/index.js +0 -3
  1443. package/src/components/editable-text/index.js +0 -7
  1444. package/src/components/editor-styles/index.js +0 -11
  1445. package/src/components/fit-text-size-warning/index.js +0 -3
  1446. package/src/components/floating-toolbar/nav-up-icon.js +0 -3
  1447. package/src/components/font-appearance-control/index.js +0 -7
  1448. package/src/components/font-family/index.js +0 -11
  1449. package/src/components/font-family/stories/index.story.jsx +0 -7
  1450. package/src/components/font-sizes/font-size-picker.js +0 -7
  1451. package/src/components/font-sizes/test/fluid-utils.js +0 -7
  1452. package/src/components/font-sizes/test/utils.js +0 -7
  1453. package/src/components/font-sizes/utils.js +1 -11
  1454. package/src/components/font-sizes/with-font-sizes.js +0 -7
  1455. package/src/components/global-styles/advanced-panel.js +0 -7
  1456. package/src/components/global-styles/background-panel.js +0 -7
  1457. package/src/components/global-styles/border-panel.js +0 -7
  1458. package/src/components/global-styles/color-gradient-dropdown-item.js +0 -11
  1459. package/src/components/global-styles/color-panel.js +0 -7
  1460. package/src/components/global-styles/dimensions-panel.js +0 -11
  1461. package/src/components/global-styles/filters-panel.js +0 -11
  1462. package/src/components/global-styles/hooks.js +0 -7
  1463. package/src/components/global-styles/image-settings-panel.js +0 -7
  1464. package/src/components/global-styles/inheritance/index.js +0 -7
  1465. package/src/components/global-styles/inheritance/test/index.js +0 -11
  1466. package/src/components/global-styles/inherited-value-context.js +0 -7
  1467. package/src/components/global-styles/shadow-panel-components.js +0 -12
  1468. package/src/components/global-styles/state-control-badges.js +0 -7
  1469. package/src/components/global-styles/state-control.js +0 -3
  1470. package/src/components/global-styles/test/background-panel.js +0 -8
  1471. package/src/components/global-styles/test/border-panel.js +0 -7
  1472. package/src/components/global-styles/test/color-panel.js +0 -7
  1473. package/src/components/global-styles/test/dimensions-panel.js +0 -7
  1474. package/src/components/global-styles/test/filters-panel.js +0 -7
  1475. package/src/components/global-styles/test/inherited-value-context-core.js +0 -11
  1476. package/src/components/global-styles/test/inherited-value-context.js +0 -12
  1477. package/src/components/global-styles/test/state-control-badges.js +0 -7
  1478. package/src/components/global-styles/test/typography-panel-core.js +0 -7
  1479. package/src/components/global-styles/test/typography-panel.js +0 -7
  1480. package/src/components/global-styles/test/typography-utils.js +0 -3
  1481. package/src/components/global-styles/typography-panel.js +0 -7
  1482. package/src/components/global-styles/typography-utils.js +0 -3
  1483. package/src/components/global-styles/utils.js +0 -3
  1484. package/src/components/gradients/use-gradient.js +0 -7
  1485. package/src/components/gradients/with-gradient.js +0 -3
  1486. package/src/components/grid/grid-item-movers.js +0 -11
  1487. package/src/components/grid/grid-item-resizer.js +0 -7
  1488. package/src/components/grid/grid-visualizer.js +0 -11
  1489. package/src/components/grid/use-get-number-of-blocks-before-cell.js +0 -7
  1490. package/src/components/grid/use-grid-layout-sync.js +0 -7
  1491. package/src/components/height-control/index.js +0 -7
  1492. package/src/components/height-control/stories/index.story.jsx +0 -7
  1493. package/src/components/html-element-control/index.js +0 -7
  1494. package/src/components/html-element-control/messages.js +0 -3
  1495. package/src/components/iframe/index.js +4 -16
  1496. package/src/components/iframe/use-scale-canvas.js +38 -14
  1497. package/src/components/image-editor/aspect-ratio-dropdown.js +0 -7
  1498. package/src/components/image-editor/context.js +0 -7
  1499. package/src/components/image-editor/cropper.js +0 -11
  1500. package/src/components/image-editor/form-controls.js +0 -7
  1501. package/src/components/image-editor/index.js +0 -7
  1502. package/src/components/image-editor/rotation-button.js +0 -8
  1503. package/src/components/image-editor/test/index.js +0 -3
  1504. package/src/components/image-editor/use-save-image.js +0 -7
  1505. package/src/components/image-editor/use-transform-image.js +0 -3
  1506. package/src/components/image-editor/zoom-dropdown.js +0 -7
  1507. package/src/components/image-size-control/index.js +0 -7
  1508. package/src/components/image-size-control/test/index.js +0 -7
  1509. package/src/components/image-size-control/use-dimension-handler.js +0 -3
  1510. package/src/components/inner-blocks/README.md +2 -0
  1511. package/src/components/inner-blocks/button-block-appender.js +0 -7
  1512. package/src/components/inner-blocks/default-block-appender.js +0 -3
  1513. package/src/components/inner-blocks/index.js +0 -11
  1514. package/src/components/inner-blocks/test/index.js +0 -8
  1515. package/src/components/inner-blocks/use-block-context.js +0 -7
  1516. package/src/components/inner-blocks/use-inner-block-template-sync.js +47 -23
  1517. package/src/components/inner-blocks/use-nested-settings-update.js +0 -7
  1518. package/src/components/inner-content/index.js +0 -7
  1519. package/src/components/inner-content/test/index.js +0 -11
  1520. package/src/components/inserter/block-patterns-explorer/index.js +0 -7
  1521. package/src/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +0 -3
  1522. package/src/components/inserter/block-patterns-explorer/pattern-list.js +0 -7
  1523. package/src/components/inserter/block-patterns-tab/index.js +0 -7
  1524. package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +0 -8
  1525. package/src/components/inserter/block-patterns-tab/patterns-filter.js +0 -7
  1526. package/src/components/inserter/block-patterns-tab/use-pattern-categories.js +0 -8
  1527. package/src/components/inserter/block-patterns-tab/utils.js +0 -4
  1528. package/src/components/inserter/block-types-tab.js +0 -7
  1529. package/src/components/inserter/category-tabs/index.js +0 -7
  1530. package/src/components/inserter/hooks/use-block-types-state.js +0 -7
  1531. package/src/components/inserter/hooks/use-insertion-point.js +0 -7
  1532. package/src/components/inserter/hooks/use-patterns-paging.js +0 -3
  1533. package/src/components/inserter/hooks/use-patterns-state.js +0 -7
  1534. package/src/components/inserter/index.js +4 -28
  1535. package/src/components/inserter/library.js +0 -7
  1536. package/src/components/inserter/media-tab/hooks.js +0 -7
  1537. package/src/components/inserter/media-tab/media-list.js +0 -7
  1538. package/src/components/inserter/media-tab/media-panel.js +0 -11
  1539. package/src/components/inserter/media-tab/media-preview.js +0 -12
  1540. package/src/components/inserter/media-tab/media-tab.js +0 -7
  1541. package/src/components/inserter/media-tab/test/hooks.js +0 -7
  1542. package/src/components/inserter/media-tab/test/media-panel.js +0 -7
  1543. package/src/components/inserter/media-tab/utils.js +0 -3
  1544. package/src/components/inserter/menu.js +0 -11
  1545. package/src/components/inserter/mobile-tab-navigation.js +0 -3
  1546. package/src/components/inserter/no-results.js +0 -3
  1547. package/src/components/inserter/panel.js +0 -3
  1548. package/src/components/inserter/preview-panel.js +0 -7
  1549. package/src/components/inserter/quick-inserter.js +0 -11
  1550. package/src/components/inserter/search-items.js +0 -3
  1551. package/src/components/inserter/search-results.js +0 -7
  1552. package/src/components/inserter/stories/index.story.jsx +0 -7
  1553. package/src/components/inserter/test/get-appender-label.js +0 -3
  1554. package/src/components/inserter/test/search-items.js +0 -3
  1555. package/src/components/inserter/tips.js +0 -3
  1556. package/src/components/inserter-button/sparkles.js +0 -3
  1557. package/src/components/inserter-draggable-blocks/index.js +0 -7
  1558. package/src/components/inserter-list-item/index.js +0 -11
  1559. package/src/components/inserter-listbox/context.js +0 -3
  1560. package/src/components/inserter-listbox/group.js +0 -3
  1561. package/src/components/inserter-listbox/index.js +0 -8
  1562. package/src/components/inserter-listbox/item.js +0 -3
  1563. package/src/components/inserter-listbox/row.js +0 -3
  1564. package/src/components/inserter-menu-extension/index.js +0 -3
  1565. package/src/components/inspector-controls/block-support-slot-container.js +0 -3
  1566. package/src/components/inspector-controls/block-support-tools-panel.js +0 -7
  1567. package/src/components/inspector-controls/fill.js +22 -37
  1568. package/src/components/inspector-controls/groups.js +0 -3
  1569. package/src/components/inspector-controls/index.js +0 -3
  1570. package/src/components/inspector-controls/last-item.js +0 -7
  1571. package/src/components/inspector-controls/list-view-content-popover.js +0 -7
  1572. package/src/components/inspector-controls/slot.js +0 -7
  1573. package/src/components/inspector-controls-tabs/advanced-controls-panel.js +0 -7
  1574. package/src/components/inspector-controls-tabs/content-tab.js +0 -7
  1575. package/src/components/inspector-controls-tabs/index.js +0 -8
  1576. package/src/components/inspector-controls-tabs/position-controls-panel.js +0 -7
  1577. package/src/components/inspector-controls-tabs/settings-tab.js +0 -7
  1578. package/src/components/inspector-controls-tabs/styles-tab.js +0 -7
  1579. package/src/components/inspector-controls-tabs/use-inspector-controls-tabs.js +0 -7
  1580. package/src/components/inspector-controls-tabs/utils.js +0 -3
  1581. package/src/components/inspector-popover-header/index.js +0 -3
  1582. package/src/components/justify-content-control/index.js +0 -3
  1583. package/src/components/justify-content-control/ui.js +0 -3
  1584. package/src/components/keyboard-shortcuts/index.js +0 -7
  1585. package/src/components/letter-spacing-control/index.js +0 -7
  1586. package/src/components/letter-spacing-control/stories/index.story.jsx +0 -7
  1587. package/src/components/line-height-control/index.js +0 -7
  1588. package/src/components/line-height-control/stories/index.story.jsx +0 -7
  1589. package/src/components/line-height-control/test/index.js +0 -11
  1590. package/src/components/link-control/constants.js +0 -3
  1591. package/src/components/link-control/index.js +0 -11
  1592. package/src/components/link-control/is-url-like.js +0 -3
  1593. package/src/components/link-control/link-preview.js +0 -13
  1594. package/src/components/link-control/normalize-url.js +0 -7
  1595. package/src/components/link-control/search-create-button.js +0 -3
  1596. package/src/components/link-control/search-input.js +0 -7
  1597. package/src/components/link-control/search-item.js +0 -3
  1598. package/src/components/link-control/search-results.js +1 -12
  1599. package/src/components/link-control/settings-drawer.js +0 -3
  1600. package/src/components/link-control/settings.js +0 -3
  1601. package/src/components/link-control/style.scss +1 -1
  1602. package/src/components/link-control/test/index.js +0 -11
  1603. package/src/components/link-control/test/is-url-like.js +0 -3
  1604. package/src/components/link-control/test/url-normalization.test.js +0 -11
  1605. package/src/components/link-control/use-create-page.js +0 -3
  1606. package/src/components/link-control/use-internal-value.js +0 -7
  1607. package/src/components/link-control/use-rich-url-data.js +1 -8
  1608. package/src/components/link-control/use-search-handler.js +0 -7
  1609. package/src/components/link-control/viewer-slot.js +0 -3
  1610. package/src/components/link-picker/link-picker.js +0 -7
  1611. package/src/components/link-picker/link-preview.js +0 -7
  1612. package/src/components/link-picker/test/index.js +0 -11
  1613. package/src/components/list-view/appender.js +7 -11
  1614. package/src/components/list-view/aria-referenced-text.js +12 -19
  1615. package/src/components/list-view/block-contents.js +28 -28
  1616. package/src/components/list-view/block-select-button.js +62 -40
  1617. package/src/components/list-view/block.js +41 -58
  1618. package/src/components/list-view/branch.js +179 -169
  1619. package/src/components/list-view/context.js +24 -3
  1620. package/src/components/list-view/drop-indicator.js +6 -18
  1621. package/src/components/list-view/expander.js +0 -3
  1622. package/src/components/list-view/index.js +95 -110
  1623. package/src/components/list-view/leaf.js +0 -11
  1624. package/src/components/list-view/style.scss +24 -4
  1625. package/src/components/list-view/test/use-list-view-drop-zone.js +0 -3
  1626. package/src/components/list-view/test/utils.js +0 -3
  1627. package/src/components/list-view/use-block-selection.js +0 -7
  1628. package/src/components/list-view/use-clipboard-handler.js +0 -7
  1629. package/src/components/list-view/use-list-view-block-indexes.js +0 -3
  1630. package/src/components/list-view/use-list-view-client-ids.js +0 -8
  1631. package/src/components/list-view/use-list-view-collapse-items.js +3 -11
  1632. package/src/components/list-view/use-list-view-drop-zone.js +11 -28
  1633. package/src/components/list-view/use-list-view-expand-selected-item.js +3 -10
  1634. package/src/components/list-view/use-list-view-images.js +6 -10
  1635. package/src/components/list-view/use-list-view-scroll-into-view.js +0 -3
  1636. package/src/components/list-view/utils.js +7 -6
  1637. package/src/components/media-placeholder/index.js +0 -11
  1638. package/src/components/media-placeholder/test/get-computed-accept-attribute.js +0 -3
  1639. package/src/components/media-placeholder/test/index.js +0 -7
  1640. package/src/components/media-replace-flow/index.js +0 -11
  1641. package/src/components/media-replace-flow/test/index.js +0 -10
  1642. package/src/components/media-upload/check.js +0 -7
  1643. package/src/components/media-upload/index.js +0 -3
  1644. package/src/components/multi-selection-inspector/index.js +42 -21
  1645. package/src/components/multi-selection-inspector/style.scss +5 -0
  1646. package/src/components/navigable-toolbar/index.js +38 -27
  1647. package/src/components/observe-typing/index.js +0 -7
  1648. package/src/components/panel-color-settings/README.md +0 -7
  1649. package/src/components/panel-color-settings/index.js +0 -3
  1650. package/src/components/panel-color-settings/test/index.js +0 -7
  1651. package/src/components/plain-text/index.js +0 -11
  1652. package/src/components/plain-text/stories/index.story.jsx +0 -7
  1653. package/src/components/preset-input-control/custom-value-controls.js +0 -4
  1654. package/src/components/preset-input-control/index.js +0 -7
  1655. package/src/components/preset-input-control/test/index.js +0 -7
  1656. package/src/components/preset-input-control/test/utils.js +0 -3
  1657. package/src/components/preview-options/index.js +0 -3
  1658. package/src/components/provider/block-refs-provider.js +0 -3
  1659. package/src/components/provider/index.js +0 -7
  1660. package/src/components/provider/selection-context.js +0 -3
  1661. package/src/components/provider/test/experimental-provider.js +0 -10
  1662. package/src/components/provider/test/use-block-sync.js +0 -12
  1663. package/src/components/provider/use-block-sync.js +0 -7
  1664. package/src/components/provider/use-media-upload-settings.js +0 -3
  1665. package/src/components/provider/with-registry-provider.js +0 -7
  1666. package/src/components/publish-date-time-picker/index.js +0 -7
  1667. package/src/components/recursion-provider/README.md +0 -3
  1668. package/src/components/recursion-provider/index.js +0 -7
  1669. package/src/components/recursion-provider/test/index.js +0 -7
  1670. package/src/components/resizable-box-popover/index.js +0 -7
  1671. package/src/components/resolution-tool/index.js +0 -3
  1672. package/src/components/resolution-tool/stories/index.story.jsx +0 -7
  1673. package/src/components/responsive-block-control/index.js +0 -11
  1674. package/src/components/responsive-block-control/label.js +0 -3
  1675. package/src/components/responsive-block-control/test/index.js +0 -11
  1676. package/src/components/rich-text/content.js +0 -11
  1677. package/src/components/rich-text/event-listeners/before-input-rules.js +0 -7
  1678. package/src/components/rich-text/event-listeners/delete.js +0 -7
  1679. package/src/components/rich-text/event-listeners/enter.js +0 -7
  1680. package/src/components/rich-text/event-listeners/firefox-compat.js +0 -3
  1681. package/src/components/rich-text/event-listeners/index.js +0 -7
  1682. package/src/components/rich-text/event-listeners/input-events.js +0 -8
  1683. package/src/components/rich-text/event-listeners/input-rules.js +15 -20
  1684. package/src/components/rich-text/event-listeners/insert-replacement-text.js +0 -8
  1685. package/src/components/rich-text/event-listeners/paste-handler.js +14 -8
  1686. package/src/components/rich-text/event-listeners/remove-browser-shortcuts.js +0 -8
  1687. package/src/components/rich-text/event-listeners/shortcuts.js +0 -8
  1688. package/src/components/rich-text/event-listeners/undo-automatic-change.js +0 -8
  1689. package/src/components/rich-text/format-edit.js +0 -7
  1690. package/src/components/rich-text/format-toolbar/index.js +0 -11
  1691. package/src/components/rich-text/format-toolbar-container.js +0 -7
  1692. package/src/components/rich-text/get-rich-text-values.js +0 -7
  1693. package/src/components/rich-text/index.js +0 -11
  1694. package/src/components/rich-text/multiline.js +0 -7
  1695. package/src/components/rich-text/prevent-event-discovery.js +0 -3
  1696. package/src/components/rich-text/toolbar-button.js +0 -3
  1697. package/src/components/rich-text/use-mark-persistent.js +0 -7
  1698. package/src/components/rich-text/utils.js +0 -3
  1699. package/src/components/rich-text/with-deprecations.js +0 -7
  1700. package/src/components/selection-scroll-into-view/index.js +0 -3
  1701. package/src/components/skip-to-selected-block/index.js +0 -7
  1702. package/src/components/spacing-sizes-control/hooks/use-spacing-sizes.js +0 -7
  1703. package/src/components/spacing-sizes-control/index.js +2 -9
  1704. package/src/components/spacing-sizes-control/input-controls/axial.js +0 -3
  1705. package/src/components/spacing-sizes-control/input-controls/separated.js +0 -3
  1706. package/src/components/spacing-sizes-control/input-controls/single.js +0 -3
  1707. package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +0 -7
  1708. package/src/components/spacing-sizes-control/linked-button.js +0 -3
  1709. package/src/components/spacing-sizes-control/test/index.js +0 -12
  1710. package/src/components/spacing-sizes-control/test/utils.js +0 -3
  1711. package/src/components/spacing-sizes-control/utils.js +0 -7
  1712. package/src/components/tabbed-sidebar/index.js +0 -7
  1713. package/src/components/tabbed-sidebar/stories/index.story.jsx +0 -7
  1714. package/src/components/text-alignment-control/index.js +0 -7
  1715. package/src/components/text-alignment-control/stories/index.story.jsx +0 -7
  1716. package/src/components/text-decoration-control/index.js +0 -7
  1717. package/src/components/text-decoration-control/stories/index.story.jsx +0 -7
  1718. package/src/components/text-indent-control/index.js +0 -7
  1719. package/src/components/text-transform-control/index.js +0 -7
  1720. package/src/components/text-transform-control/stories/index.story.jsx +0 -7
  1721. package/src/components/tool-selector/index.js +0 -3
  1722. package/src/components/typewriter/index.js +0 -3
  1723. package/src/components/unit-control/index.js +0 -7
  1724. package/src/components/unit-control/stories/index.story.jsx +0 -7
  1725. package/src/components/url-input/button.js +0 -7
  1726. package/src/components/url-input/index.js +55 -75
  1727. package/src/components/url-input/test/button.js +0 -11
  1728. package/src/components/url-input/test/index.js +85 -11
  1729. package/src/components/url-popover/image-url-input-ui.js +2 -9
  1730. package/src/components/url-popover/index.js +0 -7
  1731. package/src/components/url-popover/link-editor.js +0 -11
  1732. package/src/components/url-popover/link-viewer-url.js +0 -7
  1733. package/src/components/url-popover/link-viewer.js +0 -11
  1734. package/src/components/url-popover/stories/index.story.jsx +0 -7
  1735. package/src/components/url-popover/style.scss +5 -0
  1736. package/src/components/use-block-commands/index.js +2 -9
  1737. package/src/components/use-block-display-information/index.js +1 -8
  1738. package/src/components/use-block-display-information/test/index.js +0 -11
  1739. package/src/components/use-block-drop-zone/index.js +0 -7
  1740. package/src/components/use-block-drop-zone/test/index.js +0 -3
  1741. package/src/components/use-flash-editable-blocks/index.js +0 -7
  1742. package/src/components/use-list-view-panel-state/index.js +0 -7
  1743. package/src/components/use-moving-animation/index.js +9 -14
  1744. package/src/components/use-on-block-drop/index.js +0 -7
  1745. package/src/components/use-on-block-drop/test/index.js +1 -7
  1746. package/src/components/use-paste-styles/index.js +0 -7
  1747. package/src/components/use-resize-canvas/index.js +0 -3
  1748. package/src/components/use-settings/index.js +0 -7
  1749. package/src/components/warning/index.js +0 -7
  1750. package/src/components/warning/stories/index.story.jsx +0 -7
  1751. package/src/components/warning/test/index.js +0 -7
  1752. package/src/components/writing-flow/index.js +0 -11
  1753. package/src/components/writing-flow/test/index.js +0 -7
  1754. package/src/components/writing-flow/use-arrow-nav.js +23 -16
  1755. package/src/components/writing-flow/use-click-selection.js +0 -7
  1756. package/src/components/writing-flow/use-clipboard-handler.js +65 -11
  1757. package/src/components/writing-flow/use-drag-selection.js +0 -7
  1758. package/src/components/writing-flow/use-editable-root-event-handlers.js +0 -7
  1759. package/src/components/writing-flow/use-editable-root.js +0 -7
  1760. package/src/components/writing-flow/use-home-end.js +0 -7
  1761. package/src/components/writing-flow/use-input.js +0 -7
  1762. package/src/components/writing-flow/use-multi-selection.js +0 -7
  1763. package/src/components/writing-flow/use-preview-mode-nav.js +0 -7
  1764. package/src/components/writing-flow/use-select-all.js +0 -7
  1765. package/src/components/writing-flow/use-selection-observer.js +0 -7
  1766. package/src/components/writing-flow/use-tab-nav.js +7 -8
  1767. package/src/components/writing-flow/utils.js +0 -7
  1768. package/src/components/writing-mode-control/index.js +0 -7
  1769. package/src/components/writing-mode-control/stories/index.story.jsx +0 -7
  1770. package/src/elements/test/index.js +0 -3
  1771. package/src/hooks/align.js +0 -11
  1772. package/src/hooks/allowed-blocks.js +0 -7
  1773. package/src/hooks/anchor.js +0 -7
  1774. package/src/hooks/aria-label.js +0 -7
  1775. package/src/hooks/auto-inspector-controls.js +0 -7
  1776. package/src/hooks/background.js +3 -15
  1777. package/src/hooks/block-bindings.js +0 -7
  1778. package/src/hooks/block-fields/fields-dropdown-menu.js +0 -7
  1779. package/src/hooks/block-fields/index.js +0 -1
  1780. package/src/hooks/block-fields/link/index.js +0 -7
  1781. package/src/hooks/block-fields/media/index.js +0 -7
  1782. package/src/hooks/block-fields/rich-text/index.js +0 -7
  1783. package/src/hooks/block-fields/use-inspector-popover-placement.js +0 -3
  1784. package/src/hooks/block-hooks.js +0 -7
  1785. package/src/hooks/block-renaming.js +0 -3
  1786. package/src/hooks/block-style-state.js +0 -7
  1787. package/src/hooks/block-style-variation.js +0 -7
  1788. package/src/hooks/border.js +0 -11
  1789. package/src/hooks/color.js +0 -11
  1790. package/src/hooks/compat.js +0 -3
  1791. package/src/hooks/contrast-checker.js +0 -8
  1792. package/src/hooks/custom-class-name.js +0 -11
  1793. package/src/hooks/dimensions.js +0 -11
  1794. package/src/hooks/duotone.js +0 -11
  1795. package/src/hooks/elements.js +0 -7
  1796. package/src/hooks/fit-text.js +0 -8
  1797. package/src/hooks/font-family.js +1 -10
  1798. package/src/hooks/font-size.js +0 -7
  1799. package/src/hooks/gap.js +0 -3
  1800. package/src/hooks/generated-class-name.js +0 -3
  1801. package/src/hooks/grid-visualizer.js +0 -7
  1802. package/src/hooks/index.js +0 -3
  1803. package/src/hooks/layout-child.js +0 -7
  1804. package/src/hooks/layout.js +1 -13
  1805. package/src/hooks/line-height.js +0 -7
  1806. package/src/hooks/list-view.js +0 -8
  1807. package/src/hooks/lock.js +0 -3
  1808. package/src/hooks/metadata.js +0 -3
  1809. package/src/hooks/position.js +0 -11
  1810. package/src/hooks/settings.js +0 -3
  1811. package/src/hooks/spacing-visualizer.js +0 -7
  1812. package/src/hooks/state-utils.js +0 -3
  1813. package/src/hooks/states.js +0 -7
  1814. package/src/hooks/style.js +0 -7
  1815. package/src/hooks/supports.js +0 -3
  1816. package/src/hooks/test/align.js +0 -7
  1817. package/src/hooks/test/allowed-blocks.js +0 -7
  1818. package/src/hooks/test/anchor.js +0 -7
  1819. package/src/hooks/test/auto-inspector-controls.js +0 -7
  1820. package/src/hooks/test/background.js +115 -3
  1821. package/src/hooks/test/block-style-state.js +0 -3
  1822. package/src/hooks/test/custom-class-name.js +0 -7
  1823. package/src/hooks/test/dimensions.js +0 -7
  1824. package/src/hooks/test/duotone.js +0 -3
  1825. package/src/hooks/test/font-size.js +0 -11
  1826. package/src/hooks/test/gap.js +0 -3
  1827. package/src/hooks/test/generate-fields-from-attributes.js +0 -3
  1828. package/src/hooks/test/generated-class-name.js +0 -7
  1829. package/src/hooks/test/inherited-value-wiring.js +0 -3
  1830. package/src/hooks/test/layout-child.js +0 -3
  1831. package/src/hooks/test/layout.js +0 -3
  1832. package/src/hooks/test/metadata.js +0 -7
  1833. package/src/hooks/test/preset-round-trip.js +0 -6
  1834. package/src/hooks/test/settings.js +0 -7
  1835. package/src/hooks/test/state-utils.js +0 -7
  1836. package/src/hooks/test/style.js +0 -7
  1837. package/src/hooks/test/text-align.js +0 -7
  1838. package/src/hooks/test/use-typography-props.js +0 -3
  1839. package/src/hooks/test/utils.js +0 -3
  1840. package/src/hooks/text-align.js +0 -11
  1841. package/src/hooks/typography.js +0 -8
  1842. package/src/hooks/use-border-props.js +0 -3
  1843. package/src/hooks/use-cached-truthy.js +0 -3
  1844. package/src/hooks/use-color-props.js +0 -11
  1845. package/src/hooks/use-content-only-section-edit.js +0 -7
  1846. package/src/hooks/use-dimensions-props.js +0 -3
  1847. package/src/hooks/use-shadow-props.js +0 -3
  1848. package/src/hooks/use-spacing-props.js +0 -3
  1849. package/src/hooks/use-typography-props.js +1 -15
  1850. package/src/hooks/use-zoom-out.js +0 -7
  1851. package/src/hooks/utils.js +0 -11
  1852. package/src/index.js +0 -3
  1853. package/src/layouts/constrained.js +0 -7
  1854. package/src/layouts/flex.js +0 -7
  1855. package/src/layouts/flow.js +0 -7
  1856. package/src/layouts/grid.js +0 -8
  1857. package/src/layouts/index.js +0 -3
  1858. package/src/layouts/test/constrained.js +0 -11
  1859. package/src/layouts/test/flex.js +0 -11
  1860. package/src/layouts/test/flow.js +0 -3
  1861. package/src/layouts/test/grid.js +0 -11
  1862. package/src/layouts/test/utils.js +0 -3
  1863. package/src/layouts/utils.js +0 -7
  1864. package/src/lock-unlock.ts +0 -3
  1865. package/src/private-apis.js +0 -7
  1866. package/src/store/actions.js +162 -53
  1867. package/src/store/defaults.js +4 -3
  1868. package/src/store/get-block-settings.js +0 -7
  1869. package/src/store/index.js +0 -7
  1870. package/src/store/private-actions.js +33 -5
  1871. package/src/store/private-selectors.js +43 -17
  1872. package/src/store/reducer.js +8 -12
  1873. package/src/store/selectors.js +44 -21
  1874. package/src/store/test/actions.js +203 -26
  1875. package/src/store/test/array.js +0 -3
  1876. package/src/store/test/get-block-settings.js +0 -7
  1877. package/src/store/test/performance.js +0 -3
  1878. package/src/store/test/private-actions.js +0 -3
  1879. package/src/store/test/private-selectors.js +155 -17
  1880. package/src/store/test/reducer.js +30 -11
  1881. package/src/store/test/registry-selectors.js +0 -7
  1882. package/src/store/test/selectors.js +143 -7
  1883. package/src/store/utils.js +0 -7
  1884. package/src/utils/fit-text-frontend.ts +0 -8
  1885. package/src/utils/format-font-style.ts +0 -7
  1886. package/src/utils/format-font-weight.ts +0 -7
  1887. package/src/utils/get-font-styles-and-weights.ts +0 -7
  1888. package/src/utils/group-blocks.js +36 -0
  1889. package/src/utils/native-undo.js +0 -3
  1890. package/src/utils/pasting.ts +0 -3
  1891. package/src/utils/selection.ts +0 -3
  1892. package/src/utils/sibling-block-attributes.js +30 -0
  1893. package/src/utils/test/block-bindings.js +0 -3
  1894. package/src/utils/test/color-values.js +0 -3
  1895. package/src/utils/test/format-font-style.js +0 -3
  1896. package/src/utils/test/format-font-weight.js +0 -3
  1897. package/src/utils/test/get-font-styles-and-weights.js +0 -3
  1898. package/src/utils/test/math.js +0 -3
  1899. package/src/utils/test/object.js +0 -3
  1900. package/src/utils/test/pasting.js +0 -3
  1901. package/src/utils/test/selection.js +0 -3
  1902. package/src/utils/test/sorting.js +0 -3
  1903. package/src/utils/test/transform-styles.js +0 -3
  1904. package/src/utils/transform-styles/index.ts +0 -8
  1905. package/src/utils/use-notify-copy.js +0 -7
  1906. package/src/components/block-visibility/use-block-visibility.js +0 -76
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/media-replace-flow/index.js"],
4
- "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport {\n\tFormFileUpload,\n\tNavigableMenu,\n\tMenuItem,\n\tDropdown,\n\twithFilters,\n\tToolbarButton,\n} from '@wordpress/components';\nimport { useSelect, withDispatch } from '@wordpress/data';\nimport { DOWN } from '@wordpress/keycodes';\nimport {\n\tpostFeaturedImage,\n\tupload,\n\tmedia as mediaIcon,\n} from '@wordpress/icons';\nimport { compose } from '@wordpress/compose';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport MediaUpload from '../media-upload';\nimport MediaUploadCheck from '../media-upload/check';\nimport LinkControl from '../link-control';\nimport { store as blockEditorStore } from '../../store';\nimport { getComputedAcceptAttribute } from '../media-placeholder/utils';\n\nconst noop = () => {};\nlet uniqueId = 0;\n\nconst MediaReplaceFlow = ( {\n\tmediaURL,\n\tmediaId,\n\tmediaIds,\n\tallowedTypes,\n\taccept,\n\tonError,\n\tonSelect,\n\tonSelectURL,\n\tonReset,\n\tonToggleFeaturedImage,\n\tuseFeaturedImage,\n\tonFilesUpload = noop,\n\tname = __( 'Replace' ),\n\tcreateNotice,\n\tremoveNotice,\n\tchildren,\n\tmultiple = false,\n\taddToGallery,\n\thandleUpload = true,\n\tvariant,\n\tpopoverProps,\n\trenderToggle,\n\tclassName,\n} ) => {\n\tconst { mediaUpload, allowedMimeTypes } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst settings = getSettings();\n\t\treturn {\n\t\t\tmediaUpload: settings.mediaUpload,\n\t\t\tallowedMimeTypes: settings.allowedMimeTypes,\n\t\t};\n\t}, [] );\n\tconst errorNoticeID = `block-editor/media-replace-flow/error-notice/${ ++uniqueId }`;\n\n\tconst computedAccept = useMemo(\n\t\t() =>\n\t\t\tgetComputedAcceptAttribute(\n\t\t\t\tallowedTypes,\n\t\t\t\tallowedMimeTypes,\n\t\t\t\taccept\n\t\t\t),\n\t\t[ allowedTypes, allowedMimeTypes, accept ]\n\t);\n\n\tconst onUploadError = ( message ) => {\n\t\tconst safeMessage = stripHTML( message );\n\t\tif ( onError ) {\n\t\t\tonError( safeMessage );\n\t\t\treturn;\n\t\t}\n\t\t// We need to set a timeout for showing the notice\n\t\t// so that VoiceOver and possibly other screen readers\n\t\t// can announce the error after the toolbar button\n\t\t// regains focus once the upload dialog closes.\n\t\t// Otherwise VO simply skips over the notice and announces\n\t\t// the focused element and the open menu.\n\t\tsetTimeout( () => {\n\t\t\tcreateNotice( 'error', safeMessage, {\n\t\t\t\tspeak: true,\n\t\t\t\tid: errorNoticeID,\n\t\t\t\tisDismissible: true,\n\t\t\t} );\n\t\t}, 1000 );\n\t};\n\n\tconst selectMedia = ( media, closeMenu ) => {\n\t\tif ( useFeaturedImage && onToggleFeaturedImage ) {\n\t\t\tonToggleFeaturedImage();\n\t\t}\n\t\tcloseMenu();\n\t\t// Calling `onSelect` after the state update since it might unmount the component.\n\t\tonSelect( media );\n\t\tspeak( __( 'The media file has been replaced' ) );\n\t\tremoveNotice( errorNoticeID );\n\t};\n\n\tconst uploadFiles = ( event, closeMenu ) => {\n\t\tconst files = event.target.files;\n\t\tif ( ! handleUpload ) {\n\t\t\tcloseMenu();\n\t\t\treturn onSelect( files );\n\t\t}\n\t\tonFilesUpload( files );\n\t\tmediaUpload( {\n\t\t\tallowedTypes,\n\t\t\tfilesList: files,\n\t\t\tonFileChange: ( [ media ] ) => {\n\t\t\t\tselectMedia( media, closeMenu );\n\t\t\t},\n\t\t\tonError: onUploadError,\n\t\t} );\n\t};\n\n\tconst openOnArrowDown = ( event ) => {\n\t\tif ( event.keyCode === DOWN ) {\n\t\t\tevent.preventDefault();\n\t\t\tevent.target.click();\n\t\t}\n\t};\n\n\tconst onlyAllowsImages = () => {\n\t\tif ( ! allowedTypes || allowedTypes.length === 0 ) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn allowedTypes.every(\n\t\t\t( allowedType ) =>\n\t\t\t\tallowedType === 'image' || allowedType.startsWith( 'image/' )\n\t\t);\n\t};\n\n\tconst gallery = multiple && onlyAllowsImages();\n\n\tconst mergedPopoverProps = {\n\t\t...popoverProps,\n\t\tvariant,\n\t};\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ mergedPopoverProps }\n\t\t\tclassName={ className }\n\t\t\tcontentClassName={ clsx(\n\t\t\t\t'block-editor-media-replace-flow__options',\n\t\t\t\tvariant && `is-variant-${ variant }`\n\t\t\t) }\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => {\n\t\t\t\tif ( renderToggle ) {\n\t\t\t\t\treturn renderToggle( {\n\t\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t\t\t'aria-haspopup': 'true',\n\t\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\t\tonKeyDown: openOnArrowDown,\n\t\t\t\t\t\tchildren: name,\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\tonKeyDown={ openOnArrowDown }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ name }\n\t\t\t\t\t</ToolbarButton>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t<NavigableMenu className=\"block-editor-media-replace-flow__media-upload-menu\">\n\t\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\tgallery={ gallery }\n\t\t\t\t\t\t\t\taddToGallery={ addToGallery }\n\t\t\t\t\t\t\t\tmultiple={ multiple }\n\t\t\t\t\t\t\t\tvalue={ multiple ? mediaIds : mediaId }\n\t\t\t\t\t\t\t\tonSelect={ ( media ) =>\n\t\t\t\t\t\t\t\t\tselectMedia( media, onClose )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tallowedTypes={ allowedTypes }\n\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\ticon={ mediaIcon }\n\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Open Media Library' ) }\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\t\t\tonChange={ ( event ) => {\n\t\t\t\t\t\t\t\t\tuploadFiles( event, onClose );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\taccept={ computedAccept }\n\t\t\t\t\t\t\t\tmultiple={ !! multiple }\n\t\t\t\t\t\t\t\trender={ ( { openFileDialog } ) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\topenFileDialog();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ _x( 'Upload', 'verb' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t\t\t{ onToggleFeaturedImage && (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\ticon={ postFeaturedImage }\n\t\t\t\t\t\t\t\tonClick={ onToggleFeaturedImage }\n\t\t\t\t\t\t\t\tisPressed={ useFeaturedImage }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Use featured image' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ typeof children === 'function'\n\t\t\t\t\t\t\t? children( { onClose } )\n\t\t\t\t\t\t\t: children }\n\t\t\t\t\t\t{ mediaURL && onReset && (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonReset();\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</NavigableMenu>\n\t\t\t\t\t{ onSelectURL && (\n\t\t\t\t\t\t<form className=\"block-editor-media-flow__url-input\">\n\t\t\t\t\t\t\t<span className=\"block-editor-media-replace-flow__image-url-label\">\n\t\t\t\t\t\t\t\t{ __( 'Current media URL:' ) }\n\t\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\t\t<LinkControl\n\t\t\t\t\t\t\t\tvalue={ { url: mediaURL } }\n\t\t\t\t\t\t\t\tsettings={ [] }\n\t\t\t\t\t\t\t\tshowSuggestions={ false }\n\t\t\t\t\t\t\t\tonChange={ ( { url } ) => {\n\t\t\t\t\t\t\t\t\tonSelectURL( url );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tsearchInputPlaceholder={ __(\n\t\t\t\t\t\t\t\t\t'Paste or type URL'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</form>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t/>\n\t);\n};\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/media-replace-flow/README.md\n */\nexport default compose( [\n\twithDispatch( ( dispatch ) => {\n\t\tconst { createNotice, removeNotice } = dispatch( noticesStore );\n\t\treturn {\n\t\t\tcreateNotice,\n\t\t\tremoveNotice,\n\t\t};\n\t} ),\n\twithFilters( 'editor.MediaReplaceFlow' ),\n] )( MediaReplaceFlow );\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import clsx from 'clsx';\nimport { __, _x } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport {\n\tFormFileUpload,\n\tNavigableMenu,\n\tMenuItem,\n\tDropdown,\n\twithFilters,\n\tToolbarButton,\n} from '@wordpress/components';\nimport { useSelect, withDispatch } from '@wordpress/data';\nimport { DOWN } from '@wordpress/keycodes';\nimport {\n\tpostFeaturedImage,\n\tupload,\n\tmedia as mediaIcon,\n} from '@wordpress/icons';\nimport { compose } from '@wordpress/compose';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useMemo } from '@wordpress/element';\nimport MediaUpload from '../media-upload';\nimport MediaUploadCheck from '../media-upload/check';\nimport LinkControl from '../link-control';\nimport { store as blockEditorStore } from '../../store';\nimport { getComputedAcceptAttribute } from '../media-placeholder/utils';\n\nconst noop = () => {};\nlet uniqueId = 0;\n\nconst MediaReplaceFlow = ( {\n\tmediaURL,\n\tmediaId,\n\tmediaIds,\n\tallowedTypes,\n\taccept,\n\tonError,\n\tonSelect,\n\tonSelectURL,\n\tonReset,\n\tonToggleFeaturedImage,\n\tuseFeaturedImage,\n\tonFilesUpload = noop,\n\tname = __( 'Replace' ),\n\tcreateNotice,\n\tremoveNotice,\n\tchildren,\n\tmultiple = false,\n\taddToGallery,\n\thandleUpload = true,\n\tvariant,\n\tpopoverProps,\n\trenderToggle,\n\tclassName,\n} ) => {\n\tconst { mediaUpload, allowedMimeTypes } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst settings = getSettings();\n\t\treturn {\n\t\t\tmediaUpload: settings.mediaUpload,\n\t\t\tallowedMimeTypes: settings.allowedMimeTypes,\n\t\t};\n\t}, [] );\n\tconst errorNoticeID = `block-editor/media-replace-flow/error-notice/${ ++uniqueId }`;\n\n\tconst computedAccept = useMemo(\n\t\t() =>\n\t\t\tgetComputedAcceptAttribute(\n\t\t\t\tallowedTypes,\n\t\t\t\tallowedMimeTypes,\n\t\t\t\taccept\n\t\t\t),\n\t\t[ allowedTypes, allowedMimeTypes, accept ]\n\t);\n\n\tconst onUploadError = ( message ) => {\n\t\tconst safeMessage = stripHTML( message );\n\t\tif ( onError ) {\n\t\t\tonError( safeMessage );\n\t\t\treturn;\n\t\t}\n\t\t// We need to set a timeout for showing the notice\n\t\t// so that VoiceOver and possibly other screen readers\n\t\t// can announce the error after the toolbar button\n\t\t// regains focus once the upload dialog closes.\n\t\t// Otherwise VO simply skips over the notice and announces\n\t\t// the focused element and the open menu.\n\t\tsetTimeout( () => {\n\t\t\tcreateNotice( 'error', safeMessage, {\n\t\t\t\tspeak: true,\n\t\t\t\tid: errorNoticeID,\n\t\t\t\tisDismissible: true,\n\t\t\t} );\n\t\t}, 1000 );\n\t};\n\n\tconst selectMedia = ( media, closeMenu ) => {\n\t\tif ( useFeaturedImage && onToggleFeaturedImage ) {\n\t\t\tonToggleFeaturedImage();\n\t\t}\n\t\tcloseMenu();\n\t\t// Calling `onSelect` after the state update since it might unmount the component.\n\t\tonSelect( media );\n\t\tspeak( __( 'The media file has been replaced' ) );\n\t\tremoveNotice( errorNoticeID );\n\t};\n\n\tconst uploadFiles = ( event, closeMenu ) => {\n\t\tconst files = event.target.files;\n\t\tif ( ! handleUpload ) {\n\t\t\tcloseMenu();\n\t\t\treturn onSelect( files );\n\t\t}\n\t\tonFilesUpload( files );\n\t\tmediaUpload( {\n\t\t\tallowedTypes,\n\t\t\tfilesList: files,\n\t\t\tonFileChange: ( [ media ] ) => {\n\t\t\t\tselectMedia( media, closeMenu );\n\t\t\t},\n\t\t\tonError: onUploadError,\n\t\t} );\n\t};\n\n\tconst openOnArrowDown = ( event ) => {\n\t\tif ( event.keyCode === DOWN ) {\n\t\t\tevent.preventDefault();\n\t\t\tevent.target.click();\n\t\t}\n\t};\n\n\tconst onlyAllowsImages = () => {\n\t\tif ( ! allowedTypes || allowedTypes.length === 0 ) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn allowedTypes.every(\n\t\t\t( allowedType ) =>\n\t\t\t\tallowedType === 'image' || allowedType.startsWith( 'image/' )\n\t\t);\n\t};\n\n\tconst gallery = multiple && onlyAllowsImages();\n\n\tconst mergedPopoverProps = {\n\t\t...popoverProps,\n\t\tvariant,\n\t};\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ mergedPopoverProps }\n\t\t\tclassName={ className }\n\t\t\tcontentClassName={ clsx(\n\t\t\t\t'block-editor-media-replace-flow__options',\n\t\t\t\tvariant && `is-variant-${ variant }`\n\t\t\t) }\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => {\n\t\t\t\tif ( renderToggle ) {\n\t\t\t\t\treturn renderToggle( {\n\t\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t\t\t'aria-haspopup': 'true',\n\t\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\t\tonKeyDown: openOnArrowDown,\n\t\t\t\t\t\tchildren: name,\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\tonKeyDown={ openOnArrowDown }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ name }\n\t\t\t\t\t</ToolbarButton>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t<NavigableMenu className=\"block-editor-media-replace-flow__media-upload-menu\">\n\t\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\tgallery={ gallery }\n\t\t\t\t\t\t\t\taddToGallery={ addToGallery }\n\t\t\t\t\t\t\t\tmultiple={ multiple }\n\t\t\t\t\t\t\t\tvalue={ multiple ? mediaIds : mediaId }\n\t\t\t\t\t\t\t\tonSelect={ ( media ) =>\n\t\t\t\t\t\t\t\t\tselectMedia( media, onClose )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tallowedTypes={ allowedTypes }\n\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\ticon={ mediaIcon }\n\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Open Media Library' ) }\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\t\t\tonChange={ ( event ) => {\n\t\t\t\t\t\t\t\t\tuploadFiles( event, onClose );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\taccept={ computedAccept }\n\t\t\t\t\t\t\t\tmultiple={ !! multiple }\n\t\t\t\t\t\t\t\trender={ ( { openFileDialog } ) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\topenFileDialog();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ _x( 'Upload', 'verb' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t\t\t{ onToggleFeaturedImage && (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\ticon={ postFeaturedImage }\n\t\t\t\t\t\t\t\tonClick={ onToggleFeaturedImage }\n\t\t\t\t\t\t\t\tisPressed={ useFeaturedImage }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Use featured image' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ typeof children === 'function'\n\t\t\t\t\t\t\t? children( { onClose } )\n\t\t\t\t\t\t\t: children }\n\t\t\t\t\t\t{ mediaURL && onReset && (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonReset();\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</NavigableMenu>\n\t\t\t\t\t{ onSelectURL && (\n\t\t\t\t\t\t<form className=\"block-editor-media-flow__url-input\">\n\t\t\t\t\t\t\t<span className=\"block-editor-media-replace-flow__image-url-label\">\n\t\t\t\t\t\t\t\t{ __( 'Current media URL:' ) }\n\t\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\t\t<LinkControl\n\t\t\t\t\t\t\t\tvalue={ { url: mediaURL } }\n\t\t\t\t\t\t\t\tsettings={ [] }\n\t\t\t\t\t\t\t\tshowSuggestions={ false }\n\t\t\t\t\t\t\t\tonChange={ ( { url } ) => {\n\t\t\t\t\t\t\t\t\tonSelectURL( url );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tsearchInputPlaceholder={ __(\n\t\t\t\t\t\t\t\t\t'Paste or type URL'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</form>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t/>\n\t);\n};\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/media-replace-flow/README.md\n */\nexport default compose( [\n\twithDispatch( ( dispatch ) => {\n\t\tconst { createNotice, removeNotice } = dispatch( noticesStore );\n\t\treturn {\n\t\t\tcreateNotice,\n\t\t\tremoveNotice,\n\t\t};\n\t} ),\n\twithFilters( 'editor.MediaReplaceFlow' ),\n] )( MediaReplaceFlow );\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/media-upload/check.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\nexport function MediaUploadCheck( { fallback = null, children } ) {\n\tconst hasUploadPermissions = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn !! getSettings().mediaUpload;\n\t}, [] );\n\treturn hasUploadPermissions ? children : fallback;\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/media-upload/README.md\n */\nexport default MediaUploadCheck;\n"],
5
- "mappings": ";AAGA,SAAS,iBAAiB;AAK1B,SAAS,SAAS,wBAAwB;AAEnC,SAAS,iBAAkB,EAAE,WAAW,MAAM,SAAS,GAAI;AACjE,QAAM,uBAAuB,UAAW,CAAE,WAAY;AACrD,UAAM,EAAE,YAAY,IAAI,OAAQ,gBAAiB;AACjD,WAAO,CAAC,CAAE,YAAY,EAAE;AAAA,EACzB,GAAG,CAAC,CAAE;AACN,SAAO,uBAAuB,WAAW;AAC1C;AAKA,IAAO,gBAAQ;",
4
+ "sourcesContent": ["import { useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '../../store';\n\nexport function MediaUploadCheck( { fallback = null, children } ) {\n\tconst hasUploadPermissions = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn !! getSettings().mediaUpload;\n\t}, [] );\n\treturn hasUploadPermissions ? children : fallback;\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/media-upload/README.md\n */\nexport default MediaUploadCheck;\n"],
5
+ "mappings": ";AAAA,SAAS,iBAAiB;AAC1B,SAAS,SAAS,wBAAwB;AAEnC,SAAS,iBAAkB,EAAE,WAAW,MAAM,SAAS,GAAI;AACjE,QAAM,uBAAuB,UAAW,CAAE,WAAY;AACrD,UAAM,EAAE,YAAY,IAAI,OAAQ,gBAAiB;AACjD,WAAO,CAAC,CAAE,YAAY,EAAE;AAAA,EACzB,GAAG,CAAC,CAAE;AACN,SAAO,uBAAuB,WAAW;AAC1C;AAKA,IAAO,gBAAQ;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/media-upload/index.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { withFilters } from '@wordpress/components';\n\n/**\n * This is a placeholder for the media upload component necessary to make it possible to provide\n * an integration with the core blocks that handle media files. By default it renders nothing but\n * it provides a way to have it overridden with the `editor.MediaUpload` filter.\n *\n * @return {Component} The component to be rendered.\n */\nconst MediaUpload = () => null;\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/media-upload/README.md\n */\nexport default withFilters( 'editor.MediaUpload' )( MediaUpload );\n"],
5
- "mappings": ";AAGA,SAAS,mBAAmB;AAS5B,IAAM,cAAc,MAAM;AAK1B,IAAO,uBAAQ,YAAa,oBAAqB,EAAG,WAAY;",
4
+ "sourcesContent": ["import { withFilters } from '@wordpress/components';\n\n/**\n * This is a placeholder for the media upload component necessary to make it possible to provide\n * an integration with the core blocks that handle media files. By default it renders nothing but\n * it provides a way to have it overridden with the `editor.MediaUpload` filter.\n *\n * @return {Component} The component to be rendered.\n */\nconst MediaUpload = () => null;\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/media-upload/README.md\n */\nexport default withFilters( 'editor.MediaUpload' )( MediaUpload );\n"],
5
+ "mappings": ";AAAA,SAAS,mBAAmB;AAS5B,IAAM,cAAc,MAAM;AAK1B,IAAO,uBAAQ,YAAa,oBAAqB,EAAG,WAAY;",
6
6
  "names": []
7
7
  }
@@ -2,28 +2,49 @@
2
2
  import { sprintf, _n } from "@wordpress/i18n";
3
3
  import { useSelect } from "@wordpress/data";
4
4
  import { copy } from "@wordpress/icons";
5
- import { __experimentalHStack as HStack } from "@wordpress/components";
5
+ import { Stack } from "@wordpress/ui";
6
6
  import BlockIcon from "../block-icon/index.mjs";
7
7
  import { store as blockEditorStore } from "../../store/index.mjs";
8
8
  import { jsx, jsxs } from "react/jsx-runtime";
9
9
  function MultiSelectionInspector() {
10
- const selectedBlockCount = useSelect(
11
- (select) => select(blockEditorStore).getSelectedBlockCount(),
12
- []
13
- );
10
+ const { selectedBlockCount, totalBlockCount } = useSelect((select) => {
11
+ const {
12
+ getSelectedBlockCount,
13
+ getMultiSelectedBlockClientIds,
14
+ getClientIdsOfDescendants
15
+ } = select(blockEditorStore);
16
+ const count = getSelectedBlockCount();
17
+ return {
18
+ selectedBlockCount: count,
19
+ totalBlockCount: count + getClientIdsOfDescendants(getMultiSelectedBlockClientIds()).length
20
+ };
21
+ }, []);
14
22
  return /* @__PURE__ */ jsxs(
15
- HStack,
23
+ Stack,
16
24
  {
25
+ direction: "row",
26
+ align: "center",
17
27
  justify: "flex-start",
18
- spacing: 2,
28
+ gap: "sm",
19
29
  className: "block-editor-multi-selection-inspector__card",
20
30
  children: [
21
31
  /* @__PURE__ */ jsx(BlockIcon, { icon: copy, showColors: true }),
22
- /* @__PURE__ */ jsx("div", { className: "block-editor-multi-selection-inspector__card-title", children: sprintf(
23
- /* translators: %d: number of blocks */
24
- _n("%d Block", "%d Blocks", selectedBlockCount),
25
- selectedBlockCount
26
- ) })
32
+ /* @__PURE__ */ jsxs(Stack, { direction: "column", children: [
33
+ /* @__PURE__ */ jsx("div", { className: "block-editor-multi-selection-inspector__card-title", children: sprintf(
34
+ /* translators: %d: number of blocks */
35
+ _n("%d Block", "%d Blocks", selectedBlockCount),
36
+ selectedBlockCount
37
+ ) }),
38
+ totalBlockCount > selectedBlockCount && /* @__PURE__ */ jsx("div", { className: "block-editor-multi-selection-inspector__card-description", children: sprintf(
39
+ /* translators: %d: number of blocks including nested blocks */
40
+ _n(
41
+ "%d including nested block",
42
+ "%d including nested blocks",
43
+ totalBlockCount
44
+ ),
45
+ totalBlockCount
46
+ ) })
47
+ ] })
27
48
  ]
28
49
  }
29
50
  );
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/multi-selection-inspector/index.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { sprintf, _n } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { copy } from '@wordpress/icons';\nimport { __experimentalHStack as HStack } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport BlockIcon from '../block-icon';\nimport { store as blockEditorStore } from '../../store';\n\nexport default function MultiSelectionInspector() {\n\tconst selectedBlockCount = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSelectedBlockCount(),\n\t\t[]\n\t);\n\treturn (\n\t\t<HStack\n\t\t\tjustify=\"flex-start\"\n\t\t\tspacing={ 2 }\n\t\t\tclassName=\"block-editor-multi-selection-inspector__card\"\n\t\t>\n\t\t\t<BlockIcon icon={ copy } showColors />\n\t\t\t<div className=\"block-editor-multi-selection-inspector__card-title\">\n\t\t\t\t{ sprintf(\n\t\t\t\t\t/* translators: %d: number of blocks */\n\t\t\t\t\t_n( '%d Block', '%d Blocks', selectedBlockCount ),\n\t\t\t\t\tselectedBlockCount\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</HStack>\n\t);\n}\n"],
5
- "mappings": ";AAGA,SAAS,SAAS,UAAU;AAC5B,SAAS,iBAAiB;AAC1B,SAAS,YAAY;AACrB,SAAS,wBAAwB,cAAc;AAK/C,OAAO,eAAe;AACtB,SAAS,SAAS,wBAAwB;AAQxC,SAKC,KALD;AANa,SAAR,0BAA2C;AACjD,QAAM,qBAAqB;AAAA,IAC1B,CAAE,WAAY,OAAQ,gBAAiB,EAAE,sBAAsB;AAAA,IAC/D,CAAC;AAAA,EACF;AACA,SACC;AAAA,IAAC;AAAA;AAAA,MACA,SAAQ;AAAA,MACR,SAAU;AAAA,MACV,WAAU;AAAA,MAEV;AAAA,4BAAC,aAAU,MAAO,MAAO,YAAU,MAAC;AAAA,QACpC,oBAAC,SAAI,WAAU,sDACZ;AAAA;AAAA,UAED,GAAI,YAAY,aAAa,kBAAmB;AAAA,UAChD;AAAA,QACD,GACD;AAAA;AAAA;AAAA,EACD;AAEF;",
4
+ "sourcesContent": ["import { sprintf, _n } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { copy } from '@wordpress/icons';\nimport { Stack } from '@wordpress/ui';\nimport BlockIcon from '../block-icon';\nimport { store as blockEditorStore } from '../../store';\n\nexport default function MultiSelectionInspector() {\n\tconst { selectedBlockCount, totalBlockCount } = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetSelectedBlockCount,\n\t\t\tgetMultiSelectedBlockClientIds,\n\t\t\tgetClientIdsOfDescendants,\n\t\t} = select( blockEditorStore );\n\t\tconst count = getSelectedBlockCount();\n\t\treturn {\n\t\t\tselectedBlockCount: count,\n\t\t\ttotalBlockCount:\n\t\t\t\tcount +\n\t\t\t\tgetClientIdsOfDescendants( getMultiSelectedBlockClientIds() )\n\t\t\t\t\t.length,\n\t\t};\n\t}, [] );\n\treturn (\n\t\t<Stack\n\t\t\tdirection=\"row\"\n\t\t\talign=\"center\"\n\t\t\tjustify=\"flex-start\"\n\t\t\tgap=\"sm\"\n\t\t\tclassName=\"block-editor-multi-selection-inspector__card\"\n\t\t>\n\t\t\t<BlockIcon icon={ copy } showColors />\n\t\t\t<Stack direction=\"column\">\n\t\t\t\t<div className=\"block-editor-multi-selection-inspector__card-title\">\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %d: number of blocks */\n\t\t\t\t\t\t_n( '%d Block', '%d Blocks', selectedBlockCount ),\n\t\t\t\t\t\tselectedBlockCount\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t\t{ totalBlockCount > selectedBlockCount && (\n\t\t\t\t\t<div className=\"block-editor-multi-selection-inspector__card-description\">\n\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t/* translators: %d: number of blocks including nested blocks */\n\t\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t\t'%d including nested block',\n\t\t\t\t\t\t\t\t'%d including nested blocks',\n\t\t\t\t\t\t\t\ttotalBlockCount\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\ttotalBlockCount\n\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</Stack>\n\t\t</Stack>\n\t);\n}\n"],
5
+ "mappings": ";AAAA,SAAS,SAAS,UAAU;AAC5B,SAAS,iBAAiB;AAC1B,SAAS,YAAY;AACrB,SAAS,aAAa;AACtB,OAAO,eAAe;AACtB,SAAS,SAAS,wBAAwB;AA0BvC,cACA,YADA;AAxBY,SAAR,0BAA2C;AACjD,QAAM,EAAE,oBAAoB,gBAAgB,IAAI,UAAW,CAAE,WAAY;AACxE,UAAM;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACD,IAAI,OAAQ,gBAAiB;AAC7B,UAAM,QAAQ,sBAAsB;AACpC,WAAO;AAAA,MACN,oBAAoB;AAAA,MACpB,iBACC,QACA,0BAA2B,+BAA+B,CAAE,EAC1D;AAAA,IACJ;AAAA,EACD,GAAG,CAAC,CAAE;AACN,SACC;AAAA,IAAC;AAAA;AAAA,MACA,WAAU;AAAA,MACV,OAAM;AAAA,MACN,SAAQ;AAAA,MACR,KAAI;AAAA,MACJ,WAAU;AAAA,MAEV;AAAA,4BAAC,aAAU,MAAO,MAAO,YAAU,MAAC;AAAA,QACpC,qBAAC,SAAM,WAAU,UAChB;AAAA,8BAAC,SAAI,WAAU,sDACZ;AAAA;AAAA,YAED,GAAI,YAAY,aAAa,kBAAmB;AAAA,YAChD;AAAA,UACD,GACD;AAAA,UACE,kBAAkB,sBACnB,oBAAC,SAAI,WAAU,4DACZ;AAAA;AAAA,YAED;AAAA,cACC;AAAA,cACA;AAAA,cACA;AAAA,YACD;AAAA,YACA;AAAA,UACD,GACD;AAAA,WAEF;AAAA;AAAA;AAAA,EACD;AAEF;",
6
6
  "names": []
7
7
  }
@@ -3,6 +3,7 @@ import { NavigableMenu, Toolbar } from "@wordpress/components";
3
3
  import {
4
4
  useState,
5
5
  useRef,
6
+ useContext,
6
7
  useLayoutEffect,
7
8
  useEffect,
8
9
  useCallback
@@ -13,6 +14,7 @@ import { focus } from "@wordpress/dom";
13
14
  import { useShortcut } from "@wordpress/keyboard-shortcuts";
14
15
  import { ESCAPE } from "@wordpress/keycodes";
15
16
  import { store as blockEditorStore } from "../../store/index.mjs";
17
+ import { BlockRefs } from "../provider/block-refs-provider.mjs";
16
18
  import { unlock } from "../../lock-unlock.mjs";
17
19
  import { jsx } from "react/jsx-runtime";
18
20
  function hasOnlyToolbarItem(elements) {
@@ -78,6 +80,10 @@ function useToolbarFocus({
78
80
  }) {
79
81
  const [initialFocusOnMount] = useState(focusOnMount);
80
82
  const [initialIndex] = useState(defaultIndex);
83
+ const { getLastFocus, getSelectedBlockClientId } = unlock(
84
+ useSelect(blockEditorStore)
85
+ );
86
+ const { refsMap } = useContext(BlockRefs);
81
87
  const focusToolbar = useCallback(() => {
82
88
  focusFirstTabbableIn(toolbarRef.current);
83
89
  }, [toolbarRef]);
@@ -119,26 +125,32 @@ function useToolbarFocus({
119
125
  onIndexChange(index);
120
126
  };
121
127
  }, [initialIndex, initialFocusOnMount, onIndexChange, toolbarRef]);
122
- const { getLastFocus } = unlock(useSelect(blockEditorStore));
123
128
  useEffect(() => {
124
- const navigableToolbarRef = toolbarRef.current;
125
- if (focusEditorOnEscape) {
126
- const handleKeyDown = (event) => {
127
- const lastFocus = getLastFocus();
128
- if (event.keyCode === ESCAPE && lastFocus?.current) {
129
- event.preventDefault();
130
- lastFocus.current.focus();
131
- }
132
- };
133
- navigableToolbarRef.addEventListener("keydown", handleKeyDown);
134
- return () => {
135
- navigableToolbarRef.removeEventListener(
136
- "keydown",
137
- handleKeyDown
138
- );
139
- };
129
+ if (!focusEditorOnEscape) {
130
+ return;
140
131
  }
141
- }, [focusEditorOnEscape, getLastFocus, toolbarRef]);
132
+ const navigableToolbar = toolbarRef.current;
133
+ const handleKeyDown = (event) => {
134
+ if (event.keyCode !== ESCAPE) {
135
+ return;
136
+ }
137
+ const target = getLastFocus()?.current ?? refsMap.get(getSelectedBlockClientId());
138
+ if (target) {
139
+ event.preventDefault();
140
+ target.focus();
141
+ }
142
+ };
143
+ navigableToolbar.addEventListener("keydown", handleKeyDown);
144
+ return () => {
145
+ navigableToolbar.removeEventListener("keydown", handleKeyDown);
146
+ };
147
+ }, [
148
+ focusEditorOnEscape,
149
+ getLastFocus,
150
+ getSelectedBlockClientId,
151
+ refsMap,
152
+ toolbarRef
153
+ ]);
142
154
  }
143
155
  function NavigableToolbar({
144
156
  children,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/navigable-toolbar/index.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { NavigableMenu, Toolbar } from '@wordpress/components';\nimport {\n\tuseState,\n\tuseRef,\n\tuseLayoutEffect,\n\tuseEffect,\n\tuseCallback,\n} from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport deprecated from '@wordpress/deprecated';\nimport { focus } from '@wordpress/dom';\nimport { useShortcut } from '@wordpress/keyboard-shortcuts';\nimport { ESCAPE } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nfunction hasOnlyToolbarItem( elements ) {\n\tconst dataProp = 'toolbarItem';\n\treturn ! elements.some( ( element ) => ! ( dataProp in element.dataset ) );\n}\n\nfunction getAllFocusableToolbarItemsIn( container ) {\n\treturn Array.from(\n\t\tcontainer.querySelectorAll( '[data-toolbar-item]:not([disabled])' )\n\t);\n}\n\nfunction hasFocusWithin( container ) {\n\treturn container.contains( container.ownerDocument.activeElement );\n}\n\nfunction focusFirstTabbableIn( container ) {\n\tconst [ firstTabbable ] = focus.tabbable.find( container );\n\n\tif ( firstTabbable ) {\n\t\tfirstTabbable.focus( {\n\t\t\t// When focusing newly mounted toolbars,\n\t\t\t// the position of the popover is often not right on the first render\n\t\t\t// This prevents the layout shifts when focusing the dialogs.\n\t\t\tpreventScroll: true,\n\t\t} );\n\t}\n}\n\nfunction useIsAccessibleToolbar( toolbarRef ) {\n\t/*\n\t * By default, we'll assume the starting accessible state of the Toolbar\n\t * is true, as it seems to be the most common case.\n\t *\n\t * Transitioning from an (initial) false to true state causes the\n\t * <Toolbar /> component to mount twice, which is causing undesired\n\t * side-effects. These side-effects appear to only affect certain\n\t * E2E tests.\n\t *\n\t * This was initial discovered in this pull-request:\n\t * https://github.com/WordPress/gutenberg/pull/23425\n\t */\n\tconst initialAccessibleToolbarState = true;\n\n\t// By default, it's gonna render NavigableMenu. If all the tabbable elements\n\t// inside the toolbar are ToolbarItem components (or derived components like\n\t// ToolbarButton), then we can wrap them with the accessible Toolbar\n\t// component.\n\tconst [ isAccessibleToolbar, setIsAccessibleToolbar ] = useState(\n\t\tinitialAccessibleToolbarState\n\t);\n\n\tconst determineIsAccessibleToolbar = useCallback( () => {\n\t\tconst tabbables = focus.tabbable.find( toolbarRef.current );\n\t\tconst onlyToolbarItem = hasOnlyToolbarItem( tabbables );\n\t\tif ( ! onlyToolbarItem ) {\n\t\t\tdeprecated( 'Using custom components as toolbar controls', {\n\t\t\t\tsince: '5.6',\n\t\t\t\talternative:\n\t\t\t\t\t'ToolbarItem, ToolbarButton or ToolbarDropdownMenu components',\n\t\t\t\tlink: 'https://developer.wordpress.org/block-editor/components/toolbar-button/#inside-blockcontrols',\n\t\t\t} );\n\t\t}\n\t\tsetIsAccessibleToolbar( onlyToolbarItem );\n\t}, [ toolbarRef ] );\n\n\tuseLayoutEffect( () => {\n\t\t// Toolbar buttons may be rendered asynchronously, so we use\n\t\t// MutationObserver to check if the toolbar subtree has been modified.\n\t\tconst observer = new window.MutationObserver(\n\t\t\tdetermineIsAccessibleToolbar\n\t\t);\n\t\tobserver.observe( toolbarRef.current, {\n\t\t\tchildList: true,\n\t\t\tsubtree: true,\n\t\t} );\n\t\treturn () => observer.disconnect();\n\t}, [ determineIsAccessibleToolbar, isAccessibleToolbar, toolbarRef ] );\n\n\treturn isAccessibleToolbar;\n}\n\nfunction useToolbarFocus( {\n\ttoolbarRef,\n\tfocusOnMount,\n\tisAccessibleToolbar,\n\tdefaultIndex,\n\tonIndexChange,\n\tshouldUseKeyboardFocusShortcut,\n\tfocusEditorOnEscape,\n} ) {\n\t// Make sure we don't use modified versions of this prop.\n\tconst [ initialFocusOnMount ] = useState( focusOnMount );\n\tconst [ initialIndex ] = useState( defaultIndex );\n\n\tconst focusToolbar = useCallback( () => {\n\t\tfocusFirstTabbableIn( toolbarRef.current );\n\t}, [ toolbarRef ] );\n\n\tconst focusToolbarViaShortcut = () => {\n\t\tif ( shouldUseKeyboardFocusShortcut ) {\n\t\t\tfocusToolbar();\n\t\t}\n\t};\n\n\t// Focus on toolbar when pressing alt+F10 when the toolbar is visible.\n\tuseShortcut( 'core/block-editor/focus-toolbar', focusToolbarViaShortcut );\n\n\tuseEffect( () => {\n\t\tif ( initialFocusOnMount ) {\n\t\t\tfocusToolbar();\n\t\t}\n\t}, [ isAccessibleToolbar, initialFocusOnMount, focusToolbar ] );\n\n\tuseEffect( () => {\n\t\t// Store ref so we have access on useEffect cleanup: https://legacy.reactjs.org/blog/2020/08/10/react-v17-rc.html#effect-cleanup-timing\n\t\tconst navigableToolbarRef = toolbarRef.current;\n\t\t// If initialIndex is passed, we focus on that toolbar item when the\n\t\t// toolbar gets mounted and initial focus is not forced.\n\t\t// We have to wait for the next browser paint because block controls aren't\n\t\t// rendered right away when the toolbar gets mounted.\n\t\tlet raf = 0;\n\n\t\t// If the toolbar already had focus before the render, we don't want to move it.\n\t\t// https://github.com/WordPress/gutenberg/issues/58511\n\t\tif (\n\t\t\t! initialFocusOnMount &&\n\t\t\t! hasFocusWithin( navigableToolbarRef )\n\t\t) {\n\t\t\traf = window.requestAnimationFrame( () => {\n\t\t\t\tconst items =\n\t\t\t\t\tgetAllFocusableToolbarItemsIn( navigableToolbarRef );\n\t\t\t\tconst index = initialIndex || 0;\n\t\t\t\tif ( items[ index ] && hasFocusWithin( navigableToolbarRef ) ) {\n\t\t\t\t\titems[ index ].focus( {\n\t\t\t\t\t\t// When focusing newly mounted toolbars,\n\t\t\t\t\t\t// the position of the popover is often not right on the first render\n\t\t\t\t\t\t// This prevents the layout shifts when focusing the dialogs.\n\t\t\t\t\t\tpreventScroll: true,\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t\treturn () => {\n\t\t\twindow.cancelAnimationFrame( raf );\n\t\t\tif ( ! onIndexChange || ! navigableToolbarRef ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// When the toolbar element is unmounted and onIndexChange is passed, we\n\t\t\t// pass the focused toolbar item index so it can be hydrated later.\n\t\t\tconst items = getAllFocusableToolbarItemsIn( navigableToolbarRef );\n\t\t\tconst index = items.findIndex( ( item ) => item.tabIndex === 0 );\n\t\t\tonIndexChange( index );\n\t\t};\n\t}, [ initialIndex, initialFocusOnMount, onIndexChange, toolbarRef ] );\n\n\tconst { getLastFocus } = unlock( useSelect( blockEditorStore ) );\n\t/**\n\t * Handles returning focus to the block editor canvas when pressing escape.\n\t */\n\tuseEffect( () => {\n\t\tconst navigableToolbarRef = toolbarRef.current;\n\n\t\tif ( focusEditorOnEscape ) {\n\t\t\tconst handleKeyDown = ( event ) => {\n\t\t\t\tconst lastFocus = getLastFocus();\n\t\t\t\tif ( event.keyCode === ESCAPE && lastFocus?.current ) {\n\t\t\t\t\t// Focus the last focused element when pressing escape.\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tlastFocus.current.focus();\n\t\t\t\t}\n\t\t\t};\n\t\t\tnavigableToolbarRef.addEventListener( 'keydown', handleKeyDown );\n\t\t\treturn () => {\n\t\t\t\tnavigableToolbarRef.removeEventListener(\n\t\t\t\t\t'keydown',\n\t\t\t\t\thandleKeyDown\n\t\t\t\t);\n\t\t\t};\n\t\t}\n\t}, [ focusEditorOnEscape, getLastFocus, toolbarRef ] );\n}\n\nexport default function NavigableToolbar( {\n\tchildren,\n\tfocusOnMount,\n\tfocusEditorOnEscape = false,\n\tshouldUseKeyboardFocusShortcut = true,\n\t__experimentalInitialIndex: initialIndex,\n\t__experimentalOnIndexChange: onIndexChange,\n\torientation = 'horizontal',\n\t...props\n} ) {\n\tconst toolbarRef = useRef();\n\tconst isAccessibleToolbar = useIsAccessibleToolbar( toolbarRef );\n\n\tuseToolbarFocus( {\n\t\ttoolbarRef,\n\t\tfocusOnMount,\n\t\tdefaultIndex: initialIndex,\n\t\tonIndexChange,\n\t\tisAccessibleToolbar,\n\t\tshouldUseKeyboardFocusShortcut,\n\t\tfocusEditorOnEscape,\n\t} );\n\n\tif ( isAccessibleToolbar ) {\n\t\treturn (\n\t\t\t<Toolbar\n\t\t\t\tlabel={ props[ 'aria-label' ] }\n\t\t\t\tref={ toolbarRef }\n\t\t\t\torientation={ orientation }\n\t\t\t\t{ ...props }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</Toolbar>\n\t\t);\n\t}\n\n\treturn (\n\t\t<NavigableMenu\n\t\t\torientation={ orientation }\n\t\t\trole=\"toolbar\"\n\t\t\tref={ toolbarRef }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ children }\n\t\t</NavigableMenu>\n\t);\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { NavigableMenu, Toolbar } from '@wordpress/components';\nimport {\n\tuseState,\n\tuseRef,\n\tuseContext,\n\tuseLayoutEffect,\n\tuseEffect,\n\tuseCallback,\n} from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport deprecated from '@wordpress/deprecated';\nimport { focus } from '@wordpress/dom';\nimport { useShortcut } from '@wordpress/keyboard-shortcuts';\nimport { ESCAPE } from '@wordpress/keycodes';\nimport { store as blockEditorStore } from '../../store';\nimport { BlockRefs } from '../provider/block-refs-provider';\nimport { unlock } from '../../lock-unlock';\n\nfunction hasOnlyToolbarItem( elements ) {\n\tconst dataProp = 'toolbarItem';\n\treturn ! elements.some( ( element ) => ! ( dataProp in element.dataset ) );\n}\n\nfunction getAllFocusableToolbarItemsIn( container ) {\n\treturn Array.from(\n\t\tcontainer.querySelectorAll( '[data-toolbar-item]:not([disabled])' )\n\t);\n}\n\nfunction hasFocusWithin( container ) {\n\treturn container.contains( container.ownerDocument.activeElement );\n}\n\nfunction focusFirstTabbableIn( container ) {\n\tconst [ firstTabbable ] = focus.tabbable.find( container );\n\n\tif ( firstTabbable ) {\n\t\tfirstTabbable.focus( {\n\t\t\t// When focusing newly mounted toolbars,\n\t\t\t// the position of the popover is often not right on the first render\n\t\t\t// This prevents the layout shifts when focusing the dialogs.\n\t\t\tpreventScroll: true,\n\t\t} );\n\t}\n}\n\nfunction useIsAccessibleToolbar( toolbarRef ) {\n\t/*\n\t * By default, we'll assume the starting accessible state of the Toolbar\n\t * is true, as it seems to be the most common case.\n\t *\n\t * Transitioning from an (initial) false to true state causes the\n\t * <Toolbar /> component to mount twice, which is causing undesired\n\t * side-effects. These side-effects appear to only affect certain\n\t * E2E tests.\n\t *\n\t * This was initial discovered in this pull-request:\n\t * https://github.com/WordPress/gutenberg/pull/23425\n\t */\n\tconst initialAccessibleToolbarState = true;\n\n\t// By default, it's gonna render NavigableMenu. If all the tabbable elements\n\t// inside the toolbar are ToolbarItem components (or derived components like\n\t// ToolbarButton), then we can wrap them with the accessible Toolbar\n\t// component.\n\tconst [ isAccessibleToolbar, setIsAccessibleToolbar ] = useState(\n\t\tinitialAccessibleToolbarState\n\t);\n\n\tconst determineIsAccessibleToolbar = useCallback( () => {\n\t\tconst tabbables = focus.tabbable.find( toolbarRef.current );\n\t\tconst onlyToolbarItem = hasOnlyToolbarItem( tabbables );\n\t\tif ( ! onlyToolbarItem ) {\n\t\t\tdeprecated( 'Using custom components as toolbar controls', {\n\t\t\t\tsince: '5.6',\n\t\t\t\talternative:\n\t\t\t\t\t'ToolbarItem, ToolbarButton or ToolbarDropdownMenu components',\n\t\t\t\tlink: 'https://developer.wordpress.org/block-editor/components/toolbar-button/#inside-blockcontrols',\n\t\t\t} );\n\t\t}\n\t\tsetIsAccessibleToolbar( onlyToolbarItem );\n\t}, [ toolbarRef ] );\n\n\tuseLayoutEffect( () => {\n\t\t// Toolbar buttons may be rendered asynchronously, so we use\n\t\t// MutationObserver to check if the toolbar subtree has been modified.\n\t\tconst observer = new window.MutationObserver(\n\t\t\tdetermineIsAccessibleToolbar\n\t\t);\n\t\tobserver.observe( toolbarRef.current, {\n\t\t\tchildList: true,\n\t\t\tsubtree: true,\n\t\t} );\n\t\treturn () => observer.disconnect();\n\t}, [ determineIsAccessibleToolbar, isAccessibleToolbar, toolbarRef ] );\n\n\treturn isAccessibleToolbar;\n}\n\nfunction useToolbarFocus( {\n\ttoolbarRef,\n\tfocusOnMount,\n\tisAccessibleToolbar,\n\tdefaultIndex,\n\tonIndexChange,\n\tshouldUseKeyboardFocusShortcut,\n\tfocusEditorOnEscape,\n} ) {\n\t// Make sure we don't use modified versions of this prop.\n\tconst [ initialFocusOnMount ] = useState( focusOnMount );\n\tconst [ initialIndex ] = useState( defaultIndex );\n\n\tconst { getLastFocus, getSelectedBlockClientId } = unlock(\n\t\tuseSelect( blockEditorStore )\n\t);\n\tconst { refsMap } = useContext( BlockRefs );\n\n\tconst focusToolbar = useCallback( () => {\n\t\tfocusFirstTabbableIn( toolbarRef.current );\n\t}, [ toolbarRef ] );\n\n\tconst focusToolbarViaShortcut = () => {\n\t\tif ( shouldUseKeyboardFocusShortcut ) {\n\t\t\tfocusToolbar();\n\t\t}\n\t};\n\n\t// Focus on toolbar when pressing alt+F10 when the toolbar is visible.\n\tuseShortcut( 'core/block-editor/focus-toolbar', focusToolbarViaShortcut );\n\n\tuseEffect( () => {\n\t\tif ( initialFocusOnMount ) {\n\t\t\tfocusToolbar();\n\t\t}\n\t}, [ isAccessibleToolbar, initialFocusOnMount, focusToolbar ] );\n\n\tuseEffect( () => {\n\t\t// Store ref so we have access on useEffect cleanup: https://legacy.reactjs.org/blog/2020/08/10/react-v17-rc.html#effect-cleanup-timing\n\t\tconst navigableToolbarRef = toolbarRef.current;\n\t\t// If initialIndex is passed, we focus on that toolbar item when the\n\t\t// toolbar gets mounted and initial focus is not forced.\n\t\t// We have to wait for the next browser paint because block controls aren't\n\t\t// rendered right away when the toolbar gets mounted.\n\t\tlet raf = 0;\n\n\t\t// If the toolbar already had focus before the render, we don't want to move it.\n\t\t// https://github.com/WordPress/gutenberg/issues/58511\n\t\tif (\n\t\t\t! initialFocusOnMount &&\n\t\t\t! hasFocusWithin( navigableToolbarRef )\n\t\t) {\n\t\t\traf = window.requestAnimationFrame( () => {\n\t\t\t\tconst items =\n\t\t\t\t\tgetAllFocusableToolbarItemsIn( navigableToolbarRef );\n\t\t\t\tconst index = initialIndex || 0;\n\t\t\t\tif ( items[ index ] && hasFocusWithin( navigableToolbarRef ) ) {\n\t\t\t\t\titems[ index ].focus( {\n\t\t\t\t\t\t// When focusing newly mounted toolbars,\n\t\t\t\t\t\t// the position of the popover is often not right on the first render\n\t\t\t\t\t\t// This prevents the layout shifts when focusing the dialogs.\n\t\t\t\t\t\tpreventScroll: true,\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t\treturn () => {\n\t\t\twindow.cancelAnimationFrame( raf );\n\t\t\tif ( ! onIndexChange || ! navigableToolbarRef ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// When the toolbar element is unmounted and onIndexChange is passed, we\n\t\t\t// pass the focused toolbar item index so it can be hydrated later.\n\t\t\tconst items = getAllFocusableToolbarItemsIn( navigableToolbarRef );\n\t\t\tconst index = items.findIndex( ( item ) => item.tabIndex === 0 );\n\t\t\tonIndexChange( index );\n\t\t};\n\t}, [ initialIndex, initialFocusOnMount, onIndexChange, toolbarRef ] );\n\n\t/**\n\t * Handles returning focus to the block editor canvas when pressing escape.\n\t */\n\tuseEffect( () => {\n\t\tif ( ! focusEditorOnEscape ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst navigableToolbar = toolbarRef.current;\n\t\tconst handleKeyDown = ( event ) => {\n\t\t\tif ( event.keyCode !== ESCAPE ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// The last focused element is only recorded once focus has left\n\t\t\t// the canvas, so fall back to the selected block. Without it\n\t\t\t// escape leaves focus stranded in the toolbar, with no way back\n\t\t\t// to the canvas by keyboard.\n\t\t\tconst target =\n\t\t\t\tgetLastFocus()?.current ??\n\t\t\t\trefsMap.get( getSelectedBlockClientId() );\n\t\t\tif ( target ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\ttarget.focus();\n\t\t\t}\n\t\t};\n\t\tnavigableToolbar.addEventListener( 'keydown', handleKeyDown );\n\t\treturn () => {\n\t\t\tnavigableToolbar.removeEventListener( 'keydown', handleKeyDown );\n\t\t};\n\t}, [\n\t\tfocusEditorOnEscape,\n\t\tgetLastFocus,\n\t\tgetSelectedBlockClientId,\n\t\trefsMap,\n\t\ttoolbarRef,\n\t] );\n}\n\nexport default function NavigableToolbar( {\n\tchildren,\n\tfocusOnMount,\n\tfocusEditorOnEscape = false,\n\tshouldUseKeyboardFocusShortcut = true,\n\t__experimentalInitialIndex: initialIndex,\n\t__experimentalOnIndexChange: onIndexChange,\n\torientation = 'horizontal',\n\t...props\n} ) {\n\tconst toolbarRef = useRef();\n\tconst isAccessibleToolbar = useIsAccessibleToolbar( toolbarRef );\n\n\tuseToolbarFocus( {\n\t\ttoolbarRef,\n\t\tfocusOnMount,\n\t\tdefaultIndex: initialIndex,\n\t\tonIndexChange,\n\t\tisAccessibleToolbar,\n\t\tshouldUseKeyboardFocusShortcut,\n\t\tfocusEditorOnEscape,\n\t} );\n\n\tif ( isAccessibleToolbar ) {\n\t\treturn (\n\t\t\t<Toolbar\n\t\t\t\tlabel={ props[ 'aria-label' ] }\n\t\t\t\tref={ toolbarRef }\n\t\t\t\torientation={ orientation }\n\t\t\t\t{ ...props }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</Toolbar>\n\t\t);\n\t}\n\n\treturn (\n\t\t<NavigableMenu\n\t\t\torientation={ orientation }\n\t\t\trole=\"toolbar\"\n\t\t\tref={ toolbarRef }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t{ children }\n\t\t</NavigableMenu>\n\t);\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/observe-typing/index.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useRefEffect, useMergeRefs } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { isTextField } from '@wordpress/dom';\nimport {\n\tUP,\n\tRIGHT,\n\tDOWN,\n\tLEFT,\n\tENTER,\n\tBACKSPACE,\n\tESCAPE,\n\tTAB,\n} from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * Set of key codes upon which typing is to be initiated on a keydown event.\n *\n * @type {Set<number>}\n */\nconst KEY_DOWN_ELIGIBLE_KEY_CODES = new Set( [\n\tUP,\n\tRIGHT,\n\tDOWN,\n\tLEFT,\n\tENTER,\n\tBACKSPACE,\n] );\n\n/**\n * Returns true if a given keydown event can be inferred as intent to start\n * typing, or false otherwise. A keydown is considered eligible if it is a\n * text navigation without shift active.\n *\n * @param {KeyboardEvent} event Keydown event to test.\n *\n * @return {boolean} Whether event is eligible to start typing.\n */\nfunction isKeyDownEligibleForStartTyping( event ) {\n\tconst { keyCode, shiftKey } = event;\n\treturn ! shiftKey && KEY_DOWN_ELIGIBLE_KEY_CODES.has( keyCode );\n}\n\n/**\n * Removes the `isTyping` flag when the mouse moves in the document of the given\n * element.\n */\nexport function useMouseMoveTypingReset() {\n\tconst isTyping = useSelect(\n\t\t( select ) => select( blockEditorStore ).isTyping(),\n\t\t[]\n\t);\n\tconst { stopTyping } = useDispatch( blockEditorStore );\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( ! isTyping ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { ownerDocument } = node;\n\t\t\tlet lastClientX;\n\t\t\tlet lastClientY;\n\n\t\t\t/**\n\t\t\t * On mouse move, unset typing flag if user has moved cursor.\n\t\t\t *\n\t\t\t * @param {MouseEvent} event Mousemove event.\n\t\t\t */\n\t\t\tfunction stopTypingOnMouseMove( event ) {\n\t\t\t\tconst { clientX, clientY } = event;\n\n\t\t\t\t// We need to check that the mouse really moved because Safari\n\t\t\t\t// triggers mousemove events when shift or ctrl are pressed.\n\t\t\t\tif (\n\t\t\t\t\tlastClientX &&\n\t\t\t\t\tlastClientY &&\n\t\t\t\t\t( lastClientX !== clientX || lastClientY !== clientY )\n\t\t\t\t) {\n\t\t\t\t\tstopTyping();\n\t\t\t\t}\n\n\t\t\t\tlastClientX = clientX;\n\t\t\t\tlastClientY = clientY;\n\t\t\t}\n\n\t\t\townerDocument.addEventListener(\n\t\t\t\t'mousemove',\n\t\t\t\tstopTypingOnMouseMove\n\t\t\t);\n\n\t\t\treturn () => {\n\t\t\t\townerDocument.removeEventListener(\n\t\t\t\t\t'mousemove',\n\t\t\t\t\tstopTypingOnMouseMove\n\t\t\t\t);\n\t\t\t};\n\t\t},\n\t\t[ isTyping, stopTyping ]\n\t);\n}\n\n/**\n * Sets and removes the `isTyping` flag based on user actions:\n *\n * - Sets the flag if the user types within the given element.\n * - Removes the flag when the user selects some text, focuses a non-text\n * field, presses ESC or TAB, or moves the mouse in the document.\n */\nexport function useTypingObserver() {\n\tconst isTyping = useSelect(\n\t\t( select ) => select( blockEditorStore ).isTyping(),\n\t\t[]\n\t);\n\tconst { startTyping, stopTyping } = useDispatch( blockEditorStore );\n\n\tconst ref1 = useMouseMoveTypingReset();\n\tconst ref2 = useRefEffect(\n\t\t( node ) => {\n\t\t\t// Listeners to stop typing should only be added when typing.\n\t\t\t// Listeners to start typing should only be added when not typing.\n\t\t\tif ( isTyping ) {\n\t\t\t\tlet timerId;\n\n\t\t\t\t// Capture the window reference while the node is still\n\t\t\t\t// attached. Reusing the reference we held at mount keeps the\n\t\t\t\t// cleanup and the handlers working against the same window\n\t\t\t\t// we set things up on.\n\t\t\t\tconst { defaultView } = node.ownerDocument;\n\n\t\t\t\t/**\n\t\t\t\t * Stops typing when focus transitions to a non-text field element.\n\t\t\t\t *\n\t\t\t\t * @param {FocusEvent} event Focus event.\n\t\t\t\t */\n\t\t\t\tfunction stopTypingOnNonTextField( event ) {\n\t\t\t\t\tconst { target } = event;\n\n\t\t\t\t\t// Since focus to a non-text field via arrow key will trigger\n\t\t\t\t\t// before the keydown event, wait until after current stack\n\t\t\t\t\t// before evaluating whether typing is to be stopped. Otherwise,\n\t\t\t\t\t// typing will re-start.\n\t\t\t\t\ttimerId = defaultView.setTimeout( () => {\n\t\t\t\t\t\tif ( ! isTextField( target ) ) {\n\t\t\t\t\t\t\tstopTyping();\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Unsets typing flag if user presses Escape while typing flag is\n\t\t\t\t * active.\n\t\t\t\t *\n\t\t\t\t * @param {KeyboardEvent} event Keypress or keydown event to\n\t\t\t\t * interpret.\n\t\t\t\t */\n\t\t\t\tfunction stopTypingOnEscapeKey( event ) {\n\t\t\t\t\tconst { keyCode } = event;\n\n\t\t\t\t\tif ( keyCode === ESCAPE || keyCode === TAB ) {\n\t\t\t\t\t\tstopTyping();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * On selection change, unset typing flag if user has made an\n\t\t\t\t * uncollapsed (shift) selection.\n\t\t\t\t */\n\t\t\t\tfunction stopTypingOnSelectionUncollapse() {\n\t\t\t\t\tconst selection = defaultView.getSelection();\n\t\t\t\t\tif ( ! selection.isCollapsed ) {\n\t\t\t\t\t\tstopTyping();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tnode.addEventListener( 'focus', stopTypingOnNonTextField );\n\t\t\t\tnode.addEventListener( 'keydown', stopTypingOnEscapeKey );\n\n\t\t\t\tnode.ownerDocument.addEventListener(\n\t\t\t\t\t'selectionchange',\n\t\t\t\t\tstopTypingOnSelectionUncollapse\n\t\t\t\t);\n\n\t\t\t\treturn () => {\n\t\t\t\t\tdefaultView.clearTimeout( timerId );\n\t\t\t\t\tnode.removeEventListener(\n\t\t\t\t\t\t'focus',\n\t\t\t\t\t\tstopTypingOnNonTextField\n\t\t\t\t\t);\n\t\t\t\t\tnode.removeEventListener(\n\t\t\t\t\t\t'keydown',\n\t\t\t\t\t\tstopTypingOnEscapeKey\n\t\t\t\t\t);\n\t\t\t\t\tnode.ownerDocument.removeEventListener(\n\t\t\t\t\t\t'selectionchange',\n\t\t\t\t\t\tstopTypingOnSelectionUncollapse\n\t\t\t\t\t);\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Handles a keypress or keydown event to infer intention to start\n\t\t\t * typing.\n\t\t\t *\n\t\t\t * @param {KeyboardEvent} event Keypress or keydown event to interpret.\n\t\t\t */\n\t\t\tfunction startTypingInTextField( event ) {\n\t\t\t\tconst { type, target } = event;\n\n\t\t\t\t// Abort early if already typing, or key press is incurred outside a\n\t\t\t\t// text field (e.g. arrow-ing through toolbar buttons).\n\t\t\t\t// Ignore typing if outside the current DOM container\n\t\t\t\tif ( ! isTextField( target ) || ! node.contains( target ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Special-case keydown because certain keys do not emit a keypress\n\t\t\t\t// event. Conversely avoid keydown as the canonical event since\n\t\t\t\t// there are many keydown which are explicitly not targeted for\n\t\t\t\t// typing.\n\t\t\t\tif (\n\t\t\t\t\ttype === 'keydown' &&\n\t\t\t\t\t! isKeyDownEligibleForStartTyping( event )\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tstartTyping();\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'keypress', startTypingInTextField );\n\t\t\tnode.addEventListener( 'keydown', startTypingInTextField );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'keypress', startTypingInTextField );\n\t\t\t\tnode.removeEventListener( 'keydown', startTypingInTextField );\n\t\t\t};\n\t\t},\n\t\t[ isTyping, startTyping, stopTyping ]\n\t);\n\n\treturn useMergeRefs( [ ref1, ref2 ] );\n}\n\nfunction ObserveTyping( { children } ) {\n\treturn <div ref={ useTypingObserver() }>{ children }</div>;\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/observe-typing/README.md\n */\nexport default ObserveTyping;\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { useRefEffect, useMergeRefs } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { isTextField } from '@wordpress/dom';\nimport {\n\tUP,\n\tRIGHT,\n\tDOWN,\n\tLEFT,\n\tENTER,\n\tBACKSPACE,\n\tESCAPE,\n\tTAB,\n} from '@wordpress/keycodes';\nimport { store as blockEditorStore } from '../../store';\n\n/**\n * Set of key codes upon which typing is to be initiated on a keydown event.\n *\n * @type {Set<number>}\n */\nconst KEY_DOWN_ELIGIBLE_KEY_CODES = new Set( [\n\tUP,\n\tRIGHT,\n\tDOWN,\n\tLEFT,\n\tENTER,\n\tBACKSPACE,\n] );\n\n/**\n * Returns true if a given keydown event can be inferred as intent to start\n * typing, or false otherwise. A keydown is considered eligible if it is a\n * text navigation without shift active.\n *\n * @param {KeyboardEvent} event Keydown event to test.\n *\n * @return {boolean} Whether event is eligible to start typing.\n */\nfunction isKeyDownEligibleForStartTyping( event ) {\n\tconst { keyCode, shiftKey } = event;\n\treturn ! shiftKey && KEY_DOWN_ELIGIBLE_KEY_CODES.has( keyCode );\n}\n\n/**\n * Removes the `isTyping` flag when the mouse moves in the document of the given\n * element.\n */\nexport function useMouseMoveTypingReset() {\n\tconst isTyping = useSelect(\n\t\t( select ) => select( blockEditorStore ).isTyping(),\n\t\t[]\n\t);\n\tconst { stopTyping } = useDispatch( blockEditorStore );\n\n\treturn useRefEffect(\n\t\t( node ) => {\n\t\t\tif ( ! isTyping ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { ownerDocument } = node;\n\t\t\tlet lastClientX;\n\t\t\tlet lastClientY;\n\n\t\t\t/**\n\t\t\t * On mouse move, unset typing flag if user has moved cursor.\n\t\t\t *\n\t\t\t * @param {MouseEvent} event Mousemove event.\n\t\t\t */\n\t\t\tfunction stopTypingOnMouseMove( event ) {\n\t\t\t\tconst { clientX, clientY } = event;\n\n\t\t\t\t// We need to check that the mouse really moved because Safari\n\t\t\t\t// triggers mousemove events when shift or ctrl are pressed.\n\t\t\t\tif (\n\t\t\t\t\tlastClientX &&\n\t\t\t\t\tlastClientY &&\n\t\t\t\t\t( lastClientX !== clientX || lastClientY !== clientY )\n\t\t\t\t) {\n\t\t\t\t\tstopTyping();\n\t\t\t\t}\n\n\t\t\t\tlastClientX = clientX;\n\t\t\t\tlastClientY = clientY;\n\t\t\t}\n\n\t\t\townerDocument.addEventListener(\n\t\t\t\t'mousemove',\n\t\t\t\tstopTypingOnMouseMove\n\t\t\t);\n\n\t\t\treturn () => {\n\t\t\t\townerDocument.removeEventListener(\n\t\t\t\t\t'mousemove',\n\t\t\t\t\tstopTypingOnMouseMove\n\t\t\t\t);\n\t\t\t};\n\t\t},\n\t\t[ isTyping, stopTyping ]\n\t);\n}\n\n/**\n * Sets and removes the `isTyping` flag based on user actions:\n *\n * - Sets the flag if the user types within the given element.\n * - Removes the flag when the user selects some text, focuses a non-text\n * field, presses ESC or TAB, or moves the mouse in the document.\n */\nexport function useTypingObserver() {\n\tconst isTyping = useSelect(\n\t\t( select ) => select( blockEditorStore ).isTyping(),\n\t\t[]\n\t);\n\tconst { startTyping, stopTyping } = useDispatch( blockEditorStore );\n\n\tconst ref1 = useMouseMoveTypingReset();\n\tconst ref2 = useRefEffect(\n\t\t( node ) => {\n\t\t\t// Listeners to stop typing should only be added when typing.\n\t\t\t// Listeners to start typing should only be added when not typing.\n\t\t\tif ( isTyping ) {\n\t\t\t\tlet timerId;\n\n\t\t\t\t// Capture the window reference while the node is still\n\t\t\t\t// attached. Reusing the reference we held at mount keeps the\n\t\t\t\t// cleanup and the handlers working against the same window\n\t\t\t\t// we set things up on.\n\t\t\t\tconst { defaultView } = node.ownerDocument;\n\n\t\t\t\t/**\n\t\t\t\t * Stops typing when focus transitions to a non-text field element.\n\t\t\t\t *\n\t\t\t\t * @param {FocusEvent} event Focus event.\n\t\t\t\t */\n\t\t\t\tfunction stopTypingOnNonTextField( event ) {\n\t\t\t\t\tconst { target } = event;\n\n\t\t\t\t\t// Since focus to a non-text field via arrow key will trigger\n\t\t\t\t\t// before the keydown event, wait until after current stack\n\t\t\t\t\t// before evaluating whether typing is to be stopped. Otherwise,\n\t\t\t\t\t// typing will re-start.\n\t\t\t\t\ttimerId = defaultView.setTimeout( () => {\n\t\t\t\t\t\tif ( ! isTextField( target ) ) {\n\t\t\t\t\t\t\tstopTyping();\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * Unsets typing flag if user presses Escape while typing flag is\n\t\t\t\t * active.\n\t\t\t\t *\n\t\t\t\t * @param {KeyboardEvent} event Keypress or keydown event to\n\t\t\t\t * interpret.\n\t\t\t\t */\n\t\t\t\tfunction stopTypingOnEscapeKey( event ) {\n\t\t\t\t\tconst { keyCode } = event;\n\n\t\t\t\t\tif ( keyCode === ESCAPE || keyCode === TAB ) {\n\t\t\t\t\t\tstopTyping();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * On selection change, unset typing flag if user has made an\n\t\t\t\t * uncollapsed (shift) selection.\n\t\t\t\t */\n\t\t\t\tfunction stopTypingOnSelectionUncollapse() {\n\t\t\t\t\tconst selection = defaultView.getSelection();\n\t\t\t\t\tif ( ! selection.isCollapsed ) {\n\t\t\t\t\t\tstopTyping();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tnode.addEventListener( 'focus', stopTypingOnNonTextField );\n\t\t\t\tnode.addEventListener( 'keydown', stopTypingOnEscapeKey );\n\n\t\t\t\tnode.ownerDocument.addEventListener(\n\t\t\t\t\t'selectionchange',\n\t\t\t\t\tstopTypingOnSelectionUncollapse\n\t\t\t\t);\n\n\t\t\t\treturn () => {\n\t\t\t\t\tdefaultView.clearTimeout( timerId );\n\t\t\t\t\tnode.removeEventListener(\n\t\t\t\t\t\t'focus',\n\t\t\t\t\t\tstopTypingOnNonTextField\n\t\t\t\t\t);\n\t\t\t\t\tnode.removeEventListener(\n\t\t\t\t\t\t'keydown',\n\t\t\t\t\t\tstopTypingOnEscapeKey\n\t\t\t\t\t);\n\t\t\t\t\tnode.ownerDocument.removeEventListener(\n\t\t\t\t\t\t'selectionchange',\n\t\t\t\t\t\tstopTypingOnSelectionUncollapse\n\t\t\t\t\t);\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Handles a keypress or keydown event to infer intention to start\n\t\t\t * typing.\n\t\t\t *\n\t\t\t * @param {KeyboardEvent} event Keypress or keydown event to interpret.\n\t\t\t */\n\t\t\tfunction startTypingInTextField( event ) {\n\t\t\t\tconst { type, target } = event;\n\n\t\t\t\t// Abort early if already typing, or key press is incurred outside a\n\t\t\t\t// text field (e.g. arrow-ing through toolbar buttons).\n\t\t\t\t// Ignore typing if outside the current DOM container\n\t\t\t\tif ( ! isTextField( target ) || ! node.contains( target ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Special-case keydown because certain keys do not emit a keypress\n\t\t\t\t// event. Conversely avoid keydown as the canonical event since\n\t\t\t\t// there are many keydown which are explicitly not targeted for\n\t\t\t\t// typing.\n\t\t\t\tif (\n\t\t\t\t\ttype === 'keydown' &&\n\t\t\t\t\t! isKeyDownEligibleForStartTyping( event )\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tstartTyping();\n\t\t\t}\n\n\t\t\tnode.addEventListener( 'keypress', startTypingInTextField );\n\t\t\tnode.addEventListener( 'keydown', startTypingInTextField );\n\n\t\t\treturn () => {\n\t\t\t\tnode.removeEventListener( 'keypress', startTypingInTextField );\n\t\t\t\tnode.removeEventListener( 'keydown', startTypingInTextField );\n\t\t\t};\n\t\t},\n\t\t[ isTyping, startTyping, stopTyping ]\n\t);\n\n\treturn useMergeRefs( [ ref1, ref2 ] );\n}\n\nfunction ObserveTyping( { children } ) {\n\treturn <div ref={ useTypingObserver() }>{ children }</div>;\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/observe-typing/README.md\n */\nexport default ObserveTyping;\n"],
5
+ "mappings": ";AAAA,SAAS,cAAc,oBAAoB;AAC3C,SAAS,WAAW,mBAAmB;AACvC,SAAS,mBAAmB;AAC5B;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACM;AACP,SAAS,SAAS,wBAAwB;AAwOlC;AAjOR,IAAM,8BAA8B,oBAAI,IAAK;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,CAAE;AAWF,SAAS,gCAAiC,OAAQ;AACjD,QAAM,EAAE,SAAS,SAAS,IAAI;AAC9B,SAAO,CAAE,YAAY,4BAA4B,IAAK,OAAQ;AAC/D;AAMO,SAAS,0BAA0B;AACzC,QAAM,WAAW;AAAA,IAChB,CAAE,WAAY,OAAQ,gBAAiB,EAAE,SAAS;AAAA,IAClD,CAAC;AAAA,EACF;AACA,QAAM,EAAE,WAAW,IAAI,YAAa,gBAAiB;AAErD,SAAO;AAAA,IACN,CAAE,SAAU;AACX,UAAK,CAAE,UAAW;AACjB;AAAA,MACD;AAEA,YAAM,EAAE,cAAc,IAAI;AAC1B,UAAI;AACJ,UAAI;AAOJ,eAAS,sBAAuB,OAAQ;AACvC,cAAM,EAAE,SAAS,QAAQ,IAAI;AAI7B,YACC,eACA,gBACE,gBAAgB,WAAW,gBAAgB,UAC5C;AACD,qBAAW;AAAA,QACZ;AAEA,sBAAc;AACd,sBAAc;AAAA,MACf;AAEA,oBAAc;AAAA,QACb;AAAA,QACA;AAAA,MACD;AAEA,aAAO,MAAM;AACZ,sBAAc;AAAA,UACb;AAAA,UACA;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAAA,IACA,CAAE,UAAU,UAAW;AAAA,EACxB;AACD;AASO,SAAS,oBAAoB;AACnC,QAAM,WAAW;AAAA,IAChB,CAAE,WAAY,OAAQ,gBAAiB,EAAE,SAAS;AAAA,IAClD,CAAC;AAAA,EACF;AACA,QAAM,EAAE,aAAa,WAAW,IAAI,YAAa,gBAAiB;AAElE,QAAM,OAAO,wBAAwB;AACrC,QAAM,OAAO;AAAA,IACZ,CAAE,SAAU;AAGX,UAAK,UAAW;AAcf,YAASA,4BAAT,SAAmC,OAAQ;AAC1C,gBAAM,EAAE,OAAO,IAAI;AAMnB,oBAAU,YAAY,WAAY,MAAM;AACvC,gBAAK,CAAE,YAAa,MAAO,GAAI;AAC9B,yBAAW;AAAA,YACZ;AAAA,UACD,CAAE;AAAA,QACH,GASSC,yBAAT,SAAgC,OAAQ;AACvC,gBAAM,EAAE,QAAQ,IAAI;AAEpB,cAAK,YAAY,UAAU,YAAY,KAAM;AAC5C,uBAAW;AAAA,UACZ;AAAA,QACD,GAMSC,mCAAT,WAA2C;AAC1C,gBAAM,YAAY,YAAY,aAAa;AAC3C,cAAK,CAAE,UAAU,aAAc;AAC9B,uBAAW;AAAA,UACZ;AAAA,QACD;AAtCS,uCAAAF,2BAqBA,wBAAAC,wBAYA,kCAAAC;AA9CT,YAAI;AAMJ,cAAM,EAAE,YAAY,IAAI,KAAK;AA+C7B,aAAK,iBAAkB,SAASF,yBAAyB;AACzD,aAAK,iBAAkB,WAAWC,sBAAsB;AAExD,aAAK,cAAc;AAAA,UAClB;AAAA,UACAC;AAAA,QACD;AAEA,eAAO,MAAM;AACZ,sBAAY,aAAc,OAAQ;AAClC,eAAK;AAAA,YACJ;AAAA,YACAF;AAAA,UACD;AACA,eAAK;AAAA,YACJ;AAAA,YACAC;AAAA,UACD;AACA,eAAK,cAAc;AAAA,YAClB;AAAA,YACAC;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAQA,eAAS,uBAAwB,OAAQ;AACxC,cAAM,EAAE,MAAM,OAAO,IAAI;AAKzB,YAAK,CAAE,YAAa,MAAO,KAAK,CAAE,KAAK,SAAU,MAAO,GAAI;AAC3D;AAAA,QACD;AAMA,YACC,SAAS,aACT,CAAE,gCAAiC,KAAM,GACxC;AACD;AAAA,QACD;AAEA,oBAAY;AAAA,MACb;AAEA,WAAK,iBAAkB,YAAY,sBAAuB;AAC1D,WAAK,iBAAkB,WAAW,sBAAuB;AAEzD,aAAO,MAAM;AACZ,aAAK,oBAAqB,YAAY,sBAAuB;AAC7D,aAAK,oBAAqB,WAAW,sBAAuB;AAAA,MAC7D;AAAA,IACD;AAAA,IACA,CAAE,UAAU,aAAa,UAAW;AAAA,EACrC;AAEA,SAAO,aAAc,CAAE,MAAM,IAAK,CAAE;AACrC;AAEA,SAAS,cAAe,EAAE,SAAS,GAAI;AACtC,SAAO,oBAAC,SAAI,KAAM,kBAAkB,GAAM,UAAU;AACrD;AAKA,IAAO,yBAAQ;",
6
6
  "names": ["stopTypingOnNonTextField", "stopTypingOnEscapeKey", "stopTypingOnSelectionUncollapse"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/panel-color-settings/index.js"],
4
- "sourcesContent": ["/**\n * Internal dependencies\n */\nimport PanelColorGradientSettings from '../colors-gradients/panel-color-gradient-settings';\n\nconst PanelColorSettings = ( { colorSettings, ...props } ) => {\n\tconst settings = colorSettings.map( ( setting ) => {\n\t\tif ( ! setting ) {\n\t\t\treturn setting;\n\t\t}\n\t\tconst { value, onChange, ...otherSettings } = setting;\n\t\treturn {\n\t\t\t...otherSettings,\n\t\t\tcolorValue: value,\n\t\t\tonColorChange: onChange,\n\t\t};\n\t} );\n\treturn (\n\t\t<PanelColorGradientSettings\n\t\t\tsettings={ settings }\n\t\t\tgradients={ [] }\n\t\t\tdisableCustomGradients\n\t\t\t{ ...props }\n\t\t/>\n\t);\n};\nexport default PanelColorSettings;\n"],
5
- "mappings": ";AAGA,OAAO,gCAAgC;AAerC;AAbF,IAAM,qBAAqB,CAAE,EAAE,eAAe,GAAG,MAAM,MAAO;AAC7D,QAAM,WAAW,cAAc,IAAK,CAAE,YAAa;AAClD,QAAK,CAAE,SAAU;AAChB,aAAO;AAAA,IACR;AACA,UAAM,EAAE,OAAO,UAAU,GAAG,cAAc,IAAI;AAC9C,WAAO;AAAA,MACN,GAAG;AAAA,MACH,YAAY;AAAA,MACZ,eAAe;AAAA,IAChB;AAAA,EACD,CAAE;AACF,SACC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA,WAAY,CAAC;AAAA,MACb,wBAAsB;AAAA,MACpB,GAAG;AAAA;AAAA,EACN;AAEF;AACA,IAAO,+BAAQ;",
4
+ "sourcesContent": ["import PanelColorGradientSettings from '../colors-gradients/panel-color-gradient-settings';\n\nconst PanelColorSettings = ( { colorSettings, ...props } ) => {\n\tconst settings = colorSettings.map( ( setting ) => {\n\t\tif ( ! setting ) {\n\t\t\treturn setting;\n\t\t}\n\t\tconst { value, onChange, ...otherSettings } = setting;\n\t\treturn {\n\t\t\t...otherSettings,\n\t\t\tcolorValue: value,\n\t\t\tonColorChange: onChange,\n\t\t};\n\t} );\n\treturn (\n\t\t<PanelColorGradientSettings\n\t\t\tsettings={ settings }\n\t\t\tgradients={ [] }\n\t\t\tdisableCustomGradients\n\t\t\t{ ...props }\n\t\t/>\n\t);\n};\nexport default PanelColorSettings;\n"],
5
+ "mappings": ";AAAA,OAAO,gCAAgC;AAerC;AAbF,IAAM,qBAAqB,CAAE,EAAE,eAAe,GAAG,MAAM,MAAO;AAC7D,QAAM,WAAW,cAAc,IAAK,CAAE,YAAa;AAClD,QAAK,CAAE,SAAU;AAChB,aAAO;AAAA,IACR;AACA,UAAM,EAAE,OAAO,UAAU,GAAG,cAAc,IAAI;AAC9C,WAAO;AAAA,MACN,GAAG;AAAA,MACH,YAAY;AAAA,MACZ,eAAe;AAAA,IAChB;AAAA,EACD,CAAE;AACF,SACC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA,WAAY,CAAC;AAAA,MACb,wBAAsB;AAAA,MACpB,GAAG;AAAA;AAAA,EACN;AAEF;AACA,IAAO,+BAAQ;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/plain-text/index.js"],
4
- "sourcesContent": ["/**\n * External dependencies\n */\nimport TextareaAutosize from 'react-autosize-textarea';\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport EditableText from '../editable-text';\n\n/**\n * Render an auto-growing textarea allow users to fill any textual content.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/plain-text/README.md\n *\n * @example\n * ```jsx\n * import { registerBlockType } from '@wordpress/blocks';\n * import { PlainText } from '@wordpress/block-editor';\n *\n * registerBlockType( 'my-plugin/example-block', {\n * // ...\n *\n * attributes: {\n * content: {\n * type: 'string',\n * },\n * },\n *\n * edit( { className, attributes, setAttributes } ) {\n * return (\n * <PlainText\n * className={ className }\n * value={ attributes.content }\n * onChange={ ( content ) => setAttributes( { content } ) }\n * />\n * );\n * },\n * } );\n * ````\n *\n * @param {Object} props Component props.\n * @param {string} props.value String value of the textarea.\n * @param {Function} props.onChange Function called when the text value changes.\n * @param {Object} [props.ref] The component forwards the `ref` property to the `TextareaAutosize` component.\n * @return {Element} Plain text component\n */\nconst PlainText = forwardRef( ( { __experimentalVersion, ...props }, ref ) => {\n\tif ( __experimentalVersion === 2 ) {\n\t\treturn <EditableText ref={ ref } { ...props } />;\n\t}\n\n\tconst { className, onChange, ...remainingProps } = props;\n\n\treturn (\n\t\t<TextareaAutosize\n\t\t\tref={ ref }\n\t\t\tclassName={ clsx( 'block-editor-plain-text', className ) }\n\t\t\tonChange={ ( event ) => onChange( event.target.value ) }\n\t\t\t{ ...remainingProps }\n\t\t/>\n\t);\n} );\n\nexport default PlainText;\n"],
5
- "mappings": ";AAGA,OAAO,sBAAsB;AAC7B,OAAO,UAAU;AAKjB,SAAS,kBAAkB;AAK3B,OAAO,kBAAkB;AAyChB;AAFT,IAAM,YAAY,WAAY,CAAE,EAAE,uBAAuB,GAAG,MAAM,GAAG,QAAS;AAC7E,MAAK,0BAA0B,GAAI;AAClC,WAAO,oBAAC,gBAAa,KAAc,GAAG,OAAQ;AAAA,EAC/C;AAEA,QAAM,EAAE,WAAW,UAAU,GAAG,eAAe,IAAI;AAEnD,SACC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA,WAAY,KAAM,2BAA2B,SAAU;AAAA,MACvD,UAAW,CAAE,UAAW,SAAU,MAAM,OAAO,KAAM;AAAA,MACnD,GAAG;AAAA;AAAA,EACN;AAEF,CAAE;AAEF,IAAO,qBAAQ;",
4
+ "sourcesContent": ["import TextareaAutosize from 'react-autosize-textarea';\nimport clsx from 'clsx';\nimport { forwardRef } from '@wordpress/element';\nimport EditableText from '../editable-text';\n\n/**\n * Render an auto-growing textarea allow users to fill any textual content.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/plain-text/README.md\n *\n * @example\n * ```jsx\n * import { registerBlockType } from '@wordpress/blocks';\n * import { PlainText } from '@wordpress/block-editor';\n *\n * registerBlockType( 'my-plugin/example-block', {\n * // ...\n *\n * attributes: {\n * content: {\n * type: 'string',\n * },\n * },\n *\n * edit( { className, attributes, setAttributes } ) {\n * return (\n * <PlainText\n * className={ className }\n * value={ attributes.content }\n * onChange={ ( content ) => setAttributes( { content } ) }\n * />\n * );\n * },\n * } );\n * ````\n *\n * @param {Object} props Component props.\n * @param {string} props.value String value of the textarea.\n * @param {Function} props.onChange Function called when the text value changes.\n * @param {Object} [props.ref] The component forwards the `ref` property to the `TextareaAutosize` component.\n * @return {Element} Plain text component\n */\nconst PlainText = forwardRef( ( { __experimentalVersion, ...props }, ref ) => {\n\tif ( __experimentalVersion === 2 ) {\n\t\treturn <EditableText ref={ ref } { ...props } />;\n\t}\n\n\tconst { className, onChange, ...remainingProps } = props;\n\n\treturn (\n\t\t<TextareaAutosize\n\t\t\tref={ ref }\n\t\t\tclassName={ clsx( 'block-editor-plain-text', className ) }\n\t\t\tonChange={ ( event ) => onChange( event.target.value ) }\n\t\t\t{ ...remainingProps }\n\t\t/>\n\t);\n} );\n\nexport default PlainText;\n"],
5
+ "mappings": ";AAAA,OAAO,sBAAsB;AAC7B,OAAO,UAAU;AACjB,SAAS,kBAAkB;AAC3B,OAAO,kBAAkB;AAyChB;AAFT,IAAM,YAAY,WAAY,CAAE,EAAE,uBAAuB,GAAG,MAAM,GAAG,QAAS;AAC7E,MAAK,0BAA0B,GAAI;AAClC,WAAO,oBAAC,gBAAa,KAAc,GAAG,OAAQ;AAAA,EAC/C;AAEA,QAAM,EAAE,WAAW,UAAU,GAAG,eAAe,IAAI;AAEnD,SACC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA,WAAY,KAAM,2BAA2B,SAAU;AAAA,MACvD,UAAW,CAAE,UAAW,SAAU,MAAM,OAAO,KAAM;AAAA,MACnD,GAAG;AAAA;AAAA,EACN;AAEF,CAAE;AAEF,IAAO,qBAAQ;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/preset-input-control/custom-value-controls.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport {\n\tRangeControl,\n\t__experimentalUnitControl as UnitControl,\n} from '@wordpress/components';\n\nimport { Tooltip } from '@wordpress/ui';\n\n/**\n * CustomValueControls component for handling custom value input.\n *\n * Renders a UnitControl and RangeControl for custom value input mode.\n * Handles conditional tooltip wrapping and drag event coordination.\n *\n * @param {Object} props\n * @param {boolean} props.allowNegativeOnDrag Whether to allow negative values during drag operations.\n * @param {string} props.ariaLabel Accessible label for the controls.\n * @param {string} props.allPlaceholder Placeholder text (e.g., \"Mixed\").\n * @param {number} props.minValue Minimum allowed value.\n * @param {number} props.parsedQuantity The numeric part of the current value.\n * @param {string} props.computedUnit The unit part of the current value.\n * @param {Array} props.units Array of available unit objects.\n * @param {boolean} props.isMixed Whether the current value is mixed.\n * @param {number} props.step Step value for the range control.\n * @param {number} props.max Maximum value for the range control.\n * @param {boolean} props.showTooltip Whether to wrap UnitControl in a tooltip.\n * @param {string} props.value Current value for drag event checks.\n * @param {number} props.minimumCustomValue Minimum custom value for drag end reset.\n * @param {Function} props.onCustomValueChange Callback when UnitControl value changes.\n * @param {Function} props.onCustomValueSliderChange Callback when RangeControl value changes.\n * @param {Function} props.onUnitChange Callback when unit changes.\n * @param {Function} props.onMouseOut Mouse out event handler.\n * @param {Function} props.onMouseOver Mouse over event handler.\n * @param {Function} props.setMinValue Function to set minimum value state.\n *\n * @return {Element} The CustomValueControls component.\n */\nexport default function CustomValueControls( {\n\tallowNegativeOnDrag,\n\tariaLabel,\n\tallPlaceholder,\n\tminValue,\n\tparsedQuantity,\n\tcomputedUnit,\n\tunits,\n\tisMixed,\n\tstep,\n\tmax,\n\tshowTooltip,\n\tvalue,\n\tminimumCustomValue,\n\tonCustomValueChange,\n\tonCustomValueSliderChange,\n\tonUnitChange,\n\tonMouseOut,\n\tonMouseOver,\n\tsetMinValue,\n} ) {\n\tconst unitControl = (\n\t\t<UnitControl\n\t\t\tclassName=\"preset-input-control__unit-control\"\n\t\t\tdisableUnits={ isMixed }\n\t\t\thideLabelFromVision\n\t\t\tlabel={ ariaLabel }\n\t\t\tmin={ minValue }\n\t\t\tonChange={ onCustomValueChange }\n\t\t\tonUnitChange={ onUnitChange }\n\t\t\tonBlur={ onMouseOut }\n\t\t\tonFocus={ onMouseOver }\n\t\t\tonMouseOut={ onMouseOut }\n\t\t\tonMouseOver={ onMouseOver }\n\t\t\tunits={ units }\n\t\t\tvalue={ [ parsedQuantity, computedUnit ].join( '' ) }\n\t\t\tplaceholder={ allPlaceholder }\n\t\t\tonDragStart={ () => {\n\t\t\t\tif ( allowNegativeOnDrag && value?.charAt( 0 ) === '-' ) {\n\t\t\t\t\tsetMinValue( 0 );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonDrag={ () => {\n\t\t\t\tif ( allowNegativeOnDrag && value?.charAt( 0 ) === '-' ) {\n\t\t\t\t\tsetMinValue( 0 );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonDragEnd={ () => {\n\t\t\t\tif ( allowNegativeOnDrag ) {\n\t\t\t\t\tsetMinValue( minimumCustomValue );\n\t\t\t\t}\n\t\t\t} }\n\t\t/>\n\t);\n\n\tconst wrappedUnitControl = showTooltip ? (\n\t\t<Tooltip.Root>\n\t\t\t<Tooltip.Trigger\n\t\t\t\trender={\n\t\t\t\t\t<div className=\"preset-input-control__tooltip-wrapper\">\n\t\t\t\t\t\t{ unitControl }\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t/>\n\t\t\t<Tooltip.Popup>{ ariaLabel }</Tooltip.Popup>\n\t\t</Tooltip.Root>\n\t) : (\n\t\tunitControl\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ wrappedUnitControl }\n\t\t\t<RangeControl\n\t\t\t\tclassName=\"preset-input-control__custom-value-range\"\n\t\t\t\thideLabelFromVision\n\t\t\t\tinitialPosition={ 0 }\n\t\t\t\tlabel={ ariaLabel }\n\t\t\t\tmax={ max }\n\t\t\t\tmin={ 0 }\n\t\t\t\tonBlur={ onMouseOut }\n\t\t\t\tonChange={ onCustomValueSliderChange }\n\t\t\t\tonFocus={ onMouseOver }\n\t\t\t\tonMouseOut={ onMouseOut }\n\t\t\t\tonMouseOver={ onMouseOver }\n\t\t\t\tstep={ step }\n\t\t\t\tvalue={ parsedQuantity }\n\t\t\t\twithInputField={ false }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],
5
- "mappings": ";AAGA;AAAA,EACC;AAAA,EACA,6BAA6B;AAAA,OACvB;AAEP,SAAS,eAAe;AAqDtB,SAiDA,UAjDA,KAkCA,YAlCA;AAtBa,SAAR,oBAAsC;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAAI;AACH,QAAM,cACL;AAAA,IAAC;AAAA;AAAA,MACA,WAAU;AAAA,MACV,cAAe;AAAA,MACf,qBAAmB;AAAA,MACnB,OAAQ;AAAA,MACR,KAAM;AAAA,MACN,UAAW;AAAA,MACX;AAAA,MACA,QAAS;AAAA,MACT,SAAU;AAAA,MACV;AAAA,MACA;AAAA,MACA;AAAA,MACA,OAAQ,CAAE,gBAAgB,YAAa,EAAE,KAAM,EAAG;AAAA,MAClD,aAAc;AAAA,MACd,aAAc,MAAM;AACnB,YAAK,uBAAuB,OAAO,OAAQ,CAAE,MAAM,KAAM;AACxD,sBAAa,CAAE;AAAA,QAChB;AAAA,MACD;AAAA,MACA,QAAS,MAAM;AACd,YAAK,uBAAuB,OAAO,OAAQ,CAAE,MAAM,KAAM;AACxD,sBAAa,CAAE;AAAA,QAChB;AAAA,MACD;AAAA,MACA,WAAY,MAAM;AACjB,YAAK,qBAAsB;AAC1B,sBAAa,kBAAmB;AAAA,QACjC;AAAA,MACD;AAAA;AAAA,EACD;AAGD,QAAM,qBAAqB,cAC1B,qBAAC,QAAQ,MAAR,EACA;AAAA;AAAA,MAAC,QAAQ;AAAA,MAAR;AAAA,QACA,QACC,oBAAC,SAAI,WAAU,yCACZ,uBACH;AAAA;AAAA,IAEF;AAAA,IACA,oBAAC,QAAQ,OAAR,EAAgB,qBAAW;AAAA,KAC7B,IAEA;AAGD,SACC,iCACG;AAAA;AAAA,IACF;AAAA,MAAC;AAAA;AAAA,QACA,WAAU;AAAA,QACV,qBAAmB;AAAA,QACnB,iBAAkB;AAAA,QAClB,OAAQ;AAAA,QACR;AAAA,QACA,KAAM;AAAA,QACN,QAAS;AAAA,QACT,UAAW;AAAA,QACX,SAAU;AAAA,QACV;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAQ;AAAA,QACR,gBAAiB;AAAA;AAAA,IAClB;AAAA,KACD;AAEF;",
4
+ "sourcesContent": ["import {\n\tRangeControl,\n\t__experimentalUnitControl as UnitControl,\n} from '@wordpress/components';\nimport { Tooltip } from '@wordpress/ui';\n\n/**\n * CustomValueControls component for handling custom value input.\n *\n * Renders a UnitControl and RangeControl for custom value input mode.\n * Handles conditional tooltip wrapping and drag event coordination.\n *\n * @param {Object} props\n * @param {boolean} props.allowNegativeOnDrag Whether to allow negative values during drag operations.\n * @param {string} props.ariaLabel Accessible label for the controls.\n * @param {string} props.allPlaceholder Placeholder text (e.g., \"Mixed\").\n * @param {number} props.minValue Minimum allowed value.\n * @param {number} props.parsedQuantity The numeric part of the current value.\n * @param {string} props.computedUnit The unit part of the current value.\n * @param {Array} props.units Array of available unit objects.\n * @param {boolean} props.isMixed Whether the current value is mixed.\n * @param {number} props.step Step value for the range control.\n * @param {number} props.max Maximum value for the range control.\n * @param {boolean} props.showTooltip Whether to wrap UnitControl in a tooltip.\n * @param {string} props.value Current value for drag event checks.\n * @param {number} props.minimumCustomValue Minimum custom value for drag end reset.\n * @param {Function} props.onCustomValueChange Callback when UnitControl value changes.\n * @param {Function} props.onCustomValueSliderChange Callback when RangeControl value changes.\n * @param {Function} props.onUnitChange Callback when unit changes.\n * @param {Function} props.onMouseOut Mouse out event handler.\n * @param {Function} props.onMouseOver Mouse over event handler.\n * @param {Function} props.setMinValue Function to set minimum value state.\n *\n * @return {Element} The CustomValueControls component.\n */\nexport default function CustomValueControls( {\n\tallowNegativeOnDrag,\n\tariaLabel,\n\tallPlaceholder,\n\tminValue,\n\tparsedQuantity,\n\tcomputedUnit,\n\tunits,\n\tisMixed,\n\tstep,\n\tmax,\n\tshowTooltip,\n\tvalue,\n\tminimumCustomValue,\n\tonCustomValueChange,\n\tonCustomValueSliderChange,\n\tonUnitChange,\n\tonMouseOut,\n\tonMouseOver,\n\tsetMinValue,\n} ) {\n\tconst unitControl = (\n\t\t<UnitControl\n\t\t\tclassName=\"preset-input-control__unit-control\"\n\t\t\tdisableUnits={ isMixed }\n\t\t\thideLabelFromVision\n\t\t\tlabel={ ariaLabel }\n\t\t\tmin={ minValue }\n\t\t\tonChange={ onCustomValueChange }\n\t\t\tonUnitChange={ onUnitChange }\n\t\t\tonBlur={ onMouseOut }\n\t\t\tonFocus={ onMouseOver }\n\t\t\tonMouseOut={ onMouseOut }\n\t\t\tonMouseOver={ onMouseOver }\n\t\t\tunits={ units }\n\t\t\tvalue={ [ parsedQuantity, computedUnit ].join( '' ) }\n\t\t\tplaceholder={ allPlaceholder }\n\t\t\tonDragStart={ () => {\n\t\t\t\tif ( allowNegativeOnDrag && value?.charAt( 0 ) === '-' ) {\n\t\t\t\t\tsetMinValue( 0 );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonDrag={ () => {\n\t\t\t\tif ( allowNegativeOnDrag && value?.charAt( 0 ) === '-' ) {\n\t\t\t\t\tsetMinValue( 0 );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonDragEnd={ () => {\n\t\t\t\tif ( allowNegativeOnDrag ) {\n\t\t\t\t\tsetMinValue( minimumCustomValue );\n\t\t\t\t}\n\t\t\t} }\n\t\t/>\n\t);\n\n\tconst wrappedUnitControl = showTooltip ? (\n\t\t<Tooltip.Root>\n\t\t\t<Tooltip.Trigger\n\t\t\t\trender={\n\t\t\t\t\t<div className=\"preset-input-control__tooltip-wrapper\">\n\t\t\t\t\t\t{ unitControl }\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t/>\n\t\t\t<Tooltip.Popup>{ ariaLabel }</Tooltip.Popup>\n\t\t</Tooltip.Root>\n\t) : (\n\t\tunitControl\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ wrappedUnitControl }\n\t\t\t<RangeControl\n\t\t\t\tclassName=\"preset-input-control__custom-value-range\"\n\t\t\t\thideLabelFromVision\n\t\t\t\tinitialPosition={ 0 }\n\t\t\t\tlabel={ ariaLabel }\n\t\t\t\tmax={ max }\n\t\t\t\tmin={ 0 }\n\t\t\t\tonBlur={ onMouseOut }\n\t\t\t\tonChange={ onCustomValueSliderChange }\n\t\t\t\tonFocus={ onMouseOver }\n\t\t\t\tonMouseOut={ onMouseOut }\n\t\t\t\tonMouseOver={ onMouseOver }\n\t\t\t\tstep={ step }\n\t\t\t\tvalue={ parsedQuantity }\n\t\t\t\twithInputField={ false }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],
5
+ "mappings": ";AAAA;AAAA,EACC;AAAA,EACA,6BAA6B;AAAA,OACvB;AACP,SAAS,eAAe;AAqDtB,SAiDA,UAjDA,KAkCA,YAlCA;AAtBa,SAAR,oBAAsC;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAAI;AACH,QAAM,cACL;AAAA,IAAC;AAAA;AAAA,MACA,WAAU;AAAA,MACV,cAAe;AAAA,MACf,qBAAmB;AAAA,MACnB,OAAQ;AAAA,MACR,KAAM;AAAA,MACN,UAAW;AAAA,MACX;AAAA,MACA,QAAS;AAAA,MACT,SAAU;AAAA,MACV;AAAA,MACA;AAAA,MACA;AAAA,MACA,OAAQ,CAAE,gBAAgB,YAAa,EAAE,KAAM,EAAG;AAAA,MAClD,aAAc;AAAA,MACd,aAAc,MAAM;AACnB,YAAK,uBAAuB,OAAO,OAAQ,CAAE,MAAM,KAAM;AACxD,sBAAa,CAAE;AAAA,QAChB;AAAA,MACD;AAAA,MACA,QAAS,MAAM;AACd,YAAK,uBAAuB,OAAO,OAAQ,CAAE,MAAM,KAAM;AACxD,sBAAa,CAAE;AAAA,QAChB;AAAA,MACD;AAAA,MACA,WAAY,MAAM;AACjB,YAAK,qBAAsB;AAC1B,sBAAa,kBAAmB;AAAA,QACjC;AAAA,MACD;AAAA;AAAA,EACD;AAGD,QAAM,qBAAqB,cAC1B,qBAAC,QAAQ,MAAR,EACA;AAAA;AAAA,MAAC,QAAQ;AAAA,MAAR;AAAA,QACA,QACC,oBAAC,SAAI,WAAU,yCACZ,uBACH;AAAA;AAAA,IAEF;AAAA,IACA,oBAAC,QAAQ,OAAR,EAAgB,qBAAW;AAAA,KAC7B,IAEA;AAGD,SACC,iCACG;AAAA;AAAA,IACF;AAAA,MAAC;AAAA;AAAA,QACA,WAAU;AAAA,QACV,qBAAmB;AAAA,QACnB,iBAAkB;AAAA,QAClB,OAAQ;AAAA,QACR;AAAA,QACA,KAAM;AAAA,QACN,QAAS;AAAA,QACT,UAAW;AAAA,QACX,SAAU;AAAA,QACV;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAQ;AAAA,QACR,gBAAiB;AAAA;AAAA,IAClB;AAAA,KACD;AAEF;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/preset-input-control/index.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tCustomSelectControl,\n\tIcon as WCIcon,\n\tRangeControl,\n\t__experimentalHStack as HStack,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { usePrevious } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { settings } from '@wordpress/icons';\nimport { useState, useEffect, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tCUSTOM_VALUE_SETTINGS,\n\tICON_SIZE,\n\tRANGE_CONTROL_MAX_SIZE,\n} from './constants';\nimport {\n\tgetCustomValueFromPreset,\n\tgetPresetValueFromCustomValue,\n\tgetSliderValueFromPreset,\n\tisValuePreset,\n} from './utils';\nimport CustomValueControls from './custom-value-controls';\n\n/**\n * PresetInputControl component for selecting preset values or entering custom values.\n *\n * Displays preset values as either a slider (for <= 8 presets) or a select dropdown.\n * Allows toggling to custom value mode with a UnitControl and RangeControl.\n * Handles unit tracking and conversion between preset and custom values.\n *\n * @param {Object} props Component props.\n * @param {boolean} props.allowNegativeOnDrag Whether to allow negative values during drag operations.\n * @param {string} props.ariaLabel Accessible label for the control.\n * @param {string} props.className Optional CSS class name.\n * @param {Object} props.customValueSettings Optional custom value settings for max/steps per unit.\n * @param {boolean} props.disableCustomValues Whether to disable custom value input.\n * @param {Object} props.icon Icon to display alongside the control.\n * @param {boolean} props.isMixed Whether the current value is mixed (multiple values).\n * @param {number} props.minimumCustomValue Minimum allowed custom value.\n * @param {Function} props.onChange Callback when value changes.\n * @param {Function} props.onMouseOut Callback for mouse out events.\n * @param {Function} props.onMouseOver Callback for mouse over events.\n * @param {Function} props.onUnitChange Callback when unit changes.\n * @param {string} props.placeholder Placeholder text forwarded to the inner UnitControl when\n * rendered in custom-value mode.\n * @param {Array} props.presets Array of preset objects with name, slug, and size.\n * @param {string} props.presetType Type of preset (e.g., 'spacing', 'border-radius').\n * @param {string} props.selectedUnit Currently selected unit (e.g., 'px', 'em').\n * @param {boolean} props.showTooltip Whether to show tooltip on custom UnitControl.\n * @param {Array} props.units Array of available unit objects (can include max and step).\n * @param {string} props.value Current value (preset or custom).\n *\n * @return {Element} The PresetInputControl component.\n */\nexport default function PresetInputControl( {\n\tallowNegativeOnDrag = false,\n\tariaLabel,\n\tclassName: classNameProp,\n\tcustomValueSettings = CUSTOM_VALUE_SETTINGS,\n\tdisableCustomValues,\n\ticon,\n\tisMixed,\n\tvalue: valueProp,\n\tminimumCustomValue,\n\tonChange,\n\tonMouseOut,\n\tonMouseOver,\n\tonUnitChange,\n\tplaceholder,\n\tpresets = [],\n\tpresetType,\n\tselectedUnit,\n\tshowTooltip,\n\tunits,\n} ) {\n\tconst value = useMemo(\n\t\t() => getPresetValueFromCustomValue( valueProp, presets, presetType ),\n\t\t[ valueProp, presets, presetType ]\n\t);\n\n\tconst className = classNameProp ?? 'preset-input-control';\n\n\tconst marks = presets\n\t\t.slice( 1, presets.length - 1 )\n\t\t.map( ( _newValue, index ) => ( {\n\t\t\tvalue: index + 1,\n\t\t\tlabel: undefined,\n\t\t} ) );\n\tconst hasPresets = marks.length > 0;\n\tconst showRangeControl = presets.length <= RANGE_CONTROL_MAX_SIZE;\n\n\tconst allPlaceholder = isMixed ? __( 'Mixed' ) : placeholder ?? null;\n\n\tconst [ minValue, setMinValue ] = useState( minimumCustomValue );\n\tconst [ showCustomValueControl, setShowCustomValueControl ] = useState(\n\t\t! disableCustomValues &&\n\t\t\tvalue !== undefined &&\n\t\t\t! isValuePreset( value, presetType )\n\t);\n\n\tlet currentValue = null;\n\n\tconst previousValue = usePrevious( value );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\t!! value &&\n\t\t\tpreviousValue !== value &&\n\t\t\t! isValuePreset( value, presetType ) &&\n\t\t\tshowCustomValueControl !== true\n\t\t) {\n\t\t\tsetShowCustomValueControl( true );\n\t\t}\n\t}, [ value, previousValue, presetType, showCustomValueControl ] );\n\n\tconst showCustomValueInSelectList =\n\t\t! showRangeControl &&\n\t\t! showCustomValueControl &&\n\t\tvalue !== undefined &&\n\t\t( ! isValuePreset( value, presetType ) ||\n\t\t\t( isValuePreset( value, presetType ) && isMixed ) );\n\n\tlet selectListOptions = presets;\n\tif ( showCustomValueInSelectList ) {\n\t\tselectListOptions = [\n\t\t\t...presets,\n\t\t\t{\n\t\t\t\tname: ! isMixed\n\t\t\t\t\t? // translators: %s: A custom measurement, e.g. a number followed by a unit like 12px.\n\t\t\t\t\t sprintf( __( 'Custom (%s)' ), value )\n\t\t\t\t\t: __( 'Mixed' ),\n\t\t\t\tslug: 'custom',\n\t\t\t\tsize: value,\n\t\t\t},\n\t\t];\n\t\tcurrentValue = selectListOptions.length - 1;\n\t} else if ( ! isMixed ) {\n\t\tcurrentValue = ! showCustomValueControl\n\t\t\t? getSliderValueFromPreset( value, presets, presetType )\n\t\t\t: getCustomValueFromPreset( value, presets, presetType );\n\t}\n\n\tconst options = selectListOptions.map( ( size, index ) => ( {\n\t\tkey: index,\n\t\tname: size.name,\n\t} ) );\n\n\tconst resolvedPresetValue = isValuePreset( value, presetType )\n\t\t? getCustomValueFromPreset( value, presets, presetType )\n\t\t: value;\n\n\tconst [ parsedQuantity, parsedUnit ] =\n\t\tparseQuantityAndUnitFromRawValue( resolvedPresetValue );\n\n\tconst computedUnit = parsedUnit || selectedUnit || 'px';\n\n\t// Get step and max from units prop, falling back to customValueSettings\n\tconst unitConfig = units?.find( ( item ) => item.value === computedUnit );\n\tconst step =\n\t\tunitConfig?.step ?? customValueSettings[ computedUnit ]?.steps ?? 0.1;\n\tconst max =\n\t\tunitConfig?.max ?? customValueSettings[ computedUnit ]?.max ?? 10;\n\n\tconst handleCustomValueChange = ( newValue ) => {\n\t\t// Treat empty or undefined as an explicit clear and propagate undefined.\n\t\tif ( newValue === undefined || newValue === '' ) {\n\t\t\tonChange( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\t// Ignore non-numeric intermediate input (e.g. just a unit).\n\t\tif ( isNaN( parseFloat( newValue ) ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tonChange( newValue );\n\t};\n\tconst handleCustomValueSliderChange = ( next ) => {\n\t\tonChange( [ next, computedUnit ].join( '' ) );\n\t};\n\tconst customTooltipContent = ( newValue ) =>\n\t\tvalue === undefined ? undefined : presets[ newValue ]?.name;\n\n\tconst getNewPresetValue = ( next, controlType ) => {\n\t\tconst newValue = parseInt( next, 10 );\n\n\t\tif ( controlType === 'selectList' ) {\n\t\t\tif ( newValue === 0 && presets[ 0 ]?.slug === '0' ) {\n\t\t\t\treturn '0';\n\t\t\t}\n\t\t\tif ( newValue === 0 ) {\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t} else if ( newValue === 0 ) {\n\t\t\treturn '0';\n\t\t}\n\t\treturn `var:preset|${ presetType }|${ presets[ next ]?.slug }`;\n\t};\n\n\treturn (\n\t\t<HStack\n\t\t\tclassName={ `preset-input-control__wrapper ${ className }__wrapper` }\n\t\t>\n\t\t\t{ icon && (\n\t\t\t\t<WCIcon\n\t\t\t\t\tclassName=\"preset-input-control__icon\"\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tsize={ ICON_SIZE }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ( ! hasPresets || showCustomValueControl ) && (\n\t\t\t\t<CustomValueControls\n\t\t\t\t\tallowNegativeOnDrag={ allowNegativeOnDrag }\n\t\t\t\t\tariaLabel={ ariaLabel }\n\t\t\t\t\tallPlaceholder={ allPlaceholder }\n\t\t\t\t\tminValue={ minValue }\n\t\t\t\t\tparsedQuantity={ parsedQuantity }\n\t\t\t\t\tcomputedUnit={ computedUnit }\n\t\t\t\t\tunits={ units }\n\t\t\t\t\tisMixed={ isMixed }\n\t\t\t\t\tstep={ step }\n\t\t\t\t\tmax={ max }\n\t\t\t\t\tshowTooltip={ showTooltip }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tminimumCustomValue={ minimumCustomValue }\n\t\t\t\t\tonCustomValueChange={ handleCustomValueChange }\n\t\t\t\t\tonCustomValueSliderChange={ handleCustomValueSliderChange }\n\t\t\t\t\tonUnitChange={ onUnitChange }\n\t\t\t\t\tonMouseOut={ onMouseOut }\n\t\t\t\t\tonMouseOver={ onMouseOver }\n\t\t\t\t\tsetMinValue={ setMinValue }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasPresets && showRangeControl && ! showCustomValueControl && (\n\t\t\t\t<RangeControl\n\t\t\t\t\taria-valuenow={ currentValue }\n\t\t\t\t\taria-valuetext={ presets[ currentValue ]?.name }\n\t\t\t\t\tclassName=\"preset-input-control__preset-range\"\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tinitialPosition={ 0 }\n\t\t\t\t\tlabel={ ariaLabel }\n\t\t\t\t\tmax={ presets.length - 1 }\n\t\t\t\t\tmarks={ marks }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonBlur={ onMouseOut }\n\t\t\t\t\tonChange={ ( newValue ) =>\n\t\t\t\t\t\tonChange( getNewPresetValue( newValue ) )\n\t\t\t\t\t}\n\t\t\t\t\tonFocus={ onMouseOver }\n\t\t\t\t\tonMouseDown={ ( event ) => {\n\t\t\t\t\t\t// If mouse down is near start of range set initial value to 0, which\n\t\t\t\t\t\t// prevents the user have to drag right then left to get 0 setting.\n\t\t\t\t\t\tconst nearStart = event?.nativeEvent?.offsetX < 35;\n\t\t\t\t\t\tif ( nearStart && value === undefined ) {\n\t\t\t\t\t\t\tonChange( '0' );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\tonMouseOut={ onMouseOut }\n\t\t\t\t\tonMouseOver={ onMouseOver }\n\t\t\t\t\trenderTooltipContent={ customTooltipContent }\n\t\t\t\t\tstep={ 1 }\n\t\t\t\t\tvalue={ currentValue }\n\t\t\t\t\twithInputField={ false }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasPresets && ! showRangeControl && ! showCustomValueControl && (\n\t\t\t\t<CustomSelectControl\n\t\t\t\t\tclassName=\"preset-input-control__custom-select-control\"\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tlabel={ ariaLabel }\n\t\t\t\t\tonBlur={ onMouseOut }\n\t\t\t\t\tonChange={ ( selection ) => {\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tshowCustomValueInSelectList &&\n\t\t\t\t\t\t\tselection.selectedItem.key === options.length - 1\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tsetShowCustomValueControl( true );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\tgetNewPresetValue(\n\t\t\t\t\t\t\t\t\tselection.selectedItem.key,\n\t\t\t\t\t\t\t\t\t'selectList'\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} }\n\t\t\t\t\tonFocus={ onMouseOver }\n\t\t\t\t\tonMouseOut={ onMouseOut }\n\t\t\t\t\tonMouseOver={ onMouseOver }\n\t\t\t\t\toptions={ options }\n\t\t\t\t\tvalue={\n\t\t\t\t\t\t// passing empty string as a fallback to continue using the\n\t\t\t\t\t\t// component in controlled mode\n\t\t\t\t\t\toptions.find(\n\t\t\t\t\t\t\t( option ) => option.key === currentValue\n\t\t\t\t\t\t) || ''\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasPresets && ! disableCustomValues && (\n\t\t\t\t<Button\n\t\t\t\t\tclassName=\"preset-input-control__custom-toggle\"\n\t\t\t\t\ticon={ settings }\n\t\t\t\t\ticonSize={ ICON_SIZE }\n\t\t\t\t\tisPressed={ showCustomValueControl }\n\t\t\t\t\tlabel={\n\t\t\t\t\t\tshowCustomValueControl\n\t\t\t\t\t\t\t? __( 'Use preset' )\n\t\t\t\t\t\t\t: __( 'Set custom value' )\n\t\t\t\t\t}\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetShowCustomValueControl( ! showCustomValueControl );\n\t\t\t\t\t} }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t/>\n\t\t\t) }\n\t\t</HStack>\n\t);\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import {\n\tButton,\n\tCustomSelectControl,\n\tIcon as WCIcon,\n\tRangeControl,\n\t__experimentalHStack as HStack,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { usePrevious } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { settings } from '@wordpress/icons';\nimport { useState, useEffect, useMemo } from '@wordpress/element';\nimport {\n\tCUSTOM_VALUE_SETTINGS,\n\tICON_SIZE,\n\tRANGE_CONTROL_MAX_SIZE,\n} from './constants';\nimport {\n\tgetCustomValueFromPreset,\n\tgetPresetValueFromCustomValue,\n\tgetSliderValueFromPreset,\n\tisValuePreset,\n} from './utils';\nimport CustomValueControls from './custom-value-controls';\n\n/**\n * PresetInputControl component for selecting preset values or entering custom values.\n *\n * Displays preset values as either a slider (for <= 8 presets) or a select dropdown.\n * Allows toggling to custom value mode with a UnitControl and RangeControl.\n * Handles unit tracking and conversion between preset and custom values.\n *\n * @param {Object} props Component props.\n * @param {boolean} props.allowNegativeOnDrag Whether to allow negative values during drag operations.\n * @param {string} props.ariaLabel Accessible label for the control.\n * @param {string} props.className Optional CSS class name.\n * @param {Object} props.customValueSettings Optional custom value settings for max/steps per unit.\n * @param {boolean} props.disableCustomValues Whether to disable custom value input.\n * @param {Object} props.icon Icon to display alongside the control.\n * @param {boolean} props.isMixed Whether the current value is mixed (multiple values).\n * @param {number} props.minimumCustomValue Minimum allowed custom value.\n * @param {Function} props.onChange Callback when value changes.\n * @param {Function} props.onMouseOut Callback for mouse out events.\n * @param {Function} props.onMouseOver Callback for mouse over events.\n * @param {Function} props.onUnitChange Callback when unit changes.\n * @param {string} props.placeholder Placeholder text forwarded to the inner UnitControl when\n * rendered in custom-value mode.\n * @param {Array} props.presets Array of preset objects with name, slug, and size.\n * @param {string} props.presetType Type of preset (e.g., 'spacing', 'border-radius').\n * @param {string} props.selectedUnit Currently selected unit (e.g., 'px', 'em').\n * @param {boolean} props.showTooltip Whether to show tooltip on custom UnitControl.\n * @param {Array} props.units Array of available unit objects (can include max and step).\n * @param {string} props.value Current value (preset or custom).\n *\n * @return {Element} The PresetInputControl component.\n */\nexport default function PresetInputControl( {\n\tallowNegativeOnDrag = false,\n\tariaLabel,\n\tclassName: classNameProp,\n\tcustomValueSettings = CUSTOM_VALUE_SETTINGS,\n\tdisableCustomValues,\n\ticon,\n\tisMixed,\n\tvalue: valueProp,\n\tminimumCustomValue,\n\tonChange,\n\tonMouseOut,\n\tonMouseOver,\n\tonUnitChange,\n\tplaceholder,\n\tpresets = [],\n\tpresetType,\n\tselectedUnit,\n\tshowTooltip,\n\tunits,\n} ) {\n\tconst value = useMemo(\n\t\t() => getPresetValueFromCustomValue( valueProp, presets, presetType ),\n\t\t[ valueProp, presets, presetType ]\n\t);\n\n\tconst className = classNameProp ?? 'preset-input-control';\n\n\tconst marks = presets\n\t\t.slice( 1, presets.length - 1 )\n\t\t.map( ( _newValue, index ) => ( {\n\t\t\tvalue: index + 1,\n\t\t\tlabel: undefined,\n\t\t} ) );\n\tconst hasPresets = marks.length > 0;\n\tconst showRangeControl = presets.length <= RANGE_CONTROL_MAX_SIZE;\n\n\tconst allPlaceholder = isMixed ? __( 'Mixed' ) : placeholder ?? null;\n\n\tconst [ minValue, setMinValue ] = useState( minimumCustomValue );\n\tconst [ showCustomValueControl, setShowCustomValueControl ] = useState(\n\t\t! disableCustomValues &&\n\t\t\tvalue !== undefined &&\n\t\t\t! isValuePreset( value, presetType )\n\t);\n\n\tlet currentValue = null;\n\n\tconst previousValue = usePrevious( value );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\t!! value &&\n\t\t\tpreviousValue !== value &&\n\t\t\t! isValuePreset( value, presetType ) &&\n\t\t\tshowCustomValueControl !== true\n\t\t) {\n\t\t\tsetShowCustomValueControl( true );\n\t\t}\n\t}, [ value, previousValue, presetType, showCustomValueControl ] );\n\n\tconst showCustomValueInSelectList =\n\t\t! showRangeControl &&\n\t\t! showCustomValueControl &&\n\t\tvalue !== undefined &&\n\t\t( ! isValuePreset( value, presetType ) ||\n\t\t\t( isValuePreset( value, presetType ) && isMixed ) );\n\n\tlet selectListOptions = presets;\n\tif ( showCustomValueInSelectList ) {\n\t\tselectListOptions = [\n\t\t\t...presets,\n\t\t\t{\n\t\t\t\tname: ! isMixed\n\t\t\t\t\t? // translators: %s: A custom measurement, e.g. a number followed by a unit like 12px.\n\t\t\t\t\t sprintf( __( 'Custom (%s)' ), value )\n\t\t\t\t\t: __( 'Mixed' ),\n\t\t\t\tslug: 'custom',\n\t\t\t\tsize: value,\n\t\t\t},\n\t\t];\n\t\tcurrentValue = selectListOptions.length - 1;\n\t} else if ( ! isMixed ) {\n\t\tcurrentValue = ! showCustomValueControl\n\t\t\t? getSliderValueFromPreset( value, presets, presetType )\n\t\t\t: getCustomValueFromPreset( value, presets, presetType );\n\t}\n\n\tconst options = selectListOptions.map( ( size, index ) => ( {\n\t\tkey: index,\n\t\tname: size.name,\n\t} ) );\n\n\tconst resolvedPresetValue = isValuePreset( value, presetType )\n\t\t? getCustomValueFromPreset( value, presets, presetType )\n\t\t: value;\n\n\tconst [ parsedQuantity, parsedUnit ] =\n\t\tparseQuantityAndUnitFromRawValue( resolvedPresetValue );\n\n\tconst computedUnit = parsedUnit || selectedUnit || 'px';\n\n\t// Get step and max from units prop, falling back to customValueSettings\n\tconst unitConfig = units?.find( ( item ) => item.value === computedUnit );\n\tconst step =\n\t\tunitConfig?.step ?? customValueSettings[ computedUnit ]?.steps ?? 0.1;\n\tconst max =\n\t\tunitConfig?.max ?? customValueSettings[ computedUnit ]?.max ?? 10;\n\n\tconst handleCustomValueChange = ( newValue ) => {\n\t\t// Treat empty or undefined as an explicit clear and propagate undefined.\n\t\tif ( newValue === undefined || newValue === '' ) {\n\t\t\tonChange( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\t// Ignore non-numeric intermediate input (e.g. just a unit).\n\t\tif ( isNaN( parseFloat( newValue ) ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tonChange( newValue );\n\t};\n\tconst handleCustomValueSliderChange = ( next ) => {\n\t\tonChange( [ next, computedUnit ].join( '' ) );\n\t};\n\tconst customTooltipContent = ( newValue ) =>\n\t\tvalue === undefined ? undefined : presets[ newValue ]?.name;\n\n\tconst getNewPresetValue = ( next, controlType ) => {\n\t\tconst newValue = parseInt( next, 10 );\n\n\t\tif ( controlType === 'selectList' ) {\n\t\t\tif ( newValue === 0 && presets[ 0 ]?.slug === '0' ) {\n\t\t\t\treturn '0';\n\t\t\t}\n\t\t\tif ( newValue === 0 ) {\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t} else if ( newValue === 0 ) {\n\t\t\treturn '0';\n\t\t}\n\t\treturn `var:preset|${ presetType }|${ presets[ next ]?.slug }`;\n\t};\n\n\treturn (\n\t\t<HStack\n\t\t\tclassName={ `preset-input-control__wrapper ${ className }__wrapper` }\n\t\t>\n\t\t\t{ icon && (\n\t\t\t\t<WCIcon\n\t\t\t\t\tclassName=\"preset-input-control__icon\"\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tsize={ ICON_SIZE }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ( ! hasPresets || showCustomValueControl ) && (\n\t\t\t\t<CustomValueControls\n\t\t\t\t\tallowNegativeOnDrag={ allowNegativeOnDrag }\n\t\t\t\t\tariaLabel={ ariaLabel }\n\t\t\t\t\tallPlaceholder={ allPlaceholder }\n\t\t\t\t\tminValue={ minValue }\n\t\t\t\t\tparsedQuantity={ parsedQuantity }\n\t\t\t\t\tcomputedUnit={ computedUnit }\n\t\t\t\t\tunits={ units }\n\t\t\t\t\tisMixed={ isMixed }\n\t\t\t\t\tstep={ step }\n\t\t\t\t\tmax={ max }\n\t\t\t\t\tshowTooltip={ showTooltip }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tminimumCustomValue={ minimumCustomValue }\n\t\t\t\t\tonCustomValueChange={ handleCustomValueChange }\n\t\t\t\t\tonCustomValueSliderChange={ handleCustomValueSliderChange }\n\t\t\t\t\tonUnitChange={ onUnitChange }\n\t\t\t\t\tonMouseOut={ onMouseOut }\n\t\t\t\t\tonMouseOver={ onMouseOver }\n\t\t\t\t\tsetMinValue={ setMinValue }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasPresets && showRangeControl && ! showCustomValueControl && (\n\t\t\t\t<RangeControl\n\t\t\t\t\taria-valuenow={ currentValue }\n\t\t\t\t\taria-valuetext={ presets[ currentValue ]?.name }\n\t\t\t\t\tclassName=\"preset-input-control__preset-range\"\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tinitialPosition={ 0 }\n\t\t\t\t\tlabel={ ariaLabel }\n\t\t\t\t\tmax={ presets.length - 1 }\n\t\t\t\t\tmarks={ marks }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonBlur={ onMouseOut }\n\t\t\t\t\tonChange={ ( newValue ) =>\n\t\t\t\t\t\tonChange( getNewPresetValue( newValue ) )\n\t\t\t\t\t}\n\t\t\t\t\tonFocus={ onMouseOver }\n\t\t\t\t\tonMouseDown={ ( event ) => {\n\t\t\t\t\t\t// If mouse down is near start of range set initial value to 0, which\n\t\t\t\t\t\t// prevents the user have to drag right then left to get 0 setting.\n\t\t\t\t\t\tconst nearStart = event?.nativeEvent?.offsetX < 35;\n\t\t\t\t\t\tif ( nearStart && value === undefined ) {\n\t\t\t\t\t\t\tonChange( '0' );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\tonMouseOut={ onMouseOut }\n\t\t\t\t\tonMouseOver={ onMouseOver }\n\t\t\t\t\trenderTooltipContent={ customTooltipContent }\n\t\t\t\t\tstep={ 1 }\n\t\t\t\t\tvalue={ currentValue }\n\t\t\t\t\twithInputField={ false }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasPresets && ! showRangeControl && ! showCustomValueControl && (\n\t\t\t\t<CustomSelectControl\n\t\t\t\t\tclassName=\"preset-input-control__custom-select-control\"\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tlabel={ ariaLabel }\n\t\t\t\t\tonBlur={ onMouseOut }\n\t\t\t\t\tonChange={ ( selection ) => {\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tshowCustomValueInSelectList &&\n\t\t\t\t\t\t\tselection.selectedItem.key === options.length - 1\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tsetShowCustomValueControl( true );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\tgetNewPresetValue(\n\t\t\t\t\t\t\t\t\tselection.selectedItem.key,\n\t\t\t\t\t\t\t\t\t'selectList'\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} }\n\t\t\t\t\tonFocus={ onMouseOver }\n\t\t\t\t\tonMouseOut={ onMouseOut }\n\t\t\t\t\tonMouseOver={ onMouseOver }\n\t\t\t\t\toptions={ options }\n\t\t\t\t\tvalue={\n\t\t\t\t\t\t// passing empty string as a fallback to continue using the\n\t\t\t\t\t\t// component in controlled mode\n\t\t\t\t\t\toptions.find(\n\t\t\t\t\t\t\t( option ) => option.key === currentValue\n\t\t\t\t\t\t) || ''\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasPresets && ! disableCustomValues && (\n\t\t\t\t<Button\n\t\t\t\t\tclassName=\"preset-input-control__custom-toggle\"\n\t\t\t\t\ticon={ settings }\n\t\t\t\t\ticonSize={ ICON_SIZE }\n\t\t\t\t\tisPressed={ showCustomValueControl }\n\t\t\t\t\tlabel={\n\t\t\t\t\t\tshowCustomValueControl\n\t\t\t\t\t\t\t? __( 'Use preset' )\n\t\t\t\t\t\t\t: __( 'Set custom value' )\n\t\t\t\t\t}\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetShowCustomValueControl( ! showCustomValueControl );\n\t\t\t\t\t} }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t/>\n\t\t\t) }\n\t\t</HStack>\n\t);\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/preview-options/index.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport deprecated from '@wordpress/deprecated';\n\nexport default function PreviewOptions() {\n\tdeprecated( 'wp.blockEditor.PreviewOptions', {\n\t\tversion: '6.5',\n\t} );\n\treturn null;\n}\n"],
5
- "mappings": ";AAGA,OAAO,gBAAgB;AAER,SAAR,iBAAkC;AACxC,aAAY,iCAAiC;AAAA,IAC5C,SAAS;AAAA,EACV,CAAE;AACF,SAAO;AACR;",
4
+ "sourcesContent": ["import deprecated from '@wordpress/deprecated';\n\nexport default function PreviewOptions() {\n\tdeprecated( 'wp.blockEditor.PreviewOptions', {\n\t\tversion: '6.5',\n\t} );\n\treturn null;\n}\n"],
5
+ "mappings": ";AAAA,OAAO,gBAAgB;AAER,SAAR,iBAAkC;AACxC,aAAY,iCAAiC;AAAA,IAC5C,SAAS;AAAA,EACV,CAAE;AACF,SAAO;AACR;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/provider/block-refs-provider.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { createContext, useMemo } from '@wordpress/element';\nimport { observableMap } from '@wordpress/compose';\n\n// `eventHandlers` maps a block's client ID to a ref holding its `wrapperProps`\n// event handlers, so the writing flow host can call them for a block that\n// supports `editableRoot` (see `useEditableRootEventHandlers`). It rides in this\n// context, next to `refsMap`, as another per-block registry keyed by client ID.\nexport const BlockRefs = createContext( {\n\trefsMap: observableMap(),\n\teventHandlers: new Map(),\n} );\nBlockRefs.displayName = 'BlockRefsContext';\n\nexport function BlockRefsProvider( { children } ) {\n\tconst value = useMemo(\n\t\t() => ( { refsMap: observableMap(), eventHandlers: new Map() } ),\n\t\t[]\n\t);\n\treturn (\n\t\t<BlockRefs.Provider value={ value }>{ children }</BlockRefs.Provider>\n\t);\n}\n"],
5
- "mappings": ";AAGA,SAAS,eAAe,eAAe;AACvC,SAAS,qBAAqB;AAkB5B;AAZK,IAAM,YAAY,cAAe;AAAA,EACvC,SAAS,cAAc;AAAA,EACvB,eAAe,oBAAI,IAAI;AACxB,CAAE;AACF,UAAU,cAAc;AAEjB,SAAS,kBAAmB,EAAE,SAAS,GAAI;AACjD,QAAM,QAAQ;AAAA,IACb,OAAQ,EAAE,SAAS,cAAc,GAAG,eAAe,oBAAI,IAAI,EAAE;AAAA,IAC7D,CAAC;AAAA,EACF;AACA,SACC,oBAAC,UAAU,UAAV,EAAmB,OAAkB,UAAU;AAElD;",
4
+ "sourcesContent": ["import { createContext, useMemo } from '@wordpress/element';\nimport { observableMap } from '@wordpress/compose';\n\n// `eventHandlers` maps a block's client ID to a ref holding its `wrapperProps`\n// event handlers, so the writing flow host can call them for a block that\n// supports `editableRoot` (see `useEditableRootEventHandlers`). It rides in this\n// context, next to `refsMap`, as another per-block registry keyed by client ID.\nexport const BlockRefs = createContext( {\n\trefsMap: observableMap(),\n\teventHandlers: new Map(),\n} );\nBlockRefs.displayName = 'BlockRefsContext';\n\nexport function BlockRefsProvider( { children } ) {\n\tconst value = useMemo(\n\t\t() => ( { refsMap: observableMap(), eventHandlers: new Map() } ),\n\t\t[]\n\t);\n\treturn (\n\t\t<BlockRefs.Provider value={ value }>{ children }</BlockRefs.Provider>\n\t);\n}\n"],
5
+ "mappings": ";AAAA,SAAS,eAAe,eAAe;AACvC,SAAS,qBAAqB;AAkB5B;AAZK,IAAM,YAAY,cAAe;AAAA,EACvC,SAAS,cAAc;AAAA,EACvB,eAAe,oBAAI,IAAI;AACxB,CAAE;AACF,UAAU,cAAc;AAEjB,SAAS,kBAAmB,EAAE,SAAS,GAAI;AACjD,QAAM,QAAQ;AAAA,IACb,OAAQ,EAAE,SAAS,cAAc,GAAG,eAAe,oBAAI,IAAI,EAAE;AAAA,IAC7D,CAAC;AAAA,EACF;AACA,SACC,oBAAC,UAAU,UAAV,EAAmB,OAAkB,UAAU;AAElD;",
6
6
  "names": []
7
7
  }