@wordpress/block-editor 12.22.0 → 12.24.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 (1508) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +8 -0
  3. package/build/autocompleters/block.js.map +1 -1
  4. package/build/autocompleters/link.js.map +1 -1
  5. package/build/components/alignment-control/index.js.map +1 -1
  6. package/build/components/alignment-control/ui.js.map +1 -1
  7. package/build/components/autocomplete/index.js.map +1 -1
  8. package/build/components/block-actions/index.js.map +1 -1
  9. package/build/components/block-alignment-control/constants.js.map +1 -1
  10. package/build/components/block-alignment-control/index.js.map +1 -1
  11. package/build/components/block-alignment-control/ui.js.map +1 -1
  12. package/build/components/block-alignment-control/ui.native.js.map +1 -1
  13. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  14. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  15. package/build/components/block-bindings-toolbar-indicator/index.js.map +1 -1
  16. package/build/components/block-breadcrumb/index.js.map +1 -1
  17. package/build/components/block-canvas/index.js.map +1 -1
  18. package/build/components/block-caption/index.native.js.map +1 -1
  19. package/build/components/block-card/index.js.map +1 -1
  20. package/build/components/block-compare/block-view.js.map +1 -1
  21. package/build/components/block-compare/index.js.map +1 -1
  22. package/build/components/block-content-overlay/index.js.map +1 -1
  23. package/build/components/block-context/index.js.map +1 -1
  24. package/build/components/block-controls/fill.js.map +1 -1
  25. package/build/components/block-controls/groups.js.map +1 -1
  26. package/build/components/block-controls/hook.js.map +1 -1
  27. package/build/components/block-controls/index.js.map +1 -1
  28. package/build/components/block-controls/slot.js.map +1 -1
  29. package/build/components/block-controls/slot.native.js.map +1 -1
  30. package/build/components/block-controls/use-has-block-controls.js.map +1 -1
  31. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  32. package/build/components/block-draggable/draggable-chip.native.js.map +1 -1
  33. package/build/components/block-draggable/dropping-insertion-point.native.js +1 -1
  34. package/build/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  35. package/build/components/block-draggable/index.js.map +1 -1
  36. package/build/components/block-draggable/index.native.js +1 -1
  37. package/build/components/block-draggable/index.native.js.map +1 -1
  38. package/build/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
  39. package/build/components/block-draggable/use-scroll-when-dragging.native.js.map +1 -1
  40. package/build/components/block-edit/context.js +2 -1
  41. package/build/components/block-edit/context.js.map +1 -1
  42. package/build/components/block-edit/edit.js.map +1 -1
  43. package/build/components/block-edit/edit.native.js.map +1 -1
  44. package/build/components/block-edit/index.js +4 -2
  45. package/build/components/block-edit/index.js.map +1 -1
  46. package/build/components/block-edit-visually-button/index.js.map +1 -1
  47. package/build/components/block-editing-mode/index.js.map +1 -1
  48. package/build/components/block-full-height-alignment-control/index.js.map +1 -1
  49. package/build/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  50. package/build/components/block-heading-level-dropdown/index.js.map +1 -1
  51. package/build/components/block-heading-level-dropdown/index.native.js.map +1 -1
  52. package/build/components/block-icon/index.js.map +1 -1
  53. package/build/components/block-icon/index.native.js.map +1 -1
  54. package/build/components/block-info-slot-fill/index.js.map +1 -1
  55. package/build/components/block-inspector/index.js +5 -4
  56. package/build/components/block-inspector/index.js.map +1 -1
  57. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  58. package/build/components/block-list/block-crash-boundary.js.map +1 -1
  59. package/build/components/block-list/block-crash-boundary.native.js.map +1 -1
  60. package/build/components/block-list/block-crash-warning.js.map +1 -1
  61. package/build/components/block-list/block-crash-warning.native.js.map +1 -1
  62. package/build/components/block-list/block-html.js.map +1 -1
  63. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  64. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  65. package/build/components/block-list/block-list-context.native.js.map +1 -1
  66. package/build/components/block-list/block-list-item-cell.native.js.map +1 -1
  67. package/build/components/block-list/block-list-item.native.js.map +1 -1
  68. package/build/components/block-list/block-outline.native.js.map +1 -1
  69. package/build/components/block-list/block-selection-button.native.js.map +1 -1
  70. package/build/components/block-list/block.js +55 -29
  71. package/build/components/block-list/block.js.map +1 -1
  72. package/build/components/block-list/block.native.js +2 -2
  73. package/build/components/block-list/block.native.js.map +1 -1
  74. package/build/components/block-list/grid-item.native.js.map +1 -1
  75. package/build/components/block-list/index.js +16 -5
  76. package/build/components/block-list/index.js.map +1 -1
  77. package/build/components/block-list/index.native.js.map +1 -1
  78. package/build/components/block-list/insertion-point.native.js.map +1 -1
  79. package/build/components/block-list/layout.js.map +1 -1
  80. package/build/components/block-list/private-block-context.js.map +1 -1
  81. package/build/components/block-list/subdirectory-icon.js.map +1 -1
  82. package/build/components/block-list/use-block-props/index.js +2 -1
  83. package/build/components/block-list/use-block-props/index.js.map +1 -1
  84. package/build/components/block-list/use-block-props/index.native.js.map +1 -1
  85. package/build/components/block-list/use-block-props/use-block-moving-mode-class-names.js.map +1 -1
  86. package/build/components/block-list/use-block-props/use-block-refs.js.map +1 -1
  87. package/build/components/block-list/use-block-props/use-focus-first-element.js +3 -2
  88. package/build/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  89. package/build/components/block-list/use-block-props/use-focus-handler.js.map +1 -1
  90. package/build/components/block-list/use-block-props/use-intersection-observer.js.map +1 -1
  91. package/build/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  92. package/build/components/block-list/use-block-props/use-nav-mode-exit.js.map +1 -1
  93. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  94. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  95. package/build/components/block-list/use-scroll-upon-insertion.native.js.map +1 -1
  96. package/build/components/block-list-appender/index.js.map +1 -1
  97. package/build/components/block-list-appender/index.native.js.map +1 -1
  98. package/build/components/block-lock/index.js.map +1 -1
  99. package/build/components/block-lock/menu-item.js.map +1 -1
  100. package/build/components/block-lock/modal.js.map +1 -1
  101. package/build/components/block-lock/toolbar.js.map +1 -1
  102. package/build/components/block-lock/use-block-lock.js.map +1 -1
  103. package/build/components/block-media-update-progress/index.native.js.map +1 -1
  104. package/build/components/block-mover/button.js +4 -1
  105. package/build/components/block-mover/button.js.map +1 -1
  106. package/build/components/block-mover/index.js +5 -1
  107. package/build/components/block-mover/index.js.map +1 -1
  108. package/build/components/block-mover/index.native.js.map +1 -1
  109. package/build/components/block-mover/mover-description.js.map +1 -1
  110. package/build/components/block-mover/mover-description.native.js.map +1 -1
  111. package/build/components/block-navigation/dropdown.js.map +1 -1
  112. package/build/components/block-parent-selector/index.js.map +1 -1
  113. package/build/components/block-pattern-setup/constants.js.map +1 -1
  114. package/build/components/block-pattern-setup/index.js.map +1 -1
  115. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  116. package/build/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  117. package/build/components/block-patterns-list/index.js +4 -1
  118. package/build/components/block-patterns-list/index.js.map +1 -1
  119. package/build/components/block-patterns-paging/index.js +8 -4
  120. package/build/components/block-patterns-paging/index.js.map +1 -1
  121. package/build/components/block-popover/cover.js.map +1 -1
  122. package/build/components/block-popover/drop-zone.js.map +1 -1
  123. package/build/components/block-popover/inbetween.js.map +1 -1
  124. package/build/components/block-popover/index.js.map +1 -1
  125. package/build/components/block-popover/use-popover-scroll.js.map +1 -1
  126. package/build/components/block-preview/auto.js.map +1 -1
  127. package/build/components/block-preview/index.js.map +1 -1
  128. package/build/components/block-quick-navigation/index.js.map +1 -1
  129. package/build/components/block-removal-warning-modal/index.js.map +1 -1
  130. package/build/components/block-rename/index.js.map +1 -1
  131. package/build/components/block-rename/is-empty-string.js.map +1 -1
  132. package/build/components/block-rename/modal.js +13 -9
  133. package/build/components/block-rename/modal.js.map +1 -1
  134. package/build/components/block-rename/rename-control.js +3 -1
  135. package/build/components/block-rename/rename-control.js.map +1 -1
  136. package/build/components/block-rename/use-block-rename.js.map +1 -1
  137. package/build/components/block-selection-clearer/index.js.map +1 -1
  138. package/build/components/block-settings/button.native.js.map +1 -1
  139. package/build/components/block-settings/container.native.js.map +1 -1
  140. package/build/components/block-settings/index.native.js +1 -1
  141. package/build/components/block-settings/index.native.js.map +1 -1
  142. package/build/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  143. package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  144. package/build/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
  145. package/build/components/block-settings-menu/block-settings-dropdown.js +7 -3
  146. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  147. package/build/components/block-settings-menu/block-settings-menu-first-item.js.map +1 -1
  148. package/build/components/block-settings-menu/index.js.map +1 -1
  149. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  150. package/build/components/block-styles/index.js.map +1 -1
  151. package/build/components/block-styles/index.native.js.map +1 -1
  152. package/build/components/block-styles/menu-items.js.map +1 -1
  153. package/build/components/block-styles/preview-panel.js.map +1 -1
  154. package/build/components/block-styles/preview.native.js.map +1 -1
  155. package/build/components/block-styles/use-styles-for-block.js.map +1 -1
  156. package/build/components/block-styles/utils.js.map +1 -1
  157. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  158. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  159. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  160. package/build/components/block-switcher/block-variation-transformations.js.map +1 -1
  161. package/build/components/block-switcher/index.js +4 -3
  162. package/build/components/block-switcher/index.js.map +1 -1
  163. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  164. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  165. package/build/components/block-switcher/use-transformed-patterns.js.map +1 -1
  166. package/build/components/block-switcher/utils.js.map +1 -1
  167. package/build/components/block-title/index.js.map +1 -1
  168. package/build/components/block-title/use-block-display-title.js.map +1 -1
  169. package/build/components/block-toolbar/block-name-context.js.map +1 -1
  170. package/build/components/block-toolbar/block-toolbar-last-item.js.map +1 -1
  171. package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  172. package/build/components/block-toolbar/index.js +5 -4
  173. package/build/components/block-toolbar/index.js.map +1 -1
  174. package/build/components/block-toolbar/index.native.js.map +1 -1
  175. package/build/components/block-toolbar/shuffle.js +18 -9
  176. package/build/components/block-toolbar/shuffle.js.map +1 -1
  177. package/build/components/block-toolbar/use-has-block-toolbar.js +6 -3
  178. package/build/components/block-toolbar/use-has-block-toolbar.js.map +1 -1
  179. package/build/components/block-toolbar/utils.js.map +1 -1
  180. package/build/components/block-tools/block-selection-button.js +56 -12
  181. package/build/components/block-tools/block-selection-button.js.map +1 -1
  182. package/build/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
  183. package/build/components/block-tools/block-toolbar-popover.js.map +1 -1
  184. package/build/components/block-tools/empty-block-inserter.js.map +1 -1
  185. package/build/components/block-tools/index.js +15 -3
  186. package/build/components/block-tools/index.js.map +1 -1
  187. package/build/components/block-tools/insertion-point.js.map +1 -1
  188. package/build/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  189. package/build/components/block-tools/use-selected-block-tool-props.js.map +1 -1
  190. package/build/components/block-tools/use-show-block-tools.js +7 -13
  191. package/build/components/block-tools/use-show-block-tools.js.map +1 -1
  192. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  193. package/build/components/block-types-list/index.js.map +1 -1
  194. package/build/components/block-types-list/index.native.js.map +1 -1
  195. package/build/components/block-variation-picker/index.js.map +1 -1
  196. package/build/components/block-variation-picker/index.native.js.map +1 -1
  197. package/build/components/block-variation-transforms/index.js +4 -1
  198. package/build/components/block-variation-transforms/index.js.map +1 -1
  199. package/build/components/block-vertical-alignment-control/icons.js.map +1 -1
  200. package/build/components/block-vertical-alignment-control/index.js.map +1 -1
  201. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  202. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  203. package/build/components/border-radius-control/index.js.map +1 -1
  204. package/build/components/border-radius-control/input-controls.js.map +1 -1
  205. package/build/components/border-radius-control/linked-button.js.map +1 -1
  206. package/build/components/border-radius-control/utils.js.map +1 -1
  207. package/build/components/button-block-appender/index.js.map +1 -1
  208. package/build/components/button-block-appender/index.native.js +11 -1
  209. package/build/components/button-block-appender/index.native.js.map +1 -1
  210. package/build/components/caption/index.native.js.map +1 -1
  211. package/build/components/child-layout-control/index.js.map +1 -1
  212. package/build/components/color-palette/control.js.map +1 -1
  213. package/build/components/color-palette/index.js.map +1 -1
  214. package/build/components/color-palette/with-color-context.js.map +1 -1
  215. package/build/components/color-style-selector/index.js.map +1 -1
  216. package/build/components/colors/index.js +1 -1
  217. package/build/components/colors/index.js.map +1 -1
  218. package/build/components/colors/utils.js.map +1 -1
  219. package/build/components/colors/with-colors.js.map +1 -1
  220. package/build/components/colors-gradients/control.js.map +1 -1
  221. package/build/components/colors-gradients/dropdown.js.map +1 -1
  222. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  223. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  224. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  225. package/build/components/contrast-checker/index.js.map +1 -1
  226. package/build/components/contrast-checker/index.native.js.map +1 -1
  227. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  228. package/build/components/convert-to-group-buttons/index.native.js.map +1 -1
  229. package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
  230. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  231. package/build/components/copy-handler/index.js.map +1 -1
  232. package/build/components/date-format-picker/index.js.map +1 -1
  233. package/build/components/default-block-appender/index.js.map +1 -1
  234. package/build/components/default-block-appender/index.native.js.map +1 -1
  235. package/build/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
  236. package/build/components/dimensions-tool/index.js.map +1 -1
  237. package/build/components/dimensions-tool/scale-tool.js.map +1 -1
  238. package/build/components/dimensions-tool/width-height-tool.js +6 -2
  239. package/build/components/dimensions-tool/width-height-tool.js.map +1 -1
  240. package/build/components/duotone/utils.js.map +1 -1
  241. package/build/components/duotone-control/index.js.map +1 -1
  242. package/build/components/editable-text/index.js.map +1 -1
  243. package/build/components/editor-styles/index.js +2 -1
  244. package/build/components/editor-styles/index.js.map +1 -1
  245. package/build/components/floating-toolbar/index.native.js.map +1 -1
  246. package/build/components/floating-toolbar/nav-up-icon.js.map +1 -1
  247. package/build/components/font-appearance-control/index.js.map +1 -1
  248. package/build/components/font-family/index.js.map +1 -1
  249. package/build/components/font-sizes/fluid-utils.js.map +1 -1
  250. package/build/components/font-sizes/font-size-picker.js.map +1 -1
  251. package/build/components/font-sizes/index.js.map +1 -1
  252. package/build/components/font-sizes/index.native.js.map +1 -1
  253. package/build/components/font-sizes/utils.js.map +1 -1
  254. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  255. package/build/components/global-styles/advanced-panel.js +9 -2
  256. package/build/components/global-styles/advanced-panel.js.map +1 -1
  257. package/build/components/global-styles/background-panel.js +447 -0
  258. package/build/components/global-styles/background-panel.js.map +1 -0
  259. package/build/components/global-styles/border-panel.js.map +1 -1
  260. package/build/components/global-styles/color-panel.js +2 -1
  261. package/build/components/global-styles/color-panel.js.map +1 -1
  262. package/build/components/global-styles/color-panel.native.js.map +1 -1
  263. package/build/components/global-styles/context.js.map +1 -1
  264. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  265. package/build/components/global-styles/filters-panel.js.map +1 -1
  266. package/build/components/global-styles/get-block-css-selector.js.map +1 -1
  267. package/build/components/global-styles/get-global-styles-changes.js +3 -0
  268. package/build/components/global-styles/get-global-styles-changes.js.map +1 -1
  269. package/build/components/global-styles/hooks.js +1 -1
  270. package/build/components/global-styles/hooks.js.map +1 -1
  271. package/build/components/global-styles/image-settings-panel.js.map +1 -1
  272. package/build/components/global-styles/index.js +14 -1
  273. package/build/components/global-styles/index.js.map +1 -1
  274. package/build/components/global-styles/shadow-panel-components.js.map +1 -1
  275. package/build/components/global-styles/typography-panel.js.map +1 -1
  276. package/build/components/global-styles/typography-utils.js.map +1 -1
  277. package/build/components/global-styles/use-global-styles-output.js +19 -18
  278. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  279. package/build/components/global-styles/utils.js +2 -1
  280. package/build/components/global-styles/utils.js.map +1 -1
  281. package/build/components/gradients/index.js.map +1 -1
  282. package/build/components/gradients/index.native.js.map +1 -1
  283. package/build/components/gradients/use-gradient.js.map +1 -1
  284. package/build/components/gradients/with-gradient.js.map +1 -1
  285. package/build/components/grid-visualizer/grid-item-resizer.js.map +1 -1
  286. package/build/components/grid-visualizer/grid-visualizer.js.map +1 -1
  287. package/build/components/grid-visualizer/index.js.map +1 -1
  288. package/build/components/grid-visualizer/utils.js.map +1 -1
  289. package/build/components/height-control/index.js.map +1 -1
  290. package/build/components/iframe/get-compatibility-styles.js.map +1 -1
  291. package/build/components/iframe/index.js +14 -10
  292. package/build/components/iframe/index.js.map +1 -1
  293. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  294. package/build/components/image-editor/constants.js.map +1 -1
  295. package/build/components/image-editor/context.js.map +1 -1
  296. package/build/components/image-editor/cropper.js +6 -2
  297. package/build/components/image-editor/cropper.js.map +1 -1
  298. package/build/components/image-editor/form-controls.js.map +1 -1
  299. package/build/components/image-editor/index.js +0 -2
  300. package/build/components/image-editor/index.js.map +1 -1
  301. package/build/components/image-editor/rotation-button.js.map +1 -1
  302. package/build/components/image-editor/use-save-image.js.map +1 -1
  303. package/build/components/image-editor/use-transform-image.js.map +1 -1
  304. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  305. package/build/components/image-link-destinations/index.native.js.map +1 -1
  306. package/build/components/image-size-control/index.js.map +1 -1
  307. package/build/components/image-size-control/use-dimension-handler.js.map +1 -1
  308. package/build/components/index.js +1 -1
  309. package/build/components/index.js.map +1 -1
  310. package/build/components/index.native.js +1 -1
  311. package/build/components/index.native.js.map +1 -1
  312. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  313. package/build/components/inner-blocks/constants.native.js.map +1 -1
  314. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  315. package/build/components/inner-blocks/index.js.map +1 -1
  316. package/build/components/inner-blocks/index.native.js.map +1 -1
  317. package/build/components/inner-blocks/use-block-context.js.map +1 -1
  318. package/build/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  319. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  320. package/build/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  321. package/build/components/inner-blocks/with-client-id.js.map +1 -1
  322. package/build/components/inserter/block-patterns-explorer/index.js.map +1 -1
  323. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  324. package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  325. package/build/components/inserter/block-patterns-tab/index.js +31 -18
  326. package/build/components/inserter/block-patterns-tab/index.js.map +1 -1
  327. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +2 -19
  328. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -1
  329. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +1 -3
  330. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  331. package/build/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  332. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  333. package/build/components/inserter/block-patterns-tab/utils.js.map +1 -1
  334. package/build/components/inserter/block-types-tab.js.map +1 -1
  335. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  336. package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  337. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  338. package/build/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  339. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  340. package/build/components/inserter/hooks/use-patterns-paging.js.map +1 -1
  341. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  342. package/build/components/inserter/index.js.map +1 -1
  343. package/build/components/inserter/index.native.js.map +1 -1
  344. package/build/components/inserter/library.js +2 -0
  345. package/build/components/inserter/library.js.map +1 -1
  346. package/build/components/inserter/media-tab/hooks.js.map +1 -1
  347. package/build/components/inserter/media-tab/index.js.map +1 -1
  348. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  349. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  350. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  351. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  352. package/build/components/inserter/media-tab/utils.js.map +1 -1
  353. package/build/components/inserter/menu.js +25 -13
  354. package/build/components/inserter/menu.js.map +1 -1
  355. package/build/components/inserter/menu.native.js.map +1 -1
  356. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  357. package/build/components/inserter/no-results.js.map +1 -1
  358. package/build/components/inserter/no-results.native.js.map +1 -1
  359. package/build/components/inserter/panel.js.map +1 -1
  360. package/build/components/inserter/preview-panel.js.map +1 -1
  361. package/build/components/inserter/quick-inserter.js.map +1 -1
  362. package/build/components/inserter/reusable-block-rename-hint.js.map +1 -1
  363. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  364. package/build/components/inserter/search-items.js +36 -15
  365. package/build/components/inserter/search-items.js.map +1 -1
  366. package/build/components/inserter/search-results.js.map +1 -1
  367. package/build/components/inserter/search-results.native.js.map +1 -1
  368. package/build/components/inserter/tabs.js +7 -3
  369. package/build/components/inserter/tabs.js.map +1 -1
  370. package/build/components/inserter/tabs.native.js.map +1 -1
  371. package/build/components/inserter/tips.js.map +1 -1
  372. package/build/components/inserter/utils.native.js.map +1 -1
  373. package/build/components/inserter-button/index.native.js.map +1 -1
  374. package/build/components/inserter-button/sparkles.js.map +1 -1
  375. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  376. package/build/components/inserter-list-item/index.js.map +1 -1
  377. package/build/components/inserter-listbox/context.js.map +1 -1
  378. package/build/components/inserter-listbox/group.js.map +1 -1
  379. package/build/components/inserter-listbox/index.js.map +1 -1
  380. package/build/components/inserter-listbox/item.js.map +1 -1
  381. package/build/components/inserter-listbox/row.js.map +1 -1
  382. package/build/components/inserter-menu-extension/index.js.map +1 -1
  383. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  384. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  385. package/build/components/inspector-controls/fill.js.map +1 -1
  386. package/build/components/inspector-controls/fill.native.js.map +1 -1
  387. package/build/components/inspector-controls/groups.js.map +1 -1
  388. package/build/components/inspector-controls/index.js.map +1 -1
  389. package/build/components/inspector-controls/slot.js.map +1 -1
  390. package/build/components/inspector-controls/slot.native.js.map +1 -1
  391. package/build/components/inspector-controls-tabs/advanced-controls-panel.js +1 -1
  392. package/build/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  393. package/build/components/inspector-controls-tabs/advanced-controls-panel.native.js.map +1 -1
  394. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  395. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  396. package/build/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  397. package/build/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  398. package/build/components/inspector-controls-tabs/styles-tab.js +1 -1
  399. package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  400. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  401. package/build/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js.map +1 -1
  402. package/build/components/inspector-controls-tabs/utils.js.map +1 -1
  403. package/build/components/inspector-popover-header/index.js.map +1 -1
  404. package/build/components/justify-content-control/index.js.map +1 -1
  405. package/build/components/justify-content-control/ui.js.map +1 -1
  406. package/build/components/keyboard-shortcuts/index.js +11 -0
  407. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  408. package/build/components/letter-spacing-control/index.js.map +1 -1
  409. package/build/components/line-height-control/index.js.map +1 -1
  410. package/build/components/line-height-control/index.native.js.map +1 -1
  411. package/build/components/line-height-control/utils.js.map +1 -1
  412. package/build/components/link-control/constants.js.map +1 -1
  413. package/build/components/link-control/index.js.map +1 -1
  414. package/build/components/link-control/is-url-like.js.map +1 -1
  415. package/build/components/link-control/link-preview.js.map +1 -1
  416. package/build/components/link-control/search-create-button.js.map +1 -1
  417. package/build/components/link-control/search-input.js.map +1 -1
  418. package/build/components/link-control/search-item.js.map +1 -1
  419. package/build/components/link-control/search-results.js.map +1 -1
  420. package/build/components/link-control/settings-drawer.js.map +1 -1
  421. package/build/components/link-control/settings.js.map +1 -1
  422. package/build/components/link-control/use-create-page.js.map +1 -1
  423. package/build/components/link-control/use-internal-value.js.map +1 -1
  424. package/build/components/link-control/use-rich-url-data.js.map +1 -1
  425. package/build/components/link-control/use-search-handler.js.map +1 -1
  426. package/build/components/link-control/viewer-slot.js.map +1 -1
  427. package/build/components/list-view/appender.js.map +1 -1
  428. package/build/components/list-view/aria-referenced-text.js.map +1 -1
  429. package/build/components/list-view/block-contents.js.map +1 -1
  430. package/build/components/list-view/block-select-button.js +45 -1
  431. package/build/components/list-view/block-select-button.js.map +1 -1
  432. package/build/components/list-view/block.js +1 -1
  433. package/build/components/list-view/block.js.map +1 -1
  434. package/build/components/list-view/branch.js.map +1 -1
  435. package/build/components/list-view/context.js.map +1 -1
  436. package/build/components/list-view/drop-indicator.js.map +1 -1
  437. package/build/components/list-view/expander.js.map +1 -1
  438. package/build/components/list-view/index.js +17 -2
  439. package/build/components/list-view/index.js.map +1 -1
  440. package/build/components/list-view/leaf.js.map +1 -1
  441. package/build/components/list-view/use-block-selection.js.map +1 -1
  442. package/build/components/list-view/use-clipboard-handler.js.map +1 -1
  443. package/build/components/list-view/use-list-view-block-indexes.js.map +1 -1
  444. package/build/components/list-view/use-list-view-client-ids.js.map +1 -1
  445. package/build/components/list-view/use-list-view-collapse-items.js +47 -0
  446. package/build/components/list-view/use-list-view-collapse-items.js.map +1 -0
  447. package/build/components/list-view/use-list-view-drop-zone.js +5 -0
  448. package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
  449. package/build/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  450. package/build/components/list-view/use-list-view-images.js.map +1 -1
  451. package/build/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  452. package/build/components/list-view/utils.js.map +1 -1
  453. package/build/components/media-placeholder/index.js.map +1 -1
  454. package/build/components/media-placeholder/index.native.js.map +1 -1
  455. package/build/components/media-replace-flow/index.js.map +1 -1
  456. package/build/components/media-replace-flow/index.native.js.map +1 -1
  457. package/build/components/media-upload/check.js.map +1 -1
  458. package/build/components/media-upload/constants.native.js.map +1 -1
  459. package/build/components/media-upload/index.js.map +1 -1
  460. package/build/components/media-upload/index.native.js.map +1 -1
  461. package/build/components/media-upload-progress/constants.js.map +1 -1
  462. package/build/components/media-upload-progress/index.native.js.map +1 -1
  463. package/build/components/multi-selection-inspector/index.js.map +1 -1
  464. package/build/components/navigable-toolbar/index.js.map +1 -1
  465. package/build/components/observe-typing/index.js.map +1 -1
  466. package/build/components/panel-color-settings/index.js.map +1 -1
  467. package/build/components/plain-text/index.js.map +1 -1
  468. package/build/components/plain-text/index.native.js.map +1 -1
  469. package/build/components/preview-options/index.js.map +1 -1
  470. package/build/components/provider/block-refs-provider.js.map +1 -1
  471. package/build/components/provider/index.js.map +1 -1
  472. package/build/components/provider/index.native.js.map +1 -1
  473. package/build/components/provider/use-block-sync.js.map +1 -1
  474. package/build/components/provider/with-registry-provider.js.map +1 -1
  475. package/build/components/publish-date-time-picker/index.js.map +1 -1
  476. package/build/components/recursion-provider/index.js +2 -2
  477. package/build/components/recursion-provider/index.js.map +1 -1
  478. package/build/components/resizable-box-popover/index.js.map +1 -1
  479. package/build/components/resolution-tool/index.js.map +1 -1
  480. package/build/components/responsive-block-control/index.js.map +1 -1
  481. package/build/components/responsive-block-control/label.js.map +1 -1
  482. package/build/components/rich-text/content.js +26 -19
  483. package/build/components/rich-text/content.js.map +1 -1
  484. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  485. package/build/components/rich-text/file-paste-handler.native.js.map +1 -1
  486. package/build/components/rich-text/format-edit.js.map +1 -1
  487. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  488. package/build/components/rich-text/format-toolbar/index.native.js.map +1 -1
  489. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  490. package/build/components/rich-text/format-toolbar-container.native.js.map +1 -1
  491. package/build/components/rich-text/get-rich-text-values.js.map +1 -1
  492. package/build/components/rich-text/index.js +54 -11
  493. package/build/components/rich-text/index.js.map +1 -1
  494. package/build/components/rich-text/index.native.js +20 -12
  495. package/build/components/rich-text/index.native.js.map +1 -1
  496. package/build/components/rich-text/input-event.js.map +1 -1
  497. package/build/components/rich-text/input-event.native.js.map +1 -1
  498. package/build/components/rich-text/multiline.js.map +1 -1
  499. package/build/components/rich-text/native/format-edit.js.map +1 -1
  500. package/build/components/rich-text/native/get-format-colors.native.js +1 -1
  501. package/build/components/rich-text/native/get-format-colors.native.js.map +1 -1
  502. package/build/components/rich-text/native/index.js.map +1 -1
  503. package/build/components/rich-text/native/index.native.js +2 -2
  504. package/build/components/rich-text/native/index.native.js.map +1 -1
  505. package/build/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  506. package/build/components/rich-text/native/use-format-types.js.map +1 -1
  507. package/build/components/rich-text/prevent-event-discovery.js.map +1 -1
  508. package/build/components/rich-text/remove-browser-shortcuts.native.js.map +1 -1
  509. package/build/components/rich-text/shortcut.js.map +1 -1
  510. package/build/components/rich-text/shortcut.native.js.map +1 -1
  511. package/build/components/rich-text/split-value.js.map +1 -1
  512. package/build/components/rich-text/toolbar-button.js.map +1 -1
  513. package/build/components/rich-text/use-before-input-rules.js.map +1 -1
  514. package/build/components/rich-text/use-delete.js.map +1 -1
  515. package/build/components/rich-text/use-enter.js.map +1 -1
  516. package/build/components/rich-text/use-firefox-compat.js.map +1 -1
  517. package/build/components/rich-text/use-format-types.js.map +1 -1
  518. package/build/components/rich-text/use-input-events.js.map +1 -1
  519. package/build/components/rich-text/use-input-rules.js.map +1 -1
  520. package/build/components/rich-text/use-insert-replacement-text.js.map +1 -1
  521. package/build/components/rich-text/use-mark-persistent.js.map +1 -1
  522. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  523. package/build/components/rich-text/use-remove-browser-shortcuts.js.map +1 -1
  524. package/build/components/rich-text/use-shortcuts.js.map +1 -1
  525. package/build/components/rich-text/use-undo-automatic-change.js +1 -1
  526. package/build/components/rich-text/use-undo-automatic-change.js.map +1 -1
  527. package/build/components/rich-text/utils.js.map +1 -1
  528. package/build/components/rich-text/with-deprecations.js +0 -3
  529. package/build/components/rich-text/with-deprecations.js.map +1 -1
  530. package/build/components/selection-scroll-into-view/index.js.map +1 -1
  531. package/build/components/skip-to-selected-block/index.js.map +1 -1
  532. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  533. package/build/components/spacing-sizes-control/index.js.map +1 -1
  534. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  535. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  536. package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  537. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  538. package/build/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  539. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  540. package/build/components/text-decoration-control/index.js.map +1 -1
  541. package/build/components/text-transform-control/index.js.map +1 -1
  542. package/build/components/tool-selector/index.js.map +1 -1
  543. package/build/components/typewriter/index.js.map +1 -1
  544. package/build/components/ungroup-button/index.native.js.map +1 -1
  545. package/build/components/unit-control/index.js.map +1 -1
  546. package/build/components/unsupported-block-details/index.native.js.map +1 -1
  547. package/build/components/url-input/button.js.map +1 -1
  548. package/build/components/url-input/index.js.map +1 -1
  549. package/build/components/url-input/index.native.js.map +1 -1
  550. package/build/components/url-popover/image-url-input-ui.js +50 -36
  551. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  552. package/build/components/url-popover/index.js.map +1 -1
  553. package/build/components/url-popover/link-editor.js.map +1 -1
  554. package/build/components/url-popover/link-viewer-url.js.map +1 -1
  555. package/build/components/url-popover/link-viewer.js.map +1 -1
  556. package/build/components/use-block-commands/index.js +20 -2
  557. package/build/components/use-block-commands/index.js.map +1 -1
  558. package/build/components/use-block-display-information/index.js +4 -6
  559. package/build/components/use-block-display-information/index.js.map +1 -1
  560. package/build/components/use-block-drop-zone/index.js.map +1 -1
  561. package/build/components/use-block-drop-zone/index.native.js.map +1 -1
  562. package/build/components/use-flash-editable-blocks/index.js.map +1 -1
  563. package/build/components/use-moving-animation/index.js.map +1 -1
  564. package/build/components/use-on-block-drop/index.js.map +1 -1
  565. package/build/components/use-on-block-drop/index.native.js.map +1 -1
  566. package/build/components/use-on-block-drop/types.js.map +1 -1
  567. package/build/components/use-paste-styles/index.js +1 -0
  568. package/build/components/use-paste-styles/index.js.map +1 -1
  569. package/build/components/use-resize-canvas/index.js.map +1 -1
  570. package/build/components/use-settings/index.js.map +1 -1
  571. package/build/components/use-unsupported-block-editor/index.native.js.map +1 -1
  572. package/build/components/video-player/gridicon-play.native.js.map +1 -1
  573. package/build/components/video-player/index.native.js.map +1 -1
  574. package/build/components/warning/index.js.map +1 -1
  575. package/build/components/warning/index.native.js.map +1 -1
  576. package/build/components/writing-flow/index.js.map +1 -1
  577. package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
  578. package/build/components/writing-flow/use-click-selection.js.map +1 -1
  579. package/build/components/writing-flow/use-clipboard-handler.js.map +1 -1
  580. package/build/components/writing-flow/use-drag-selection.js.map +1 -1
  581. package/build/components/writing-flow/use-input.js.map +1 -1
  582. package/build/components/writing-flow/use-multi-selection.js.map +1 -1
  583. package/build/components/writing-flow/use-select-all.js.map +1 -1
  584. package/build/components/writing-flow/use-selection-observer.js.map +1 -1
  585. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  586. package/build/components/writing-flow/utils.js.map +1 -1
  587. package/build/components/writing-mode-control/index.js.map +1 -1
  588. package/build/elements/index.js.map +1 -1
  589. package/build/hooks/align.js.map +1 -1
  590. package/build/hooks/align.native.js +1 -1
  591. package/build/hooks/align.native.js.map +1 -1
  592. package/build/hooks/anchor.js +2 -2
  593. package/build/hooks/anchor.js.map +1 -1
  594. package/build/hooks/aria-label.js.map +1 -1
  595. package/build/hooks/background.js +70 -424
  596. package/build/hooks/background.js.map +1 -1
  597. package/build/hooks/block-hooks.js.map +1 -1
  598. package/build/hooks/block-renaming.js +0 -37
  599. package/build/hooks/block-renaming.js.map +1 -1
  600. package/build/hooks/border.js.map +1 -1
  601. package/build/hooks/color.js +1 -1
  602. package/build/hooks/color.js.map +1 -1
  603. package/build/hooks/compat.js.map +1 -1
  604. package/build/hooks/content-lock-ui.js +5 -5
  605. package/build/hooks/content-lock-ui.js.map +1 -1
  606. package/build/hooks/contrast-checker.js.map +1 -1
  607. package/build/hooks/custom-class-name.js.map +1 -1
  608. package/build/hooks/custom-class-name.native.js.map +1 -1
  609. package/build/hooks/dimensions.js.map +1 -1
  610. package/build/hooks/duotone.js.map +1 -1
  611. package/build/hooks/font-family.js.map +1 -1
  612. package/build/hooks/font-size.js.map +1 -1
  613. package/build/hooks/gap.js.map +1 -1
  614. package/build/hooks/generated-class-name.js.map +1 -1
  615. package/build/hooks/index.js +13 -5
  616. package/build/hooks/index.js.map +1 -1
  617. package/build/hooks/index.native.js.map +1 -1
  618. package/build/hooks/layout-child.js.map +1 -1
  619. package/build/hooks/layout.js +38 -19
  620. package/build/hooks/layout.js.map +1 -1
  621. package/build/hooks/layout.native.js.map +1 -1
  622. package/build/hooks/line-height.js.map +1 -1
  623. package/build/hooks/lock.js.map +1 -1
  624. package/build/hooks/metadata.js.map +1 -1
  625. package/build/hooks/position.js.map +1 -1
  626. package/build/hooks/settings.js.map +1 -1
  627. package/build/hooks/spacing-visualizer.js.map +1 -1
  628. package/build/hooks/style.js.map +1 -1
  629. package/build/hooks/supports.js +27 -4
  630. package/build/hooks/supports.js.map +1 -1
  631. package/build/hooks/text-align.js +156 -0
  632. package/build/hooks/text-align.js.map +1 -0
  633. package/build/hooks/typography.js +3 -2
  634. package/build/hooks/typography.js.map +1 -1
  635. package/build/hooks/typography.native.js.map +1 -1
  636. package/build/hooks/use-bindings-attributes.js +66 -129
  637. package/build/hooks/use-bindings-attributes.js.map +1 -1
  638. package/build/hooks/use-border-props.js.map +1 -1
  639. package/build/hooks/use-cached-truthy.js.map +1 -1
  640. package/build/hooks/use-color-props.js.map +1 -1
  641. package/build/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  642. package/build/hooks/use-shadow-props.js.map +1 -1
  643. package/build/hooks/use-spacing-props.js.map +1 -1
  644. package/build/hooks/use-typography-props.js +2 -1
  645. package/build/hooks/use-typography-props.js.map +1 -1
  646. package/build/hooks/use-zoom-out.js +54 -0
  647. package/build/hooks/use-zoom-out.js.map +1 -0
  648. package/build/hooks/utils.js +29 -5
  649. package/build/hooks/utils.js.map +1 -1
  650. package/build/index.js +7 -0
  651. package/build/index.js.map +1 -1
  652. package/build/index.native.js.map +1 -1
  653. package/build/layouts/constrained.js.map +1 -1
  654. package/build/layouts/definitions.js +8 -6
  655. package/build/layouts/definitions.js.map +1 -1
  656. package/build/layouts/flex.js.map +1 -1
  657. package/build/layouts/flow.js.map +1 -1
  658. package/build/layouts/grid.js +52 -9
  659. package/build/layouts/grid.js.map +1 -1
  660. package/build/layouts/index.js.map +1 -1
  661. package/build/layouts/utils.js.map +1 -1
  662. package/build/lock-unlock.js.map +1 -1
  663. package/build/private-apis.js +7 -2
  664. package/build/private-apis.js.map +1 -1
  665. package/build/private-apis.native.js +4 -2
  666. package/build/private-apis.native.js.map +1 -1
  667. package/build/store/actions.js +18 -4
  668. package/build/store/actions.js.map +1 -1
  669. package/build/store/array.js.map +1 -1
  670. package/build/store/constants.js.map +1 -1
  671. package/build/store/defaults.js.map +1 -1
  672. package/build/store/defaults.native.js.map +1 -1
  673. package/build/store/get-block-settings.js.map +1 -1
  674. package/build/store/index.js +1 -1
  675. package/build/store/index.js.map +1 -1
  676. package/build/store/private-actions.js +18 -2
  677. package/build/store/private-actions.js.map +1 -1
  678. package/build/store/private-keys.js +2 -1
  679. package/build/store/private-keys.js.map +1 -1
  680. package/build/store/private-selectors.js +113 -36
  681. package/build/store/private-selectors.js.map +1 -1
  682. package/build/store/reducer.js +22 -0
  683. package/build/store/reducer.js.map +1 -1
  684. package/build/store/selectors.js +152 -109
  685. package/build/store/selectors.js.map +1 -1
  686. package/build/store/undo-ignore.js.map +1 -1
  687. package/build/store/utils.js +7 -1
  688. package/build/store/utils.js.map +1 -1
  689. package/build/utils/dom.js.map +1 -1
  690. package/build/utils/get-px-from-css-unit.js.map +1 -1
  691. package/build/utils/index.js.map +1 -1
  692. package/build/utils/math.js.map +1 -1
  693. package/build/utils/object.js.map +1 -1
  694. package/build/utils/order-inserter-block-items.js.map +1 -1
  695. package/build/utils/pasting.js.map +1 -1
  696. package/build/utils/selection.js.map +1 -1
  697. package/build/utils/sorting.js.map +1 -1
  698. package/build/utils/transform-styles/index.js +3 -2
  699. package/build/utils/transform-styles/index.js.map +1 -1
  700. package/build/utils/use-notify-copy.js.map +1 -1
  701. package/build-module/autocompleters/block.js.map +1 -1
  702. package/build-module/autocompleters/link.js.map +1 -1
  703. package/build-module/components/alignment-control/index.js.map +1 -1
  704. package/build-module/components/alignment-control/ui.js.map +1 -1
  705. package/build-module/components/autocomplete/index.js.map +1 -1
  706. package/build-module/components/block-actions/index.js.map +1 -1
  707. package/build-module/components/block-alignment-control/constants.js.map +1 -1
  708. package/build-module/components/block-alignment-control/index.js.map +1 -1
  709. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  710. package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
  711. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  712. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  713. package/build-module/components/block-bindings-toolbar-indicator/index.js.map +1 -1
  714. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  715. package/build-module/components/block-canvas/index.js.map +1 -1
  716. package/build-module/components/block-caption/index.native.js.map +1 -1
  717. package/build-module/components/block-card/index.js.map +1 -1
  718. package/build-module/components/block-compare/block-view.js.map +1 -1
  719. package/build-module/components/block-compare/index.js.map +1 -1
  720. package/build-module/components/block-content-overlay/index.js.map +1 -1
  721. package/build-module/components/block-context/index.js.map +1 -1
  722. package/build-module/components/block-controls/fill.js.map +1 -1
  723. package/build-module/components/block-controls/groups.js.map +1 -1
  724. package/build-module/components/block-controls/hook.js.map +1 -1
  725. package/build-module/components/block-controls/index.js.map +1 -1
  726. package/build-module/components/block-controls/slot.js.map +1 -1
  727. package/build-module/components/block-controls/slot.native.js.map +1 -1
  728. package/build-module/components/block-controls/use-has-block-controls.js.map +1 -1
  729. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  730. package/build-module/components/block-draggable/draggable-chip.native.js.map +1 -1
  731. package/build-module/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  732. package/build-module/components/block-draggable/index.js.map +1 -1
  733. package/build-module/components/block-draggable/index.native.js.map +1 -1
  734. package/build-module/components/block-draggable/use-scroll-when-dragging.js.map +1 -1
  735. package/build-module/components/block-draggable/use-scroll-when-dragging.native.js.map +1 -1
  736. package/build-module/components/block-edit/context.js +1 -0
  737. package/build-module/components/block-edit/context.js.map +1 -1
  738. package/build-module/components/block-edit/edit.js.map +1 -1
  739. package/build-module/components/block-edit/edit.native.js.map +1 -1
  740. package/build-module/components/block-edit/index.js +5 -3
  741. package/build-module/components/block-edit/index.js.map +1 -1
  742. package/build-module/components/block-edit-visually-button/index.js.map +1 -1
  743. package/build-module/components/block-editing-mode/index.js.map +1 -1
  744. package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
  745. package/build-module/components/block-heading-level-dropdown/heading-level-icon.js.map +1 -1
  746. package/build-module/components/block-heading-level-dropdown/index.js.map +1 -1
  747. package/build-module/components/block-heading-level-dropdown/index.native.js.map +1 -1
  748. package/build-module/components/block-icon/index.js.map +1 -1
  749. package/build-module/components/block-icon/index.native.js.map +1 -1
  750. package/build-module/components/block-info-slot-fill/index.js.map +1 -1
  751. package/build-module/components/block-inspector/index.js +5 -4
  752. package/build-module/components/block-inspector/index.js.map +1 -1
  753. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  754. package/build-module/components/block-list/block-crash-boundary.js.map +1 -1
  755. package/build-module/components/block-list/block-crash-boundary.native.js.map +1 -1
  756. package/build-module/components/block-list/block-crash-warning.js.map +1 -1
  757. package/build-module/components/block-list/block-crash-warning.native.js.map +1 -1
  758. package/build-module/components/block-list/block-html.js.map +1 -1
  759. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  760. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  761. package/build-module/components/block-list/block-list-context.native.js.map +1 -1
  762. package/build-module/components/block-list/block-list-item-cell.native.js.map +1 -1
  763. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  764. package/build-module/components/block-list/block-outline.native.js.map +1 -1
  765. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  766. package/build-module/components/block-list/block.js +55 -29
  767. package/build-module/components/block-list/block.js.map +1 -1
  768. package/build-module/components/block-list/block.native.js +2 -2
  769. package/build-module/components/block-list/block.native.js.map +1 -1
  770. package/build-module/components/block-list/grid-item.native.js.map +1 -1
  771. package/build-module/components/block-list/index.js +16 -5
  772. package/build-module/components/block-list/index.js.map +1 -1
  773. package/build-module/components/block-list/index.native.js.map +1 -1
  774. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  775. package/build-module/components/block-list/layout.js.map +1 -1
  776. package/build-module/components/block-list/private-block-context.js.map +1 -1
  777. package/build-module/components/block-list/subdirectory-icon.js.map +1 -1
  778. package/build-module/components/block-list/use-block-props/index.js +2 -1
  779. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  780. package/build-module/components/block-list/use-block-props/index.native.js.map +1 -1
  781. package/build-module/components/block-list/use-block-props/use-block-moving-mode-class-names.js.map +1 -1
  782. package/build-module/components/block-list/use-block-props/use-block-refs.js.map +1 -1
  783. package/build-module/components/block-list/use-block-props/use-focus-first-element.js +3 -2
  784. package/build-module/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  785. package/build-module/components/block-list/use-block-props/use-focus-handler.js.map +1 -1
  786. package/build-module/components/block-list/use-block-props/use-intersection-observer.js.map +1 -1
  787. package/build-module/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  788. package/build-module/components/block-list/use-block-props/use-nav-mode-exit.js.map +1 -1
  789. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  790. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  791. package/build-module/components/block-list/use-scroll-upon-insertion.native.js.map +1 -1
  792. package/build-module/components/block-list-appender/index.js.map +1 -1
  793. package/build-module/components/block-list-appender/index.native.js.map +1 -1
  794. package/build-module/components/block-lock/index.js.map +1 -1
  795. package/build-module/components/block-lock/menu-item.js.map +1 -1
  796. package/build-module/components/block-lock/modal.js.map +1 -1
  797. package/build-module/components/block-lock/toolbar.js.map +1 -1
  798. package/build-module/components/block-lock/use-block-lock.js.map +1 -1
  799. package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
  800. package/build-module/components/block-mover/button.js +4 -1
  801. package/build-module/components/block-mover/button.js.map +1 -1
  802. package/build-module/components/block-mover/index.js +5 -1
  803. package/build-module/components/block-mover/index.js.map +1 -1
  804. package/build-module/components/block-mover/index.native.js.map +1 -1
  805. package/build-module/components/block-mover/mover-description.js.map +1 -1
  806. package/build-module/components/block-mover/mover-description.native.js.map +1 -1
  807. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  808. package/build-module/components/block-parent-selector/index.js.map +1 -1
  809. package/build-module/components/block-pattern-setup/constants.js.map +1 -1
  810. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  811. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  812. package/build-module/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  813. package/build-module/components/block-patterns-list/index.js +4 -1
  814. package/build-module/components/block-patterns-list/index.js.map +1 -1
  815. package/build-module/components/block-patterns-paging/index.js +8 -4
  816. package/build-module/components/block-patterns-paging/index.js.map +1 -1
  817. package/build-module/components/block-popover/cover.js.map +1 -1
  818. package/build-module/components/block-popover/drop-zone.js.map +1 -1
  819. package/build-module/components/block-popover/inbetween.js.map +1 -1
  820. package/build-module/components/block-popover/index.js.map +1 -1
  821. package/build-module/components/block-popover/use-popover-scroll.js.map +1 -1
  822. package/build-module/components/block-preview/auto.js.map +1 -1
  823. package/build-module/components/block-preview/index.js.map +1 -1
  824. package/build-module/components/block-quick-navigation/index.js.map +1 -1
  825. package/build-module/components/block-removal-warning-modal/index.js.map +1 -1
  826. package/build-module/components/block-rename/index.js.map +1 -1
  827. package/build-module/components/block-rename/is-empty-string.js.map +1 -1
  828. package/build-module/components/block-rename/modal.js +14 -10
  829. package/build-module/components/block-rename/modal.js.map +1 -1
  830. package/build-module/components/block-rename/rename-control.js +3 -1
  831. package/build-module/components/block-rename/rename-control.js.map +1 -1
  832. package/build-module/components/block-rename/use-block-rename.js.map +1 -1
  833. package/build-module/components/block-selection-clearer/index.js.map +1 -1
  834. package/build-module/components/block-settings/button.native.js.map +1 -1
  835. package/build-module/components/block-settings/container.native.js.map +1 -1
  836. package/build-module/components/block-settings/index.native.js.map +1 -1
  837. package/build-module/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  838. package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  839. package/build-module/components/block-settings-menu/block-parent-selector-menu-item.js.map +1 -1
  840. package/build-module/components/block-settings-menu/block-settings-dropdown.js +7 -3
  841. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  842. package/build-module/components/block-settings-menu/block-settings-menu-first-item.js.map +1 -1
  843. package/build-module/components/block-settings-menu/index.js.map +1 -1
  844. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  845. package/build-module/components/block-styles/index.js.map +1 -1
  846. package/build-module/components/block-styles/index.native.js.map +1 -1
  847. package/build-module/components/block-styles/menu-items.js.map +1 -1
  848. package/build-module/components/block-styles/preview-panel.js.map +1 -1
  849. package/build-module/components/block-styles/preview.native.js.map +1 -1
  850. package/build-module/components/block-styles/use-styles-for-block.js.map +1 -1
  851. package/build-module/components/block-styles/utils.js.map +1 -1
  852. package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
  853. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  854. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  855. package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
  856. package/build-module/components/block-switcher/index.js +4 -3
  857. package/build-module/components/block-switcher/index.js.map +1 -1
  858. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  859. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  860. package/build-module/components/block-switcher/use-transformed-patterns.js.map +1 -1
  861. package/build-module/components/block-switcher/utils.js.map +1 -1
  862. package/build-module/components/block-title/index.js.map +1 -1
  863. package/build-module/components/block-title/use-block-display-title.js.map +1 -1
  864. package/build-module/components/block-toolbar/block-name-context.js.map +1 -1
  865. package/build-module/components/block-toolbar/block-toolbar-last-item.js.map +1 -1
  866. package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  867. package/build-module/components/block-toolbar/index.js +5 -4
  868. package/build-module/components/block-toolbar/index.js.map +1 -1
  869. package/build-module/components/block-toolbar/index.native.js.map +1 -1
  870. package/build-module/components/block-toolbar/shuffle.js +18 -9
  871. package/build-module/components/block-toolbar/shuffle.js.map +1 -1
  872. package/build-module/components/block-toolbar/use-has-block-toolbar.js +6 -3
  873. package/build-module/components/block-toolbar/use-has-block-toolbar.js.map +1 -1
  874. package/build-module/components/block-toolbar/utils.js.map +1 -1
  875. package/build-module/components/block-tools/block-selection-button.js +58 -14
  876. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  877. package/build-module/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
  878. package/build-module/components/block-tools/block-toolbar-popover.js.map +1 -1
  879. package/build-module/components/block-tools/empty-block-inserter.js.map +1 -1
  880. package/build-module/components/block-tools/index.js +14 -2
  881. package/build-module/components/block-tools/index.js.map +1 -1
  882. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  883. package/build-module/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  884. package/build-module/components/block-tools/use-selected-block-tool-props.js.map +1 -1
  885. package/build-module/components/block-tools/use-show-block-tools.js +7 -13
  886. package/build-module/components/block-tools/use-show-block-tools.js.map +1 -1
  887. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  888. package/build-module/components/block-types-list/index.js.map +1 -1
  889. package/build-module/components/block-types-list/index.native.js.map +1 -1
  890. package/build-module/components/block-variation-picker/index.js.map +1 -1
  891. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  892. package/build-module/components/block-variation-transforms/index.js +4 -1
  893. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  894. package/build-module/components/block-vertical-alignment-control/icons.js.map +1 -1
  895. package/build-module/components/block-vertical-alignment-control/index.js.map +1 -1
  896. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  897. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  898. package/build-module/components/border-radius-control/index.js.map +1 -1
  899. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  900. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  901. package/build-module/components/border-radius-control/utils.js.map +1 -1
  902. package/build-module/components/button-block-appender/index.js.map +1 -1
  903. package/build-module/components/button-block-appender/index.native.js +11 -1
  904. package/build-module/components/button-block-appender/index.native.js.map +1 -1
  905. package/build-module/components/caption/index.native.js.map +1 -1
  906. package/build-module/components/child-layout-control/index.js.map +1 -1
  907. package/build-module/components/color-palette/control.js.map +1 -1
  908. package/build-module/components/color-palette/index.js.map +1 -1
  909. package/build-module/components/color-palette/with-color-context.js.map +1 -1
  910. package/build-module/components/color-style-selector/index.js.map +1 -1
  911. package/build-module/components/colors/index.js.map +1 -1
  912. package/build-module/components/colors/utils.js.map +1 -1
  913. package/build-module/components/colors/with-colors.js.map +1 -1
  914. package/build-module/components/colors-gradients/control.js.map +1 -1
  915. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  916. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  917. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  918. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  919. package/build-module/components/contrast-checker/index.js.map +1 -1
  920. package/build-module/components/contrast-checker/index.native.js.map +1 -1
  921. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  922. package/build-module/components/convert-to-group-buttons/index.native.js.map +1 -1
  923. package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
  924. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  925. package/build-module/components/copy-handler/index.js.map +1 -1
  926. package/build-module/components/date-format-picker/index.js.map +1 -1
  927. package/build-module/components/default-block-appender/index.js.map +1 -1
  928. package/build-module/components/default-block-appender/index.native.js.map +1 -1
  929. package/build-module/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
  930. package/build-module/components/dimensions-tool/index.js.map +1 -1
  931. package/build-module/components/dimensions-tool/scale-tool.js.map +1 -1
  932. package/build-module/components/dimensions-tool/width-height-tool.js.map +1 -1
  933. package/build-module/components/duotone/utils.js.map +1 -1
  934. package/build-module/components/duotone-control/index.js.map +1 -1
  935. package/build-module/components/editable-text/index.js.map +1 -1
  936. package/build-module/components/editor-styles/index.js +3 -2
  937. package/build-module/components/editor-styles/index.js.map +1 -1
  938. package/build-module/components/floating-toolbar/index.native.js.map +1 -1
  939. package/build-module/components/floating-toolbar/nav-up-icon.js.map +1 -1
  940. package/build-module/components/font-appearance-control/index.js.map +1 -1
  941. package/build-module/components/font-family/index.js.map +1 -1
  942. package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
  943. package/build-module/components/font-sizes/font-size-picker.js.map +1 -1
  944. package/build-module/components/font-sizes/index.js.map +1 -1
  945. package/build-module/components/font-sizes/index.native.js.map +1 -1
  946. package/build-module/components/font-sizes/utils.js.map +1 -1
  947. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  948. package/build-module/components/global-styles/advanced-panel.js +9 -2
  949. package/build-module/components/global-styles/advanced-panel.js.map +1 -1
  950. package/build-module/components/global-styles/background-panel.js +433 -0
  951. package/build-module/components/global-styles/background-panel.js.map +1 -0
  952. package/build-module/components/global-styles/border-panel.js.map +1 -1
  953. package/build-module/components/global-styles/color-panel.js +2 -1
  954. package/build-module/components/global-styles/color-panel.js.map +1 -1
  955. package/build-module/components/global-styles/color-panel.native.js.map +1 -1
  956. package/build-module/components/global-styles/context.js.map +1 -1
  957. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  958. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  959. package/build-module/components/global-styles/get-block-css-selector.js.map +1 -1
  960. package/build-module/components/global-styles/get-global-styles-changes.js +3 -0
  961. package/build-module/components/global-styles/get-global-styles-changes.js.map +1 -1
  962. package/build-module/components/global-styles/hooks.js +1 -1
  963. package/build-module/components/global-styles/hooks.js.map +1 -1
  964. package/build-module/components/global-styles/image-settings-panel.js.map +1 -1
  965. package/build-module/components/global-styles/index.js +1 -0
  966. package/build-module/components/global-styles/index.js.map +1 -1
  967. package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
  968. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  969. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  970. package/build-module/components/global-styles/use-global-styles-output.js +20 -19
  971. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  972. package/build-module/components/global-styles/utils.js +1 -0
  973. package/build-module/components/global-styles/utils.js.map +1 -1
  974. package/build-module/components/gradients/index.js.map +1 -1
  975. package/build-module/components/gradients/index.native.js.map +1 -1
  976. package/build-module/components/gradients/use-gradient.js.map +1 -1
  977. package/build-module/components/gradients/with-gradient.js.map +1 -1
  978. package/build-module/components/grid-visualizer/grid-item-resizer.js.map +1 -1
  979. package/build-module/components/grid-visualizer/grid-visualizer.js.map +1 -1
  980. package/build-module/components/grid-visualizer/index.js.map +1 -1
  981. package/build-module/components/grid-visualizer/utils.js.map +1 -1
  982. package/build-module/components/height-control/index.js.map +1 -1
  983. package/build-module/components/iframe/get-compatibility-styles.js.map +1 -1
  984. package/build-module/components/iframe/index.js +14 -10
  985. package/build-module/components/iframe/index.js.map +1 -1
  986. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  987. package/build-module/components/image-editor/constants.js.map +1 -1
  988. package/build-module/components/image-editor/context.js.map +1 -1
  989. package/build-module/components/image-editor/cropper.js +7 -3
  990. package/build-module/components/image-editor/cropper.js.map +1 -1
  991. package/build-module/components/image-editor/form-controls.js.map +1 -1
  992. package/build-module/components/image-editor/index.js +0 -2
  993. package/build-module/components/image-editor/index.js.map +1 -1
  994. package/build-module/components/image-editor/rotation-button.js.map +1 -1
  995. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  996. package/build-module/components/image-editor/use-transform-image.js.map +1 -1
  997. package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
  998. package/build-module/components/image-link-destinations/index.native.js.map +1 -1
  999. package/build-module/components/image-size-control/index.js.map +1 -1
  1000. package/build-module/components/image-size-control/use-dimension-handler.js.map +1 -1
  1001. package/build-module/components/index.js.map +1 -1
  1002. package/build-module/components/index.native.js.map +1 -1
  1003. package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
  1004. package/build-module/components/inner-blocks/constants.native.js.map +1 -1
  1005. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  1006. package/build-module/components/inner-blocks/index.js.map +1 -1
  1007. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  1008. package/build-module/components/inner-blocks/use-block-context.js.map +1 -1
  1009. package/build-module/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  1010. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  1011. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  1012. package/build-module/components/inner-blocks/with-client-id.js.map +1 -1
  1013. package/build-module/components/inserter/block-patterns-explorer/index.js.map +1 -1
  1014. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
  1015. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  1016. package/build-module/components/inserter/block-patterns-tab/index.js +32 -19
  1017. package/build-module/components/inserter/block-patterns-tab/index.js.map +1 -1
  1018. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +2 -19
  1019. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -1
  1020. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +2 -4
  1021. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  1022. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  1023. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  1024. package/build-module/components/inserter/block-patterns-tab/utils.js.map +1 -1
  1025. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  1026. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  1027. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  1028. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  1029. package/build-module/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  1030. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  1031. package/build-module/components/inserter/hooks/use-patterns-paging.js.map +1 -1
  1032. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  1033. package/build-module/components/inserter/index.js.map +1 -1
  1034. package/build-module/components/inserter/index.native.js.map +1 -1
  1035. package/build-module/components/inserter/library.js +2 -0
  1036. package/build-module/components/inserter/library.js.map +1 -1
  1037. package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
  1038. package/build-module/components/inserter/media-tab/index.js.map +1 -1
  1039. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  1040. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  1041. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  1042. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  1043. package/build-module/components/inserter/media-tab/utils.js.map +1 -1
  1044. package/build-module/components/inserter/menu.js +25 -13
  1045. package/build-module/components/inserter/menu.js.map +1 -1
  1046. package/build-module/components/inserter/menu.native.js.map +1 -1
  1047. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  1048. package/build-module/components/inserter/no-results.js.map +1 -1
  1049. package/build-module/components/inserter/no-results.native.js.map +1 -1
  1050. package/build-module/components/inserter/panel.js.map +1 -1
  1051. package/build-module/components/inserter/preview-panel.js.map +1 -1
  1052. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  1053. package/build-module/components/inserter/reusable-block-rename-hint.js.map +1 -1
  1054. package/build-module/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  1055. package/build-module/components/inserter/search-items.js +33 -15
  1056. package/build-module/components/inserter/search-items.js.map +1 -1
  1057. package/build-module/components/inserter/search-results.js.map +1 -1
  1058. package/build-module/components/inserter/search-results.native.js.map +1 -1
  1059. package/build-module/components/inserter/tabs.js +7 -3
  1060. package/build-module/components/inserter/tabs.js.map +1 -1
  1061. package/build-module/components/inserter/tabs.native.js.map +1 -1
  1062. package/build-module/components/inserter/tips.js.map +1 -1
  1063. package/build-module/components/inserter/utils.native.js.map +1 -1
  1064. package/build-module/components/inserter-button/index.native.js.map +1 -1
  1065. package/build-module/components/inserter-button/sparkles.js.map +1 -1
  1066. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  1067. package/build-module/components/inserter-list-item/index.js.map +1 -1
  1068. package/build-module/components/inserter-listbox/context.js.map +1 -1
  1069. package/build-module/components/inserter-listbox/group.js.map +1 -1
  1070. package/build-module/components/inserter-listbox/index.js.map +1 -1
  1071. package/build-module/components/inserter-listbox/item.js.map +1 -1
  1072. package/build-module/components/inserter-listbox/row.js.map +1 -1
  1073. package/build-module/components/inserter-menu-extension/index.js.map +1 -1
  1074. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  1075. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  1076. package/build-module/components/inspector-controls/fill.js.map +1 -1
  1077. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  1078. package/build-module/components/inspector-controls/groups.js.map +1 -1
  1079. package/build-module/components/inspector-controls/index.js.map +1 -1
  1080. package/build-module/components/inspector-controls/slot.js.map +1 -1
  1081. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  1082. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  1083. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.native.js.map +1 -1
  1084. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  1085. package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  1086. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  1087. package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  1088. package/build-module/components/inspector-controls-tabs/styles-tab.js +1 -1
  1089. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  1090. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  1091. package/build-module/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js.map +1 -1
  1092. package/build-module/components/inspector-controls-tabs/utils.js.map +1 -1
  1093. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  1094. package/build-module/components/justify-content-control/index.js.map +1 -1
  1095. package/build-module/components/justify-content-control/ui.js.map +1 -1
  1096. package/build-module/components/keyboard-shortcuts/index.js +11 -0
  1097. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  1098. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  1099. package/build-module/components/line-height-control/index.js.map +1 -1
  1100. package/build-module/components/line-height-control/index.native.js.map +1 -1
  1101. package/build-module/components/line-height-control/utils.js.map +1 -1
  1102. package/build-module/components/link-control/constants.js.map +1 -1
  1103. package/build-module/components/link-control/index.js.map +1 -1
  1104. package/build-module/components/link-control/is-url-like.js.map +1 -1
  1105. package/build-module/components/link-control/link-preview.js.map +1 -1
  1106. package/build-module/components/link-control/search-create-button.js.map +1 -1
  1107. package/build-module/components/link-control/search-input.js.map +1 -1
  1108. package/build-module/components/link-control/search-item.js.map +1 -1
  1109. package/build-module/components/link-control/search-results.js.map +1 -1
  1110. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  1111. package/build-module/components/link-control/settings.js.map +1 -1
  1112. package/build-module/components/link-control/use-create-page.js.map +1 -1
  1113. package/build-module/components/link-control/use-internal-value.js.map +1 -1
  1114. package/build-module/components/link-control/use-rich-url-data.js.map +1 -1
  1115. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  1116. package/build-module/components/link-control/viewer-slot.js.map +1 -1
  1117. package/build-module/components/list-view/appender.js.map +1 -1
  1118. package/build-module/components/list-view/aria-referenced-text.js.map +1 -1
  1119. package/build-module/components/list-view/block-contents.js.map +1 -1
  1120. package/build-module/components/list-view/block-select-button.js +45 -1
  1121. package/build-module/components/list-view/block-select-button.js.map +1 -1
  1122. package/build-module/components/list-view/block.js +1 -1
  1123. package/build-module/components/list-view/block.js.map +1 -1
  1124. package/build-module/components/list-view/branch.js.map +1 -1
  1125. package/build-module/components/list-view/context.js.map +1 -1
  1126. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  1127. package/build-module/components/list-view/expander.js.map +1 -1
  1128. package/build-module/components/list-view/index.js +17 -2
  1129. package/build-module/components/list-view/index.js.map +1 -1
  1130. package/build-module/components/list-view/leaf.js.map +1 -1
  1131. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  1132. package/build-module/components/list-view/use-clipboard-handler.js.map +1 -1
  1133. package/build-module/components/list-view/use-list-view-block-indexes.js.map +1 -1
  1134. package/build-module/components/list-view/use-list-view-client-ids.js.map +1 -1
  1135. package/build-module/components/list-view/use-list-view-collapse-items.js +40 -0
  1136. package/build-module/components/list-view/use-list-view-collapse-items.js.map +1 -0
  1137. package/build-module/components/list-view/use-list-view-drop-zone.js +5 -0
  1138. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  1139. package/build-module/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  1140. package/build-module/components/list-view/use-list-view-images.js.map +1 -1
  1141. package/build-module/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  1142. package/build-module/components/list-view/utils.js.map +1 -1
  1143. package/build-module/components/media-placeholder/index.js.map +1 -1
  1144. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  1145. package/build-module/components/media-replace-flow/index.js.map +1 -1
  1146. package/build-module/components/media-replace-flow/index.native.js.map +1 -1
  1147. package/build-module/components/media-upload/check.js.map +1 -1
  1148. package/build-module/components/media-upload/constants.native.js.map +1 -1
  1149. package/build-module/components/media-upload/index.js.map +1 -1
  1150. package/build-module/components/media-upload/index.native.js.map +1 -1
  1151. package/build-module/components/media-upload-progress/constants.js.map +1 -1
  1152. package/build-module/components/media-upload-progress/index.native.js.map +1 -1
  1153. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  1154. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  1155. package/build-module/components/observe-typing/index.js.map +1 -1
  1156. package/build-module/components/panel-color-settings/index.js.map +1 -1
  1157. package/build-module/components/plain-text/index.js.map +1 -1
  1158. package/build-module/components/plain-text/index.native.js.map +1 -1
  1159. package/build-module/components/preview-options/index.js.map +1 -1
  1160. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  1161. package/build-module/components/provider/index.js.map +1 -1
  1162. package/build-module/components/provider/index.native.js.map +1 -1
  1163. package/build-module/components/provider/use-block-sync.js.map +1 -1
  1164. package/build-module/components/provider/with-registry-provider.js.map +1 -1
  1165. package/build-module/components/publish-date-time-picker/index.js.map +1 -1
  1166. package/build-module/components/recursion-provider/index.js +2 -2
  1167. package/build-module/components/recursion-provider/index.js.map +1 -1
  1168. package/build-module/components/resizable-box-popover/index.js.map +1 -1
  1169. package/build-module/components/resolution-tool/index.js.map +1 -1
  1170. package/build-module/components/responsive-block-control/index.js.map +1 -1
  1171. package/build-module/components/responsive-block-control/label.js.map +1 -1
  1172. package/build-module/components/rich-text/content.js +25 -19
  1173. package/build-module/components/rich-text/content.js.map +1 -1
  1174. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  1175. package/build-module/components/rich-text/file-paste-handler.native.js.map +1 -1
  1176. package/build-module/components/rich-text/format-edit.js.map +1 -1
  1177. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  1178. package/build-module/components/rich-text/format-toolbar/index.native.js.map +1 -1
  1179. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  1180. package/build-module/components/rich-text/format-toolbar-container.native.js.map +1 -1
  1181. package/build-module/components/rich-text/get-rich-text-values.js.map +1 -1
  1182. package/build-module/components/rich-text/index.js +57 -14
  1183. package/build-module/components/rich-text/index.js.map +1 -1
  1184. package/build-module/components/rich-text/index.native.js +19 -12
  1185. package/build-module/components/rich-text/index.native.js.map +1 -1
  1186. package/build-module/components/rich-text/input-event.js.map +1 -1
  1187. package/build-module/components/rich-text/input-event.native.js.map +1 -1
  1188. package/build-module/components/rich-text/multiline.js.map +1 -1
  1189. package/build-module/components/rich-text/native/format-edit.js.map +1 -1
  1190. package/build-module/components/rich-text/native/get-format-colors.native.js +1 -1
  1191. package/build-module/components/rich-text/native/get-format-colors.native.js.map +1 -1
  1192. package/build-module/components/rich-text/native/index.js.map +1 -1
  1193. package/build-module/components/rich-text/native/index.native.js +2 -2
  1194. package/build-module/components/rich-text/native/index.native.js.map +1 -1
  1195. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
  1196. package/build-module/components/rich-text/native/use-format-types.js.map +1 -1
  1197. package/build-module/components/rich-text/prevent-event-discovery.js.map +1 -1
  1198. package/build-module/components/rich-text/remove-browser-shortcuts.native.js.map +1 -1
  1199. package/build-module/components/rich-text/shortcut.js.map +1 -1
  1200. package/build-module/components/rich-text/shortcut.native.js.map +1 -1
  1201. package/build-module/components/rich-text/split-value.js.map +1 -1
  1202. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  1203. package/build-module/components/rich-text/use-before-input-rules.js.map +1 -1
  1204. package/build-module/components/rich-text/use-delete.js.map +1 -1
  1205. package/build-module/components/rich-text/use-enter.js.map +1 -1
  1206. package/build-module/components/rich-text/use-firefox-compat.js.map +1 -1
  1207. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  1208. package/build-module/components/rich-text/use-input-events.js.map +1 -1
  1209. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  1210. package/build-module/components/rich-text/use-insert-replacement-text.js.map +1 -1
  1211. package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
  1212. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  1213. package/build-module/components/rich-text/use-remove-browser-shortcuts.js.map +1 -1
  1214. package/build-module/components/rich-text/use-shortcuts.js.map +1 -1
  1215. package/build-module/components/rich-text/use-undo-automatic-change.js +2 -2
  1216. package/build-module/components/rich-text/use-undo-automatic-change.js.map +1 -1
  1217. package/build-module/components/rich-text/utils.js.map +1 -1
  1218. package/build-module/components/rich-text/with-deprecations.js +0 -3
  1219. package/build-module/components/rich-text/with-deprecations.js.map +1 -1
  1220. package/build-module/components/selection-scroll-into-view/index.js.map +1 -1
  1221. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  1222. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  1223. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  1224. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
  1225. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
  1226. package/build-module/components/spacing-sizes-control/input-controls/single.js.map +1 -1
  1227. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  1228. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -1
  1229. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  1230. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1231. package/build-module/components/text-transform-control/index.js.map +1 -1
  1232. package/build-module/components/tool-selector/index.js.map +1 -1
  1233. package/build-module/components/typewriter/index.js.map +1 -1
  1234. package/build-module/components/ungroup-button/index.native.js.map +1 -1
  1235. package/build-module/components/unit-control/index.js.map +1 -1
  1236. package/build-module/components/unsupported-block-details/index.native.js.map +1 -1
  1237. package/build-module/components/url-input/button.js.map +1 -1
  1238. package/build-module/components/url-input/index.js.map +1 -1
  1239. package/build-module/components/url-input/index.native.js.map +1 -1
  1240. package/build-module/components/url-popover/image-url-input-ui.js +50 -36
  1241. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  1242. package/build-module/components/url-popover/index.js.map +1 -1
  1243. package/build-module/components/url-popover/link-editor.js.map +1 -1
  1244. package/build-module/components/url-popover/link-viewer-url.js.map +1 -1
  1245. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  1246. package/build-module/components/use-block-commands/index.js +20 -2
  1247. package/build-module/components/use-block-commands/index.js.map +1 -1
  1248. package/build-module/components/use-block-display-information/index.js +5 -7
  1249. package/build-module/components/use-block-display-information/index.js.map +1 -1
  1250. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  1251. package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
  1252. package/build-module/components/use-flash-editable-blocks/index.js.map +1 -1
  1253. package/build-module/components/use-moving-animation/index.js.map +1 -1
  1254. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  1255. package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
  1256. package/build-module/components/use-on-block-drop/types.js.map +1 -1
  1257. package/build-module/components/use-paste-styles/index.js +2 -1
  1258. package/build-module/components/use-paste-styles/index.js.map +1 -1
  1259. package/build-module/components/use-resize-canvas/index.js.map +1 -1
  1260. package/build-module/components/use-settings/index.js.map +1 -1
  1261. package/build-module/components/use-unsupported-block-editor/index.native.js.map +1 -1
  1262. package/build-module/components/video-player/gridicon-play.native.js.map +1 -1
  1263. package/build-module/components/video-player/index.native.js.map +1 -1
  1264. package/build-module/components/warning/index.js.map +1 -1
  1265. package/build-module/components/warning/index.native.js.map +1 -1
  1266. package/build-module/components/writing-flow/index.js.map +1 -1
  1267. package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
  1268. package/build-module/components/writing-flow/use-click-selection.js.map +1 -1
  1269. package/build-module/components/writing-flow/use-clipboard-handler.js.map +1 -1
  1270. package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
  1271. package/build-module/components/writing-flow/use-input.js.map +1 -1
  1272. package/build-module/components/writing-flow/use-multi-selection.js.map +1 -1
  1273. package/build-module/components/writing-flow/use-select-all.js.map +1 -1
  1274. package/build-module/components/writing-flow/use-selection-observer.js.map +1 -1
  1275. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  1276. package/build-module/components/writing-flow/utils.js.map +1 -1
  1277. package/build-module/components/writing-mode-control/index.js.map +1 -1
  1278. package/build-module/elements/index.js.map +1 -1
  1279. package/build-module/hooks/align.js.map +1 -1
  1280. package/build-module/hooks/align.native.js.map +1 -1
  1281. package/build-module/hooks/anchor.js +2 -2
  1282. package/build-module/hooks/anchor.js.map +1 -1
  1283. package/build-module/hooks/aria-label.js.map +1 -1
  1284. package/build-module/hooks/background.js +67 -419
  1285. package/build-module/hooks/background.js.map +1 -1
  1286. package/build-module/hooks/block-hooks.js.map +1 -1
  1287. package/build-module/hooks/block-renaming.js +0 -36
  1288. package/build-module/hooks/block-renaming.js.map +1 -1
  1289. package/build-module/hooks/border.js.map +1 -1
  1290. package/build-module/hooks/color.js.map +1 -1
  1291. package/build-module/hooks/compat.js.map +1 -1
  1292. package/build-module/hooks/content-lock-ui.js +5 -5
  1293. package/build-module/hooks/content-lock-ui.js.map +1 -1
  1294. package/build-module/hooks/contrast-checker.js.map +1 -1
  1295. package/build-module/hooks/custom-class-name.js.map +1 -1
  1296. package/build-module/hooks/custom-class-name.native.js.map +1 -1
  1297. package/build-module/hooks/dimensions.js.map +1 -1
  1298. package/build-module/hooks/duotone.js.map +1 -1
  1299. package/build-module/hooks/font-family.js.map +1 -1
  1300. package/build-module/hooks/font-size.js.map +1 -1
  1301. package/build-module/hooks/gap.js.map +1 -1
  1302. package/build-module/hooks/generated-class-name.js.map +1 -1
  1303. package/build-module/hooks/index.js +6 -4
  1304. package/build-module/hooks/index.js.map +1 -1
  1305. package/build-module/hooks/index.native.js.map +1 -1
  1306. package/build-module/hooks/layout-child.js.map +1 -1
  1307. package/build-module/hooks/layout.js +38 -19
  1308. package/build-module/hooks/layout.js.map +1 -1
  1309. package/build-module/hooks/layout.native.js.map +1 -1
  1310. package/build-module/hooks/line-height.js.map +1 -1
  1311. package/build-module/hooks/lock.js.map +1 -1
  1312. package/build-module/hooks/metadata.js.map +1 -1
  1313. package/build-module/hooks/position.js.map +1 -1
  1314. package/build-module/hooks/settings.js.map +1 -1
  1315. package/build-module/hooks/spacing-visualizer.js.map +1 -1
  1316. package/build-module/hooks/style.js.map +1 -1
  1317. package/build-module/hooks/supports.js +22 -1
  1318. package/build-module/hooks/supports.js.map +1 -1
  1319. package/build-module/hooks/text-align.js +145 -0
  1320. package/build-module/hooks/text-align.js.map +1 -0
  1321. package/build-module/hooks/typography.js +2 -1
  1322. package/build-module/hooks/typography.js.map +1 -1
  1323. package/build-module/hooks/typography.native.js.map +1 -1
  1324. package/build-module/hooks/use-bindings-attributes.js +68 -132
  1325. package/build-module/hooks/use-bindings-attributes.js.map +1 -1
  1326. package/build-module/hooks/use-border-props.js.map +1 -1
  1327. package/build-module/hooks/use-cached-truthy.js.map +1 -1
  1328. package/build-module/hooks/use-color-props.js.map +1 -1
  1329. package/build-module/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  1330. package/build-module/hooks/use-shadow-props.js.map +1 -1
  1331. package/build-module/hooks/use-spacing-props.js.map +1 -1
  1332. package/build-module/hooks/use-typography-props.js +2 -1
  1333. package/build-module/hooks/use-typography-props.js.map +1 -1
  1334. package/build-module/hooks/use-zoom-out.js +48 -0
  1335. package/build-module/hooks/use-zoom-out.js.map +1 -0
  1336. package/build-module/hooks/utils.js +30 -6
  1337. package/build-module/hooks/utils.js.map +1 -1
  1338. package/build-module/index.js +1 -1
  1339. package/build-module/index.js.map +1 -1
  1340. package/build-module/index.native.js.map +1 -1
  1341. package/build-module/layouts/constrained.js.map +1 -1
  1342. package/build-module/layouts/definitions.js +8 -6
  1343. package/build-module/layouts/definitions.js.map +1 -1
  1344. package/build-module/layouts/flex.js.map +1 -1
  1345. package/build-module/layouts/flow.js.map +1 -1
  1346. package/build-module/layouts/grid.js +52 -9
  1347. package/build-module/layouts/grid.js.map +1 -1
  1348. package/build-module/layouts/index.js.map +1 -1
  1349. package/build-module/layouts/utils.js.map +1 -1
  1350. package/build-module/lock-unlock.js.map +1 -1
  1351. package/build-module/private-apis.js +7 -2
  1352. package/build-module/private-apis.js.map +1 -1
  1353. package/build-module/private-apis.native.js +3 -1
  1354. package/build-module/private-apis.native.js.map +1 -1
  1355. package/build-module/store/actions.js +18 -4
  1356. package/build-module/store/actions.js.map +1 -1
  1357. package/build-module/store/array.js.map +1 -1
  1358. package/build-module/store/constants.js.map +1 -1
  1359. package/build-module/store/defaults.js.map +1 -1
  1360. package/build-module/store/defaults.native.js.map +1 -1
  1361. package/build-module/store/get-block-settings.js.map +1 -1
  1362. package/build-module/store/index.js.map +1 -1
  1363. package/build-module/store/private-actions.js +17 -2
  1364. package/build-module/store/private-actions.js.map +1 -1
  1365. package/build-module/store/private-keys.js +1 -0
  1366. package/build-module/store/private-keys.js.map +1 -1
  1367. package/build-module/store/private-selectors.js +105 -33
  1368. package/build-module/store/private-selectors.js.map +1 -1
  1369. package/build-module/store/reducer.js +21 -0
  1370. package/build-module/store/reducer.js.map +1 -1
  1371. package/build-module/store/selectors.js +130 -88
  1372. package/build-module/store/selectors.js.map +1 -1
  1373. package/build-module/store/undo-ignore.js.map +1 -1
  1374. package/build-module/store/utils.js +6 -1
  1375. package/build-module/store/utils.js.map +1 -1
  1376. package/build-module/utils/dom.js.map +1 -1
  1377. package/build-module/utils/get-px-from-css-unit.js.map +1 -1
  1378. package/build-module/utils/index.js.map +1 -1
  1379. package/build-module/utils/math.js.map +1 -1
  1380. package/build-module/utils/object.js.map +1 -1
  1381. package/build-module/utils/order-inserter-block-items.js.map +1 -1
  1382. package/build-module/utils/pasting.js.map +1 -1
  1383. package/build-module/utils/selection.js.map +1 -1
  1384. package/build-module/utils/sorting.js.map +1 -1
  1385. package/build-module/utils/transform-styles/index.js +2 -1
  1386. package/build-module/utils/transform-styles/index.js.map +1 -1
  1387. package/build-module/utils/use-notify-copy.js.map +1 -1
  1388. package/build-style/content-rtl.css +40 -19
  1389. package/build-style/content.css +40 -19
  1390. package/build-style/default-editor-styles-rtl.css +1 -1
  1391. package/build-style/default-editor-styles.css +1 -1
  1392. package/build-style/style-rtl.css +150 -130
  1393. package/build-style/style.css +150 -130
  1394. package/package.json +32 -33
  1395. package/src/components/block-bindings-toolbar-indicator/style.scss +1 -1
  1396. package/src/components/block-edit/context.js +1 -0
  1397. package/src/components/block-edit/index.js +4 -0
  1398. package/src/components/block-inspector/index.js +6 -4
  1399. package/src/components/block-list/block.js +69 -30
  1400. package/src/components/block-list/block.native.js +3 -2
  1401. package/src/components/block-list/content.scss +37 -19
  1402. package/src/components/block-list/index.js +22 -6
  1403. package/src/components/block-list/use-block-props/index.js +5 -1
  1404. package/src/components/block-list/use-block-props/use-focus-first-element.js +7 -3
  1405. package/src/components/block-mover/button.js +4 -1
  1406. package/src/components/block-mover/index.js +8 -1
  1407. package/src/components/block-patterns-list/index.js +22 -17
  1408. package/src/components/block-patterns-paging/index.js +4 -0
  1409. package/src/components/block-preview/style.scss +28 -0
  1410. package/src/components/block-rename/modal.js +17 -13
  1411. package/src/components/block-rename/rename-control.js +8 -1
  1412. package/src/components/block-settings-menu/block-settings-dropdown.js +8 -2
  1413. package/src/components/block-switcher/index.js +5 -3
  1414. package/src/components/block-switcher/style.scss +1 -1
  1415. package/src/components/block-toolbar/index.js +16 -9
  1416. package/src/components/block-toolbar/shuffle.js +19 -13
  1417. package/src/components/block-toolbar/style.scss +1 -1
  1418. package/src/components/block-toolbar/use-has-block-toolbar.js +5 -3
  1419. package/src/components/block-tools/block-selection-button.js +103 -34
  1420. package/src/components/block-tools/index.js +18 -1
  1421. package/src/components/block-tools/use-show-block-tools.js +4 -7
  1422. package/src/components/block-variation-transforms/index.js +3 -1
  1423. package/src/components/button-block-appender/content.scss +5 -1
  1424. package/src/components/button-block-appender/index.native.js +16 -1
  1425. package/src/components/default-block-appender/content.scss +3 -3
  1426. package/src/components/editor-styles/index.js +4 -2
  1427. package/src/components/global-styles/advanced-panel.js +8 -2
  1428. package/src/components/global-styles/background-panel.js +595 -0
  1429. package/src/components/global-styles/color-panel.js +2 -1
  1430. package/src/components/global-styles/get-global-styles-changes.js +3 -0
  1431. package/src/components/global-styles/hooks.js +1 -0
  1432. package/src/components/global-styles/index.js +4 -0
  1433. package/src/components/global-styles/style.scss +72 -1
  1434. package/src/{hooks/test/background.js → components/global-styles/test/background-panel.js} +36 -1
  1435. package/src/components/global-styles/test/get-global-styles-changes.js +22 -3
  1436. package/src/components/global-styles/test/use-global-styles-output.js +12 -21
  1437. package/src/components/global-styles/use-global-styles-output.js +32 -21
  1438. package/src/components/global-styles/utils.js +1 -0
  1439. package/src/components/iframe/index.js +17 -14
  1440. package/src/components/image-editor/cropper.js +11 -2
  1441. package/src/components/image-editor/index.js +0 -2
  1442. package/src/components/inserter/block-patterns-tab/index.js +54 -39
  1443. package/src/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +9 -31
  1444. package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +2 -2
  1445. package/src/components/inserter/library.js +4 -0
  1446. package/src/components/inserter/menu.js +35 -17
  1447. package/src/components/inserter/search-items.js +37 -15
  1448. package/src/components/inserter/style.scss +88 -70
  1449. package/src/components/inserter/tabs.js +7 -2
  1450. package/src/components/inspector-controls-tabs/styles-tab.js +1 -1
  1451. package/src/components/keyboard-shortcuts/index.js +11 -0
  1452. package/src/components/link-control/style.scss +10 -2
  1453. package/src/components/link-control/test/index.js +1 -1
  1454. package/src/components/list-view/block-select-button.js +44 -3
  1455. package/src/components/list-view/block.js +1 -1
  1456. package/src/components/list-view/index.js +18 -1
  1457. package/src/components/list-view/style.scss +4 -4
  1458. package/src/components/list-view/use-list-view-collapse-items.js +33 -0
  1459. package/src/components/list-view/use-list-view-drop-zone.js +5 -0
  1460. package/src/components/recursion-provider/index.js +2 -2
  1461. package/src/components/rich-text/README.md +4 -0
  1462. package/src/components/rich-text/content.js +26 -19
  1463. package/src/components/rich-text/index.js +76 -15
  1464. package/src/components/rich-text/index.native.js +17 -12
  1465. package/src/components/rich-text/native/get-format-colors.native.js +1 -1
  1466. package/src/components/rich-text/native/index.native.js +2 -2
  1467. package/src/components/rich-text/use-undo-automatic-change.js +2 -6
  1468. package/src/components/rich-text/with-deprecations.js +0 -3
  1469. package/src/components/url-popover/image-url-input-ui.js +68 -51
  1470. package/src/components/use-block-commands/index.js +46 -28
  1471. package/src/components/use-block-display-information/index.js +8 -10
  1472. package/src/components/use-paste-styles/index.js +2 -0
  1473. package/src/hooks/anchor.js +11 -9
  1474. package/src/hooks/background.js +77 -538
  1475. package/src/hooks/block-renaming.js +0 -33
  1476. package/src/hooks/content-lock-ui.js +5 -7
  1477. package/src/hooks/index.js +6 -2
  1478. package/src/hooks/layout.js +57 -25
  1479. package/src/hooks/supports.js +24 -0
  1480. package/src/hooks/test/text-align.js +114 -0
  1481. package/src/hooks/test/use-typography-props.js +3 -1
  1482. package/src/hooks/text-align.js +178 -0
  1483. package/src/hooks/typography.js +2 -0
  1484. package/src/hooks/use-bindings-attributes.js +90 -161
  1485. package/src/hooks/use-typography-props.js +4 -1
  1486. package/src/hooks/use-zoom-out.js +46 -0
  1487. package/src/hooks/utils.js +41 -3
  1488. package/src/index.js +1 -0
  1489. package/src/layouts/definitions.js +6 -6
  1490. package/src/layouts/grid.js +106 -47
  1491. package/src/private-apis.js +13 -1
  1492. package/src/private-apis.native.js +2 -0
  1493. package/src/store/actions.js +22 -6
  1494. package/src/store/private-actions.js +18 -3
  1495. package/src/store/private-keys.js +1 -0
  1496. package/src/store/private-selectors.js +160 -41
  1497. package/src/store/reducer.js +22 -0
  1498. package/src/store/selectors.js +333 -262
  1499. package/src/store/test/private-actions.js +10 -0
  1500. package/src/store/test/private-selectors.js +13 -0
  1501. package/src/store/test/reducer.js +26 -0
  1502. package/src/store/test/selectors.js +90 -199
  1503. package/src/store/utils.js +13 -0
  1504. package/src/style.scss +0 -2
  1505. package/src/utils/transform-styles/index.js +2 -1
  1506. package/tsconfig.tsbuildinfo +1 -1
  1507. package/src/hooks/anchor.scss +0 -4
  1508. package/src/hooks/background.scss +0 -75
@@ -0,0 +1,447 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.coordsToBackgroundPosition = exports.backgroundPositionToCoords = void 0;
8
+ exports.default = BackgroundPanel;
9
+ exports.hasBackgroundImageValue = hasBackgroundImageValue;
10
+ exports.hasBackgroundSizeValue = hasBackgroundSizeValue;
11
+ exports.useHasBackgroundPanel = useHasBackgroundPanel;
12
+ var _react = require("react");
13
+ var _classnames = _interopRequireDefault(require("classnames"));
14
+ var _components = require("@wordpress/components");
15
+ var _i18n = require("@wordpress/i18n");
16
+ var _notices = require("@wordpress/notices");
17
+ var _url = require("@wordpress/url");
18
+ var _element = require("@wordpress/element");
19
+ var _data = require("@wordpress/data");
20
+ var _dom = require("@wordpress/dom");
21
+ var _blob = require("@wordpress/blob");
22
+ var _utils = require("./utils");
23
+ var _object = require("../../utils/object");
24
+ var _mediaReplaceFlow = _interopRequireDefault(require("../media-replace-flow"));
25
+ var _store = require("../../store");
26
+ /**
27
+ * External dependencies
28
+ */
29
+
30
+ /**
31
+ * WordPress dependencies
32
+ */
33
+
34
+ /**
35
+ * Internal dependencies
36
+ */
37
+
38
+ const IMAGE_BACKGROUND_TYPE = 'image';
39
+ const DEFAULT_CONTROLS = {
40
+ backgroundImage: true,
41
+ backgroundSize: false
42
+ };
43
+
44
+ /**
45
+ * Checks site settings to see if the background panel may be used.
46
+ * `settings.background.backgroundSize` exists also,
47
+ * but can only be used if settings?.background?.backgroundImage is `true`.
48
+ *
49
+ * @param {Object} settings Site settings
50
+ * @return {boolean} Whether site settings has activated background panel.
51
+ */
52
+ function useHasBackgroundPanel(settings) {
53
+ return _element.Platform.OS === 'web' && settings?.background?.backgroundImage;
54
+ }
55
+
56
+ /**
57
+ * Checks if there is a current value in the background size block support
58
+ * attributes. Background size values include background size as well
59
+ * as background position.
60
+ *
61
+ * @param {Object} style Style attribute.
62
+ * @return {boolean} Whether the block has a background size value set.
63
+ */
64
+ function hasBackgroundSizeValue(style) {
65
+ return style?.background?.backgroundPosition !== undefined || style?.background?.backgroundSize !== undefined;
66
+ }
67
+
68
+ /**
69
+ * Checks if there is a current value in the background image block support
70
+ * attributes.
71
+ *
72
+ * @param {Object} style Style attribute.
73
+ * @return {boolean} Whether the block has a background image value set.
74
+ */
75
+ function hasBackgroundImageValue(style) {
76
+ return !!style?.background?.backgroundImage?.id || !!style?.background?.backgroundImage?.url;
77
+ }
78
+
79
+ /**
80
+ * Get the help text for the background size control.
81
+ *
82
+ * @param {string} value backgroundSize value.
83
+ * @return {string} Translated help text.
84
+ */
85
+ function backgroundSizeHelpText(value) {
86
+ if (value === 'cover' || value === undefined) {
87
+ return (0, _i18n.__)('Image covers the space evenly.');
88
+ }
89
+ if (value === 'contain') {
90
+ return (0, _i18n.__)('Image is contained without distortion.');
91
+ }
92
+ return (0, _i18n.__)('Specify a fixed width.');
93
+ }
94
+
95
+ /**
96
+ * Converts decimal x and y coords from FocalPointPicker to percentage-based values
97
+ * to use as backgroundPosition value.
98
+ *
99
+ * @param {{x?:number, y?:number}} value FocalPointPicker coords.
100
+ * @return {string} backgroundPosition value.
101
+ */
102
+ const coordsToBackgroundPosition = value => {
103
+ if (!value || isNaN(value.x) && isNaN(value.y)) {
104
+ return undefined;
105
+ }
106
+ const x = isNaN(value.x) ? 0.5 : value.x;
107
+ const y = isNaN(value.y) ? 0.5 : value.y;
108
+ return `${x * 100}% ${y * 100}%`;
109
+ };
110
+
111
+ /**
112
+ * Converts backgroundPosition value to x and y coords for FocalPointPicker.
113
+ *
114
+ * @param {string} value backgroundPosition value.
115
+ * @return {{x?:number, y?:number}} FocalPointPicker coords.
116
+ */
117
+ exports.coordsToBackgroundPosition = coordsToBackgroundPosition;
118
+ const backgroundPositionToCoords = value => {
119
+ if (!value) {
120
+ return {
121
+ x: undefined,
122
+ y: undefined
123
+ };
124
+ }
125
+ let [x, y] = value.split(' ').map(v => parseFloat(v) / 100);
126
+ x = isNaN(x) ? undefined : x;
127
+ y = isNaN(y) ? x : y;
128
+ return {
129
+ x,
130
+ y
131
+ };
132
+ };
133
+ exports.backgroundPositionToCoords = backgroundPositionToCoords;
134
+ function InspectorImagePreview({
135
+ label,
136
+ filename,
137
+ url: imgUrl
138
+ }) {
139
+ const imgLabel = label || (0, _url.getFilename)(imgUrl) || (0, _i18n.__)('Add background image');
140
+ return (0, _react.createElement)(_components.__experimentalItemGroup, {
141
+ as: "span"
142
+ }, (0, _react.createElement)(_components.__experimentalHStack, {
143
+ justify: imgUrl ? 'flex-start' : 'center',
144
+ as: "span"
145
+ }, imgUrl && (0, _react.createElement)("span", {
146
+ className: (0, _classnames.default)('block-editor-global-styles-background-panel__inspector-image-indicator-wrapper', {
147
+ 'has-image': imgUrl
148
+ }),
149
+ "aria-hidden": true
150
+ }, (0, _react.createElement)("span", {
151
+ className: "block-editor-global-styles-background-panel__inspector-image-indicator",
152
+ style: {
153
+ backgroundImage: `url(${imgUrl})`
154
+ }
155
+ })), (0, _react.createElement)(_components.FlexItem, {
156
+ as: "span"
157
+ }, (0, _react.createElement)(_components.__experimentalTruncate, {
158
+ numberOfLines: 1,
159
+ className: "block-editor-global-styles-background-panel__inspector-media-replace-title"
160
+ }, imgLabel), (0, _react.createElement)(_components.VisuallyHidden, {
161
+ as: "span"
162
+ }, filename ? (0, _i18n.sprintf)( /* translators: %s: file name */
163
+ (0, _i18n.__)('Selected image: %s'), filename) : (0, _i18n.__)('No image selected')))));
164
+ }
165
+ function BackgroundImageToolsPanelItem({
166
+ panelId,
167
+ isShownByDefault,
168
+ onChange,
169
+ style,
170
+ inheritedValue
171
+ }) {
172
+ const mediaUpload = (0, _data.useSelect)(select => select(_store.store).getSettings().mediaUpload, []);
173
+ const {
174
+ id,
175
+ title,
176
+ url
177
+ } = style?.background?.backgroundImage || {
178
+ ...inheritedValue?.background?.backgroundImage
179
+ };
180
+ const replaceContainerRef = (0, _element.useRef)();
181
+ const {
182
+ createErrorNotice
183
+ } = (0, _data.useDispatch)(_notices.store);
184
+ const onUploadError = message => {
185
+ createErrorNotice(message, {
186
+ type: 'snackbar'
187
+ });
188
+ };
189
+ const resetBackgroundImage = () => onChange((0, _object.setImmutably)(style, ['background', 'backgroundImage'], undefined));
190
+ const onSelectMedia = media => {
191
+ if (!media || !media.url) {
192
+ resetBackgroundImage();
193
+ return;
194
+ }
195
+ if ((0, _blob.isBlobURL)(media.url)) {
196
+ return;
197
+ }
198
+
199
+ // For media selections originated from a file upload.
200
+ if (media.media_type && media.media_type !== IMAGE_BACKGROUND_TYPE || !media.media_type && media.type && media.type !== IMAGE_BACKGROUND_TYPE) {
201
+ onUploadError((0, _i18n.__)('Only images can be used as a background image.'));
202
+ return;
203
+ }
204
+ onChange((0, _object.setImmutably)(style, ['background', 'backgroundImage'], {
205
+ url: media.url,
206
+ id: media.id,
207
+ source: 'file',
208
+ title: media.title || undefined
209
+ }));
210
+ };
211
+ const onFilesDrop = filesList => {
212
+ mediaUpload({
213
+ allowedTypes: [IMAGE_BACKGROUND_TYPE],
214
+ filesList,
215
+ onFileChange([image]) {
216
+ if ((0, _blob.isBlobURL)(image?.url)) {
217
+ return;
218
+ }
219
+ onSelectMedia(image);
220
+ },
221
+ onError: onUploadError
222
+ });
223
+ };
224
+ const resetAllFilter = (0, _element.useCallback)(previousValue => {
225
+ return {
226
+ ...previousValue,
227
+ style: {
228
+ ...previousValue.style,
229
+ background: undefined
230
+ }
231
+ };
232
+ }, []);
233
+ const hasValue = hasBackgroundImageValue(style) || hasBackgroundImageValue(inheritedValue);
234
+ return (0, _react.createElement)(_components.__experimentalToolsPanelItem, {
235
+ className: "single-column",
236
+ hasValue: () => hasValue,
237
+ label: (0, _i18n.__)('Background image'),
238
+ onDeselect: resetBackgroundImage,
239
+ isShownByDefault: isShownByDefault,
240
+ resetAllFilter: resetAllFilter,
241
+ panelId: panelId
242
+ }, (0, _react.createElement)("div", {
243
+ className: "block-editor-global-styles-background-panel__inspector-media-replace-container",
244
+ ref: replaceContainerRef
245
+ }, (0, _react.createElement)(_mediaReplaceFlow.default, {
246
+ mediaId: id,
247
+ mediaURL: url,
248
+ allowedTypes: [IMAGE_BACKGROUND_TYPE],
249
+ accept: "image/*",
250
+ onSelect: onSelectMedia,
251
+ name: (0, _react.createElement)(InspectorImagePreview, {
252
+ label: title,
253
+ filename: title || (0, _i18n.__)('Untitled'),
254
+ url: url
255
+ }),
256
+ variant: "secondary"
257
+ }, hasValue && (0, _react.createElement)(_components.MenuItem, {
258
+ onClick: () => {
259
+ const [toggleButton] = _dom.focus.tabbable.find(replaceContainerRef.current);
260
+ // Focus the toggle button and close the dropdown menu.
261
+ // This ensures similar behaviour as to selecting an image, where the dropdown is
262
+ // closed and focus is redirected to the dropdown toggle button.
263
+ toggleButton?.focus();
264
+ toggleButton?.click();
265
+ resetBackgroundImage();
266
+ }
267
+ }, (0, _i18n.__)('Reset '))), (0, _react.createElement)(_components.DropZone, {
268
+ onFilesDrop: onFilesDrop,
269
+ label: (0, _i18n.__)('Drop to upload')
270
+ })));
271
+ }
272
+ function BackgroundSizeToolsPanelItem({
273
+ panelId,
274
+ isShownByDefault,
275
+ onChange,
276
+ style,
277
+ inheritedValue,
278
+ defaultValues
279
+ }) {
280
+ const sizeValue = style?.background?.backgroundSize || inheritedValue?.background?.backgroundSize;
281
+ const repeatValue = style?.background?.backgroundRepeat || inheritedValue?.background?.backgroundRepeat;
282
+ const imageValue = style?.background?.backgroundImage?.url || inheritedValue?.background?.backgroundImage?.url;
283
+ const positionValue = style?.background?.backgroundPosition || inheritedValue?.background?.backgroundPosition;
284
+
285
+ /*
286
+ * An `undefined` value is replaced with any supplied
287
+ * default control value for the toggle group control.
288
+ * An empty string is treated as `auto` - this allows a user
289
+ * to select "Size" and then enter a custom value, with an
290
+ * empty value being treated as `auto`.
291
+ */
292
+ const currentValueForToggle = sizeValue !== undefined && sizeValue !== 'cover' && sizeValue !== 'contain' || sizeValue === '' ? 'auto' : sizeValue || defaultValues?.backgroundSize;
293
+
294
+ /*
295
+ * If the current value is `cover` and the repeat value is `undefined`, then
296
+ * the toggle should be unchecked as the default state. Otherwise, the toggle
297
+ * should reflect the current repeat value.
298
+ */
299
+ const repeatCheckedValue = !(repeatValue === 'no-repeat' || currentValueForToggle === 'cover' && repeatValue === undefined);
300
+ const hasValue = hasBackgroundSizeValue(style);
301
+ const resetAllFilter = (0, _element.useCallback)(previousValue => {
302
+ return {
303
+ ...previousValue,
304
+ style: {
305
+ ...previousValue.style,
306
+ background: {
307
+ ...previousValue.style?.background,
308
+ backgroundRepeat: undefined,
309
+ backgroundSize: undefined
310
+ }
311
+ }
312
+ };
313
+ }, []);
314
+ const updateBackgroundSize = next => {
315
+ // When switching to 'contain' toggle the repeat off.
316
+ let nextRepeat = repeatValue;
317
+ if (next === 'contain') {
318
+ nextRepeat = 'no-repeat';
319
+ }
320
+ if (next === 'cover') {
321
+ nextRepeat = undefined;
322
+ }
323
+ if ((currentValueForToggle === 'cover' || currentValueForToggle === 'contain') && next === 'auto') {
324
+ nextRepeat = undefined;
325
+ }
326
+ onChange((0, _object.setImmutably)(style, ['background'], {
327
+ ...style?.background,
328
+ backgroundRepeat: nextRepeat,
329
+ backgroundSize: next
330
+ }));
331
+ };
332
+ const updateBackgroundPosition = next => {
333
+ onChange((0, _object.setImmutably)(style, ['background', 'backgroundPosition'], coordsToBackgroundPosition(next)));
334
+ };
335
+ const toggleIsRepeated = () => onChange((0, _object.setImmutably)(style, ['background', 'backgroundRepeat'], repeatCheckedValue === true ? 'no-repeat' : undefined));
336
+ const resetBackgroundSize = () => onChange((0, _object.setImmutably)(style, ['background'], {
337
+ ...style?.background,
338
+ backgroundPosition: undefined,
339
+ backgroundRepeat: undefined,
340
+ backgroundSize: undefined
341
+ }));
342
+ return (0, _react.createElement)(_components.__experimentalVStack, {
343
+ as: _components.__experimentalToolsPanelItem,
344
+ spacing: 2,
345
+ className: "single-column",
346
+ hasValue: () => hasValue,
347
+ label: (0, _i18n.__)('Size'),
348
+ onDeselect: resetBackgroundSize,
349
+ isShownByDefault: isShownByDefault,
350
+ resetAllFilter: resetAllFilter,
351
+ panelId: panelId
352
+ }, (0, _react.createElement)(_components.FocalPointPicker, {
353
+ __next40pxDefaultSize: true,
354
+ label: (0, _i18n.__)('Position'),
355
+ url: imageValue,
356
+ value: backgroundPositionToCoords(positionValue),
357
+ onChange: updateBackgroundPosition
358
+ }), (0, _react.createElement)(_components.__experimentalToggleGroupControl, {
359
+ size: '__unstable-large',
360
+ label: (0, _i18n.__)('Size'),
361
+ value: currentValueForToggle,
362
+ onChange: updateBackgroundSize,
363
+ isBlock: true,
364
+ help: backgroundSizeHelpText(sizeValue)
365
+ }, (0, _react.createElement)(_components.__experimentalToggleGroupControlOption, {
366
+ key: 'cover',
367
+ value: 'cover',
368
+ label: (0, _i18n.__)('Cover')
369
+ }), (0, _react.createElement)(_components.__experimentalToggleGroupControlOption, {
370
+ key: 'contain',
371
+ value: 'contain',
372
+ label: (0, _i18n.__)('Contain')
373
+ }), (0, _react.createElement)(_components.__experimentalToggleGroupControlOption, {
374
+ key: 'fixed',
375
+ value: 'auto',
376
+ label: (0, _i18n.__)('Fixed')
377
+ })), currentValueForToggle !== undefined && currentValueForToggle !== 'cover' && currentValueForToggle !== 'contain' ? (0, _react.createElement)(_components.__experimentalUnitControl, {
378
+ size: '__unstable-large',
379
+ onChange: updateBackgroundSize,
380
+ value: sizeValue
381
+ }) : null, currentValueForToggle !== 'cover' && (0, _react.createElement)(_components.ToggleControl, {
382
+ label: (0, _i18n.__)('Repeat'),
383
+ checked: repeatCheckedValue,
384
+ onChange: toggleIsRepeated
385
+ }));
386
+ }
387
+ function BackgroundToolsPanel({
388
+ resetAllFilter,
389
+ onChange,
390
+ value,
391
+ panelId,
392
+ children,
393
+ headerLabel
394
+ }) {
395
+ const resetAll = () => {
396
+ const updatedValue = resetAllFilter(value);
397
+ onChange(updatedValue);
398
+ };
399
+ return (0, _react.createElement)(_components.__experimentalVStack, {
400
+ as: _components.__experimentalToolsPanel,
401
+ spacing: 4,
402
+ label: headerLabel,
403
+ resetAll: resetAll,
404
+ panelId: panelId,
405
+ dropdownMenuProps: _utils.TOOLSPANEL_DROPDOWNMENU_PROPS
406
+ }, children);
407
+ }
408
+ function BackgroundPanel({
409
+ as: Wrapper = BackgroundToolsPanel,
410
+ value,
411
+ onChange,
412
+ inheritedValue = value,
413
+ settings,
414
+ panelId,
415
+ defaultControls = DEFAULT_CONTROLS,
416
+ defaultValues = {},
417
+ headerLabel = (0, _i18n.__)('Background image')
418
+ }) {
419
+ const resetAllFilter = (0, _element.useCallback)(previousValue => {
420
+ return {
421
+ ...previousValue,
422
+ background: {}
423
+ };
424
+ }, []);
425
+ const shouldShowBackgroundSizeControls = settings?.background?.backgroundSize;
426
+ return (0, _react.createElement)(Wrapper, {
427
+ resetAllFilter: resetAllFilter,
428
+ value: value,
429
+ onChange: onChange,
430
+ panelId: panelId,
431
+ headerLabel: headerLabel
432
+ }, (0, _react.createElement)(BackgroundImageToolsPanelItem, {
433
+ onChange: onChange,
434
+ panelId: panelId,
435
+ isShownByDefault: defaultControls.backgroundImage,
436
+ style: value,
437
+ inheritedValue: inheritedValue
438
+ }), shouldShowBackgroundSizeControls && (0, _react.createElement)(BackgroundSizeToolsPanelItem, {
439
+ onChange: onChange,
440
+ panelId: panelId,
441
+ isShownByDefault: defaultControls.backgroundSize,
442
+ style: value,
443
+ inheritedValue: inheritedValue,
444
+ defaultValues: defaultValues
445
+ }));
446
+ }
447
+ //# sourceMappingURL=background-panel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_components","_i18n","_notices","_url","_element","_data","_dom","_blob","_utils","_object","_mediaReplaceFlow","_store","IMAGE_BACKGROUND_TYPE","DEFAULT_CONTROLS","backgroundImage","backgroundSize","useHasBackgroundPanel","settings","Platform","OS","background","hasBackgroundSizeValue","style","backgroundPosition","undefined","hasBackgroundImageValue","id","url","backgroundSizeHelpText","value","__","coordsToBackgroundPosition","isNaN","x","y","exports","backgroundPositionToCoords","split","map","v","parseFloat","InspectorImagePreview","label","filename","imgUrl","imgLabel","getFilename","_react","createElement","__experimentalItemGroup","as","__experimentalHStack","justify","className","classnames","FlexItem","__experimentalTruncate","numberOfLines","VisuallyHidden","sprintf","BackgroundImageToolsPanelItem","panelId","isShownByDefault","onChange","inheritedValue","mediaUpload","useSelect","select","blockEditorStore","getSettings","title","replaceContainerRef","useRef","createErrorNotice","useDispatch","noticesStore","onUploadError","message","type","resetBackgroundImage","setImmutably","onSelectMedia","media","isBlobURL","media_type","source","onFilesDrop","filesList","allowedTypes","onFileChange","image","onError","resetAllFilter","useCallback","previousValue","hasValue","__experimentalToolsPanelItem","onDeselect","ref","default","mediaId","mediaURL","accept","onSelect","name","variant","MenuItem","onClick","toggleButton","focus","tabbable","find","current","click","DropZone","BackgroundSizeToolsPanelItem","defaultValues","sizeValue","repeatValue","backgroundRepeat","imageValue","positionValue","currentValueForToggle","repeatCheckedValue","updateBackgroundSize","next","nextRepeat","updateBackgroundPosition","toggleIsRepeated","resetBackgroundSize","__experimentalVStack","ToolsPanelItem","spacing","FocalPointPicker","__next40pxDefaultSize","__experimentalToggleGroupControl","size","isBlock","help","__experimentalToggleGroupControlOption","key","__experimentalUnitControl","ToggleControl","checked","BackgroundToolsPanel","children","headerLabel","resetAll","updatedValue","ToolsPanel","dropdownMenuProps","TOOLSPANEL_DROPDOWNMENU_PROPS","BackgroundPanel","Wrapper","defaultControls","shouldShowBackgroundSizeControls"],"sources":["@wordpress/block-editor/src/components/global-styles/background-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalVStack as VStack,\n\tDropZone,\n\tFlexItem,\n\tFocalPointPicker,\n\tMenuItem,\n\tVisuallyHidden,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalTruncate as Truncate,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { getFilename } from '@wordpress/url';\nimport { useCallback, Platform, useRef } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { focus } from '@wordpress/dom';\nimport { isBlobURL } from '@wordpress/blob';\n\n/**\n * Internal dependencies\n */\nimport { TOOLSPANEL_DROPDOWNMENU_PROPS } from './utils';\nimport { setImmutably } from '../../utils/object';\nimport MediaReplaceFlow from '../media-replace-flow';\nimport { store as blockEditorStore } from '../../store';\n\nconst IMAGE_BACKGROUND_TYPE = 'image';\nconst DEFAULT_CONTROLS = {\n\tbackgroundImage: true,\n\tbackgroundSize: false,\n};\n\n/**\n * Checks site settings to see if the background panel may be used.\n * `settings.background.backgroundSize` exists also,\n * but can only be used if settings?.background?.backgroundImage is `true`.\n *\n * @param {Object} settings Site settings\n * @return {boolean} Whether site settings has activated background panel.\n */\nexport function useHasBackgroundPanel( settings ) {\n\treturn Platform.OS === 'web' && settings?.background?.backgroundImage;\n}\n\n/**\n * Checks if there is a current value in the background size block support\n * attributes. Background size values include background size as well\n * as background position.\n *\n * @param {Object} style Style attribute.\n * @return {boolean} Whether the block has a background size value set.\n */\nexport function hasBackgroundSizeValue( style ) {\n\treturn (\n\t\tstyle?.background?.backgroundPosition !== undefined ||\n\t\tstyle?.background?.backgroundSize !== undefined\n\t);\n}\n\n/**\n * Checks if there is a current value in the background image block support\n * attributes.\n *\n * @param {Object} style Style attribute.\n * @return {boolean} Whether the block has a background image value set.\n */\nexport function hasBackgroundImageValue( style ) {\n\treturn (\n\t\t!! style?.background?.backgroundImage?.id ||\n\t\t!! style?.background?.backgroundImage?.url\n\t);\n}\n\n/**\n * Get the help text for the background size control.\n *\n * @param {string} value backgroundSize value.\n * @return {string} Translated help text.\n */\nfunction backgroundSizeHelpText( value ) {\n\tif ( value === 'cover' || value === undefined ) {\n\t\treturn __( 'Image covers the space evenly.' );\n\t}\n\tif ( value === 'contain' ) {\n\t\treturn __( 'Image is contained without distortion.' );\n\t}\n\treturn __( 'Specify a fixed width.' );\n}\n\n/**\n * Converts decimal x and y coords from FocalPointPicker to percentage-based values\n * to use as backgroundPosition value.\n *\n * @param {{x?:number, y?:number}} value FocalPointPicker coords.\n * @return {string} \t\t\t\t backgroundPosition value.\n */\nexport const coordsToBackgroundPosition = ( value ) => {\n\tif ( ! value || ( isNaN( value.x ) && isNaN( value.y ) ) ) {\n\t\treturn undefined;\n\t}\n\n\tconst x = isNaN( value.x ) ? 0.5 : value.x;\n\tconst y = isNaN( value.y ) ? 0.5 : value.y;\n\n\treturn `${ x * 100 }% ${ y * 100 }%`;\n};\n\n/**\n * Converts backgroundPosition value to x and y coords for FocalPointPicker.\n *\n * @param {string} value backgroundPosition value.\n * @return {{x?:number, y?:number}} FocalPointPicker coords.\n */\nexport const backgroundPositionToCoords = ( value ) => {\n\tif ( ! value ) {\n\t\treturn { x: undefined, y: undefined };\n\t}\n\n\tlet [ x, y ] = value.split( ' ' ).map( ( v ) => parseFloat( v ) / 100 );\n\tx = isNaN( x ) ? undefined : x;\n\ty = isNaN( y ) ? x : y;\n\n\treturn { x, y };\n};\n\nfunction InspectorImagePreview( { label, filename, url: imgUrl } ) {\n\tconst imgLabel =\n\t\tlabel || getFilename( imgUrl ) || __( 'Add background image' );\n\n\treturn (\n\t\t<ItemGroup as=\"span\">\n\t\t\t<HStack justify={ imgUrl ? 'flex-start' : 'center' } as=\"span\">\n\t\t\t\t{ imgUrl && (\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'block-editor-global-styles-background-panel__inspector-image-indicator-wrapper',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'has-image': imgUrl,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\taria-hidden\n\t\t\t\t\t>\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclassName=\"block-editor-global-styles-background-panel__inspector-image-indicator\"\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tbackgroundImage: `url(${ imgUrl })`,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t\t<FlexItem as=\"span\">\n\t\t\t\t\t<Truncate\n\t\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\t\tclassName=\"block-editor-global-styles-background-panel__inspector-media-replace-title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ imgLabel }\n\t\t\t\t\t</Truncate>\n\t\t\t\t\t<VisuallyHidden as=\"span\">\n\t\t\t\t\t\t{ filename\n\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %s: file name */\n\t\t\t\t\t\t\t\t\t__( 'Selected image: %s' ),\n\t\t\t\t\t\t\t\t\tfilename\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: __( 'No image selected' ) }\n\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</ItemGroup>\n\t);\n}\n\nfunction BackgroundImageToolsPanelItem( {\n\tpanelId,\n\tisShownByDefault,\n\tonChange,\n\tstyle,\n\tinheritedValue,\n} ) {\n\tconst mediaUpload = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings().mediaUpload,\n\t\t[]\n\t);\n\n\tconst { id, title, url } = style?.background?.backgroundImage || {\n\t\t...inheritedValue?.background?.backgroundImage,\n\t};\n\n\tconst replaceContainerRef = useRef();\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t};\n\n\tconst resetBackgroundImage = () =>\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tstyle,\n\t\t\t\t[ 'background', 'backgroundImage' ],\n\t\t\t\tundefined\n\t\t\t)\n\t\t);\n\n\tconst onSelectMedia = ( media ) => {\n\t\tif ( ! media || ! media.url ) {\n\t\t\tresetBackgroundImage();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// For media selections originated from a file upload.\n\t\tif (\n\t\t\t( media.media_type &&\n\t\t\t\tmedia.media_type !== IMAGE_BACKGROUND_TYPE ) ||\n\t\t\t( ! media.media_type &&\n\t\t\t\tmedia.type &&\n\t\t\t\tmedia.type !== IMAGE_BACKGROUND_TYPE )\n\t\t) {\n\t\t\tonUploadError(\n\t\t\t\t__( 'Only images can be used as a background image.' )\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\tonChange(\n\t\t\tsetImmutably( style, [ 'background', 'backgroundImage' ], {\n\t\t\t\turl: media.url,\n\t\t\t\tid: media.id,\n\t\t\t\tsource: 'file',\n\t\t\t\ttitle: media.title || undefined,\n\t\t\t} )\n\t\t);\n\t};\n\n\tconst onFilesDrop = ( filesList ) => {\n\t\tmediaUpload( {\n\t\t\tallowedTypes: [ IMAGE_BACKGROUND_TYPE ],\n\t\t\tfilesList,\n\t\t\tonFileChange( [ image ] ) {\n\t\t\t\tif ( isBlobURL( image?.url ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tonSelectMedia( image );\n\t\t\t},\n\t\t\tonError: onUploadError,\n\t\t} );\n\t};\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tstyle: {\n\t\t\t\t...previousValue.style,\n\t\t\t\tbackground: undefined,\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\tconst hasValue =\n\t\thasBackgroundImageValue( style ) ||\n\t\thasBackgroundImageValue( inheritedValue );\n\n\treturn (\n\t\t<ToolsPanelItem\n\t\t\tclassName=\"single-column\"\n\t\t\thasValue={ () => hasValue }\n\t\t\tlabel={ __( 'Background image' ) }\n\t\t\tonDeselect={ resetBackgroundImage }\n\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName=\"block-editor-global-styles-background-panel__inspector-media-replace-container\"\n\t\t\t\tref={ replaceContainerRef }\n\t\t\t>\n\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\tallowedTypes={ [ IMAGE_BACKGROUND_TYPE ] }\n\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\tname={\n\t\t\t\t\t\t<InspectorImagePreview\n\t\t\t\t\t\t\tlabel={ title }\n\t\t\t\t\t\t\tfilename={ title || __( 'Untitled' ) }\n\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t>\n\t\t\t\t\t{ hasValue && (\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tconst [ toggleButton ] = focus.tabbable.find(\n\t\t\t\t\t\t\t\t\treplaceContainerRef.current\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t// Focus the toggle button and close the dropdown menu.\n\t\t\t\t\t\t\t\t// This ensures similar behaviour as to selecting an image, where the dropdown is\n\t\t\t\t\t\t\t\t// closed and focus is redirected to the dropdown toggle button.\n\t\t\t\t\t\t\t\ttoggleButton?.focus();\n\t\t\t\t\t\t\t\ttoggleButton?.click();\n\t\t\t\t\t\t\t\tresetBackgroundImage();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Reset ' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t) }\n\t\t\t\t</MediaReplaceFlow>\n\t\t\t\t<DropZone\n\t\t\t\t\tonFilesDrop={ onFilesDrop }\n\t\t\t\t\tlabel={ __( 'Drop to upload' ) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</ToolsPanelItem>\n\t);\n}\n\nfunction BackgroundSizeToolsPanelItem( {\n\tpanelId,\n\tisShownByDefault,\n\tonChange,\n\tstyle,\n\tinheritedValue,\n\tdefaultValues,\n} ) {\n\tconst sizeValue =\n\t\tstyle?.background?.backgroundSize ||\n\t\tinheritedValue?.background?.backgroundSize;\n\tconst repeatValue =\n\t\tstyle?.background?.backgroundRepeat ||\n\t\tinheritedValue?.background?.backgroundRepeat;\n\tconst imageValue =\n\t\tstyle?.background?.backgroundImage?.url ||\n\t\tinheritedValue?.background?.backgroundImage?.url;\n\tconst positionValue =\n\t\tstyle?.background?.backgroundPosition ||\n\t\tinheritedValue?.background?.backgroundPosition;\n\n\t/*\n\t * An `undefined` value is replaced with any supplied\n\t * default control value for the toggle group control.\n\t * An empty string is treated as `auto` - this allows a user\n\t * to select \"Size\" and then enter a custom value, with an\n\t * empty value being treated as `auto`.\n\t */\n\tconst currentValueForToggle =\n\t\t( sizeValue !== undefined &&\n\t\t\tsizeValue !== 'cover' &&\n\t\t\tsizeValue !== 'contain' ) ||\n\t\tsizeValue === ''\n\t\t\t? 'auto'\n\t\t\t: sizeValue || defaultValues?.backgroundSize;\n\n\t/*\n\t * If the current value is `cover` and the repeat value is `undefined`, then\n\t * the toggle should be unchecked as the default state. Otherwise, the toggle\n\t * should reflect the current repeat value.\n\t */\n\tconst repeatCheckedValue = ! (\n\t\trepeatValue === 'no-repeat' ||\n\t\t( currentValueForToggle === 'cover' && repeatValue === undefined )\n\t);\n\n\tconst hasValue = hasBackgroundSizeValue( style );\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tstyle: {\n\t\t\t\t...previousValue.style,\n\t\t\t\tbackground: {\n\t\t\t\t\t...previousValue.style?.background,\n\t\t\t\t\tbackgroundRepeat: undefined,\n\t\t\t\t\tbackgroundSize: undefined,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\tconst updateBackgroundSize = ( next ) => {\n\t\t// When switching to 'contain' toggle the repeat off.\n\t\tlet nextRepeat = repeatValue;\n\n\t\tif ( next === 'contain' ) {\n\t\t\tnextRepeat = 'no-repeat';\n\t\t}\n\n\t\tif ( next === 'cover' ) {\n\t\t\tnextRepeat = undefined;\n\t\t}\n\n\t\tif (\n\t\t\t( currentValueForToggle === 'cover' ||\n\t\t\t\tcurrentValueForToggle === 'contain' ) &&\n\t\t\tnext === 'auto'\n\t\t) {\n\t\t\tnextRepeat = undefined;\n\t\t}\n\n\t\tonChange(\n\t\t\tsetImmutably( style, [ 'background' ], {\n\t\t\t\t...style?.background,\n\t\t\t\tbackgroundRepeat: nextRepeat,\n\t\t\t\tbackgroundSize: next,\n\t\t\t} )\n\t\t);\n\t};\n\n\tconst updateBackgroundPosition = ( next ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tstyle,\n\t\t\t\t[ 'background', 'backgroundPosition' ],\n\t\t\t\tcoordsToBackgroundPosition( next )\n\t\t\t)\n\t\t);\n\t};\n\n\tconst toggleIsRepeated = () =>\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tstyle,\n\t\t\t\t[ 'background', 'backgroundRepeat' ],\n\t\t\t\trepeatCheckedValue === true ? 'no-repeat' : undefined\n\t\t\t)\n\t\t);\n\n\tconst resetBackgroundSize = () =>\n\t\tonChange(\n\t\t\tsetImmutably( style, [ 'background' ], {\n\t\t\t\t...style?.background,\n\t\t\t\tbackgroundPosition: undefined,\n\t\t\t\tbackgroundRepeat: undefined,\n\t\t\t\tbackgroundSize: undefined,\n\t\t\t} )\n\t\t);\n\n\treturn (\n\t\t<VStack\n\t\t\tas={ ToolsPanelItem }\n\t\t\tspacing={ 2 }\n\t\t\tclassName=\"single-column\"\n\t\t\thasValue={ () => hasValue }\n\t\t\tlabel={ __( 'Size' ) }\n\t\t\tonDeselect={ resetBackgroundSize }\n\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t<FocalPointPicker\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tlabel={ __( 'Position' ) }\n\t\t\t\turl={ imageValue }\n\t\t\t\tvalue={ backgroundPositionToCoords( positionValue ) }\n\t\t\t\tonChange={ updateBackgroundPosition }\n\t\t\t/>\n\t\t\t<ToggleGroupControl\n\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\tlabel={ __( 'Size' ) }\n\t\t\t\tvalue={ currentValueForToggle }\n\t\t\t\tonChange={ updateBackgroundSize }\n\t\t\t\tisBlock\n\t\t\t\thelp={ backgroundSizeHelpText( sizeValue ) }\n\t\t\t>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tkey={ 'cover' }\n\t\t\t\t\tvalue={ 'cover' }\n\t\t\t\t\tlabel={ __( 'Cover' ) }\n\t\t\t\t/>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tkey={ 'contain' }\n\t\t\t\t\tvalue={ 'contain' }\n\t\t\t\t\tlabel={ __( 'Contain' ) }\n\t\t\t\t/>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tkey={ 'fixed' }\n\t\t\t\t\tvalue={ 'auto' }\n\t\t\t\t\tlabel={ __( 'Fixed' ) }\n\t\t\t\t/>\n\t\t\t</ToggleGroupControl>\n\t\t\t{ currentValueForToggle !== undefined &&\n\t\t\tcurrentValueForToggle !== 'cover' &&\n\t\t\tcurrentValueForToggle !== 'contain' ? (\n\t\t\t\t<UnitControl\n\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\tonChange={ updateBackgroundSize }\n\t\t\t\t\tvalue={ sizeValue }\n\t\t\t\t/>\n\t\t\t) : null }\n\t\t\t{ currentValueForToggle !== 'cover' && (\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Repeat' ) }\n\t\t\t\t\tchecked={ repeatCheckedValue }\n\t\t\t\t\tonChange={ toggleIsRepeated }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n\nfunction BackgroundToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n\theaderLabel,\n} ) {\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<VStack\n\t\t\tas={ ToolsPanel }\n\t\t\tspacing={ 4 }\n\t\t\tlabel={ headerLabel }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\tdropdownMenuProps={ TOOLSPANEL_DROPDOWNMENU_PROPS }\n\t\t>\n\t\t\t{ children }\n\t\t</VStack>\n\t);\n}\n\nexport default function BackgroundPanel( {\n\tas: Wrapper = BackgroundToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n\tdefaultValues = {},\n\theaderLabel = __( 'Background image' ),\n} ) {\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tbackground: {},\n\t\t};\n\t}, [] );\n\tconst shouldShowBackgroundSizeControls =\n\t\tsettings?.background?.backgroundSize;\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t\theaderLabel={ headerLabel }\n\t\t>\n\t\t\t<BackgroundImageToolsPanelItem\n\t\t\t\tonChange={ onChange }\n\t\t\t\tpanelId={ panelId }\n\t\t\t\tisShownByDefault={ defaultControls.backgroundImage }\n\t\t\t\tstyle={ value }\n\t\t\t\tinheritedValue={ inheritedValue }\n\t\t\t/>\n\t\t\t{ shouldShowBackgroundSizeControls && (\n\t\t\t\t<BackgroundSizeToolsPanelItem\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t\tisShownByDefault={ defaultControls.backgroundSize }\n\t\t\t\t\tstyle={ value }\n\t\t\t\t\tinheritedValue={ inheritedValue }\n\t\t\t\t\tdefaultValues={ defaultValues }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_element","_i18n","_borderRadiusControl","_interopRequireDefault","_hooks","_utils","_getBlockSettings","_object","_border","_shadowPanelComponents","useHasBorderPanel","settings","controls","Object","values","useHasBorderPanelControls","some","Boolean","hasBorderColor","useHasBorderColorControl","hasBorderRadius","useHasBorderRadiusControl","hasBorderStyle","useHasBorderStyleControl","hasBorderWidth","useHasBorderWidthControl","hasShadow","useHasShadowControl","border","color","radius","style","width","shadows","useShadowPresets","shadow","length","BorderToolsPanel","resetAllFilter","onChange","value","panelId","children","label","resetAll","updatedValue","_react","createElement","__experimentalToolsPanel","dropdownMenuProps","TOOLSPANEL_DROPDOWNMENU_PROPS","DEFAULT_CONTROLS","BorderPanel","as","Wrapper","inheritedValue","name","defaultControls","_settings$shadow$pres","_overrideOrigins","colors","useColorsPerOrigin","decodeValue","useCallback","rawValue","getValueFromVariable","encodeColorValue","colorValue","allColors","flatMap","originColors","colorObject","find","slug","useMemo","hasSplitBorders","borderValue","forEach","side","undefined","setBorder","newBorder","showBorderColor","showBorderStyle","showBorderWidth","showBorderRadius","borderRadiusValues","setBorderRadius","newBorderRadius","borderValues","entries","hasShadowControl","shadowPresets","presets","overriddenShadowPresets","overrideOrigins","setShadow","newValue","shadowName","setImmutably","resetShadow","resetBorder","onBorderChange","updatedBorder","previousValue","showBorderByDefault","hasBorderControl","useBorderPanelLabel","blockName","__experimentalToolsPanelItem","hasValue","isDefinedBorder","__","onDeselect","isShownByDefault","__experimentalBorderBoxControl","enableAlpha","enableStyle","popoverOffset","popoverPlacement","__experimentalIsRenderedInSidebar","size","hideLabelFromVision","default","BaseControl","VisualLabel","__experimentalItemGroup","isBordered","isSeparated","ShadowPopover","onShadowChange"],"sources":["@wordpress/block-editor/src/components/global-styles/border-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalBorderBoxControl as BorderBoxControl,\n\t__experimentalHasSplitBorders as hasSplitBorders,\n\t__experimentalIsDefinedBorder as isDefinedBorder,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalItemGroup as ItemGroup,\n\tBaseControl,\n} from '@wordpress/components';\nimport { useCallback, useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BorderRadiusControl from '../border-radius-control';\nimport { useColorsPerOrigin } from './hooks';\nimport { getValueFromVariable, TOOLSPANEL_DROPDOWNMENU_PROPS } from './utils';\nimport { overrideOrigins } from '../../store/get-block-settings';\nimport { setImmutably } from '../../utils/object';\nimport { useBorderPanelLabel } from '../../hooks/border';\nimport { ShadowPopover, useShadowPresets } from './shadow-panel-components';\n\nexport function useHasBorderPanel( settings ) {\n\tconst controls = Object.values( useHasBorderPanelControls( settings ) );\n\treturn controls.some( Boolean );\n}\n\nexport function useHasBorderPanelControls( settings ) {\n\tconst controls = {\n\t\thasBorderColor: useHasBorderColorControl( settings ),\n\t\thasBorderRadius: useHasBorderRadiusControl( settings ),\n\t\thasBorderStyle: useHasBorderStyleControl( settings ),\n\t\thasBorderWidth: useHasBorderWidthControl( settings ),\n\t\thasShadow: useHasShadowControl( settings ),\n\t};\n\n\treturn controls;\n}\n\nfunction useHasBorderColorControl( settings ) {\n\treturn settings?.border?.color;\n}\n\nfunction useHasBorderRadiusControl( settings ) {\n\treturn settings?.border?.radius;\n}\n\nfunction useHasBorderStyleControl( settings ) {\n\treturn settings?.border?.style;\n}\n\nfunction useHasBorderWidthControl( settings ) {\n\treturn settings?.border?.width;\n}\n\nfunction useHasShadowControl( settings ) {\n\tconst shadows = useShadowPresets( settings );\n\treturn !! settings?.shadow && shadows.length > 0;\n}\n\nfunction BorderToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n\tlabel,\n} ) {\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ label }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\tdropdownMenuProps={ TOOLSPANEL_DROPDOWNMENU_PROPS }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\tradius: true,\n\tcolor: true,\n\twidth: true,\n\tshadow: false,\n};\n\nexport default function BorderPanel( {\n\tas: Wrapper = BorderToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tname,\n\tdefaultControls = DEFAULT_CONTROLS,\n} ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst decodeValue = useCallback(\n\t\t( rawValue ) => getValueFromVariable( { settings }, '', rawValue ),\n\t\t[ settings ]\n\t);\n\tconst encodeColorValue = ( colorValue ) => {\n\t\tconst allColors = colors.flatMap(\n\t\t\t( { colors: originColors } ) => originColors\n\t\t);\n\t\tconst colorObject = allColors.find(\n\t\t\t( { color } ) => color === colorValue\n\t\t);\n\t\treturn colorObject\n\t\t\t? 'var:preset|color|' + colorObject.slug\n\t\t\t: colorValue;\n\t};\n\tconst border = useMemo( () => {\n\t\tif ( hasSplitBorders( inheritedValue?.border ) ) {\n\t\t\tconst borderValue = { ...inheritedValue?.border };\n\t\t\t[ 'top', 'right', 'bottom', 'left' ].forEach( ( side ) => {\n\t\t\t\tborderValue[ side ] = {\n\t\t\t\t\t...borderValue[ side ],\n\t\t\t\t\tcolor: decodeValue( borderValue[ side ]?.color ),\n\t\t\t\t};\n\t\t\t} );\n\t\t\treturn borderValue;\n\t\t}\n\t\treturn {\n\t\t\t...inheritedValue?.border,\n\t\t\tcolor: inheritedValue?.border?.color\n\t\t\t\t? decodeValue( inheritedValue?.border?.color )\n\t\t\t\t: undefined,\n\t\t};\n\t}, [ inheritedValue?.border, decodeValue ] );\n\tconst setBorder = ( newBorder ) =>\n\t\tonChange( { ...value, border: newBorder } );\n\tconst showBorderColor = useHasBorderColorControl( settings );\n\tconst showBorderStyle = useHasBorderStyleControl( settings );\n\tconst showBorderWidth = useHasBorderWidthControl( settings );\n\n\t// Border radius.\n\tconst showBorderRadius = useHasBorderRadiusControl( settings );\n\tconst borderRadiusValues = decodeValue( border?.radius );\n\tconst setBorderRadius = ( newBorderRadius ) =>\n\t\tsetBorder( { ...border, radius: newBorderRadius } );\n\tconst hasBorderRadius = () => {\n\t\tconst borderValues = value?.border?.radius;\n\t\tif ( typeof borderValues === 'object' ) {\n\t\t\treturn Object.entries( borderValues ).some( Boolean );\n\t\t}\n\t\treturn !! borderValues;\n\t};\n\tconst hasShadowControl = useHasShadowControl( settings );\n\n\t// Shadow\n\tconst shadow = decodeValue( inheritedValue?.shadow );\n\tconst shadowPresets = settings?.shadow?.presets ?? {};\n\tconst overriddenShadowPresets = overrideOrigins( shadowPresets ) ?? [];\n\tconst setShadow = ( newValue ) => {\n\t\tconst slug = overriddenShadowPresets?.find(\n\t\t\t( { shadow: shadowName } ) => shadowName === newValue\n\t\t)?.slug;\n\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'shadow' ],\n\t\t\t\tslug ? `var:preset|shadow|${ slug }` : newValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasShadow = () => !! value?.shadow;\n\tconst resetShadow = () => setShadow( undefined );\n\n\tconst resetBorder = () => {\n\t\tif ( hasBorderRadius() ) {\n\t\t\treturn setBorder( { radius: value?.border?.radius } );\n\t\t}\n\n\t\tsetBorder( undefined );\n\t};\n\n\tconst onBorderChange = ( newBorder ) => {\n\t\t// Ensure we have a visible border style when a border width or\n\t\t// color is being selected.\n\t\tconst updatedBorder = { ...newBorder };\n\n\t\tif ( hasSplitBorders( updatedBorder ) ) {\n\t\t\t[ 'top', 'right', 'bottom', 'left' ].forEach( ( side ) => {\n\t\t\t\tif ( updatedBorder[ side ] ) {\n\t\t\t\t\tupdatedBorder[ side ] = {\n\t\t\t\t\t\t...updatedBorder[ side ],\n\t\t\t\t\t\tcolor: encodeColorValue( updatedBorder[ side ]?.color ),\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t} );\n\t\t} else if ( updatedBorder ) {\n\t\t\tupdatedBorder.color = encodeColorValue( updatedBorder.color );\n\t\t}\n\n\t\t// As radius is maintained separately to color, style, and width\n\t\t// maintain its value. Undefined values here will be cleaned when\n\t\t// global styles are saved.\n\t\tsetBorder( { radius: border?.radius, ...updatedBorder } );\n\t};\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tborder: undefined,\n\t\t\tshadow: undefined,\n\t\t};\n\t}, [] );\n\n\tconst showBorderByDefault =\n\t\tdefaultControls?.color || defaultControls?.width;\n\n\tconst hasBorderControl =\n\t\tshowBorderColor ||\n\t\tshowBorderStyle ||\n\t\tshowBorderWidth ||\n\t\tshowBorderRadius;\n\n\tconst label = useBorderPanelLabel( {\n\t\tblockName: name,\n\t\thasShadowControl,\n\t\thasBorderControl,\n\t} );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t\tlabel={ label }\n\t\t>\n\t\t\t{ ( showBorderWidth || showBorderColor ) && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => isDefinedBorder( value?.border ) }\n\t\t\t\t\tlabel={ __( 'Border' ) }\n\t\t\t\t\tonDeselect={ () => resetBorder() }\n\t\t\t\t\tisShownByDefault={ showBorderByDefault }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<BorderBoxControl\n\t\t\t\t\t\tcolors={ colors }\n\t\t\t\t\t\tenableAlpha\n\t\t\t\t\t\tenableStyle={ showBorderStyle }\n\t\t\t\t\t\tonChange={ onBorderChange }\n\t\t\t\t\t\tpopoverOffset={ 40 }\n\t\t\t\t\t\tpopoverPlacement=\"left-start\"\n\t\t\t\t\t\tvalue={ border }\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\thideLabelFromVision={ ! hasShadowControl }\n\t\t\t\t\t\tlabel={ __( 'Border' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showBorderRadius && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasBorderRadius }\n\t\t\t\t\tlabel={ __( 'Radius' ) }\n\t\t\t\t\tonDeselect={ () => setBorderRadius( undefined ) }\n\t\t\t\t\tisShownByDefault={ defaultControls.radius }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<BorderRadiusControl\n\t\t\t\t\t\tvalues={ borderRadiusValues }\n\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\tsetBorderRadius( newValue || undefined );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasShadowControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Shadow' ) }\n\t\t\t\t\thasValue={ hasShadow }\n\t\t\t\t\tonDeselect={ resetShadow }\n\t\t\t\t\tisShownByDefault={ defaultControls.shadow }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t{ hasBorderControl ? (\n\t\t\t\t\t\t<BaseControl.VisualLabel as=\"legend\">\n\t\t\t\t\t\t\t{ __( 'Shadow' ) }\n\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t) : null }\n\n\t\t\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t\t\t<ShadowPopover\n\t\t\t\t\t\t\tshadow={ shadow }\n\t\t\t\t\t\t\tonShadowChange={ setShadow }\n\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ItemGroup>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_components","require","_element","_i18n","_borderRadiusControl","_interopRequireDefault","_hooks","_utils","_getBlockSettings","_object","_border","_shadowPanelComponents","useHasBorderPanel","settings","controls","Object","values","useHasBorderPanelControls","some","Boolean","hasBorderColor","useHasBorderColorControl","hasBorderRadius","useHasBorderRadiusControl","hasBorderStyle","useHasBorderStyleControl","hasBorderWidth","useHasBorderWidthControl","hasShadow","useHasShadowControl","border","color","radius","style","width","shadows","useShadowPresets","shadow","length","BorderToolsPanel","resetAllFilter","onChange","value","panelId","children","label","resetAll","updatedValue","_react","createElement","__experimentalToolsPanel","dropdownMenuProps","TOOLSPANEL_DROPDOWNMENU_PROPS","DEFAULT_CONTROLS","BorderPanel","as","Wrapper","inheritedValue","name","defaultControls","_settings$shadow$pres","_overrideOrigins","colors","useColorsPerOrigin","decodeValue","useCallback","rawValue","getValueFromVariable","encodeColorValue","colorValue","allColors","flatMap","originColors","colorObject","find","slug","useMemo","hasSplitBorders","borderValue","forEach","side","undefined","setBorder","newBorder","showBorderColor","showBorderStyle","showBorderWidth","showBorderRadius","borderRadiusValues","setBorderRadius","newBorderRadius","borderValues","entries","hasShadowControl","shadowPresets","presets","overriddenShadowPresets","overrideOrigins","setShadow","newValue","shadowName","setImmutably","resetShadow","resetBorder","onBorderChange","updatedBorder","previousValue","showBorderByDefault","hasBorderControl","useBorderPanelLabel","blockName","__experimentalToolsPanelItem","hasValue","isDefinedBorder","__","onDeselect","isShownByDefault","__experimentalBorderBoxControl","enableAlpha","enableStyle","popoverOffset","popoverPlacement","__experimentalIsRenderedInSidebar","size","hideLabelFromVision","default","BaseControl","VisualLabel","__experimentalItemGroup","isBordered","isSeparated","ShadowPopover","onShadowChange"],"sources":["@wordpress/block-editor/src/components/global-styles/border-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalBorderBoxControl as BorderBoxControl,\n\t__experimentalHasSplitBorders as hasSplitBorders,\n\t__experimentalIsDefinedBorder as isDefinedBorder,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalItemGroup as ItemGroup,\n\tBaseControl,\n} from '@wordpress/components';\nimport { useCallback, useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BorderRadiusControl from '../border-radius-control';\nimport { useColorsPerOrigin } from './hooks';\nimport { getValueFromVariable, TOOLSPANEL_DROPDOWNMENU_PROPS } from './utils';\nimport { overrideOrigins } from '../../store/get-block-settings';\nimport { setImmutably } from '../../utils/object';\nimport { useBorderPanelLabel } from '../../hooks/border';\nimport { ShadowPopover, useShadowPresets } from './shadow-panel-components';\n\nexport function useHasBorderPanel( settings ) {\n\tconst controls = Object.values( useHasBorderPanelControls( settings ) );\n\treturn controls.some( Boolean );\n}\n\nexport function useHasBorderPanelControls( settings ) {\n\tconst controls = {\n\t\thasBorderColor: useHasBorderColorControl( settings ),\n\t\thasBorderRadius: useHasBorderRadiusControl( settings ),\n\t\thasBorderStyle: useHasBorderStyleControl( settings ),\n\t\thasBorderWidth: useHasBorderWidthControl( settings ),\n\t\thasShadow: useHasShadowControl( settings ),\n\t};\n\n\treturn controls;\n}\n\nfunction useHasBorderColorControl( settings ) {\n\treturn settings?.border?.color;\n}\n\nfunction useHasBorderRadiusControl( settings ) {\n\treturn settings?.border?.radius;\n}\n\nfunction useHasBorderStyleControl( settings ) {\n\treturn settings?.border?.style;\n}\n\nfunction useHasBorderWidthControl( settings ) {\n\treturn settings?.border?.width;\n}\n\nfunction useHasShadowControl( settings ) {\n\tconst shadows = useShadowPresets( settings );\n\treturn !! settings?.shadow && shadows.length > 0;\n}\n\nfunction BorderToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n\tlabel,\n} ) {\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ label }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\tdropdownMenuProps={ TOOLSPANEL_DROPDOWNMENU_PROPS }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\tradius: true,\n\tcolor: true,\n\twidth: true,\n\tshadow: false,\n};\n\nexport default function BorderPanel( {\n\tas: Wrapper = BorderToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tname,\n\tdefaultControls = DEFAULT_CONTROLS,\n} ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst decodeValue = useCallback(\n\t\t( rawValue ) => getValueFromVariable( { settings }, '', rawValue ),\n\t\t[ settings ]\n\t);\n\tconst encodeColorValue = ( colorValue ) => {\n\t\tconst allColors = colors.flatMap(\n\t\t\t( { colors: originColors } ) => originColors\n\t\t);\n\t\tconst colorObject = allColors.find(\n\t\t\t( { color } ) => color === colorValue\n\t\t);\n\t\treturn colorObject\n\t\t\t? 'var:preset|color|' + colorObject.slug\n\t\t\t: colorValue;\n\t};\n\tconst border = useMemo( () => {\n\t\tif ( hasSplitBorders( inheritedValue?.border ) ) {\n\t\t\tconst borderValue = { ...inheritedValue?.border };\n\t\t\t[ 'top', 'right', 'bottom', 'left' ].forEach( ( side ) => {\n\t\t\t\tborderValue[ side ] = {\n\t\t\t\t\t...borderValue[ side ],\n\t\t\t\t\tcolor: decodeValue( borderValue[ side ]?.color ),\n\t\t\t\t};\n\t\t\t} );\n\t\t\treturn borderValue;\n\t\t}\n\t\treturn {\n\t\t\t...inheritedValue?.border,\n\t\t\tcolor: inheritedValue?.border?.color\n\t\t\t\t? decodeValue( inheritedValue?.border?.color )\n\t\t\t\t: undefined,\n\t\t};\n\t}, [ inheritedValue?.border, decodeValue ] );\n\tconst setBorder = ( newBorder ) =>\n\t\tonChange( { ...value, border: newBorder } );\n\tconst showBorderColor = useHasBorderColorControl( settings );\n\tconst showBorderStyle = useHasBorderStyleControl( settings );\n\tconst showBorderWidth = useHasBorderWidthControl( settings );\n\n\t// Border radius.\n\tconst showBorderRadius = useHasBorderRadiusControl( settings );\n\tconst borderRadiusValues = decodeValue( border?.radius );\n\tconst setBorderRadius = ( newBorderRadius ) =>\n\t\tsetBorder( { ...border, radius: newBorderRadius } );\n\tconst hasBorderRadius = () => {\n\t\tconst borderValues = value?.border?.radius;\n\t\tif ( typeof borderValues === 'object' ) {\n\t\t\treturn Object.entries( borderValues ).some( Boolean );\n\t\t}\n\t\treturn !! borderValues;\n\t};\n\tconst hasShadowControl = useHasShadowControl( settings );\n\n\t// Shadow\n\tconst shadow = decodeValue( inheritedValue?.shadow );\n\tconst shadowPresets = settings?.shadow?.presets ?? {};\n\tconst overriddenShadowPresets = overrideOrigins( shadowPresets ) ?? [];\n\tconst setShadow = ( newValue ) => {\n\t\tconst slug = overriddenShadowPresets?.find(\n\t\t\t( { shadow: shadowName } ) => shadowName === newValue\n\t\t)?.slug;\n\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'shadow' ],\n\t\t\t\tslug ? `var:preset|shadow|${ slug }` : newValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasShadow = () => !! value?.shadow;\n\tconst resetShadow = () => setShadow( undefined );\n\n\tconst resetBorder = () => {\n\t\tif ( hasBorderRadius() ) {\n\t\t\treturn setBorder( { radius: value?.border?.radius } );\n\t\t}\n\n\t\tsetBorder( undefined );\n\t};\n\n\tconst onBorderChange = ( newBorder ) => {\n\t\t// Ensure we have a visible border style when a border width or\n\t\t// color is being selected.\n\t\tconst updatedBorder = { ...newBorder };\n\n\t\tif ( hasSplitBorders( updatedBorder ) ) {\n\t\t\t[ 'top', 'right', 'bottom', 'left' ].forEach( ( side ) => {\n\t\t\t\tif ( updatedBorder[ side ] ) {\n\t\t\t\t\tupdatedBorder[ side ] = {\n\t\t\t\t\t\t...updatedBorder[ side ],\n\t\t\t\t\t\tcolor: encodeColorValue( updatedBorder[ side ]?.color ),\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t} );\n\t\t} else if ( updatedBorder ) {\n\t\t\tupdatedBorder.color = encodeColorValue( updatedBorder.color );\n\t\t}\n\n\t\t// As radius is maintained separately to color, style, and width\n\t\t// maintain its value. Undefined values here will be cleaned when\n\t\t// global styles are saved.\n\t\tsetBorder( { radius: border?.radius, ...updatedBorder } );\n\t};\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tborder: undefined,\n\t\t\tshadow: undefined,\n\t\t};\n\t}, [] );\n\n\tconst showBorderByDefault =\n\t\tdefaultControls?.color || defaultControls?.width;\n\n\tconst hasBorderControl =\n\t\tshowBorderColor ||\n\t\tshowBorderStyle ||\n\t\tshowBorderWidth ||\n\t\tshowBorderRadius;\n\n\tconst label = useBorderPanelLabel( {\n\t\tblockName: name,\n\t\thasShadowControl,\n\t\thasBorderControl,\n\t} );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t\tlabel={ label }\n\t\t>\n\t\t\t{ ( showBorderWidth || showBorderColor ) && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => isDefinedBorder( value?.border ) }\n\t\t\t\t\tlabel={ __( 'Border' ) }\n\t\t\t\t\tonDeselect={ () => resetBorder() }\n\t\t\t\t\tisShownByDefault={ showBorderByDefault }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<BorderBoxControl\n\t\t\t\t\t\tcolors={ colors }\n\t\t\t\t\t\tenableAlpha\n\t\t\t\t\t\tenableStyle={ showBorderStyle }\n\t\t\t\t\t\tonChange={ onBorderChange }\n\t\t\t\t\t\tpopoverOffset={ 40 }\n\t\t\t\t\t\tpopoverPlacement=\"left-start\"\n\t\t\t\t\t\tvalue={ border }\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\thideLabelFromVision={ ! hasShadowControl }\n\t\t\t\t\t\tlabel={ __( 'Border' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ showBorderRadius && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ hasBorderRadius }\n\t\t\t\t\tlabel={ __( 'Radius' ) }\n\t\t\t\t\tonDeselect={ () => setBorderRadius( undefined ) }\n\t\t\t\t\tisShownByDefault={ defaultControls.radius }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<BorderRadiusControl\n\t\t\t\t\t\tvalues={ borderRadiusValues }\n\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\tsetBorderRadius( newValue || undefined );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasShadowControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Shadow' ) }\n\t\t\t\t\thasValue={ hasShadow }\n\t\t\t\t\tonDeselect={ resetShadow }\n\t\t\t\t\tisShownByDefault={ defaultControls.shadow }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t{ hasBorderControl ? (\n\t\t\t\t\t\t<BaseControl.VisualLabel as=\"legend\">\n\t\t\t\t\t\t\t{ __( 'Shadow' ) }\n\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t) : null }\n\n\t\t\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t\t\t<ShadowPopover\n\t\t\t\t\t\t\tshadow={ shadow }\n\t\t\t\t\t\t\tonShadowChange={ setShadow }\n\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ItemGroup>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -82,10 +82,11 @@ function ColorToolsPanel({
82
82
  onChange(updatedValue);
83
83
  };
84
84
  return (0, _react.createElement)(_components.__experimentalToolsPanel, {
85
- label: (0, _i18n.__)('Color'),
85
+ label: (0, _i18n.__)('Elements'),
86
86
  resetAll: resetAll,
87
87
  panelId: panelId,
88
88
  hasInnerWrapper: true,
89
+ headingLevel: 3,
89
90
  className: "color-block-support-panel",
90
91
  __experimentalFirstVisibleItemClass: "first",
91
92
  __experimentalLastVisibleItemClass: "last",