@wordpress/block-editor 12.2.0 → 12.3.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 (1673) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/autocompleters/block.js +1 -3
  3. package/build/autocompleters/block.js.map +1 -1
  4. package/build/components/alignment-control/ui.js +9 -11
  5. package/build/components/alignment-control/ui.js.map +1 -1
  6. package/build/components/autocomplete/index.js +3 -4
  7. package/build/components/autocomplete/index.js.map +1 -1
  8. package/build/components/block-actions/index.js +8 -12
  9. package/build/components/block-actions/index.js.map +1 -1
  10. package/build/components/block-alignment-control/ui.js +17 -21
  11. package/build/components/block-alignment-control/ui.js.map +1 -1
  12. package/build/components/block-alignment-control/ui.native.js +14 -17
  13. package/build/components/block-alignment-control/ui.native.js.map +1 -1
  14. package/build/components/block-alignment-control/use-available-alignments.js +5 -10
  15. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  16. package/build/components/block-alignment-matrix-control/index.js +4 -6
  17. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  18. package/build/components/block-breadcrumb/index.js +3 -4
  19. package/build/components/block-breadcrumb/index.js.map +1 -1
  20. package/build/components/block-caption/index.native.js +30 -35
  21. package/build/components/block-caption/index.native.js.map +1 -1
  22. package/build/components/block-card/index.js +7 -9
  23. package/build/components/block-card/index.js.map +1 -1
  24. package/build/components/block-compare/block-view.js +8 -9
  25. package/build/components/block-compare/block-view.js.map +1 -1
  26. package/build/components/block-compare/index.js +7 -9
  27. package/build/components/block-compare/index.js.map +1 -1
  28. package/build/components/block-context/index.js +4 -5
  29. package/build/components/block-context/index.js.map +1 -1
  30. package/build/components/block-controls/fill.js +15 -22
  31. package/build/components/block-controls/fill.js.map +1 -1
  32. package/build/components/block-controls/hook.js +1 -3
  33. package/build/components/block-controls/hook.js.map +1 -1
  34. package/build/components/block-controls/slot.js +28 -18
  35. package/build/components/block-controls/slot.js.map +1 -1
  36. package/build/components/block-controls/slot.native.js +7 -17
  37. package/build/components/block-controls/slot.native.js.map +1 -1
  38. package/build/components/block-draggable/draggable-chip.js +5 -6
  39. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  40. package/build/components/block-draggable/draggable-chip.native.js +3 -4
  41. package/build/components/block-draggable/draggable-chip.native.js.map +1 -1
  42. package/build/components/block-draggable/dropping-insertion-point.native.js +6 -7
  43. package/build/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  44. package/build/components/block-draggable/index.js +15 -16
  45. package/build/components/block-draggable/index.js.map +1 -1
  46. package/build/components/block-draggable/index.native.js +43 -58
  47. package/build/components/block-draggable/index.native.js.map +1 -1
  48. package/build/components/block-edit/edit.js +1 -4
  49. package/build/components/block-edit/edit.js.map +1 -1
  50. package/build/components/block-edit/edit.native.js +1 -4
  51. package/build/components/block-edit/edit.native.js.map +1 -1
  52. package/build/components/block-edit-visually-button/index.js +3 -4
  53. package/build/components/block-edit-visually-button/index.js.map +1 -1
  54. package/build/components/block-full-height-alignment-control/index.js +6 -7
  55. package/build/components/block-full-height-alignment-control/index.js.map +1 -1
  56. package/build/components/block-icon/index.js +7 -11
  57. package/build/components/block-icon/index.js.map +1 -1
  58. package/build/components/block-icon/index.native.js +9 -13
  59. package/build/components/block-icon/index.native.js.map +1 -1
  60. package/build/components/block-inspector/index.js +36 -46
  61. package/build/components/block-inspector/index.js.map +1 -1
  62. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js +2 -2
  63. package/build/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  64. package/build/components/block-list/block-html.js +3 -4
  65. package/build/components/block-list/block-html.js.map +1 -1
  66. package/build/components/block-list/block-invalid-warning.js +3 -4
  67. package/build/components/block-list/block-invalid-warning.js.map +1 -1
  68. package/build/components/block-list/block-invalid-warning.native.js +10 -15
  69. package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
  70. package/build/components/block-list/block-list-context.native.js +5 -11
  71. package/build/components/block-list/block-list-context.native.js.map +1 -1
  72. package/build/components/block-list/block-list-item-cell.native.js +5 -6
  73. package/build/components/block-list/block-list-item-cell.native.js.map +1 -1
  74. package/build/components/block-list/block-list-item.native.js +17 -18
  75. package/build/components/block-list/block-list-item.native.js.map +1 -1
  76. package/build/components/block-list/block-outline.native.js +8 -9
  77. package/build/components/block-list/block-outline.native.js.map +1 -1
  78. package/build/components/block-list/block-selection-button.native.js +10 -12
  79. package/build/components/block-list/block-selection-button.native.js.map +1 -1
  80. package/build/components/block-list/block.js +39 -46
  81. package/build/components/block-list/block.js.map +1 -1
  82. package/build/components/block-list/block.native.js +55 -68
  83. package/build/components/block-list/block.native.js.map +1 -1
  84. package/build/components/block-list/index.js +12 -15
  85. package/build/components/block-list/index.js.map +1 -1
  86. package/build/components/block-list/index.native.js +77 -86
  87. package/build/components/block-list/index.native.js.map +1 -1
  88. package/build/components/block-list/insertion-point.native.js +4 -5
  89. package/build/components/block-list/insertion-point.native.js.map +1 -1
  90. package/build/components/block-list/layout.js +6 -9
  91. package/build/components/block-list/layout.js.map +1 -1
  92. package/build/components/block-list/subdirectory-icon.js +10 -13
  93. package/build/components/block-list/subdirectory-icon.js.map +1 -1
  94. package/build/components/block-list/use-block-props/index.js +15 -11
  95. package/build/components/block-list/use-block-props/index.js.map +1 -1
  96. package/build/components/block-list/use-block-props/index.native.js +1 -2
  97. package/build/components/block-list/use-block-props/index.native.js.map +1 -1
  98. package/build/components/block-list/use-block-props/use-block-custom-class-name.js +2 -2
  99. package/build/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
  100. package/build/components/block-list/use-block-props/use-block-default-class-name.js +1 -1
  101. package/build/components/block-list/use-block-props/use-block-default-class-name.js.map +1 -1
  102. package/build/components/block-list/use-in-between-inserter.js +1 -3
  103. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  104. package/build/components/block-list-appender/index.js +16 -15
  105. package/build/components/block-list-appender/index.js.map +1 -1
  106. package/build/components/block-list-appender/index.native.js +9 -11
  107. package/build/components/block-list-appender/index.native.js.map +1 -1
  108. package/build/components/block-lock/menu-item.js +3 -4
  109. package/build/components/block-lock/menu-item.js.map +1 -1
  110. package/build/components/block-lock/modal.js +6 -9
  111. package/build/components/block-lock/modal.js.map +1 -1
  112. package/build/components/block-lock/toolbar.js +4 -10
  113. package/build/components/block-lock/toolbar.js.map +1 -1
  114. package/build/components/block-mobile-toolbar/block-actions-menu.native.js +49 -67
  115. package/build/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  116. package/build/components/block-mobile-toolbar/index.native.js +26 -34
  117. package/build/components/block-mobile-toolbar/index.native.js.map +1 -1
  118. package/build/components/block-mover/button.js +6 -7
  119. package/build/components/block-mover/button.js.map +1 -1
  120. package/build/components/block-mover/index.js +5 -8
  121. package/build/components/block-mover/index.js.map +1 -1
  122. package/build/components/block-mover/index.native.js +23 -46
  123. package/build/components/block-mover/index.native.js.map +1 -1
  124. package/build/components/block-mover/mover-description.native.js +7 -10
  125. package/build/components/block-mover/mover-description.native.js.map +1 -1
  126. package/build/components/block-navigation/dropdown.js +20 -25
  127. package/build/components/block-navigation/dropdown.js.map +1 -1
  128. package/build/components/block-parent-selector/index.js +2 -2
  129. package/build/components/block-parent-selector/index.js.map +1 -1
  130. package/build/components/block-pattern-setup/index.js +27 -31
  131. package/build/components/block-pattern-setup/index.js.map +1 -1
  132. package/build/components/block-pattern-setup/setup-toolbar.js +35 -42
  133. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  134. package/build/components/block-patterns-list/index.js +74 -81
  135. package/build/components/block-patterns-list/index.js.map +1 -1
  136. package/build/components/block-popover/drop-zone.js +4 -5
  137. package/build/components/block-popover/drop-zone.js.map +1 -1
  138. package/build/components/block-popover/inbetween.js +10 -15
  139. package/build/components/block-popover/inbetween.js.map +1 -1
  140. package/build/components/block-popover/index.js +14 -15
  141. package/build/components/block-popover/index.js.map +1 -1
  142. package/build/components/block-preview/auto.js +6 -8
  143. package/build/components/block-preview/auto.js.map +1 -1
  144. package/build/components/block-preview/index.js +15 -18
  145. package/build/components/block-preview/index.js.map +1 -1
  146. package/build/components/block-settings/button.native.js +7 -10
  147. package/build/components/block-settings/button.native.js.map +1 -1
  148. package/build/components/block-settings-menu/block-convert-button.js +5 -7
  149. package/build/components/block-settings-menu/block-convert-button.js.map +1 -1
  150. package/build/components/block-settings-menu/block-html-convert-button.js +10 -14
  151. package/build/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  152. package/build/components/block-settings-menu/block-mode-toggle.js +19 -25
  153. package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  154. package/build/components/block-settings-menu/block-settings-dropdown.js +132 -111
  155. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  156. package/build/components/block-settings-menu/index.js +4 -5
  157. package/build/components/block-settings-menu/index.js.map +1 -1
  158. package/build/components/block-settings-menu-controls/index.js +14 -16
  159. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  160. package/build/components/block-styles/index.js +6 -7
  161. package/build/components/block-styles/index.js.map +1 -1
  162. package/build/components/block-styles/index.native.js +5 -7
  163. package/build/components/block-styles/index.native.js.map +1 -1
  164. package/build/components/block-styles/menu-items.js +4 -5
  165. package/build/components/block-styles/menu-items.js.map +1 -1
  166. package/build/components/block-styles/preview-panel.js +7 -10
  167. package/build/components/block-styles/preview-panel.js.map +1 -1
  168. package/build/components/block-styles/preview.native.js +6 -7
  169. package/build/components/block-styles/preview.native.js.map +1 -1
  170. package/build/components/block-styles/use-styles-for-block.js +7 -9
  171. package/build/components/block-styles/use-styles-for-block.js.map +1 -1
  172. package/build/components/block-styles/utils.js +4 -7
  173. package/build/components/block-styles/utils.js.map +1 -1
  174. package/build/components/block-switcher/block-styles-menu.js +4 -5
  175. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  176. package/build/components/block-switcher/block-transformations-menu.js +24 -29
  177. package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
  178. package/build/components/block-switcher/block-transformations-menu.native.js +9 -10
  179. package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  180. package/build/components/block-switcher/block-variation-transformations.js +21 -30
  181. package/build/components/block-switcher/block-variation-transformations.js.map +1 -1
  182. package/build/components/block-switcher/index.js +47 -60
  183. package/build/components/block-switcher/index.js.map +1 -1
  184. package/build/components/block-switcher/pattern-transformations-menu.js +18 -22
  185. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  186. package/build/components/block-switcher/preview-block-popover.js +3 -4
  187. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  188. package/build/components/block-switcher/utils.js +2 -3
  189. package/build/components/block-switcher/utils.js.map +1 -1
  190. package/build/components/block-title/index.js +5 -6
  191. package/build/components/block-title/index.js.map +1 -1
  192. package/build/components/block-title/use-block-display-title.js +5 -6
  193. package/build/components/block-title/use-block-display-title.js.map +1 -1
  194. package/build/components/block-toolbar/index.js +4 -5
  195. package/build/components/block-toolbar/index.js.map +1 -1
  196. package/build/components/block-toolbar/utils.js +14 -16
  197. package/build/components/block-toolbar/utils.js.map +1 -1
  198. package/build/components/block-tools/back-compat.js +3 -4
  199. package/build/components/block-tools/back-compat.js.map +1 -1
  200. package/build/components/block-tools/block-contextual-toolbar.js +5 -6
  201. package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
  202. package/build/components/block-tools/block-selection-button.js +6 -9
  203. package/build/components/block-tools/block-selection-button.js.map +1 -1
  204. package/build/components/block-tools/index.js +6 -7
  205. package/build/components/block-tools/index.js.map +1 -1
  206. package/build/components/block-tools/insertion-point.js +7 -10
  207. package/build/components/block-tools/insertion-point.js.map +1 -1
  208. package/build/components/block-tools/selected-block-popover.js +19 -20
  209. package/build/components/block-tools/selected-block-popover.js.map +1 -1
  210. package/build/components/block-tools/use-block-toolbar-popover-props.js +9 -14
  211. package/build/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  212. package/build/components/block-tools/zoom-out-mode-inserters.js +3 -4
  213. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  214. package/build/components/block-types-list/index.js +8 -9
  215. package/build/components/block-types-list/index.js.map +1 -1
  216. package/build/components/block-types-list/index.native.js +22 -27
  217. package/build/components/block-types-list/index.native.js.map +1 -1
  218. package/build/components/block-variation-picker/index.js +8 -9
  219. package/build/components/block-variation-picker/index.js.map +1 -1
  220. package/build/components/block-variation-picker/index.native.js +7 -9
  221. package/build/components/block-variation-picker/index.native.js.map +1 -1
  222. package/build/components/block-variation-transforms/index.js +30 -41
  223. package/build/components/block-variation-transforms/index.js.map +1 -1
  224. package/build/components/block-vertical-alignment-control/ui.js +7 -9
  225. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  226. package/build/components/border-radius-control/all-input-control.js +7 -8
  227. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  228. package/build/components/border-radius-control/index.js +9 -10
  229. package/build/components/border-radius-control/index.js.map +1 -1
  230. package/build/components/border-radius-control/input-controls.js +8 -11
  231. package/build/components/border-radius-control/input-controls.js.map +1 -1
  232. package/build/components/border-radius-control/linked-button.js +4 -5
  233. package/build/components/border-radius-control/linked-button.js.map +1 -1
  234. package/build/components/border-radius-control/utils.js +3 -7
  235. package/build/components/border-radius-control/utils.js.map +1 -1
  236. package/build/components/button-block-appender/index.js +13 -15
  237. package/build/components/button-block-appender/index.js.map +1 -1
  238. package/build/components/button-block-appender/index.native.js +25 -29
  239. package/build/components/button-block-appender/index.native.js.map +1 -1
  240. package/build/components/caption/index.native.js +40 -43
  241. package/build/components/caption/index.native.js.map +1 -1
  242. package/build/components/child-layout-control/index.js +5 -6
  243. package/build/components/child-layout-control/index.js.map +1 -1
  244. package/build/components/color-palette/control.js +5 -6
  245. package/build/components/color-palette/control.js.map +1 -1
  246. package/build/components/color-palette/with-color-context.js +1 -7
  247. package/build/components/color-palette/with-color-context.js.map +1 -1
  248. package/build/components/color-style-selector/index.js +28 -35
  249. package/build/components/color-style-selector/index.js.map +1 -1
  250. package/build/components/colors/utils.js +5 -8
  251. package/build/components/colors/utils.js.map +1 -1
  252. package/build/components/colors/with-colors.js +9 -24
  253. package/build/components/colors/with-colors.js.map +1 -1
  254. package/build/components/colors-gradients/control.js +19 -22
  255. package/build/components/colors-gradients/control.js.map +1 -1
  256. package/build/components/colors-gradients/dropdown.js +32 -39
  257. package/build/components/colors-gradients/dropdown.js.map +1 -1
  258. package/build/components/colors-gradients/panel-color-gradient-settings.js +20 -25
  259. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  260. package/build/components/colors-gradients/panel-color-gradient-settings.native.js +27 -31
  261. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  262. package/build/components/contrast-checker/index.js +12 -13
  263. package/build/components/contrast-checker/index.js.map +1 -1
  264. package/build/components/contrast-checker/index.native.js +16 -18
  265. package/build/components/contrast-checker/index.native.js.map +1 -1
  266. package/build/components/convert-to-group-buttons/index.js +9 -10
  267. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  268. package/build/components/convert-to-group-buttons/index.native.js +6 -7
  269. package/build/components/convert-to-group-buttons/index.native.js.map +1 -1
  270. package/build/components/convert-to-group-buttons/toolbar.js +6 -12
  271. package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
  272. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js +4 -6
  273. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  274. package/build/components/copy-handler/index.js +4 -7
  275. package/build/components/copy-handler/index.js.map +1 -1
  276. package/build/components/date-format-picker/index.js +12 -16
  277. package/build/components/date-format-picker/index.js.map +1 -1
  278. package/build/components/default-block-appender/index.js +7 -9
  279. package/build/components/default-block-appender/index.js.map +1 -1
  280. package/build/components/default-block-appender/index.native.js +8 -10
  281. package/build/components/default-block-appender/index.native.js.map +1 -1
  282. package/build/components/default-style-picker/index.js +14 -22
  283. package/build/components/default-style-picker/index.js.map +1 -1
  284. package/build/components/duotone/components.js +14 -18
  285. package/build/components/duotone/components.js.map +1 -1
  286. package/build/components/duotone/utils.js +1 -2
  287. package/build/components/duotone/utils.js.map +1 -1
  288. package/build/components/duotone-control/index.js +12 -15
  289. package/build/components/duotone-control/index.js.map +1 -1
  290. package/build/components/editable-text/index.js +5 -6
  291. package/build/components/editable-text/index.js.map +1 -1
  292. package/build/components/editor-styles/index.js +4 -5
  293. package/build/components/editor-styles/index.js.map +1 -1
  294. package/build/components/floating-toolbar/index.native.js +7 -8
  295. package/build/components/floating-toolbar/index.native.js.map +1 -1
  296. package/build/components/font-appearance-control/index.js +19 -26
  297. package/build/components/font-appearance-control/index.js.map +1 -1
  298. package/build/components/font-family/index.js +10 -12
  299. package/build/components/font-family/index.js.map +1 -1
  300. package/build/components/font-sizes/fluid-utils.js +17 -21
  301. package/build/components/font-sizes/fluid-utils.js.map +1 -1
  302. package/build/components/font-sizes/utils.js +6 -12
  303. package/build/components/font-sizes/utils.js.map +1 -1
  304. package/build/components/font-sizes/with-font-sizes.js +11 -30
  305. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  306. package/build/components/global-styles/advanced-panel.js +7 -10
  307. package/build/components/global-styles/advanced-panel.js.map +1 -1
  308. package/build/components/global-styles/border-panel.js +45 -78
  309. package/build/components/global-styles/border-panel.js.map +1 -1
  310. package/build/components/global-styles/color-panel.js +104 -147
  311. package/build/components/global-styles/color-panel.js.map +1 -1
  312. package/build/components/global-styles/color-panel.native.js +25 -42
  313. package/build/components/global-styles/color-panel.native.js.map +1 -1
  314. package/build/components/global-styles/dimensions-panel.js +78 -109
  315. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  316. package/build/components/global-styles/effects-panel.js +58 -72
  317. package/build/components/global-styles/effects-panel.js.map +1 -1
  318. package/build/components/global-styles/filters-panel.js +53 -71
  319. package/build/components/global-styles/filters-panel.js.map +1 -1
  320. package/build/components/global-styles/get-block-css-selector.js +4 -7
  321. package/build/components/global-styles/get-block-css-selector.js.map +1 -1
  322. package/build/components/global-styles/hooks.js +22 -37
  323. package/build/components/global-styles/hooks.js.map +1 -1
  324. package/build/components/global-styles/typography-panel.js +69 -125
  325. package/build/components/global-styles/typography-panel.js.map +1 -1
  326. package/build/components/global-styles/typography-utils.js +49 -26
  327. package/build/components/global-styles/typography-utils.js.map +1 -1
  328. package/build/components/global-styles/use-global-styles-output.js +140 -235
  329. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  330. package/build/components/global-styles/utils.js +11 -27
  331. package/build/components/global-styles/utils.js.map +1 -1
  332. package/build/components/gradients/use-gradient.js +6 -7
  333. package/build/components/gradients/use-gradient.js.map +1 -1
  334. package/build/components/height-control/index.js +9 -10
  335. package/build/components/height-control/index.js.map +1 -1
  336. package/build/components/iframe/index.js +50 -85
  337. package/build/components/iframe/index.js.map +1 -1
  338. package/build/components/iframe/use-compatibility-styles.js +29 -20
  339. package/build/components/iframe/use-compatibility-styles.js.map +1 -1
  340. package/build/components/image-editor/aspect-ratio-dropdown.js +83 -91
  341. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  342. package/build/components/image-editor/context.js +9 -10
  343. package/build/components/image-editor/context.js.map +1 -1
  344. package/build/components/image-editor/cropper.js +11 -12
  345. package/build/components/image-editor/cropper.js.map +1 -1
  346. package/build/components/image-editor/index.js +12 -13
  347. package/build/components/image-editor/index.js.map +1 -1
  348. package/build/components/image-editor/use-save-image.js +11 -12
  349. package/build/components/image-editor/use-save-image.js.map +1 -1
  350. package/build/components/image-editor/use-transform-image.js +5 -6
  351. package/build/components/image-editor/use-transform-image.js.map +1 -1
  352. package/build/components/image-editor/zoom-dropdown.js +10 -13
  353. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  354. package/build/components/image-size-control/index.js +12 -13
  355. package/build/components/image-size-control/index.js.map +1 -1
  356. package/build/components/inner-blocks/button-block-appender.js +7 -8
  357. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  358. package/build/components/inner-blocks/default-block-appender.js +6 -8
  359. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  360. package/build/components/inner-blocks/index.js +2 -6
  361. package/build/components/inner-blocks/index.js.map +1 -1
  362. package/build/components/inner-blocks/index.native.js +1 -3
  363. package/build/components/inner-blocks/index.native.js.map +1 -1
  364. package/build/components/inner-blocks/use-block-context.js +1 -4
  365. package/build/components/inner-blocks/use-block-context.js.map +1 -1
  366. package/build/components/inner-blocks/use-nested-settings-update.js +2 -4
  367. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  368. package/build/components/inserter/block-patterns-explorer/explorer.js +9 -11
  369. package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  370. package/build/components/inserter/block-patterns-explorer/patterns-list.js +11 -18
  371. package/build/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  372. package/build/components/inserter/block-patterns-explorer/sidebar.js +20 -24
  373. package/build/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  374. package/build/components/inserter/block-patterns-tab.js +29 -40
  375. package/build/components/inserter/block-patterns-tab.js.map +1 -1
  376. package/build/components/inserter/block-types-tab.js +7 -9
  377. package/build/components/inserter/block-types-tab.js.map +1 -1
  378. package/build/components/inserter/block-types-tab.native.js +8 -9
  379. package/build/components/inserter/block-types-tab.native.js.map +1 -1
  380. package/build/components/inserter/hooks/use-block-type-impressions.native.js +3 -5
  381. package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  382. package/build/components/inserter/hooks/use-block-types-state.js +5 -6
  383. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  384. package/build/components/inserter/hooks/use-clipboard-block.native.js +2 -2
  385. package/build/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  386. package/build/components/inserter/hooks/use-debounced-input.js +1 -2
  387. package/build/components/inserter/hooks/use-debounced-input.js.map +1 -1
  388. package/build/components/inserter/hooks/use-insertion-point.js +10 -12
  389. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  390. package/build/components/inserter/index.js +37 -51
  391. package/build/components/inserter/index.js.map +1 -1
  392. package/build/components/inserter/index.native.js +24 -31
  393. package/build/components/inserter/index.native.js.map +1 -1
  394. package/build/components/inserter/library.js +11 -12
  395. package/build/components/inserter/library.js.map +1 -1
  396. package/build/components/inserter/media-tab/hooks.js +2 -5
  397. package/build/components/inserter/media-tab/hooks.js.map +1 -1
  398. package/build/components/inserter/media-tab/media-list.js +6 -7
  399. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  400. package/build/components/inserter/media-tab/media-panel.js +12 -14
  401. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  402. package/build/components/inserter/media-tab/media-preview.js +47 -58
  403. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  404. package/build/components/inserter/media-tab/media-tab.js +24 -28
  405. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  406. package/build/components/inserter/media-tab/utils.js +3 -5
  407. package/build/components/inserter/media-tab/utils.js.map +1 -1
  408. package/build/components/inserter/menu.js +15 -19
  409. package/build/components/inserter/menu.js.map +1 -1
  410. package/build/components/inserter/menu.native.js +27 -31
  411. package/build/components/inserter/menu.native.js.map +1 -1
  412. package/build/components/inserter/mobile-tab-navigation.js +7 -9
  413. package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
  414. package/build/components/inserter/panel.js +5 -6
  415. package/build/components/inserter/panel.js.map +1 -1
  416. package/build/components/inserter/preview-panel.js +4 -5
  417. package/build/components/inserter/preview-panel.js.map +1 -1
  418. package/build/components/inserter/quick-inserter.js +8 -9
  419. package/build/components/inserter/quick-inserter.js.map +1 -1
  420. package/build/components/inserter/reusable-blocks-tab.js +13 -18
  421. package/build/components/inserter/reusable-blocks-tab.js.map +1 -1
  422. package/build/components/inserter/reusable-blocks-tab.native.js +5 -6
  423. package/build/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  424. package/build/components/inserter/search-items.js +12 -40
  425. package/build/components/inserter/search-items.js.map +1 -1
  426. package/build/components/inserter/search-results.js +17 -18
  427. package/build/components/inserter/search-results.js.map +1 -1
  428. package/build/components/inserter/search-results.native.js +11 -12
  429. package/build/components/inserter/search-results.native.js.map +1 -1
  430. package/build/components/inserter/tabs.js +8 -9
  431. package/build/components/inserter/tabs.js.map +1 -1
  432. package/build/components/inserter/tabs.native.js +37 -55
  433. package/build/components/inserter/tabs.native.js.map +1 -1
  434. package/build/components/inserter/utils.native.js +13 -17
  435. package/build/components/inserter/utils.native.js.map +1 -1
  436. package/build/components/inserter-draggable-blocks/index.js +11 -13
  437. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  438. package/build/components/inserter-list-item/index.js +68 -72
  439. package/build/components/inserter-list-item/index.js.map +1 -1
  440. package/build/components/inserter-listbox/index.js +3 -4
  441. package/build/components/inserter-listbox/index.js.map +1 -1
  442. package/build/components/inserter-listbox/item.js +6 -7
  443. package/build/components/inserter-listbox/item.js.map +1 -1
  444. package/build/components/inspector-controls/block-support-slot-container.js +4 -5
  445. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  446. package/build/components/inspector-controls/block-support-tools-panel.js +6 -8
  447. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  448. package/build/components/inspector-controls/fill.js +13 -24
  449. package/build/components/inspector-controls/fill.js.map +1 -1
  450. package/build/components/inspector-controls/fill.native.js +7 -11
  451. package/build/components/inspector-controls/fill.native.js.map +1 -1
  452. package/build/components/inspector-controls/slot.js +9 -13
  453. package/build/components/inspector-controls/slot.js.map +1 -1
  454. package/build/components/inspector-controls/slot.native.js +6 -10
  455. package/build/components/inspector-controls/slot.native.js.map +1 -1
  456. package/build/components/inspector-controls-tabs/index.js +6 -7
  457. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  458. package/build/components/inspector-controls-tabs/position-controls-panel.js +3 -8
  459. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  460. package/build/components/inspector-controls-tabs/settings-tab-hint.js +1 -1
  461. package/build/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  462. package/build/components/inspector-controls-tabs/settings-tab.js +3 -6
  463. package/build/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  464. package/build/components/inspector-controls-tabs/styles-tab.js +5 -6
  465. package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  466. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js +1 -3
  467. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  468. package/build/components/inspector-popover-header/index.js +18 -22
  469. package/build/components/inspector-popover-header/index.js.map +1 -1
  470. package/build/components/justify-content-control/ui.js +8 -10
  471. package/build/components/justify-content-control/ui.js.map +1 -1
  472. package/build/components/letter-spacing-control/index.js +6 -7
  473. package/build/components/letter-spacing-control/index.js.map +1 -1
  474. package/build/components/line-height-control/index.js +13 -18
  475. package/build/components/line-height-control/index.js.map +1 -1
  476. package/build/components/line-height-control/index.native.js +4 -5
  477. package/build/components/line-height-control/index.native.js.map +1 -1
  478. package/build/components/link-control/index.js +84 -63
  479. package/build/components/link-control/index.js.map +1 -1
  480. package/build/components/link-control/is-url-like.js +32 -2
  481. package/build/components/link-control/is-url-like.js.map +1 -1
  482. package/build/components/link-control/link-preview.js +24 -27
  483. package/build/components/link-control/link-preview.js.map +1 -1
  484. package/build/components/link-control/search-create-button.js +7 -9
  485. package/build/components/link-control/search-create-button.js.map +1 -1
  486. package/build/components/link-control/search-input.js +22 -27
  487. package/build/components/link-control/search-input.js.map +1 -1
  488. package/build/components/link-control/search-item.js +13 -15
  489. package/build/components/link-control/search-item.js.map +1 -1
  490. package/build/components/link-control/search-results.js +22 -28
  491. package/build/components/link-control/search-results.js.map +1 -1
  492. package/build/components/link-control/settings-drawer.js +6 -35
  493. package/build/components/link-control/settings-drawer.js.map +1 -1
  494. package/build/components/link-control/settings.js +6 -8
  495. package/build/components/link-control/settings.js.map +1 -1
  496. package/build/components/link-control/use-internal-value.js +54 -0
  497. package/build/components/link-control/use-internal-value.js.map +1 -0
  498. package/build/components/link-control/use-rich-url-data.js +1 -1
  499. package/build/components/link-control/use-rich-url-data.js.map +1 -1
  500. package/build/components/link-control/use-search-handler.js +10 -23
  501. package/build/components/link-control/use-search-handler.js.map +1 -1
  502. package/build/components/list-view/appender.js +12 -12
  503. package/build/components/list-view/appender.js.map +1 -1
  504. package/build/components/list-view/aria-referenced-text.js +44 -0
  505. package/build/components/list-view/aria-referenced-text.js.map +1 -0
  506. package/build/components/list-view/block-contents.js +38 -38
  507. package/build/components/list-view/block-contents.js.map +1 -1
  508. package/build/components/list-view/block-select-button.js +67 -21
  509. package/build/components/list-view/block-select-button.js.map +1 -1
  510. package/build/components/list-view/block.js +119 -101
  511. package/build/components/list-view/block.js.map +1 -1
  512. package/build/components/list-view/branch.js +5 -5
  513. package/build/components/list-view/branch.js.map +1 -1
  514. package/build/components/list-view/drop-indicator.js +4 -5
  515. package/build/components/list-view/drop-indicator.js.map +1 -1
  516. package/build/components/list-view/expander.js +3 -4
  517. package/build/components/list-view/expander.js.map +1 -1
  518. package/build/components/list-view/index.js +46 -43
  519. package/build/components/list-view/index.js.map +1 -1
  520. package/build/components/list-view/leaf.js +10 -11
  521. package/build/components/list-view/leaf.js.map +1 -1
  522. package/build/components/list-view/use-block-selection.js +4 -6
  523. package/build/components/list-view/use-block-selection.js.map +1 -1
  524. package/build/components/list-view/use-list-view-client-ids.js +9 -12
  525. package/build/components/list-view/use-list-view-client-ids.js.map +1 -1
  526. package/build/components/list-view/use-list-view-drop-zone.js +25 -13
  527. package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
  528. package/build/components/list-view/use-list-view-expand-selected-item.js +4 -5
  529. package/build/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  530. package/build/components/list-view/use-list-view-scroll-into-view.js +5 -6
  531. package/build/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  532. package/build/components/media-placeholder/index.js +71 -92
  533. package/build/components/media-placeholder/index.js.map +1 -1
  534. package/build/components/media-placeholder/index.native.js +5 -6
  535. package/build/components/media-placeholder/index.native.js.map +1 -1
  536. package/build/components/media-replace-flow/index.js +94 -107
  537. package/build/components/media-replace-flow/index.js.map +1 -1
  538. package/build/components/media-upload/check.js +4 -5
  539. package/build/components/media-upload/check.js.map +1 -1
  540. package/build/components/media-upload/index.native.js +1 -1
  541. package/build/components/media-upload/index.native.js.map +1 -1
  542. package/build/components/multi-selection-inspector/index.js +3 -4
  543. package/build/components/multi-selection-inspector/index.js.map +1 -1
  544. package/build/components/navigable-toolbar/index.js +16 -15
  545. package/build/components/navigable-toolbar/index.js.map +1 -1
  546. package/build/components/observe-typing/index.js +3 -4
  547. package/build/components/observe-typing/index.js.map +1 -1
  548. package/build/components/panel-color-settings/index.js +4 -5
  549. package/build/components/panel-color-settings/index.js.map +1 -1
  550. package/build/components/plain-text/index.js +4 -6
  551. package/build/components/plain-text/index.js.map +1 -1
  552. package/build/components/plain-text/index.native.js +8 -14
  553. package/build/components/plain-text/index.native.js.map +1 -1
  554. package/build/components/preview-options/index.js +8 -9
  555. package/build/components/preview-options/index.js.map +1 -1
  556. package/build/components/provider/block-refs-provider.js +3 -4
  557. package/build/components/provider/block-refs-provider.js.map +1 -1
  558. package/build/components/provider/use-block-sync.js +7 -8
  559. package/build/components/provider/use-block-sync.js.map +1 -1
  560. package/build/components/provider/with-registry-provider.js +5 -7
  561. package/build/components/provider/with-registry-provider.js.map +1 -1
  562. package/build/components/publish-date-time-picker/index.js +6 -7
  563. package/build/components/publish-date-time-picker/index.js.map +1 -1
  564. package/build/components/recursion-provider/index.js +7 -11
  565. package/build/components/recursion-provider/index.js.map +1 -1
  566. package/build/components/resizable-box-popover/index.js +5 -6
  567. package/build/components/resizable-box-popover/index.js.map +1 -1
  568. package/build/components/responsive-block-control/label.js +5 -6
  569. package/build/components/responsive-block-control/label.js.map +1 -1
  570. package/build/components/rich-text/embed-handler-picker.native.js +6 -10
  571. package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
  572. package/build/components/rich-text/format-edit.js +7 -8
  573. package/build/components/rich-text/format-edit.js.map +1 -1
  574. package/build/components/rich-text/format-toolbar/index.js +9 -18
  575. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  576. package/build/components/rich-text/format-toolbar-container.js +13 -16
  577. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  578. package/build/components/rich-text/index.js +43 -47
  579. package/build/components/rich-text/index.js.map +1 -1
  580. package/build/components/rich-text/index.native.js +130 -157
  581. package/build/components/rich-text/index.native.js.map +1 -1
  582. package/build/components/rich-text/input-event.js +4 -5
  583. package/build/components/rich-text/input-event.js.map +1 -1
  584. package/build/components/rich-text/shortcut.js +5 -6
  585. package/build/components/rich-text/shortcut.js.map +1 -1
  586. package/build/components/rich-text/split-value.js +8 -10
  587. package/build/components/rich-text/split-value.js.map +1 -1
  588. package/build/components/rich-text/toolbar-button.js +6 -7
  589. package/build/components/rich-text/toolbar-button.js.map +1 -1
  590. package/build/components/rich-text/use-before-input-rules.js +1 -4
  591. package/build/components/rich-text/use-before-input-rules.js.map +1 -1
  592. package/build/components/rich-text/use-enter.js +3 -6
  593. package/build/components/rich-text/use-enter.js.map +1 -1
  594. package/build/components/rich-text/use-firefox-compat.js +32 -1
  595. package/build/components/rich-text/use-firefox-compat.js.map +1 -1
  596. package/build/components/rich-text/use-format-types.js +11 -17
  597. package/build/components/rich-text/use-format-types.js.map +1 -1
  598. package/build/components/rich-text/use-input-rules.js +9 -15
  599. package/build/components/rich-text/use-input-rules.js.map +1 -1
  600. package/build/components/rich-text/use-mark-persistent.js +4 -5
  601. package/build/components/rich-text/use-mark-persistent.js.map +1 -1
  602. package/build/components/rich-text/use-paste-handler.js +5 -7
  603. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  604. package/build/components/rich-text/utils.js +5 -7
  605. package/build/components/rich-text/utils.js.map +1 -1
  606. package/build/components/skip-to-selected-block/index.js +3 -4
  607. package/build/components/skip-to-selected-block/index.js.map +1 -1
  608. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js +38 -0
  609. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -0
  610. package/build/components/spacing-sizes-control/index.js +60 -62
  611. package/build/components/spacing-sizes-control/index.js.map +1 -1
  612. package/build/components/spacing-sizes-control/{axial-input-controls.js → input-controls/axial.js} +21 -22
  613. package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -0
  614. package/build/components/spacing-sizes-control/{input-controls.js → input-controls/separated.js} +22 -22
  615. package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -0
  616. package/build/components/spacing-sizes-control/input-controls/single.js +51 -0
  617. package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -0
  618. package/build/components/spacing-sizes-control/{spacing-input-control.js → input-controls/spacing-input-control.js} +51 -69
  619. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -0
  620. package/build/components/spacing-sizes-control/sides-dropdown/index.js +84 -0
  621. package/build/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -0
  622. package/build/components/spacing-sizes-control/utils.js +213 -31
  623. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  624. package/build/components/text-decoration-control/index.js +5 -6
  625. package/build/components/text-decoration-control/index.js.map +1 -1
  626. package/build/components/text-transform-control/index.js +5 -6
  627. package/build/components/text-transform-control/index.js.map +1 -1
  628. package/build/components/tool-selector/index.js +13 -16
  629. package/build/components/tool-selector/index.js.map +1 -1
  630. package/build/components/typewriter/index.js +6 -9
  631. package/build/components/typewriter/index.js.map +1 -1
  632. package/build/components/ungroup-button/index.native.js +11 -16
  633. package/build/components/ungroup-button/index.native.js.map +1 -1
  634. package/build/components/unit-control/index.js +4 -5
  635. package/build/components/unit-control/index.js.map +1 -1
  636. package/build/components/url-input/index.js +15 -26
  637. package/build/components/url-input/index.js.map +1 -1
  638. package/build/components/url-input/index.native.js +6 -8
  639. package/build/components/url-input/index.native.js.map +1 -1
  640. package/build/components/url-popover/image-url-input-ui.js +12 -15
  641. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  642. package/build/components/url-popover/index.js +12 -14
  643. package/build/components/url-popover/index.js.map +1 -1
  644. package/build/components/url-popover/link-editor.js +7 -8
  645. package/build/components/url-popover/link-editor.js.map +1 -1
  646. package/build/components/url-popover/link-viewer-url.js +5 -6
  647. package/build/components/url-popover/link-viewer-url.js.map +1 -1
  648. package/build/components/url-popover/link-viewer.js +8 -9
  649. package/build/components/url-popover/link-viewer.js.map +1 -1
  650. package/build/components/use-block-display-information/index.js +2 -2
  651. package/build/components/use-block-display-information/index.js.map +1 -1
  652. package/build/components/use-block-drop-zone/index.js +16 -23
  653. package/build/components/use-block-drop-zone/index.js.map +1 -1
  654. package/build/components/use-block-drop-zone/index.native.js +8 -11
  655. package/build/components/use-block-drop-zone/index.native.js.map +1 -1
  656. package/build/components/use-moving-animation/index.js +9 -12
  657. package/build/components/use-moving-animation/index.js.map +1 -1
  658. package/build/components/use-on-block-drop/index.js +2 -6
  659. package/build/components/use-on-block-drop/index.js.map +1 -1
  660. package/build/components/use-on-block-drop/index.native.js +8 -10
  661. package/build/components/use-on-block-drop/index.native.js.map +1 -1
  662. package/build/components/use-paste-styles/index.js +2 -6
  663. package/build/components/use-paste-styles/index.js.map +1 -1
  664. package/build/components/warning/index.js +6 -7
  665. package/build/components/warning/index.js.map +1 -1
  666. package/build/components/warning/index.native.js +9 -10
  667. package/build/components/warning/index.native.js.map +1 -1
  668. package/build/components/writing-flow/index.js +4 -5
  669. package/build/components/writing-flow/index.js.map +1 -1
  670. package/build/components/writing-flow/use-drag-selection.js +4 -6
  671. package/build/components/writing-flow/use-drag-selection.js.map +1 -1
  672. package/build/components/writing-flow/use-tab-nav.js +9 -6
  673. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  674. package/build/hooks/align.js +7 -14
  675. package/build/hooks/align.js.map +1 -1
  676. package/build/hooks/anchor.js +6 -3
  677. package/build/hooks/anchor.js.map +1 -1
  678. package/build/hooks/aria-label.js +1 -3
  679. package/build/hooks/aria-label.js.map +1 -1
  680. package/build/hooks/behaviors.js +91 -58
  681. package/build/hooks/behaviors.js.map +1 -1
  682. package/build/hooks/border.js +25 -38
  683. package/build/hooks/border.js.map +1 -1
  684. package/build/hooks/color.js +22 -37
  685. package/build/hooks/color.js.map +1 -1
  686. package/build/hooks/content-lock-ui.js +26 -30
  687. package/build/hooks/content-lock-ui.js.map +1 -1
  688. package/build/hooks/contrast-checker.js +4 -7
  689. package/build/hooks/contrast-checker.js.map +1 -1
  690. package/build/hooks/custom-class-name.js +5 -4
  691. package/build/hooks/custom-class-name.js.map +1 -1
  692. package/build/hooks/dimensions.js +6 -9
  693. package/build/hooks/dimensions.js.map +1 -1
  694. package/build/hooks/duotone.js +32 -44
  695. package/build/hooks/duotone.js.map +1 -1
  696. package/build/hooks/font-family.js +5 -6
  697. package/build/hooks/font-family.js.map +1 -1
  698. package/build/hooks/font-size.js +14 -21
  699. package/build/hooks/font-size.js.map +1 -1
  700. package/build/hooks/gap.js +5 -6
  701. package/build/hooks/gap.js.map +1 -1
  702. package/build/hooks/layout.js +42 -59
  703. package/build/hooks/layout.js.map +1 -1
  704. package/build/hooks/line-height.js +5 -8
  705. package/build/hooks/line-height.js.map +1 -1
  706. package/build/hooks/lock.js +2 -2
  707. package/build/hooks/lock.js.map +1 -1
  708. package/build/hooks/margin.js +6 -9
  709. package/build/hooks/margin.js.map +1 -1
  710. package/build/hooks/metadata-name.js +4 -5
  711. package/build/hooks/metadata-name.js.map +1 -1
  712. package/build/hooks/metadata.js +3 -7
  713. package/build/hooks/metadata.js.map +1 -1
  714. package/build/hooks/padding.js +6 -9
  715. package/build/hooks/padding.js.map +1 -1
  716. package/build/hooks/position.js +26 -40
  717. package/build/hooks/position.js.map +1 -1
  718. package/build/hooks/settings.js +1 -3
  719. package/build/hooks/settings.js.map +1 -1
  720. package/build/hooks/style.js +12 -19
  721. package/build/hooks/style.js.map +1 -1
  722. package/build/hooks/supports.js +3 -5
  723. package/build/hooks/supports.js.map +1 -1
  724. package/build/hooks/typography.js +18 -27
  725. package/build/hooks/typography.js.map +1 -1
  726. package/build/hooks/typography.native.js +1 -2
  727. package/build/hooks/typography.native.js.map +1 -1
  728. package/build/hooks/use-border-props.js +1 -3
  729. package/build/hooks/use-border-props.js.map +1 -1
  730. package/build/hooks/use-color-props.js +6 -8
  731. package/build/hooks/use-color-props.js.map +1 -1
  732. package/build/hooks/use-editor-wrapper-styles.native.js +34 -39
  733. package/build/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  734. package/build/hooks/use-spacing-props.js +1 -1
  735. package/build/hooks/use-spacing-props.js.map +1 -1
  736. package/build/hooks/use-typography-props.js +8 -12
  737. package/build/hooks/use-typography-props.js.map +1 -1
  738. package/build/hooks/utils.js +6 -18
  739. package/build/hooks/utils.js.map +1 -1
  740. package/build/layouts/constrained.js +22 -27
  741. package/build/layouts/constrained.js.map +1 -1
  742. package/build/layouts/flex.js +43 -54
  743. package/build/layouts/flex.js.map +1 -1
  744. package/build/layouts/flow.js +10 -13
  745. package/build/layouts/flow.js.map +1 -1
  746. package/build/layouts/grid.js +45 -25
  747. package/build/layouts/grid.js.map +1 -1
  748. package/build/layouts/index.js +1 -2
  749. package/build/layouts/index.js.map +1 -1
  750. package/build/layouts/utils.js +3 -9
  751. package/build/layouts/utils.js.map +1 -1
  752. package/build/store/actions.js +251 -334
  753. package/build/store/actions.js.map +1 -1
  754. package/build/store/array.js +1 -2
  755. package/build/store/array.js.map +1 -1
  756. package/build/store/private-actions.js +3 -7
  757. package/build/store/private-actions.js.map +1 -1
  758. package/build/store/private-selectors.js +41 -24
  759. package/build/store/private-selectors.js.map +1 -1
  760. package/build/store/reducer.js +67 -169
  761. package/build/store/reducer.js.map +1 -1
  762. package/build/store/selectors.js +145 -215
  763. package/build/store/selectors.js.map +1 -1
  764. package/build/utils/block-variation-transforms.js +4 -7
  765. package/build/utils/block-variation-transforms.js.map +1 -1
  766. package/build/utils/math.js +1 -2
  767. package/build/utils/math.js.map +1 -1
  768. package/build/utils/object.js +1 -4
  769. package/build/utils/object.js.map +1 -1
  770. package/build/utils/order-inserter-block-items.js +5 -7
  771. package/build/utils/order-inserter-block-items.js.map +1 -1
  772. package/build/utils/parse-css-unit-to-px.js +3 -6
  773. package/build/utils/parse-css-unit-to-px.js.map +1 -1
  774. package/build/utils/pasting.js +5 -8
  775. package/build/utils/pasting.js.map +1 -1
  776. package/build/utils/pre-parse-patterns.js +1 -1
  777. package/build/utils/pre-parse-patterns.js.map +1 -1
  778. package/build/utils/sorting.js +1 -2
  779. package/build/utils/sorting.js.map +1 -1
  780. package/build/utils/transform-styles/index.js +5 -7
  781. package/build/utils/transform-styles/index.js.map +1 -1
  782. package/build/utils/transform-styles/transforms/wrap.js +28 -31
  783. package/build/utils/transform-styles/transforms/wrap.js.map +1 -1
  784. package/build-module/autocompleters/block.js +1 -3
  785. package/build-module/autocompleters/block.js.map +1 -1
  786. package/build-module/components/alignment-control/ui.js +9 -11
  787. package/build-module/components/alignment-control/ui.js.map +1 -1
  788. package/build-module/components/autocomplete/index.js +3 -4
  789. package/build-module/components/autocomplete/index.js.map +1 -1
  790. package/build-module/components/block-actions/index.js +8 -12
  791. package/build-module/components/block-actions/index.js.map +1 -1
  792. package/build-module/components/block-alignment-control/ui.js +17 -21
  793. package/build-module/components/block-alignment-control/ui.js.map +1 -1
  794. package/build-module/components/block-alignment-control/ui.native.js +14 -17
  795. package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
  796. package/build-module/components/block-alignment-control/use-available-alignments.js +5 -10
  797. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  798. package/build-module/components/block-alignment-matrix-control/index.js +4 -6
  799. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  800. package/build-module/components/block-breadcrumb/index.js +3 -4
  801. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  802. package/build-module/components/block-caption/index.native.js +29 -34
  803. package/build-module/components/block-caption/index.native.js.map +1 -1
  804. package/build-module/components/block-card/index.js +7 -9
  805. package/build-module/components/block-card/index.js.map +1 -1
  806. package/build-module/components/block-compare/block-view.js +8 -9
  807. package/build-module/components/block-compare/block-view.js.map +1 -1
  808. package/build-module/components/block-compare/index.js +7 -9
  809. package/build-module/components/block-compare/index.js.map +1 -1
  810. package/build-module/components/block-context/index.js +4 -5
  811. package/build-module/components/block-context/index.js.map +1 -1
  812. package/build-module/components/block-controls/fill.js +17 -23
  813. package/build-module/components/block-controls/fill.js.map +1 -1
  814. package/build-module/components/block-controls/hook.js +1 -3
  815. package/build-module/components/block-controls/hook.js.map +1 -1
  816. package/build-module/components/block-controls/slot.js +29 -21
  817. package/build-module/components/block-controls/slot.js.map +1 -1
  818. package/build-module/components/block-controls/slot.native.js +8 -18
  819. package/build-module/components/block-controls/slot.native.js.map +1 -1
  820. package/build-module/components/block-draggable/draggable-chip.js +5 -7
  821. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  822. package/build-module/components/block-draggable/draggable-chip.native.js +3 -4
  823. package/build-module/components/block-draggable/draggable-chip.native.js.map +1 -1
  824. package/build-module/components/block-draggable/dropping-insertion-point.native.js +6 -7
  825. package/build-module/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
  826. package/build-module/components/block-draggable/index.js +16 -17
  827. package/build-module/components/block-draggable/index.js.map +1 -1
  828. package/build-module/components/block-draggable/index.native.js +43 -58
  829. package/build-module/components/block-draggable/index.native.js.map +1 -1
  830. package/build-module/components/block-edit/edit.js +1 -4
  831. package/build-module/components/block-edit/edit.js.map +1 -1
  832. package/build-module/components/block-edit/edit.native.js +1 -4
  833. package/build-module/components/block-edit/edit.native.js.map +1 -1
  834. package/build-module/components/block-edit-visually-button/index.js +3 -4
  835. package/build-module/components/block-edit-visually-button/index.js.map +1 -1
  836. package/build-module/components/block-full-height-alignment-control/index.js +6 -7
  837. package/build-module/components/block-full-height-alignment-control/index.js.map +1 -1
  838. package/build-module/components/block-icon/index.js +7 -11
  839. package/build-module/components/block-icon/index.js.map +1 -1
  840. package/build-module/components/block-icon/index.native.js +9 -13
  841. package/build-module/components/block-icon/index.native.js.map +1 -1
  842. package/build-module/components/block-inspector/index.js +36 -46
  843. package/build-module/components/block-inspector/index.js.map +1 -1
  844. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js +2 -2
  845. package/build-module/components/block-inspector/useBlockInspectorAnimationSettings.js.map +1 -1
  846. package/build-module/components/block-list/block-html.js +3 -4
  847. package/build-module/components/block-list/block-html.js.map +1 -1
  848. package/build-module/components/block-list/block-invalid-warning.js +3 -4
  849. package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
  850. package/build-module/components/block-list/block-invalid-warning.native.js +10 -15
  851. package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
  852. package/build-module/components/block-list/block-list-context.native.js +5 -11
  853. package/build-module/components/block-list/block-list-context.native.js.map +1 -1
  854. package/build-module/components/block-list/block-list-item-cell.native.js +5 -6
  855. package/build-module/components/block-list/block-list-item-cell.native.js.map +1 -1
  856. package/build-module/components/block-list/block-list-item.native.js +17 -18
  857. package/build-module/components/block-list/block-list-item.native.js.map +1 -1
  858. package/build-module/components/block-list/block-outline.native.js +8 -9
  859. package/build-module/components/block-list/block-outline.native.js.map +1 -1
  860. package/build-module/components/block-list/block-selection-button.native.js +10 -12
  861. package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
  862. package/build-module/components/block-list/block.js +39 -46
  863. package/build-module/components/block-list/block.js.map +1 -1
  864. package/build-module/components/block-list/block.native.js +55 -68
  865. package/build-module/components/block-list/block.native.js.map +1 -1
  866. package/build-module/components/block-list/index.js +12 -15
  867. package/build-module/components/block-list/index.js.map +1 -1
  868. package/build-module/components/block-list/index.native.js +77 -86
  869. package/build-module/components/block-list/index.native.js.map +1 -1
  870. package/build-module/components/block-list/insertion-point.native.js +4 -5
  871. package/build-module/components/block-list/insertion-point.native.js.map +1 -1
  872. package/build-module/components/block-list/layout.js +6 -9
  873. package/build-module/components/block-list/layout.js.map +1 -1
  874. package/build-module/components/block-list/subdirectory-icon.js +10 -13
  875. package/build-module/components/block-list/subdirectory-icon.js.map +1 -1
  876. package/build-module/components/block-list/use-block-props/index.js +14 -11
  877. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  878. package/build-module/components/block-list/use-block-props/index.native.js +1 -2
  879. package/build-module/components/block-list/use-block-props/index.native.js.map +1 -1
  880. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js +2 -2
  881. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
  882. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js +1 -1
  883. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js.map +1 -1
  884. package/build-module/components/block-list/use-in-between-inserter.js +1 -3
  885. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  886. package/build-module/components/block-list-appender/index.js +15 -15
  887. package/build-module/components/block-list-appender/index.js.map +1 -1
  888. package/build-module/components/block-list-appender/index.native.js +9 -11
  889. package/build-module/components/block-list-appender/index.native.js.map +1 -1
  890. package/build-module/components/block-lock/menu-item.js +3 -4
  891. package/build-module/components/block-lock/menu-item.js.map +1 -1
  892. package/build-module/components/block-lock/modal.js +6 -9
  893. package/build-module/components/block-lock/modal.js.map +1 -1
  894. package/build-module/components/block-lock/toolbar.js +5 -10
  895. package/build-module/components/block-lock/toolbar.js.map +1 -1
  896. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js +49 -67
  897. package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
  898. package/build-module/components/block-mobile-toolbar/index.native.js +26 -34
  899. package/build-module/components/block-mobile-toolbar/index.native.js.map +1 -1
  900. package/build-module/components/block-mover/button.js +6 -7
  901. package/build-module/components/block-mover/button.js.map +1 -1
  902. package/build-module/components/block-mover/index.js +5 -8
  903. package/build-module/components/block-mover/index.js.map +1 -1
  904. package/build-module/components/block-mover/index.native.js +23 -46
  905. package/build-module/components/block-mover/index.native.js.map +1 -1
  906. package/build-module/components/block-mover/mover-description.native.js +7 -10
  907. package/build-module/components/block-mover/mover-description.native.js.map +1 -1
  908. package/build-module/components/block-navigation/dropdown.js +20 -25
  909. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  910. package/build-module/components/block-parent-selector/index.js +2 -2
  911. package/build-module/components/block-parent-selector/index.js.map +1 -1
  912. package/build-module/components/block-pattern-setup/index.js +27 -31
  913. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  914. package/build-module/components/block-pattern-setup/setup-toolbar.js +35 -42
  915. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  916. package/build-module/components/block-patterns-list/index.js +71 -78
  917. package/build-module/components/block-patterns-list/index.js.map +1 -1
  918. package/build-module/components/block-popover/drop-zone.js +4 -5
  919. package/build-module/components/block-popover/drop-zone.js.map +1 -1
  920. package/build-module/components/block-popover/inbetween.js +10 -15
  921. package/build-module/components/block-popover/inbetween.js.map +1 -1
  922. package/build-module/components/block-popover/index.js +14 -15
  923. package/build-module/components/block-popover/index.js.map +1 -1
  924. package/build-module/components/block-preview/auto.js +6 -8
  925. package/build-module/components/block-preview/auto.js.map +1 -1
  926. package/build-module/components/block-preview/index.js +15 -18
  927. package/build-module/components/block-preview/index.js.map +1 -1
  928. package/build-module/components/block-settings/button.native.js +7 -10
  929. package/build-module/components/block-settings/button.native.js.map +1 -1
  930. package/build-module/components/block-settings-menu/block-convert-button.js +5 -7
  931. package/build-module/components/block-settings-menu/block-convert-button.js.map +1 -1
  932. package/build-module/components/block-settings-menu/block-html-convert-button.js +10 -14
  933. package/build-module/components/block-settings-menu/block-html-convert-button.js.map +1 -1
  934. package/build-module/components/block-settings-menu/block-mode-toggle.js +19 -25
  935. package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  936. package/build-module/components/block-settings-menu/block-settings-dropdown.js +135 -113
  937. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  938. package/build-module/components/block-settings-menu/index.js +4 -5
  939. package/build-module/components/block-settings-menu/index.js.map +1 -1
  940. package/build-module/components/block-settings-menu-controls/index.js +14 -16
  941. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  942. package/build-module/components/block-styles/index.js +6 -7
  943. package/build-module/components/block-styles/index.js.map +1 -1
  944. package/build-module/components/block-styles/index.native.js +5 -7
  945. package/build-module/components/block-styles/index.native.js.map +1 -1
  946. package/build-module/components/block-styles/menu-items.js +4 -5
  947. package/build-module/components/block-styles/menu-items.js.map +1 -1
  948. package/build-module/components/block-styles/preview-panel.js +7 -10
  949. package/build-module/components/block-styles/preview-panel.js.map +1 -1
  950. package/build-module/components/block-styles/preview.native.js +6 -7
  951. package/build-module/components/block-styles/preview.native.js.map +1 -1
  952. package/build-module/components/block-styles/use-styles-for-block.js +7 -9
  953. package/build-module/components/block-styles/use-styles-for-block.js.map +1 -1
  954. package/build-module/components/block-styles/utils.js +4 -7
  955. package/build-module/components/block-styles/utils.js.map +1 -1
  956. package/build-module/components/block-switcher/block-styles-menu.js +4 -5
  957. package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
  958. package/build-module/components/block-switcher/block-transformations-menu.js +24 -29
  959. package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
  960. package/build-module/components/block-switcher/block-transformations-menu.native.js +9 -10
  961. package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
  962. package/build-module/components/block-switcher/block-variation-transformations.js +21 -30
  963. package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
  964. package/build-module/components/block-switcher/index.js +47 -60
  965. package/build-module/components/block-switcher/index.js.map +1 -1
  966. package/build-module/components/block-switcher/pattern-transformations-menu.js +18 -22
  967. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  968. package/build-module/components/block-switcher/preview-block-popover.js +3 -4
  969. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  970. package/build-module/components/block-switcher/utils.js +2 -3
  971. package/build-module/components/block-switcher/utils.js.map +1 -1
  972. package/build-module/components/block-title/index.js +5 -6
  973. package/build-module/components/block-title/index.js.map +1 -1
  974. package/build-module/components/block-title/use-block-display-title.js +5 -6
  975. package/build-module/components/block-title/use-block-display-title.js.map +1 -1
  976. package/build-module/components/block-toolbar/index.js +4 -5
  977. package/build-module/components/block-toolbar/index.js.map +1 -1
  978. package/build-module/components/block-toolbar/utils.js +14 -16
  979. package/build-module/components/block-toolbar/utils.js.map +1 -1
  980. package/build-module/components/block-tools/back-compat.js +3 -4
  981. package/build-module/components/block-tools/back-compat.js.map +1 -1
  982. package/build-module/components/block-tools/block-contextual-toolbar.js +5 -6
  983. package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
  984. package/build-module/components/block-tools/block-selection-button.js +6 -9
  985. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  986. package/build-module/components/block-tools/index.js +6 -7
  987. package/build-module/components/block-tools/index.js.map +1 -1
  988. package/build-module/components/block-tools/insertion-point.js +7 -10
  989. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  990. package/build-module/components/block-tools/selected-block-popover.js +19 -20
  991. package/build-module/components/block-tools/selected-block-popover.js.map +1 -1
  992. package/build-module/components/block-tools/use-block-toolbar-popover-props.js +9 -14
  993. package/build-module/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  994. package/build-module/components/block-tools/zoom-out-mode-inserters.js +3 -4
  995. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  996. package/build-module/components/block-types-list/index.js +8 -9
  997. package/build-module/components/block-types-list/index.js.map +1 -1
  998. package/build-module/components/block-types-list/index.native.js +22 -27
  999. package/build-module/components/block-types-list/index.native.js.map +1 -1
  1000. package/build-module/components/block-variation-picker/index.js +8 -9
  1001. package/build-module/components/block-variation-picker/index.js.map +1 -1
  1002. package/build-module/components/block-variation-picker/index.native.js +7 -9
  1003. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  1004. package/build-module/components/block-variation-transforms/index.js +30 -41
  1005. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  1006. package/build-module/components/block-vertical-alignment-control/ui.js +7 -9
  1007. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  1008. package/build-module/components/border-radius-control/all-input-control.js +7 -8
  1009. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  1010. package/build-module/components/border-radius-control/index.js +9 -10
  1011. package/build-module/components/border-radius-control/index.js.map +1 -1
  1012. package/build-module/components/border-radius-control/input-controls.js +8 -11
  1013. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  1014. package/build-module/components/border-radius-control/linked-button.js +4 -5
  1015. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  1016. package/build-module/components/border-radius-control/utils.js +3 -7
  1017. package/build-module/components/border-radius-control/utils.js.map +1 -1
  1018. package/build-module/components/button-block-appender/index.js +13 -15
  1019. package/build-module/components/button-block-appender/index.js.map +1 -1
  1020. package/build-module/components/button-block-appender/index.native.js +25 -29
  1021. package/build-module/components/button-block-appender/index.native.js.map +1 -1
  1022. package/build-module/components/caption/index.native.js +40 -43
  1023. package/build-module/components/caption/index.native.js.map +1 -1
  1024. package/build-module/components/child-layout-control/index.js +5 -6
  1025. package/build-module/components/child-layout-control/index.js.map +1 -1
  1026. package/build-module/components/color-palette/control.js +5 -6
  1027. package/build-module/components/color-palette/control.js.map +1 -1
  1028. package/build-module/components/color-palette/with-color-context.js +1 -6
  1029. package/build-module/components/color-palette/with-color-context.js.map +1 -1
  1030. package/build-module/components/color-style-selector/index.js +28 -35
  1031. package/build-module/components/color-style-selector/index.js.map +1 -1
  1032. package/build-module/components/colors/utils.js +5 -8
  1033. package/build-module/components/colors/utils.js.map +1 -1
  1034. package/build-module/components/colors/with-colors.js +9 -24
  1035. package/build-module/components/colors/with-colors.js.map +1 -1
  1036. package/build-module/components/colors-gradients/control.js +19 -21
  1037. package/build-module/components/colors-gradients/control.js.map +1 -1
  1038. package/build-module/components/colors-gradients/dropdown.js +32 -39
  1039. package/build-module/components/colors-gradients/dropdown.js.map +1 -1
  1040. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +20 -24
  1041. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  1042. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +27 -31
  1043. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  1044. package/build-module/components/contrast-checker/index.js +12 -13
  1045. package/build-module/components/contrast-checker/index.js.map +1 -1
  1046. package/build-module/components/contrast-checker/index.native.js +16 -18
  1047. package/build-module/components/contrast-checker/index.native.js.map +1 -1
  1048. package/build-module/components/convert-to-group-buttons/index.js +9 -10
  1049. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  1050. package/build-module/components/convert-to-group-buttons/index.native.js +6 -7
  1051. package/build-module/components/convert-to-group-buttons/index.native.js.map +1 -1
  1052. package/build-module/components/convert-to-group-buttons/toolbar.js +6 -12
  1053. package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
  1054. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js +4 -6
  1055. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  1056. package/build-module/components/copy-handler/index.js +4 -7
  1057. package/build-module/components/copy-handler/index.js.map +1 -1
  1058. package/build-module/components/date-format-picker/index.js +12 -16
  1059. package/build-module/components/date-format-picker/index.js.map +1 -1
  1060. package/build-module/components/default-block-appender/index.js +7 -9
  1061. package/build-module/components/default-block-appender/index.js.map +1 -1
  1062. package/build-module/components/default-block-appender/index.native.js +8 -10
  1063. package/build-module/components/default-block-appender/index.native.js.map +1 -1
  1064. package/build-module/components/default-style-picker/index.js +14 -22
  1065. package/build-module/components/default-style-picker/index.js.map +1 -1
  1066. package/build-module/components/duotone/components.js +14 -18
  1067. package/build-module/components/duotone/components.js.map +1 -1
  1068. package/build-module/components/duotone/utils.js +1 -2
  1069. package/build-module/components/duotone/utils.js.map +1 -1
  1070. package/build-module/components/duotone-control/index.js +12 -15
  1071. package/build-module/components/duotone-control/index.js.map +1 -1
  1072. package/build-module/components/editable-text/index.js +5 -6
  1073. package/build-module/components/editable-text/index.js.map +1 -1
  1074. package/build-module/components/editor-styles/index.js +4 -5
  1075. package/build-module/components/editor-styles/index.js.map +1 -1
  1076. package/build-module/components/floating-toolbar/index.native.js +7 -8
  1077. package/build-module/components/floating-toolbar/index.native.js.map +1 -1
  1078. package/build-module/components/font-appearance-control/index.js +19 -26
  1079. package/build-module/components/font-appearance-control/index.js.map +1 -1
  1080. package/build-module/components/font-family/index.js +10 -12
  1081. package/build-module/components/font-family/index.js.map +1 -1
  1082. package/build-module/components/font-sizes/fluid-utils.js +17 -21
  1083. package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
  1084. package/build-module/components/font-sizes/utils.js +6 -12
  1085. package/build-module/components/font-sizes/utils.js.map +1 -1
  1086. package/build-module/components/font-sizes/with-font-sizes.js +11 -30
  1087. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  1088. package/build-module/components/global-styles/advanced-panel.js +7 -10
  1089. package/build-module/components/global-styles/advanced-panel.js.map +1 -1
  1090. package/build-module/components/global-styles/border-panel.js +45 -78
  1091. package/build-module/components/global-styles/border-panel.js.map +1 -1
  1092. package/build-module/components/global-styles/color-panel.js +104 -147
  1093. package/build-module/components/global-styles/color-panel.js.map +1 -1
  1094. package/build-module/components/global-styles/color-panel.native.js +25 -42
  1095. package/build-module/components/global-styles/color-panel.native.js.map +1 -1
  1096. package/build-module/components/global-styles/dimensions-panel.js +78 -109
  1097. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  1098. package/build-module/components/global-styles/effects-panel.js +58 -72
  1099. package/build-module/components/global-styles/effects-panel.js.map +1 -1
  1100. package/build-module/components/global-styles/filters-panel.js +53 -71
  1101. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  1102. package/build-module/components/global-styles/get-block-css-selector.js +5 -8
  1103. package/build-module/components/global-styles/get-block-css-selector.js.map +1 -1
  1104. package/build-module/components/global-styles/hooks.js +22 -37
  1105. package/build-module/components/global-styles/hooks.js.map +1 -1
  1106. package/build-module/components/global-styles/typography-panel.js +69 -125
  1107. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  1108. package/build-module/components/global-styles/typography-utils.js +48 -26
  1109. package/build-module/components/global-styles/typography-utils.js.map +1 -1
  1110. package/build-module/components/global-styles/use-global-styles-output.js +142 -237
  1111. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  1112. package/build-module/components/global-styles/utils.js +12 -28
  1113. package/build-module/components/global-styles/utils.js.map +1 -1
  1114. package/build-module/components/gradients/use-gradient.js +6 -7
  1115. package/build-module/components/gradients/use-gradient.js.map +1 -1
  1116. package/build-module/components/height-control/index.js +9 -10
  1117. package/build-module/components/height-control/index.js.map +1 -1
  1118. package/build-module/components/iframe/index.js +51 -86
  1119. package/build-module/components/iframe/index.js.map +1 -1
  1120. package/build-module/components/iframe/use-compatibility-styles.js +29 -20
  1121. package/build-module/components/iframe/use-compatibility-styles.js.map +1 -1
  1122. package/build-module/components/image-editor/aspect-ratio-dropdown.js +83 -91
  1123. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  1124. package/build-module/components/image-editor/context.js +9 -10
  1125. package/build-module/components/image-editor/context.js.map +1 -1
  1126. package/build-module/components/image-editor/cropper.js +11 -12
  1127. package/build-module/components/image-editor/cropper.js.map +1 -1
  1128. package/build-module/components/image-editor/index.js +12 -13
  1129. package/build-module/components/image-editor/index.js.map +1 -1
  1130. package/build-module/components/image-editor/use-save-image.js +11 -12
  1131. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  1132. package/build-module/components/image-editor/use-transform-image.js +5 -6
  1133. package/build-module/components/image-editor/use-transform-image.js.map +1 -1
  1134. package/build-module/components/image-editor/zoom-dropdown.js +10 -13
  1135. package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
  1136. package/build-module/components/image-size-control/index.js +12 -13
  1137. package/build-module/components/image-size-control/index.js.map +1 -1
  1138. package/build-module/components/inner-blocks/button-block-appender.js +7 -8
  1139. package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
  1140. package/build-module/components/inner-blocks/default-block-appender.js +6 -8
  1141. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  1142. package/build-module/components/inner-blocks/index.js +2 -6
  1143. package/build-module/components/inner-blocks/index.js.map +1 -1
  1144. package/build-module/components/inner-blocks/index.native.js +1 -3
  1145. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  1146. package/build-module/components/inner-blocks/use-block-context.js +1 -4
  1147. package/build-module/components/inner-blocks/use-block-context.js.map +1 -1
  1148. package/build-module/components/inner-blocks/use-nested-settings-update.js +2 -4
  1149. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  1150. package/build-module/components/inserter/block-patterns-explorer/explorer.js +9 -11
  1151. package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  1152. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js +11 -18
  1153. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  1154. package/build-module/components/inserter/block-patterns-explorer/sidebar.js +20 -24
  1155. package/build-module/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  1156. package/build-module/components/inserter/block-patterns-tab.js +29 -40
  1157. package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
  1158. package/build-module/components/inserter/block-types-tab.js +7 -9
  1159. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  1160. package/build-module/components/inserter/block-types-tab.native.js +8 -9
  1161. package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
  1162. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js +3 -5
  1163. package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
  1164. package/build-module/components/inserter/hooks/use-block-types-state.js +5 -6
  1165. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  1166. package/build-module/components/inserter/hooks/use-clipboard-block.native.js +2 -2
  1167. package/build-module/components/inserter/hooks/use-clipboard-block.native.js.map +1 -1
  1168. package/build-module/components/inserter/hooks/use-debounced-input.js +1 -2
  1169. package/build-module/components/inserter/hooks/use-debounced-input.js.map +1 -1
  1170. package/build-module/components/inserter/hooks/use-insertion-point.js +10 -12
  1171. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  1172. package/build-module/components/inserter/index.js +37 -51
  1173. package/build-module/components/inserter/index.js.map +1 -1
  1174. package/build-module/components/inserter/index.native.js +24 -31
  1175. package/build-module/components/inserter/index.native.js.map +1 -1
  1176. package/build-module/components/inserter/library.js +11 -12
  1177. package/build-module/components/inserter/library.js.map +1 -1
  1178. package/build-module/components/inserter/media-tab/hooks.js +2 -5
  1179. package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
  1180. package/build-module/components/inserter/media-tab/media-list.js +6 -7
  1181. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  1182. package/build-module/components/inserter/media-tab/media-panel.js +12 -14
  1183. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  1184. package/build-module/components/inserter/media-tab/media-preview.js +47 -58
  1185. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  1186. package/build-module/components/inserter/media-tab/media-tab.js +24 -28
  1187. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  1188. package/build-module/components/inserter/media-tab/utils.js +3 -5
  1189. package/build-module/components/inserter/media-tab/utils.js.map +1 -1
  1190. package/build-module/components/inserter/menu.js +15 -19
  1191. package/build-module/components/inserter/menu.js.map +1 -1
  1192. package/build-module/components/inserter/menu.native.js +27 -31
  1193. package/build-module/components/inserter/menu.native.js.map +1 -1
  1194. package/build-module/components/inserter/mobile-tab-navigation.js +7 -9
  1195. package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
  1196. package/build-module/components/inserter/panel.js +5 -6
  1197. package/build-module/components/inserter/panel.js.map +1 -1
  1198. package/build-module/components/inserter/preview-panel.js +4 -5
  1199. package/build-module/components/inserter/preview-panel.js.map +1 -1
  1200. package/build-module/components/inserter/quick-inserter.js +8 -9
  1201. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  1202. package/build-module/components/inserter/reusable-blocks-tab.js +13 -18
  1203. package/build-module/components/inserter/reusable-blocks-tab.js.map +1 -1
  1204. package/build-module/components/inserter/reusable-blocks-tab.native.js +5 -6
  1205. package/build-module/components/inserter/reusable-blocks-tab.native.js.map +1 -1
  1206. package/build-module/components/inserter/search-items.js +12 -40
  1207. package/build-module/components/inserter/search-items.js.map +1 -1
  1208. package/build-module/components/inserter/search-results.js +17 -18
  1209. package/build-module/components/inserter/search-results.js.map +1 -1
  1210. package/build-module/components/inserter/search-results.native.js +11 -12
  1211. package/build-module/components/inserter/search-results.native.js.map +1 -1
  1212. package/build-module/components/inserter/tabs.js +8 -9
  1213. package/build-module/components/inserter/tabs.js.map +1 -1
  1214. package/build-module/components/inserter/tabs.native.js +37 -55
  1215. package/build-module/components/inserter/tabs.native.js.map +1 -1
  1216. package/build-module/components/inserter/utils.native.js +13 -17
  1217. package/build-module/components/inserter/utils.native.js.map +1 -1
  1218. package/build-module/components/inserter-draggable-blocks/index.js +11 -13
  1219. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  1220. package/build-module/components/inserter-list-item/index.js +65 -69
  1221. package/build-module/components/inserter-list-item/index.js.map +1 -1
  1222. package/build-module/components/inserter-listbox/index.js +3 -4
  1223. package/build-module/components/inserter-listbox/index.js.map +1 -1
  1224. package/build-module/components/inserter-listbox/item.js +6 -7
  1225. package/build-module/components/inserter-listbox/item.js.map +1 -1
  1226. package/build-module/components/inspector-controls/block-support-slot-container.js +4 -5
  1227. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  1228. package/build-module/components/inspector-controls/block-support-tools-panel.js +6 -8
  1229. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  1230. package/build-module/components/inspector-controls/fill.js +13 -23
  1231. package/build-module/components/inspector-controls/fill.js.map +1 -1
  1232. package/build-module/components/inspector-controls/fill.native.js +7 -11
  1233. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  1234. package/build-module/components/inspector-controls/slot.js +9 -13
  1235. package/build-module/components/inspector-controls/slot.js.map +1 -1
  1236. package/build-module/components/inspector-controls/slot.native.js +6 -10
  1237. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  1238. package/build-module/components/inspector-controls-tabs/index.js +6 -7
  1239. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  1240. package/build-module/components/inspector-controls-tabs/position-controls-panel.js +3 -8
  1241. package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  1242. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js +1 -1
  1243. package/build-module/components/inspector-controls-tabs/settings-tab-hint.js.map +1 -1
  1244. package/build-module/components/inspector-controls-tabs/settings-tab.js +3 -6
  1245. package/build-module/components/inspector-controls-tabs/settings-tab.js.map +1 -1
  1246. package/build-module/components/inspector-controls-tabs/styles-tab.js +5 -6
  1247. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  1248. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js +1 -3
  1249. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  1250. package/build-module/components/inspector-popover-header/index.js +18 -22
  1251. package/build-module/components/inspector-popover-header/index.js.map +1 -1
  1252. package/build-module/components/justify-content-control/ui.js +8 -10
  1253. package/build-module/components/justify-content-control/ui.js.map +1 -1
  1254. package/build-module/components/letter-spacing-control/index.js +6 -7
  1255. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  1256. package/build-module/components/line-height-control/index.js +13 -18
  1257. package/build-module/components/line-height-control/index.js.map +1 -1
  1258. package/build-module/components/line-height-control/index.native.js +4 -5
  1259. package/build-module/components/line-height-control/index.native.js.map +1 -1
  1260. package/build-module/components/link-control/index.js +83 -64
  1261. package/build-module/components/link-control/index.js.map +1 -1
  1262. package/build-module/components/link-control/is-url-like.js +32 -3
  1263. package/build-module/components/link-control/is-url-like.js.map +1 -1
  1264. package/build-module/components/link-control/link-preview.js +24 -27
  1265. package/build-module/components/link-control/link-preview.js.map +1 -1
  1266. package/build-module/components/link-control/search-create-button.js +7 -9
  1267. package/build-module/components/link-control/search-create-button.js.map +1 -1
  1268. package/build-module/components/link-control/search-input.js +22 -27
  1269. package/build-module/components/link-control/search-input.js.map +1 -1
  1270. package/build-module/components/link-control/search-item.js +13 -15
  1271. package/build-module/components/link-control/search-item.js.map +1 -1
  1272. package/build-module/components/link-control/search-results.js +21 -27
  1273. package/build-module/components/link-control/search-results.js.map +1 -1
  1274. package/build-module/components/link-control/settings-drawer.js +7 -33
  1275. package/build-module/components/link-control/settings-drawer.js.map +1 -1
  1276. package/build-module/components/link-control/settings.js +7 -9
  1277. package/build-module/components/link-control/settings.js.map +1 -1
  1278. package/build-module/components/link-control/use-internal-value.js +46 -0
  1279. package/build-module/components/link-control/use-internal-value.js.map +1 -0
  1280. package/build-module/components/link-control/use-rich-url-data.js +1 -1
  1281. package/build-module/components/link-control/use-rich-url-data.js.map +1 -1
  1282. package/build-module/components/link-control/use-search-handler.js +10 -23
  1283. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  1284. package/build-module/components/list-view/appender.js +11 -12
  1285. package/build-module/components/list-view/appender.js.map +1 -1
  1286. package/build-module/components/list-view/aria-referenced-text.js +35 -0
  1287. package/build-module/components/list-view/aria-referenced-text.js.map +1 -0
  1288. package/build-module/components/list-view/block-contents.js +38 -38
  1289. package/build-module/components/list-view/block-contents.js.map +1 -1
  1290. package/build-module/components/list-view/block-select-button.js +65 -22
  1291. package/build-module/components/list-view/block-select-button.js.map +1 -1
  1292. package/build-module/components/list-view/block.js +117 -101
  1293. package/build-module/components/list-view/block.js.map +1 -1
  1294. package/build-module/components/list-view/branch.js +5 -5
  1295. package/build-module/components/list-view/branch.js.map +1 -1
  1296. package/build-module/components/list-view/drop-indicator.js +4 -5
  1297. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  1298. package/build-module/components/list-view/expander.js +3 -4
  1299. package/build-module/components/list-view/expander.js.map +1 -1
  1300. package/build-module/components/list-view/index.js +46 -43
  1301. package/build-module/components/list-view/index.js.map +1 -1
  1302. package/build-module/components/list-view/leaf.js +10 -11
  1303. package/build-module/components/list-view/leaf.js.map +1 -1
  1304. package/build-module/components/list-view/use-block-selection.js +4 -6
  1305. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  1306. package/build-module/components/list-view/use-list-view-client-ids.js +9 -12
  1307. package/build-module/components/list-view/use-list-view-client-ids.js.map +1 -1
  1308. package/build-module/components/list-view/use-list-view-drop-zone.js +25 -13
  1309. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  1310. package/build-module/components/list-view/use-list-view-expand-selected-item.js +4 -5
  1311. package/build-module/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  1312. package/build-module/components/list-view/use-list-view-scroll-into-view.js +5 -6
  1313. package/build-module/components/list-view/use-list-view-scroll-into-view.js.map +1 -1
  1314. package/build-module/components/media-placeholder/index.js +71 -92
  1315. package/build-module/components/media-placeholder/index.js.map +1 -1
  1316. package/build-module/components/media-placeholder/index.native.js +5 -6
  1317. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  1318. package/build-module/components/media-replace-flow/index.js +94 -107
  1319. package/build-module/components/media-replace-flow/index.js.map +1 -1
  1320. package/build-module/components/media-upload/check.js +4 -5
  1321. package/build-module/components/media-upload/check.js.map +1 -1
  1322. package/build-module/components/media-upload/index.native.js +1 -1
  1323. package/build-module/components/media-upload/index.native.js.map +1 -1
  1324. package/build-module/components/multi-selection-inspector/index.js +3 -4
  1325. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  1326. package/build-module/components/navigable-toolbar/index.js +16 -15
  1327. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  1328. package/build-module/components/observe-typing/index.js +3 -4
  1329. package/build-module/components/observe-typing/index.js.map +1 -1
  1330. package/build-module/components/panel-color-settings/index.js +4 -5
  1331. package/build-module/components/panel-color-settings/index.js.map +1 -1
  1332. package/build-module/components/plain-text/index.js +4 -6
  1333. package/build-module/components/plain-text/index.js.map +1 -1
  1334. package/build-module/components/plain-text/index.native.js +8 -14
  1335. package/build-module/components/plain-text/index.native.js.map +1 -1
  1336. package/build-module/components/preview-options/index.js +8 -9
  1337. package/build-module/components/preview-options/index.js.map +1 -1
  1338. package/build-module/components/provider/block-refs-provider.js +3 -4
  1339. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  1340. package/build-module/components/provider/use-block-sync.js +7 -8
  1341. package/build-module/components/provider/use-block-sync.js.map +1 -1
  1342. package/build-module/components/provider/with-registry-provider.js +5 -7
  1343. package/build-module/components/provider/with-registry-provider.js.map +1 -1
  1344. package/build-module/components/publish-date-time-picker/index.js +6 -7
  1345. package/build-module/components/publish-date-time-picker/index.js.map +1 -1
  1346. package/build-module/components/recursion-provider/index.js +7 -11
  1347. package/build-module/components/recursion-provider/index.js.map +1 -1
  1348. package/build-module/components/resizable-box-popover/index.js +5 -6
  1349. package/build-module/components/resizable-box-popover/index.js.map +1 -1
  1350. package/build-module/components/responsive-block-control/label.js +5 -6
  1351. package/build-module/components/responsive-block-control/label.js.map +1 -1
  1352. package/build-module/components/rich-text/embed-handler-picker.native.js +6 -10
  1353. package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
  1354. package/build-module/components/rich-text/format-edit.js +7 -8
  1355. package/build-module/components/rich-text/format-edit.js.map +1 -1
  1356. package/build-module/components/rich-text/format-toolbar/index.js +9 -18
  1357. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  1358. package/build-module/components/rich-text/format-toolbar-container.js +13 -16
  1359. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  1360. package/build-module/components/rich-text/index.js +43 -47
  1361. package/build-module/components/rich-text/index.js.map +1 -1
  1362. package/build-module/components/rich-text/index.native.js +130 -157
  1363. package/build-module/components/rich-text/index.native.js.map +1 -1
  1364. package/build-module/components/rich-text/input-event.js +4 -5
  1365. package/build-module/components/rich-text/input-event.js.map +1 -1
  1366. package/build-module/components/rich-text/shortcut.js +5 -6
  1367. package/build-module/components/rich-text/shortcut.js.map +1 -1
  1368. package/build-module/components/rich-text/split-value.js +8 -10
  1369. package/build-module/components/rich-text/split-value.js.map +1 -1
  1370. package/build-module/components/rich-text/toolbar-button.js +6 -7
  1371. package/build-module/components/rich-text/toolbar-button.js.map +1 -1
  1372. package/build-module/components/rich-text/use-before-input-rules.js +1 -4
  1373. package/build-module/components/rich-text/use-before-input-rules.js.map +1 -1
  1374. package/build-module/components/rich-text/use-enter.js +3 -6
  1375. package/build-module/components/rich-text/use-enter.js.map +1 -1
  1376. package/build-module/components/rich-text/use-firefox-compat.js +29 -1
  1377. package/build-module/components/rich-text/use-firefox-compat.js.map +1 -1
  1378. package/build-module/components/rich-text/use-format-types.js +11 -17
  1379. package/build-module/components/rich-text/use-format-types.js.map +1 -1
  1380. package/build-module/components/rich-text/use-input-rules.js +9 -15
  1381. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  1382. package/build-module/components/rich-text/use-mark-persistent.js +4 -5
  1383. package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
  1384. package/build-module/components/rich-text/use-paste-handler.js +5 -7
  1385. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  1386. package/build-module/components/rich-text/utils.js +5 -7
  1387. package/build-module/components/rich-text/utils.js.map +1 -1
  1388. package/build-module/components/skip-to-selected-block/index.js +3 -4
  1389. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  1390. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js +27 -0
  1391. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -0
  1392. package/build-module/components/spacing-sizes-control/index.js +62 -63
  1393. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  1394. package/build-module/components/spacing-sizes-control/{axial-input-controls.js → input-controls/axial.js} +21 -22
  1395. package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -0
  1396. package/build-module/components/spacing-sizes-control/{input-controls.js → input-controls/separated.js} +21 -21
  1397. package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -0
  1398. package/build-module/components/spacing-sizes-control/input-controls/single.js +40 -0
  1399. package/build-module/components/spacing-sizes-control/input-controls/single.js.map +1 -0
  1400. package/build-module/components/spacing-sizes-control/{spacing-input-control.js → input-controls/spacing-input-control.js} +53 -70
  1401. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -0
  1402. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js +73 -0
  1403. package/build-module/components/spacing-sizes-control/sides-dropdown/index.js.map +1 -0
  1404. package/build-module/components/spacing-sizes-control/utils.js +196 -25
  1405. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  1406. package/build-module/components/text-decoration-control/index.js +5 -6
  1407. package/build-module/components/text-decoration-control/index.js.map +1 -1
  1408. package/build-module/components/text-transform-control/index.js +5 -6
  1409. package/build-module/components/text-transform-control/index.js.map +1 -1
  1410. package/build-module/components/tool-selector/index.js +13 -16
  1411. package/build-module/components/tool-selector/index.js.map +1 -1
  1412. package/build-module/components/typewriter/index.js +6 -9
  1413. package/build-module/components/typewriter/index.js.map +1 -1
  1414. package/build-module/components/ungroup-button/index.native.js +11 -14
  1415. package/build-module/components/ungroup-button/index.native.js.map +1 -1
  1416. package/build-module/components/unit-control/index.js +4 -5
  1417. package/build-module/components/unit-control/index.js.map +1 -1
  1418. package/build-module/components/url-input/index.js +15 -26
  1419. package/build-module/components/url-input/index.js.map +1 -1
  1420. package/build-module/components/url-input/index.native.js +6 -8
  1421. package/build-module/components/url-input/index.native.js.map +1 -1
  1422. package/build-module/components/url-popover/image-url-input-ui.js +12 -15
  1423. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  1424. package/build-module/components/url-popover/index.js +12 -14
  1425. package/build-module/components/url-popover/index.js.map +1 -1
  1426. package/build-module/components/url-popover/link-editor.js +7 -8
  1427. package/build-module/components/url-popover/link-editor.js.map +1 -1
  1428. package/build-module/components/url-popover/link-viewer-url.js +5 -6
  1429. package/build-module/components/url-popover/link-viewer-url.js.map +1 -1
  1430. package/build-module/components/url-popover/link-viewer.js +8 -9
  1431. package/build-module/components/url-popover/link-viewer.js.map +1 -1
  1432. package/build-module/components/use-block-display-information/index.js +2 -2
  1433. package/build-module/components/use-block-display-information/index.js.map +1 -1
  1434. package/build-module/components/use-block-drop-zone/index.js +16 -23
  1435. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  1436. package/build-module/components/use-block-drop-zone/index.native.js +8 -11
  1437. package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
  1438. package/build-module/components/use-moving-animation/index.js +9 -12
  1439. package/build-module/components/use-moving-animation/index.js.map +1 -1
  1440. package/build-module/components/use-on-block-drop/index.js +2 -6
  1441. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  1442. package/build-module/components/use-on-block-drop/index.native.js +8 -10
  1443. package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
  1444. package/build-module/components/use-paste-styles/index.js +2 -6
  1445. package/build-module/components/use-paste-styles/index.js.map +1 -1
  1446. package/build-module/components/warning/index.js +6 -7
  1447. package/build-module/components/warning/index.js.map +1 -1
  1448. package/build-module/components/warning/index.native.js +9 -10
  1449. package/build-module/components/warning/index.native.js.map +1 -1
  1450. package/build-module/components/writing-flow/index.js +4 -5
  1451. package/build-module/components/writing-flow/index.js.map +1 -1
  1452. package/build-module/components/writing-flow/use-drag-selection.js +4 -6
  1453. package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
  1454. package/build-module/components/writing-flow/use-tab-nav.js +9 -6
  1455. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  1456. package/build-module/hooks/align.js +7 -14
  1457. package/build-module/hooks/align.js.map +1 -1
  1458. package/build-module/hooks/anchor.js +5 -3
  1459. package/build-module/hooks/anchor.js.map +1 -1
  1460. package/build-module/hooks/aria-label.js +1 -3
  1461. package/build-module/hooks/aria-label.js.map +1 -1
  1462. package/build-module/hooks/behaviors.js +90 -58
  1463. package/build-module/hooks/behaviors.js.map +1 -1
  1464. package/build-module/hooks/border.js +25 -38
  1465. package/build-module/hooks/border.js.map +1 -1
  1466. package/build-module/hooks/color.js +22 -37
  1467. package/build-module/hooks/color.js.map +1 -1
  1468. package/build-module/hooks/content-lock-ui.js +23 -27
  1469. package/build-module/hooks/content-lock-ui.js.map +1 -1
  1470. package/build-module/hooks/contrast-checker.js +4 -7
  1471. package/build-module/hooks/contrast-checker.js.map +1 -1
  1472. package/build-module/hooks/custom-class-name.js +4 -4
  1473. package/build-module/hooks/custom-class-name.js.map +1 -1
  1474. package/build-module/hooks/dimensions.js +6 -9
  1475. package/build-module/hooks/dimensions.js.map +1 -1
  1476. package/build-module/hooks/duotone.js +32 -44
  1477. package/build-module/hooks/duotone.js.map +1 -1
  1478. package/build-module/hooks/font-family.js +5 -6
  1479. package/build-module/hooks/font-family.js.map +1 -1
  1480. package/build-module/hooks/font-size.js +14 -21
  1481. package/build-module/hooks/font-size.js.map +1 -1
  1482. package/build-module/hooks/gap.js +5 -6
  1483. package/build-module/hooks/gap.js.map +1 -1
  1484. package/build-module/hooks/layout.js +42 -59
  1485. package/build-module/hooks/layout.js.map +1 -1
  1486. package/build-module/hooks/line-height.js +5 -8
  1487. package/build-module/hooks/line-height.js.map +1 -1
  1488. package/build-module/hooks/lock.js +2 -2
  1489. package/build-module/hooks/lock.js.map +1 -1
  1490. package/build-module/hooks/margin.js +6 -9
  1491. package/build-module/hooks/margin.js.map +1 -1
  1492. package/build-module/hooks/metadata-name.js +4 -5
  1493. package/build-module/hooks/metadata-name.js.map +1 -1
  1494. package/build-module/hooks/metadata.js +3 -7
  1495. package/build-module/hooks/metadata.js.map +1 -1
  1496. package/build-module/hooks/padding.js +6 -9
  1497. package/build-module/hooks/padding.js.map +1 -1
  1498. package/build-module/hooks/position.js +26 -40
  1499. package/build-module/hooks/position.js.map +1 -1
  1500. package/build-module/hooks/settings.js +1 -3
  1501. package/build-module/hooks/settings.js.map +1 -1
  1502. package/build-module/hooks/style.js +11 -19
  1503. package/build-module/hooks/style.js.map +1 -1
  1504. package/build-module/hooks/supports.js +3 -5
  1505. package/build-module/hooks/supports.js.map +1 -1
  1506. package/build-module/hooks/typography.js +18 -27
  1507. package/build-module/hooks/typography.js.map +1 -1
  1508. package/build-module/hooks/typography.native.js +1 -2
  1509. package/build-module/hooks/typography.native.js.map +1 -1
  1510. package/build-module/hooks/use-border-props.js +1 -3
  1511. package/build-module/hooks/use-border-props.js.map +1 -1
  1512. package/build-module/hooks/use-color-props.js +6 -8
  1513. package/build-module/hooks/use-color-props.js.map +1 -1
  1514. package/build-module/hooks/use-editor-wrapper-styles.native.js +34 -39
  1515. package/build-module/hooks/use-editor-wrapper-styles.native.js.map +1 -1
  1516. package/build-module/hooks/use-spacing-props.js +1 -1
  1517. package/build-module/hooks/use-spacing-props.js.map +1 -1
  1518. package/build-module/hooks/use-typography-props.js +8 -12
  1519. package/build-module/hooks/use-typography-props.js.map +1 -1
  1520. package/build-module/hooks/utils.js +7 -19
  1521. package/build-module/hooks/utils.js.map +1 -1
  1522. package/build-module/layouts/constrained.js +22 -27
  1523. package/build-module/layouts/constrained.js.map +1 -1
  1524. package/build-module/layouts/flex.js +43 -54
  1525. package/build-module/layouts/flex.js.map +1 -1
  1526. package/build-module/layouts/flow.js +10 -13
  1527. package/build-module/layouts/flow.js.map +1 -1
  1528. package/build-module/layouts/grid.js +45 -25
  1529. package/build-module/layouts/grid.js.map +1 -1
  1530. package/build-module/layouts/index.js +1 -2
  1531. package/build-module/layouts/index.js.map +1 -1
  1532. package/build-module/layouts/utils.js +3 -9
  1533. package/build-module/layouts/utils.js.map +1 -1
  1534. package/build-module/store/actions.js +253 -336
  1535. package/build-module/store/actions.js.map +1 -1
  1536. package/build-module/store/array.js +1 -2
  1537. package/build-module/store/array.js.map +1 -1
  1538. package/build-module/store/private-actions.js +3 -7
  1539. package/build-module/store/private-actions.js.map +1 -1
  1540. package/build-module/store/private-selectors.js +40 -25
  1541. package/build-module/store/private-selectors.js.map +1 -1
  1542. package/build-module/store/reducer.js +67 -169
  1543. package/build-module/store/reducer.js.map +1 -1
  1544. package/build-module/store/selectors.js +144 -215
  1545. package/build-module/store/selectors.js.map +1 -1
  1546. package/build-module/utils/block-variation-transforms.js +4 -7
  1547. package/build-module/utils/block-variation-transforms.js.map +1 -1
  1548. package/build-module/utils/math.js +1 -2
  1549. package/build-module/utils/math.js.map +1 -1
  1550. package/build-module/utils/object.js +1 -4
  1551. package/build-module/utils/object.js.map +1 -1
  1552. package/build-module/utils/order-inserter-block-items.js +5 -7
  1553. package/build-module/utils/order-inserter-block-items.js.map +1 -1
  1554. package/build-module/utils/parse-css-unit-to-px.js +3 -6
  1555. package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
  1556. package/build-module/utils/pasting.js +5 -8
  1557. package/build-module/utils/pasting.js.map +1 -1
  1558. package/build-module/utils/pre-parse-patterns.js +1 -1
  1559. package/build-module/utils/pre-parse-patterns.js.map +1 -1
  1560. package/build-module/utils/sorting.js +1 -2
  1561. package/build-module/utils/sorting.js.map +1 -1
  1562. package/build-module/utils/transform-styles/index.js +5 -7
  1563. package/build-module/utils/transform-styles/index.js.map +1 -1
  1564. package/build-module/utils/transform-styles/transforms/wrap.js +25 -28
  1565. package/build-module/utils/transform-styles/transforms/wrap.js.map +1 -1
  1566. package/build-style/content-rtl.css +7 -10
  1567. package/build-style/content.css +7 -10
  1568. package/build-style/style-rtl.css +35 -101
  1569. package/build-style/style.css +35 -101
  1570. package/package.json +31 -31
  1571. package/src/components/block-controls/fill.js +15 -17
  1572. package/src/components/block-controls/slot.js +21 -18
  1573. package/src/components/block-controls/slot.native.js +3 -8
  1574. package/src/components/block-draggable/index.js +2 -1
  1575. package/src/components/block-edit/test/edit.js +1 -1
  1576. package/src/components/block-inspector/index.js +1 -0
  1577. package/src/components/block-list/content.scss +8 -12
  1578. package/src/components/block-list/use-block-props/index.js +6 -1
  1579. package/src/components/block-list-appender/index.js +4 -1
  1580. package/src/components/block-lock/toolbar.js +2 -8
  1581. package/src/components/block-settings-menu/block-settings-dropdown.js +81 -41
  1582. package/src/components/block-tools/selected-block-popover.js +6 -0
  1583. package/src/components/color-palette/test/__snapshots__/control.js.snap +66 -50
  1584. package/src/components/color-palette/with-color-context.js +2 -6
  1585. package/src/components/colors-gradients/control.js +3 -3
  1586. package/src/components/colors-gradients/panel-color-gradient-settings.js +4 -5
  1587. package/src/components/global-styles/dimensions-panel.js +14 -5
  1588. package/src/components/global-styles/get-block-css-selector.js +2 -2
  1589. package/src/components/global-styles/test/typography-utils.js +139 -1
  1590. package/src/components/global-styles/typography-utils.js +53 -28
  1591. package/src/components/global-styles/use-global-styles-output.js +18 -8
  1592. package/src/components/global-styles/utils.js +9 -3
  1593. package/src/components/iframe/index.js +46 -68
  1594. package/src/components/iframe/use-compatibility-styles.js +34 -18
  1595. package/src/components/inspector-controls/README.md +1 -1
  1596. package/src/components/inspector-controls/fill.js +2 -6
  1597. package/src/components/inspector-controls-tabs/index.js +0 -1
  1598. package/src/components/inspector-controls-tabs/use-inspector-controls-tabs.js +0 -1
  1599. package/src/components/link-control/index.js +71 -33
  1600. package/src/components/link-control/is-url-like.js +40 -3
  1601. package/src/components/link-control/search-results.js +4 -14
  1602. package/src/components/link-control/settings-drawer.js +2 -37
  1603. package/src/components/link-control/settings.js +2 -2
  1604. package/src/components/link-control/style.scss +5 -6
  1605. package/src/components/link-control/test/index.js +169 -61
  1606. package/src/components/link-control/test/is-url-like.js +66 -0
  1607. package/src/components/link-control/use-internal-value.js +60 -0
  1608. package/src/components/link-control/use-search-handler.js +10 -27
  1609. package/src/components/list-view/appender.js +3 -5
  1610. package/src/components/list-view/aria-referenced-text.js +30 -0
  1611. package/src/components/list-view/block-contents.js +9 -8
  1612. package/src/components/list-view/block-select-button.js +59 -1
  1613. package/src/components/list-view/block.js +40 -10
  1614. package/src/components/list-view/index.js +29 -19
  1615. package/src/components/list-view/style.scss +0 -5
  1616. package/src/components/list-view/test/use-list-view-drop-zone.js +38 -1
  1617. package/src/components/list-view/use-block-selection.js +2 -2
  1618. package/src/components/list-view/use-list-view-drop-zone.js +22 -4
  1619. package/src/components/media-replace-flow/test/index.js +1 -1
  1620. package/src/components/navigable-toolbar/index.js +7 -5
  1621. package/src/components/rich-text/index.js +1 -1
  1622. package/src/components/rich-text/use-firefox-compat.js +27 -1
  1623. package/src/components/spacing-sizes-control/hooks/use-spacing-sizes.js +26 -0
  1624. package/src/components/spacing-sizes-control/index.js +85 -71
  1625. package/src/components/spacing-sizes-control/{axial-input-controls.js → input-controls/axial.js} +14 -13
  1626. package/src/components/spacing-sizes-control/{input-controls.js → input-controls/separated.js} +15 -14
  1627. package/src/components/spacing-sizes-control/input-controls/single.js +40 -0
  1628. package/src/components/spacing-sizes-control/{spacing-input-control.js → input-controls/spacing-input-control.js} +55 -80
  1629. package/src/components/spacing-sizes-control/sides-dropdown/index.js +91 -0
  1630. package/src/components/spacing-sizes-control/style.scss +28 -100
  1631. package/src/components/spacing-sizes-control/test/utils.js +233 -4
  1632. package/src/components/spacing-sizes-control/utils.js +203 -20
  1633. package/src/components/ungroup-button/index.native.js +2 -2
  1634. package/src/components/writing-flow/use-tab-nav.js +14 -3
  1635. package/src/hooks/anchor.js +3 -1
  1636. package/src/hooks/behaviors.js +116 -60
  1637. package/src/hooks/custom-class-name.js +23 -19
  1638. package/src/hooks/layout.js +4 -1
  1639. package/src/hooks/style.js +3 -1
  1640. package/src/hooks/utils.js +8 -7
  1641. package/src/layouts/grid.js +29 -3
  1642. package/src/store/private-selectors.js +54 -32
  1643. package/src/store/reducer.js +6 -8
  1644. package/src/store/selectors.js +31 -20
  1645. package/src/store/test/private-selectors.js +237 -62
  1646. package/src/store/test/reducer.js +0 -7
  1647. package/src/store/test/selectors.js +99 -0
  1648. package/build/components/link-control/use-internal-input-value.js +0 -27
  1649. package/build/components/link-control/use-internal-input-value.js.map +0 -1
  1650. package/build/components/spacing-sizes-control/all-input-control.js +0 -57
  1651. package/build/components/spacing-sizes-control/all-input-control.js.map +0 -1
  1652. package/build/components/spacing-sizes-control/axial-input-controls.js.map +0 -1
  1653. package/build/components/spacing-sizes-control/input-controls.js.map +0 -1
  1654. package/build/components/spacing-sizes-control/linked-button.js +0 -37
  1655. package/build/components/spacing-sizes-control/linked-button.js.map +0 -1
  1656. package/build/components/spacing-sizes-control/spacing-input-control.js.map +0 -1
  1657. package/build/components/ungroup-button/icon.js +0 -31
  1658. package/build/components/ungroup-button/icon.js.map +0 -1
  1659. package/build-module/components/link-control/use-internal-input-value.js +0 -19
  1660. package/build-module/components/link-control/use-internal-input-value.js.map +0 -1
  1661. package/build-module/components/spacing-sizes-control/all-input-control.js +0 -45
  1662. package/build-module/components/spacing-sizes-control/all-input-control.js.map +0 -1
  1663. package/build-module/components/spacing-sizes-control/axial-input-controls.js.map +0 -1
  1664. package/build-module/components/spacing-sizes-control/input-controls.js.map +0 -1
  1665. package/build-module/components/spacing-sizes-control/linked-button.js +0 -27
  1666. package/build-module/components/spacing-sizes-control/linked-button.js.map +0 -1
  1667. package/build-module/components/spacing-sizes-control/spacing-input-control.js.map +0 -1
  1668. package/build-module/components/ungroup-button/icon.js +0 -22
  1669. package/build-module/components/ungroup-button/icon.js.map +0 -1
  1670. package/src/components/link-control/use-internal-input-value.js +0 -23
  1671. package/src/components/spacing-sizes-control/all-input-control.js +0 -44
  1672. package/src/components/spacing-sizes-control/linked-button.js +0 -24
  1673. package/src/components/ungroup-button/icon.js +0 -26
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/hooks/use-typography-props.js"],"names":["kebabCase","classnames","getInlineStyles","getFontSizeClass","getComputedFluidTypographyValue","getTypographyClassesAndStyles","attributes","settings","typographyStyles","style","typography","fluidTypographySettings","fluid","Object","keys","length","newFontSize","fontSize","minimumFontSizeLimit","minFontSize","maximumViewPortWidth","layout","wideSize","fontFamilyClassName","fontFamily","className"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAT,QAA0B,QAA1B;AACA,OAAOC,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,eAAT,QAAgC,SAAhC;AACA,SAASC,gBAAT,QAAiC,0BAAjC;AACA,SAASC,+BAAT,QAAgD,sCAAhD;AAEA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,6BAAT,CAAwCC,UAAxC,EAAoDC,QAApD,EAA+D;AAAA;;AACrE,MAAIC,gBAAgB,GAAG,CAAAF,UAAU,SAAV,IAAAA,UAAU,WAAV,iCAAAA,UAAU,CAAEG,KAAZ,wEAAmBC,UAAnB,KAAiC,EAAxD;AACA,QAAMC,uBAAuB,GAAGJ,QAAH,aAAGA,QAAH,+CAAGA,QAAQ,CAAEG,UAAb,yDAAG,qBAAsBE,KAAtD;;AAEA,MACC,CAAC,CAAED,uBAAH,KACE,SAASA,uBAAT,IACDE,MAAM,CAACC,IAAP,CAAaH,uBAAb,EAAuCI,MAAvC,KAAkD,CAFnD,CADD,EAIE;AAAA;;AACD,UAAMC,WAAW,GAChBZ,+BAA+B,CAAE;AAChCa,MAAAA,QAAQ,EAAEX,UAAF,aAAEA,UAAF,6CAAEA,UAAU,CAAEG,KAAd,gFAAE,mBAAmBC,UAArB,0DAAE,sBAA+BO,QADT;AAEhCC,MAAAA,oBAAoB,EAAEP,uBAAF,aAAEA,uBAAF,uBAAEA,uBAAuB,CAAEQ,WAFf;AAGhCC,MAAAA,oBAAoB,EAAEb,QAAF,aAAEA,QAAF,2CAAEA,QAAQ,CAAEc,MAAZ,qDAAE,iBAAkBC;AAHR,KAAF,CAA/B,KAIOhB,UAJP,aAIOA,UAJP,6CAIOA,UAAU,CAAEG,KAJnB,gFAIO,mBAAmBC,UAJ1B,0DAIO,sBAA+BO,QAJtC,CADD;AAMAT,IAAAA,gBAAgB,GAAG,EAClB,GAAGA,gBADe;AAElBS,MAAAA,QAAQ,EAAED;AAFQ,KAAnB;AAIA;;AAED,QAAMP,KAAK,GAAGP,eAAe,CAAE;AAAEQ,IAAAA,UAAU,EAAEF;AAAd,GAAF,CAA7B;AACA,QAAMe,mBAAmB,GAAG,CAAC,EAAEjB,UAAF,aAAEA,UAAF,eAAEA,UAAU,CAAEkB,UAAd,CAAD,GACxB,OAAOxB,SAAS,CAAEM,UAAU,CAACkB,UAAb,CAA2B,cADnB,GAEzB,EAFH;AAIA,QAAMC,SAAS,GAAGxB,UAAU,CAC3BsB,mBAD2B,EAE3BpB,gBAAgB,CAAEG,UAAF,aAAEA,UAAF,uBAAEA,UAAU,CAAEW,QAAd,CAFW,CAA5B;AAKA,SAAO;AACNQ,IAAAA,SADM;AAENhB,IAAAA;AAFM,GAAP;AAIA","sourcesContent":["/**\n * External dependencies\n */\nimport { kebabCase } from 'lodash';\nimport classnames from 'classnames';\n\n/**\n * Internal dependencies\n */\nimport { getInlineStyles } from './style';\nimport { getFontSizeClass } from '../components/font-sizes';\nimport { getComputedFluidTypographyValue } from '../components/font-sizes/fluid-utils';\n\n/*\n * This utility is intended to assist where the serialization of the typography\n * block support is being skipped for a block but the typography related CSS\n * styles still need to be generated so they can be applied to inner elements.\n */\n/**\n * Provides the CSS class names and inline styles for a block's typography support\n * attributes.\n *\n * @param {Object} attributes Block attributes.\n * @param {Object|boolean} settings Merged theme.json settings\n *\n * @return {Object} Typography block support derived CSS classes & styles.\n */\nexport function getTypographyClassesAndStyles( attributes, settings ) {\n\tlet typographyStyles = attributes?.style?.typography || {};\n\tconst fluidTypographySettings = settings?.typography?.fluid;\n\n\tif (\n\t\t!! fluidTypographySettings &&\n\t\t( true === fluidTypographySettings ||\n\t\t\tObject.keys( fluidTypographySettings ).length !== 0 )\n\t) {\n\t\tconst newFontSize =\n\t\t\tgetComputedFluidTypographyValue( {\n\t\t\t\tfontSize: attributes?.style?.typography?.fontSize,\n\t\t\t\tminimumFontSizeLimit: fluidTypographySettings?.minFontSize,\n\t\t\t\tmaximumViewPortWidth: settings?.layout?.wideSize,\n\t\t\t} ) || attributes?.style?.typography?.fontSize;\n\t\ttypographyStyles = {\n\t\t\t...typographyStyles,\n\t\t\tfontSize: newFontSize,\n\t\t};\n\t}\n\n\tconst style = getInlineStyles( { typography: typographyStyles } );\n\tconst fontFamilyClassName = !! attributes?.fontFamily\n\t\t? `has-${ kebabCase( attributes.fontFamily ) }-font-family`\n\t\t: '';\n\n\tconst className = classnames(\n\t\tfontFamilyClassName,\n\t\tgetFontSizeClass( attributes?.fontSize )\n\t);\n\n\treturn {\n\t\tclassName,\n\t\tstyle,\n\t};\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/hooks/use-typography-props.js"],"names":["kebabCase","classnames","getInlineStyles","getFontSizeClass","getComputedFluidTypographyValue","getTypographyClassesAndStyles","attributes","settings","typographyStyles","style","typography","fluidTypographySettings","fluid","Object","keys","length","newFontSize","fontSize","minimumFontSizeLimit","minFontSize","maximumViewPortWidth","layout","wideSize","fontFamilyClassName","fontFamily","className"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAT,QAA0B,QAA1B;AACA,OAAOC,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,eAAT,QAAgC,SAAhC;AACA,SAASC,gBAAT,QAAiC,0BAAjC;AACA,SAASC,+BAAT,QAAgD,sCAAhD;AAEA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,6BAAT,CAAwCC,UAAxC,EAAoDC,QAApD,EAA+D;AACrE,MAAIC,gBAAgB,GAAGF,UAAU,EAAEG,KAAZ,EAAmBC,UAAnB,IAAiC,EAAxD;AACA,QAAMC,uBAAuB,GAAGJ,QAAQ,EAAEG,UAAV,EAAsBE,KAAtD;;AAEA,MACC,CAAC,CAAED,uBAAH,KACE,SAASA,uBAAT,IACDE,MAAM,CAACC,IAAP,CAAaH,uBAAb,EAAuCI,MAAvC,KAAkD,CAFnD,CADD,EAIE;AACD,UAAMC,WAAW,GAChBZ,+BAA+B,CAAE;AAChCa,MAAAA,QAAQ,EAAEX,UAAU,EAAEG,KAAZ,EAAmBC,UAAnB,EAA+BO,QADT;AAEhCC,MAAAA,oBAAoB,EAAEP,uBAAuB,EAAEQ,WAFf;AAGhCC,MAAAA,oBAAoB,EAAEb,QAAQ,EAAEc,MAAV,EAAkBC;AAHR,KAAF,CAA/B,IAIOhB,UAAU,EAAEG,KAAZ,EAAmBC,UAAnB,EAA+BO,QALvC;AAMAT,IAAAA,gBAAgB,GAAG,EAClB,GAAGA,gBADe;AAElBS,MAAAA,QAAQ,EAAED;AAFQ,KAAnB;AAIA;;AAED,QAAMP,KAAK,GAAGP,eAAe,CAAE;AAAEQ,IAAAA,UAAU,EAAEF;AAAd,GAAF,CAA7B;AACA,QAAMe,mBAAmB,GAAG,CAAC,CAAEjB,UAAU,EAAEkB,UAAf,GACxB,OAAOxB,SAAS,CAAEM,UAAU,CAACkB,UAAb,CAA2B,cADnB,GAEzB,EAFH;AAIA,QAAMC,SAAS,GAAGxB,UAAU,CAC3BsB,mBAD2B,EAE3BpB,gBAAgB,CAAEG,UAAU,EAAEW,QAAd,CAFW,CAA5B;AAKA,SAAO;AACNQ,IAAAA,SADM;AAENhB,IAAAA;AAFM,GAAP;AAIA","sourcesContent":["/**\n * External dependencies\n */\nimport { kebabCase } from 'lodash';\nimport classnames from 'classnames';\n\n/**\n * Internal dependencies\n */\nimport { getInlineStyles } from './style';\nimport { getFontSizeClass } from '../components/font-sizes';\nimport { getComputedFluidTypographyValue } from '../components/font-sizes/fluid-utils';\n\n/*\n * This utility is intended to assist where the serialization of the typography\n * block support is being skipped for a block but the typography related CSS\n * styles still need to be generated so they can be applied to inner elements.\n */\n/**\n * Provides the CSS class names and inline styles for a block's typography support\n * attributes.\n *\n * @param {Object} attributes Block attributes.\n * @param {Object|boolean} settings Merged theme.json settings\n *\n * @return {Object} Typography block support derived CSS classes & styles.\n */\nexport function getTypographyClassesAndStyles( attributes, settings ) {\n\tlet typographyStyles = attributes?.style?.typography || {};\n\tconst fluidTypographySettings = settings?.typography?.fluid;\n\n\tif (\n\t\t!! fluidTypographySettings &&\n\t\t( true === fluidTypographySettings ||\n\t\t\tObject.keys( fluidTypographySettings ).length !== 0 )\n\t) {\n\t\tconst newFontSize =\n\t\t\tgetComputedFluidTypographyValue( {\n\t\t\t\tfontSize: attributes?.style?.typography?.fontSize,\n\t\t\t\tminimumFontSizeLimit: fluidTypographySettings?.minFontSize,\n\t\t\t\tmaximumViewPortWidth: settings?.layout?.wideSize,\n\t\t\t} ) || attributes?.style?.typography?.fontSize;\n\t\ttypographyStyles = {\n\t\t\t...typographyStyles,\n\t\t\tfontSize: newFontSize,\n\t\t};\n\t}\n\n\tconst style = getInlineStyles( { typography: typographyStyles } );\n\tconst fontFamilyClassName = !! attributes?.fontFamily\n\t\t? `has-${ kebabCase( attributes.fontFamily ) }-font-family`\n\t\t: '';\n\n\tconst className = classnames(\n\t\tfontFamilyClassName,\n\t\tgetFontSizeClass( attributes?.fontSize )\n\t);\n\n\treturn {\n\t\tclassName,\n\t\tstyle,\n\t};\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import { isEmpty, get } from 'lodash';
4
+ import { get } from 'lodash';
5
5
  /**
6
6
  * WordPress dependencies
7
7
  */
@@ -27,18 +27,10 @@ export const cleanEmptyObject = object => {
27
27
  return object;
28
28
  }
29
29
 
30
- const cleanedNestedObjects = Object.fromEntries(Object.entries(object).map(_ref => {
31
- let [key, value] = _ref;
32
- return [key, cleanEmptyObject(value)];
33
- }).filter(_ref2 => {
34
- let [, value] = _ref2;
35
- return value !== undefined;
36
- }));
37
- return isEmpty(cleanedNestedObjects) ? undefined : cleanedNestedObjects;
30
+ const cleanedNestedObjects = Object.entries(object).map(([key, value]) => [key, cleanEmptyObject(value)]).filter(([, value]) => value !== undefined);
31
+ return !cleanedNestedObjects.length ? undefined : Object.fromEntries(cleanedNestedObjects);
38
32
  };
39
33
  export function transformStyles(activeSupports, migrationPaths, result, source, index, results) {
40
- var _source$;
41
-
42
34
  // If there are no active supports return early.
43
35
  if (Object.values(activeSupports !== null && activeSupports !== void 0 ? activeSupports : {}).every(isActive => !isActive)) {
44
36
  return result;
@@ -53,25 +45,21 @@ export function transformStyles(activeSupports, migrationPaths, result, source,
53
45
  // to the result(s).
54
46
 
55
47
 
56
- let referenceBlockAttributes = (_source$ = source[0]) === null || _source$ === void 0 ? void 0 : _source$.attributes; // If we are in presence of transform between more than one block in the source
48
+ let referenceBlockAttributes = source[0]?.attributes; // If we are in presence of transform between more than one block in the source
57
49
  // that has more than one block in the result
58
50
  // we apply the styles on source N to the result N,
59
51
  // if source N does not exists we do nothing.
60
52
 
61
53
  if (results.length > 1 && source.length > 1) {
62
54
  if (source[index]) {
63
- var _source$index;
64
-
65
- referenceBlockAttributes = (_source$index = source[index]) === null || _source$index === void 0 ? void 0 : _source$index.attributes;
55
+ referenceBlockAttributes = source[index]?.attributes;
66
56
  } else {
67
57
  return result;
68
58
  }
69
59
  }
70
60
 
71
61
  let returnBlock = result;
72
- Object.entries(activeSupports).forEach(_ref3 => {
73
- let [support, isActive] = _ref3;
74
-
62
+ Object.entries(activeSupports).forEach(([support, isActive]) => {
75
63
  if (isActive) {
76
64
  migrationPaths[support].forEach(path => {
77
65
  const styleValue = get(referenceBlockAttributes, path);
@@ -99,7 +87,7 @@ export function transformStyles(activeSupports, migrationPaths, result, source,
99
87
 
100
88
  export function shouldSkipSerialization(blockType, featureSet, feature) {
101
89
  const support = getBlockSupport(blockType, featureSet);
102
- const skipSerialization = support === null || support === void 0 ? void 0 : support.__experimentalSkipSerialization;
90
+ const skipSerialization = support?.__experimentalSkipSerialization;
103
91
 
104
92
  if (Array.isArray(skipSerialization)) {
105
93
  return skipSerialization.includes(feature);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/hooks/utils.js"],"names":["isEmpty","get","getBlockSupport","useMemo","useSetting","useSettingsForBlockElement","setImmutably","cleanEmptyObject","object","Array","isArray","cleanedNestedObjects","Object","fromEntries","entries","map","key","value","filter","undefined","transformStyles","activeSupports","migrationPaths","result","source","index","results","values","every","isActive","length","innerBlocks","referenceBlockAttributes","attributes","returnBlock","forEach","support","path","styleValue","shouldSkipSerialization","blockType","featureSet","feature","skipSerialization","__experimentalSkipSerialization","includes","useBlockSettings","name","parentLayout","fontFamilies","fontSizes","customFontSize","fontStyle","fontWeight","lineHeight","textColumns","textDecoration","textTransform","letterSpacing","padding","margin","blockGap","spacingSizes","units","minHeight","layout","borderColor","borderRadius","borderStyle","borderWidth","customColorsEnabled","customColors","customDuotone","themeColors","defaultColors","defaultPalette","defaultDuotone","userDuotonePalette","themeDuotonePalette","defaultDuotonePalette","userGradientPalette","themeGradientPalette","defaultGradientPalette","defaultGradients","areCustomGradientsEnabled","isBackgroundEnabled","isLinkEnabled","isTextEnabled","rawSettings","color","palette","custom","theme","default","gradients","duotone","customGradient","background","link","text","typography","spacing","border","radius","style","width","dimensions"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty, get } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { getBlockSupport } from '@wordpress/blocks';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useSetting } from '../components';\nimport { useSettingsForBlockElement } from '../components/global-styles/hooks';\nimport { setImmutably } from '../utils/object';\n\n/**\n * Removed falsy values from nested object.\n *\n * @param {*} object\n * @return {*} Object cleaned from falsy values\n */\nexport const cleanEmptyObject = ( object ) => {\n\tif (\n\t\tobject === null ||\n\t\ttypeof object !== 'object' ||\n\t\tArray.isArray( object )\n\t) {\n\t\treturn object;\n\t}\n\tconst cleanedNestedObjects = Object.fromEntries(\n\t\tObject.entries( object )\n\t\t\t.map( ( [ key, value ] ) => [ key, cleanEmptyObject( value ) ] )\n\t\t\t.filter( ( [ , value ] ) => value !== undefined )\n\t);\n\treturn isEmpty( cleanedNestedObjects ) ? undefined : cleanedNestedObjects;\n};\n\nexport function transformStyles(\n\tactiveSupports,\n\tmigrationPaths,\n\tresult,\n\tsource,\n\tindex,\n\tresults\n) {\n\t// If there are no active supports return early.\n\tif (\n\t\tObject.values( activeSupports ?? {} ).every(\n\t\t\t( isActive ) => ! isActive\n\t\t)\n\t) {\n\t\treturn result;\n\t}\n\t// If the condition verifies we are probably in the presence of a wrapping transform\n\t// e.g: nesting paragraphs in a group or columns and in that case the styles should not be transformed.\n\tif ( results.length === 1 && result.innerBlocks.length === source.length ) {\n\t\treturn result;\n\t}\n\t// For cases where we have a transform from one block to multiple blocks\n\t// or multiple blocks to one block we apply the styles of the first source block\n\t// to the result(s).\n\tlet referenceBlockAttributes = source[ 0 ]?.attributes;\n\t// If we are in presence of transform between more than one block in the source\n\t// that has more than one block in the result\n\t// we apply the styles on source N to the result N,\n\t// if source N does not exists we do nothing.\n\tif ( results.length > 1 && source.length > 1 ) {\n\t\tif ( source[ index ] ) {\n\t\t\treferenceBlockAttributes = source[ index ]?.attributes;\n\t\t} else {\n\t\t\treturn result;\n\t\t}\n\t}\n\tlet returnBlock = result;\n\tObject.entries( activeSupports ).forEach( ( [ support, isActive ] ) => {\n\t\tif ( isActive ) {\n\t\t\tmigrationPaths[ support ].forEach( ( path ) => {\n\t\t\t\tconst styleValue = get( referenceBlockAttributes, path );\n\t\t\t\tif ( styleValue ) {\n\t\t\t\t\treturnBlock = {\n\t\t\t\t\t\t...returnBlock,\n\t\t\t\t\t\tattributes: setImmutably(\n\t\t\t\t\t\t\treturnBlock.attributes,\n\t\t\t\t\t\t\tpath,\n\t\t\t\t\t\t\tstyleValue\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t} );\n\treturn returnBlock;\n}\n\n/**\n * Check whether serialization of specific block support feature or set should\n * be skipped.\n *\n * @param {string|Object} blockType Block name or block type object.\n * @param {string} featureSet Name of block support feature set.\n * @param {string} feature Name of the individual feature to check.\n *\n * @return {boolean} Whether serialization should occur.\n */\nexport function shouldSkipSerialization( blockType, featureSet, feature ) {\n\tconst support = getBlockSupport( blockType, featureSet );\n\tconst skipSerialization = support?.__experimentalSkipSerialization;\n\n\tif ( Array.isArray( skipSerialization ) ) {\n\t\treturn skipSerialization.includes( feature );\n\t}\n\n\treturn skipSerialization;\n}\n\n/**\n * Based on the block and its context, returns an object of all the block settings.\n * This object can be passed as a prop to all the Styles UI components\n * (TypographyPanel, DimensionsPanel...).\n *\n * @param {string} name Block name.\n * @param {*} parentLayout Parent layout.\n *\n * @return {Object} Settings object.\n */\nexport function useBlockSettings( name, parentLayout ) {\n\tconst fontFamilies = useSetting( 'typography.fontFamilies' );\n\tconst fontSizes = useSetting( 'typography.fontSizes' );\n\tconst customFontSize = useSetting( 'typography.customFontSize' );\n\tconst fontStyle = useSetting( 'typography.fontStyle' );\n\tconst fontWeight = useSetting( 'typography.fontWeight' );\n\tconst lineHeight = useSetting( 'typography.lineHeight' );\n\tconst textColumns = useSetting( 'typography.textColumns' );\n\tconst textDecoration = useSetting( 'typography.textDecoration' );\n\tconst textTransform = useSetting( 'typography.textTransform' );\n\tconst letterSpacing = useSetting( 'typography.letterSpacing' );\n\tconst padding = useSetting( 'spacing.padding' );\n\tconst margin = useSetting( 'spacing.margin' );\n\tconst blockGap = useSetting( 'spacing.blockGap' );\n\tconst spacingSizes = useSetting( 'spacing.spacingSizes' );\n\tconst units = useSetting( 'spacing.units' );\n\tconst minHeight = useSetting( 'dimensions.minHeight' );\n\tconst layout = useSetting( 'layout' );\n\tconst borderColor = useSetting( 'border.color' );\n\tconst borderRadius = useSetting( 'border.radius' );\n\tconst borderStyle = useSetting( 'border.style' );\n\tconst borderWidth = useSetting( 'border.width' );\n\tconst customColorsEnabled = useSetting( 'color.custom' );\n\tconst customColors = useSetting( 'color.palette.custom' );\n\tconst customDuotone = useSetting( 'color.customDuotone' );\n\tconst themeColors = useSetting( 'color.palette.theme' );\n\tconst defaultColors = useSetting( 'color.palette.default' );\n\tconst defaultPalette = useSetting( 'color.defaultPalette' );\n\tconst defaultDuotone = useSetting( 'color.defaultDuotone' );\n\tconst userDuotonePalette = useSetting( 'color.duotone.custom' );\n\tconst themeDuotonePalette = useSetting( 'color.duotone.theme' );\n\tconst defaultDuotonePalette = useSetting( 'color.duotone.default' );\n\tconst userGradientPalette = useSetting( 'color.gradients.custom' );\n\tconst themeGradientPalette = useSetting( 'color.gradients.theme' );\n\tconst defaultGradientPalette = useSetting( 'color.gradients.default' );\n\tconst defaultGradients = useSetting( 'color.defaultGradients' );\n\tconst areCustomGradientsEnabled = useSetting( 'color.customGradient' );\n\tconst isBackgroundEnabled = useSetting( 'color.background' );\n\tconst isLinkEnabled = useSetting( 'color.link' );\n\tconst isTextEnabled = useSetting( 'color.text' );\n\n\tconst rawSettings = useMemo( () => {\n\t\treturn {\n\t\t\tcolor: {\n\t\t\t\tpalette: {\n\t\t\t\t\tcustom: customColors,\n\t\t\t\t\ttheme: themeColors,\n\t\t\t\t\tdefault: defaultColors,\n\t\t\t\t},\n\t\t\t\tgradients: {\n\t\t\t\t\tcustom: userGradientPalette,\n\t\t\t\t\ttheme: themeGradientPalette,\n\t\t\t\t\tdefault: defaultGradientPalette,\n\t\t\t\t},\n\t\t\t\tduotone: {\n\t\t\t\t\tcustom: userDuotonePalette,\n\t\t\t\t\ttheme: themeDuotonePalette,\n\t\t\t\t\tdefault: defaultDuotonePalette,\n\t\t\t\t},\n\t\t\t\tdefaultGradients,\n\t\t\t\tdefaultPalette,\n\t\t\t\tdefaultDuotone,\n\t\t\t\tcustom: customColorsEnabled,\n\t\t\t\tcustomGradient: areCustomGradientsEnabled,\n\t\t\t\tcustomDuotone,\n\t\t\t\tbackground: isBackgroundEnabled,\n\t\t\t\tlink: isLinkEnabled,\n\t\t\t\ttext: isTextEnabled,\n\t\t\t},\n\t\t\ttypography: {\n\t\t\t\tfontFamilies: {\n\t\t\t\t\tcustom: fontFamilies,\n\t\t\t\t},\n\t\t\t\tfontSizes: {\n\t\t\t\t\tcustom: fontSizes,\n\t\t\t\t},\n\t\t\t\tcustomFontSize,\n\t\t\t\tfontStyle,\n\t\t\t\tfontWeight,\n\t\t\t\tlineHeight,\n\t\t\t\ttextColumns,\n\t\t\t\ttextDecoration,\n\t\t\t\ttextTransform,\n\t\t\t\tletterSpacing,\n\t\t\t},\n\t\t\tspacing: {\n\t\t\t\tspacingSizes: {\n\t\t\t\t\tcustom: spacingSizes,\n\t\t\t\t},\n\t\t\t\tpadding,\n\t\t\t\tmargin,\n\t\t\t\tblockGap,\n\t\t\t\tunits,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tcolor: borderColor,\n\t\t\t\tradius: borderRadius,\n\t\t\t\tstyle: borderStyle,\n\t\t\t\twidth: borderWidth,\n\t\t\t},\n\t\t\tdimensions: {\n\t\t\t\tminHeight,\n\t\t\t},\n\t\t\tlayout,\n\t\t\tparentLayout,\n\t\t};\n\t}, [\n\t\tfontFamilies,\n\t\tfontSizes,\n\t\tcustomFontSize,\n\t\tfontStyle,\n\t\tfontWeight,\n\t\tlineHeight,\n\t\ttextColumns,\n\t\ttextDecoration,\n\t\ttextTransform,\n\t\tletterSpacing,\n\t\tpadding,\n\t\tmargin,\n\t\tblockGap,\n\t\tspacingSizes,\n\t\tunits,\n\t\tminHeight,\n\t\tlayout,\n\t\tparentLayout,\n\t\tborderColor,\n\t\tborderRadius,\n\t\tborderStyle,\n\t\tborderWidth,\n\t\tcustomColorsEnabled,\n\t\tcustomColors,\n\t\tcustomDuotone,\n\t\tthemeColors,\n\t\tdefaultColors,\n\t\tdefaultPalette,\n\t\tdefaultDuotone,\n\t\tuserDuotonePalette,\n\t\tthemeDuotonePalette,\n\t\tdefaultDuotonePalette,\n\t\tuserGradientPalette,\n\t\tthemeGradientPalette,\n\t\tdefaultGradientPalette,\n\t\tdefaultGradients,\n\t\tareCustomGradientsEnabled,\n\t\tisBackgroundEnabled,\n\t\tisLinkEnabled,\n\t\tisTextEnabled,\n\t] );\n\n\treturn useSettingsForBlockElement( rawSettings, name );\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/hooks/utils.js"],"names":["get","getBlockSupport","useMemo","useSetting","useSettingsForBlockElement","setImmutably","cleanEmptyObject","object","Array","isArray","cleanedNestedObjects","Object","entries","map","key","value","filter","undefined","length","fromEntries","transformStyles","activeSupports","migrationPaths","result","source","index","results","values","every","isActive","innerBlocks","referenceBlockAttributes","attributes","returnBlock","forEach","support","path","styleValue","shouldSkipSerialization","blockType","featureSet","feature","skipSerialization","__experimentalSkipSerialization","includes","useBlockSettings","name","parentLayout","fontFamilies","fontSizes","customFontSize","fontStyle","fontWeight","lineHeight","textColumns","textDecoration","textTransform","letterSpacing","padding","margin","blockGap","spacingSizes","units","minHeight","layout","borderColor","borderRadius","borderStyle","borderWidth","customColorsEnabled","customColors","customDuotone","themeColors","defaultColors","defaultPalette","defaultDuotone","userDuotonePalette","themeDuotonePalette","defaultDuotonePalette","userGradientPalette","themeGradientPalette","defaultGradientPalette","defaultGradients","areCustomGradientsEnabled","isBackgroundEnabled","isLinkEnabled","isTextEnabled","rawSettings","color","palette","custom","theme","default","gradients","duotone","customGradient","background","link","text","typography","spacing","border","radius","style","width","dimensions"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { getBlockSupport } from '@wordpress/blocks';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useSetting } from '../components';\nimport { useSettingsForBlockElement } from '../components/global-styles/hooks';\nimport { setImmutably } from '../utils/object';\n\n/**\n * Removed falsy values from nested object.\n *\n * @param {*} object\n * @return {*} Object cleaned from falsy values\n */\nexport const cleanEmptyObject = ( object ) => {\n\tif (\n\t\tobject === null ||\n\t\ttypeof object !== 'object' ||\n\t\tArray.isArray( object )\n\t) {\n\t\treturn object;\n\t}\n\n\tconst cleanedNestedObjects = Object.entries( object )\n\t\t.map( ( [ key, value ] ) => [ key, cleanEmptyObject( value ) ] )\n\t\t.filter( ( [ , value ] ) => value !== undefined );\n\treturn ! cleanedNestedObjects.length\n\t\t? undefined\n\t\t: Object.fromEntries( cleanedNestedObjects );\n};\n\nexport function transformStyles(\n\tactiveSupports,\n\tmigrationPaths,\n\tresult,\n\tsource,\n\tindex,\n\tresults\n) {\n\t// If there are no active supports return early.\n\tif (\n\t\tObject.values( activeSupports ?? {} ).every(\n\t\t\t( isActive ) => ! isActive\n\t\t)\n\t) {\n\t\treturn result;\n\t}\n\t// If the condition verifies we are probably in the presence of a wrapping transform\n\t// e.g: nesting paragraphs in a group or columns and in that case the styles should not be transformed.\n\tif ( results.length === 1 && result.innerBlocks.length === source.length ) {\n\t\treturn result;\n\t}\n\t// For cases where we have a transform from one block to multiple blocks\n\t// or multiple blocks to one block we apply the styles of the first source block\n\t// to the result(s).\n\tlet referenceBlockAttributes = source[ 0 ]?.attributes;\n\t// If we are in presence of transform between more than one block in the source\n\t// that has more than one block in the result\n\t// we apply the styles on source N to the result N,\n\t// if source N does not exists we do nothing.\n\tif ( results.length > 1 && source.length > 1 ) {\n\t\tif ( source[ index ] ) {\n\t\t\treferenceBlockAttributes = source[ index ]?.attributes;\n\t\t} else {\n\t\t\treturn result;\n\t\t}\n\t}\n\tlet returnBlock = result;\n\tObject.entries( activeSupports ).forEach( ( [ support, isActive ] ) => {\n\t\tif ( isActive ) {\n\t\t\tmigrationPaths[ support ].forEach( ( path ) => {\n\t\t\t\tconst styleValue = get( referenceBlockAttributes, path );\n\t\t\t\tif ( styleValue ) {\n\t\t\t\t\treturnBlock = {\n\t\t\t\t\t\t...returnBlock,\n\t\t\t\t\t\tattributes: setImmutably(\n\t\t\t\t\t\t\treturnBlock.attributes,\n\t\t\t\t\t\t\tpath,\n\t\t\t\t\t\t\tstyleValue\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t} );\n\treturn returnBlock;\n}\n\n/**\n * Check whether serialization of specific block support feature or set should\n * be skipped.\n *\n * @param {string|Object} blockType Block name or block type object.\n * @param {string} featureSet Name of block support feature set.\n * @param {string} feature Name of the individual feature to check.\n *\n * @return {boolean} Whether serialization should occur.\n */\nexport function shouldSkipSerialization( blockType, featureSet, feature ) {\n\tconst support = getBlockSupport( blockType, featureSet );\n\tconst skipSerialization = support?.__experimentalSkipSerialization;\n\n\tif ( Array.isArray( skipSerialization ) ) {\n\t\treturn skipSerialization.includes( feature );\n\t}\n\n\treturn skipSerialization;\n}\n\n/**\n * Based on the block and its context, returns an object of all the block settings.\n * This object can be passed as a prop to all the Styles UI components\n * (TypographyPanel, DimensionsPanel...).\n *\n * @param {string} name Block name.\n * @param {*} parentLayout Parent layout.\n *\n * @return {Object} Settings object.\n */\nexport function useBlockSettings( name, parentLayout ) {\n\tconst fontFamilies = useSetting( 'typography.fontFamilies' );\n\tconst fontSizes = useSetting( 'typography.fontSizes' );\n\tconst customFontSize = useSetting( 'typography.customFontSize' );\n\tconst fontStyle = useSetting( 'typography.fontStyle' );\n\tconst fontWeight = useSetting( 'typography.fontWeight' );\n\tconst lineHeight = useSetting( 'typography.lineHeight' );\n\tconst textColumns = useSetting( 'typography.textColumns' );\n\tconst textDecoration = useSetting( 'typography.textDecoration' );\n\tconst textTransform = useSetting( 'typography.textTransform' );\n\tconst letterSpacing = useSetting( 'typography.letterSpacing' );\n\tconst padding = useSetting( 'spacing.padding' );\n\tconst margin = useSetting( 'spacing.margin' );\n\tconst blockGap = useSetting( 'spacing.blockGap' );\n\tconst spacingSizes = useSetting( 'spacing.spacingSizes' );\n\tconst units = useSetting( 'spacing.units' );\n\tconst minHeight = useSetting( 'dimensions.minHeight' );\n\tconst layout = useSetting( 'layout' );\n\tconst borderColor = useSetting( 'border.color' );\n\tconst borderRadius = useSetting( 'border.radius' );\n\tconst borderStyle = useSetting( 'border.style' );\n\tconst borderWidth = useSetting( 'border.width' );\n\tconst customColorsEnabled = useSetting( 'color.custom' );\n\tconst customColors = useSetting( 'color.palette.custom' );\n\tconst customDuotone = useSetting( 'color.customDuotone' );\n\tconst themeColors = useSetting( 'color.palette.theme' );\n\tconst defaultColors = useSetting( 'color.palette.default' );\n\tconst defaultPalette = useSetting( 'color.defaultPalette' );\n\tconst defaultDuotone = useSetting( 'color.defaultDuotone' );\n\tconst userDuotonePalette = useSetting( 'color.duotone.custom' );\n\tconst themeDuotonePalette = useSetting( 'color.duotone.theme' );\n\tconst defaultDuotonePalette = useSetting( 'color.duotone.default' );\n\tconst userGradientPalette = useSetting( 'color.gradients.custom' );\n\tconst themeGradientPalette = useSetting( 'color.gradients.theme' );\n\tconst defaultGradientPalette = useSetting( 'color.gradients.default' );\n\tconst defaultGradients = useSetting( 'color.defaultGradients' );\n\tconst areCustomGradientsEnabled = useSetting( 'color.customGradient' );\n\tconst isBackgroundEnabled = useSetting( 'color.background' );\n\tconst isLinkEnabled = useSetting( 'color.link' );\n\tconst isTextEnabled = useSetting( 'color.text' );\n\n\tconst rawSettings = useMemo( () => {\n\t\treturn {\n\t\t\tcolor: {\n\t\t\t\tpalette: {\n\t\t\t\t\tcustom: customColors,\n\t\t\t\t\ttheme: themeColors,\n\t\t\t\t\tdefault: defaultColors,\n\t\t\t\t},\n\t\t\t\tgradients: {\n\t\t\t\t\tcustom: userGradientPalette,\n\t\t\t\t\ttheme: themeGradientPalette,\n\t\t\t\t\tdefault: defaultGradientPalette,\n\t\t\t\t},\n\t\t\t\tduotone: {\n\t\t\t\t\tcustom: userDuotonePalette,\n\t\t\t\t\ttheme: themeDuotonePalette,\n\t\t\t\t\tdefault: defaultDuotonePalette,\n\t\t\t\t},\n\t\t\t\tdefaultGradients,\n\t\t\t\tdefaultPalette,\n\t\t\t\tdefaultDuotone,\n\t\t\t\tcustom: customColorsEnabled,\n\t\t\t\tcustomGradient: areCustomGradientsEnabled,\n\t\t\t\tcustomDuotone,\n\t\t\t\tbackground: isBackgroundEnabled,\n\t\t\t\tlink: isLinkEnabled,\n\t\t\t\ttext: isTextEnabled,\n\t\t\t},\n\t\t\ttypography: {\n\t\t\t\tfontFamilies: {\n\t\t\t\t\tcustom: fontFamilies,\n\t\t\t\t},\n\t\t\t\tfontSizes: {\n\t\t\t\t\tcustom: fontSizes,\n\t\t\t\t},\n\t\t\t\tcustomFontSize,\n\t\t\t\tfontStyle,\n\t\t\t\tfontWeight,\n\t\t\t\tlineHeight,\n\t\t\t\ttextColumns,\n\t\t\t\ttextDecoration,\n\t\t\t\ttextTransform,\n\t\t\t\tletterSpacing,\n\t\t\t},\n\t\t\tspacing: {\n\t\t\t\tspacingSizes: {\n\t\t\t\t\tcustom: spacingSizes,\n\t\t\t\t},\n\t\t\t\tpadding,\n\t\t\t\tmargin,\n\t\t\t\tblockGap,\n\t\t\t\tunits,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tcolor: borderColor,\n\t\t\t\tradius: borderRadius,\n\t\t\t\tstyle: borderStyle,\n\t\t\t\twidth: borderWidth,\n\t\t\t},\n\t\t\tdimensions: {\n\t\t\t\tminHeight,\n\t\t\t},\n\t\t\tlayout,\n\t\t\tparentLayout,\n\t\t};\n\t}, [\n\t\tfontFamilies,\n\t\tfontSizes,\n\t\tcustomFontSize,\n\t\tfontStyle,\n\t\tfontWeight,\n\t\tlineHeight,\n\t\ttextColumns,\n\t\ttextDecoration,\n\t\ttextTransform,\n\t\tletterSpacing,\n\t\tpadding,\n\t\tmargin,\n\t\tblockGap,\n\t\tspacingSizes,\n\t\tunits,\n\t\tminHeight,\n\t\tlayout,\n\t\tparentLayout,\n\t\tborderColor,\n\t\tborderRadius,\n\t\tborderStyle,\n\t\tborderWidth,\n\t\tcustomColorsEnabled,\n\t\tcustomColors,\n\t\tcustomDuotone,\n\t\tthemeColors,\n\t\tdefaultColors,\n\t\tdefaultPalette,\n\t\tdefaultDuotone,\n\t\tuserDuotonePalette,\n\t\tthemeDuotonePalette,\n\t\tdefaultDuotonePalette,\n\t\tuserGradientPalette,\n\t\tthemeGradientPalette,\n\t\tdefaultGradientPalette,\n\t\tdefaultGradients,\n\t\tareCustomGradientsEnabled,\n\t\tisBackgroundEnabled,\n\t\tisLinkEnabled,\n\t\tisTextEnabled,\n\t] );\n\n\treturn useSettingsForBlockElement( rawSettings, name );\n}\n"]}
@@ -18,12 +18,11 @@ import { shouldSkipSerialization } from '../hooks/utils';
18
18
  export default {
19
19
  name: 'constrained',
20
20
  label: __('Constrained'),
21
- inspectorControls: function DefaultLayoutInspectorControls(_ref) {
22
- let {
23
- layout,
24
- onChange,
25
- layoutBlockSupport = {}
26
- } = _ref;
21
+ inspectorControls: function DefaultLayoutInspectorControls({
22
+ layout,
23
+ onChange,
24
+ layoutBlockSupport = {}
25
+ }) {
27
26
  const {
28
27
  wideSize,
29
28
  contentSize,
@@ -98,12 +97,11 @@ export default {
98
97
  label: __('Justification'),
99
98
  value: justifyContent,
100
99
  onChange: onJustificationChange
101
- }, justificationOptions.map(_ref2 => {
102
- let {
103
- value,
104
- icon,
105
- label
106
- } = _ref2;
100
+ }, justificationOptions.map(({
101
+ value,
102
+ icon,
103
+ label
104
+ }) => {
107
105
  return createElement(ToggleGroupControlOptionIcon, {
108
106
  key: value,
109
107
  value: value,
@@ -115,31 +113,28 @@ export default {
115
113
  toolBarControls: function DefaultLayoutToolbarControls() {
116
114
  return null;
117
115
  },
118
- getLayoutStyle: function getLayoutStyle(_ref3) {
119
- var _style$spacing, _style$spacing2;
120
-
121
- let {
122
- selector,
123
- layout = {},
124
- style,
125
- blockName,
126
- hasBlockGapSupport,
127
- layoutDefinitions
128
- } = _ref3;
116
+ getLayoutStyle: function getLayoutStyle({
117
+ selector,
118
+ layout = {},
119
+ style,
120
+ blockName,
121
+ hasBlockGapSupport,
122
+ layoutDefinitions
123
+ }) {
129
124
  const {
130
125
  contentSize,
131
126
  wideSize,
132
127
  justifyContent
133
128
  } = layout;
134
- const blockGapStyleValue = getGapCSSValue(style === null || style === void 0 ? void 0 : (_style$spacing = style.spacing) === null || _style$spacing === void 0 ? void 0 : _style$spacing.blockGap); // If a block's block.json skips serialization for spacing or
129
+ const blockGapStyleValue = getGapCSSValue(style?.spacing?.blockGap); // If a block's block.json skips serialization for spacing or
135
130
  // spacing.blockGap, don't apply the user-defined value to the styles.
136
131
 
137
132
  let blockGapValue = '';
138
133
 
139
134
  if (!shouldSkipSerialization(blockName, 'spacing', 'blockGap')) {
140
135
  // If an object is provided only use the 'top' value for this kind of gap.
141
- if (blockGapStyleValue !== null && blockGapStyleValue !== void 0 && blockGapStyleValue.top) {
142
- blockGapValue = getGapCSSValue(blockGapStyleValue === null || blockGapStyleValue === void 0 ? void 0 : blockGapStyleValue.top);
136
+ if (blockGapStyleValue?.top) {
137
+ blockGapValue = getGapCSSValue(blockGapStyleValue?.top);
143
138
  } else if (typeof blockGapStyleValue === 'string') {
144
139
  blockGapValue = getGapCSSValue(blockGapStyleValue);
145
140
  }
@@ -170,7 +165,7 @@ export default {
170
165
  } // If there is custom padding, add negative margins for alignfull blocks.
171
166
 
172
167
 
173
- if (style !== null && style !== void 0 && (_style$spacing2 = style.spacing) !== null && _style$spacing2 !== void 0 && _style$spacing2.padding) {
168
+ if (style?.spacing?.padding) {
174
169
  // The style object might be storing a preset so we need to make sure we get a usable value.
175
170
  const paddingValues = getCSSRules(style);
176
171
  paddingValues.forEach(rule => {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/layouts/constrained.js"],"names":["__experimentalUseCustomUnits","useCustomUnits","__experimentalUnitControl","UnitControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOptionIcon","ToggleGroupControlOptionIcon","__","Icon","positionCenter","stretchWide","justifyLeft","justifyCenter","justifyRight","getCSSRules","useSetting","appendSelectors","getBlockGapCSS","getAlignmentsInfo","getGapCSSValue","shouldSkipSerialization","name","label","inspectorControls","DefaultLayoutInspectorControls","layout","onChange","layoutBlockSupport","wideSize","contentSize","justifyContent","allowJustification","onJustificationChange","value","justificationOptions","icon","units","availableUnits","nextWidth","parseFloat","map","toolBarControls","DefaultLayoutToolbarControls","getLayoutStyle","selector","style","blockName","hasBlockGapSupport","layoutDefinitions","blockGapStyleValue","spacing","blockGap","blockGapValue","top","marginLeft","marginRight","output","padding","paddingValues","forEach","rule","key","getOrientation","getAlignments","alignmentInfo","alignments","undefined","includes","unshift","alignment","info","wide","none"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOptionIcon as ToggleGroupControlOptionIcon,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tIcon,\n\tpositionCenter,\n\tstretchWide,\n\tjustifyLeft,\n\tjustifyCenter,\n\tjustifyRight,\n} from '@wordpress/icons';\nimport { getCSSRules } from '@wordpress/style-engine';\n\n/**\n * Internal dependencies\n */\nimport useSetting from '../components/use-setting';\nimport { appendSelectors, getBlockGapCSS, getAlignmentsInfo } from './utils';\nimport { getGapCSSValue } from '../hooks/gap';\nimport { shouldSkipSerialization } from '../hooks/utils';\n\nexport default {\n\tname: 'constrained',\n\tlabel: __( 'Constrained' ),\n\tinspectorControls: function DefaultLayoutInspectorControls( {\n\t\tlayout,\n\t\tonChange,\n\t\tlayoutBlockSupport = {},\n\t} ) {\n\t\tconst { wideSize, contentSize, justifyContent = 'center' } = layout;\n\t\tconst { allowJustification = true } = layoutBlockSupport;\n\t\tconst onJustificationChange = ( value ) => {\n\t\t\tonChange( {\n\t\t\t\t...layout,\n\t\t\t\tjustifyContent: value,\n\t\t\t} );\n\t\t};\n\t\tconst justificationOptions = [\n\t\t\t{\n\t\t\t\tvalue: 'left',\n\t\t\t\ticon: justifyLeft,\n\t\t\t\tlabel: __( 'Justify items left' ),\n\t\t\t},\n\t\t\t{\n\t\t\t\tvalue: 'center',\n\t\t\t\ticon: justifyCenter,\n\t\t\t\tlabel: __( 'Justify items center' ),\n\t\t\t},\n\t\t\t{\n\t\t\t\tvalue: 'right',\n\t\t\t\ticon: justifyRight,\n\t\t\t\tlabel: __( 'Justify items right' ),\n\t\t\t},\n\t\t];\n\t\tconst units = useCustomUnits( {\n\t\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t\t'%',\n\t\t\t\t'px',\n\t\t\t\t'em',\n\t\t\t\t'rem',\n\t\t\t\t'vw',\n\t\t\t],\n\t\t} );\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div className=\"block-editor-hooks__layout-controls\">\n\t\t\t\t\t<div className=\"block-editor-hooks__layout-controls-unit\">\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tclassName=\"block-editor-hooks__layout-controls-unit-input\"\n\t\t\t\t\t\t\tlabel={ __( 'Content' ) }\n\t\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\t\tvalue={ contentSize || wideSize || '' }\n\t\t\t\t\t\t\tonChange={ ( nextWidth ) => {\n\t\t\t\t\t\t\t\tnextWidth =\n\t\t\t\t\t\t\t\t\t0 > parseFloat( nextWidth )\n\t\t\t\t\t\t\t\t\t\t? '0'\n\t\t\t\t\t\t\t\t\t\t: nextWidth;\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\t\t\tcontentSize: nextWidth,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Icon icon={ positionCenter } />\n\t\t\t\t\t</div>\n\t\t\t\t\t<div className=\"block-editor-hooks__layout-controls-unit\">\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tclassName=\"block-editor-hooks__layout-controls-unit-input\"\n\t\t\t\t\t\t\tlabel={ __( 'Wide' ) }\n\t\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\t\tvalue={ wideSize || contentSize || '' }\n\t\t\t\t\t\t\tonChange={ ( nextWidth ) => {\n\t\t\t\t\t\t\t\tnextWidth =\n\t\t\t\t\t\t\t\t\t0 > parseFloat( nextWidth )\n\t\t\t\t\t\t\t\t\t\t? '0'\n\t\t\t\t\t\t\t\t\t\t: nextWidth;\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\t\t\twideSize: nextWidth,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Icon icon={ stretchWide } />\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<p className=\"block-editor-hooks__layout-controls-helptext\">\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Customize the width for all elements that are assigned to the center or wide columns.'\n\t\t\t\t\t) }\n\t\t\t\t</p>\n\t\t\t\t{ allowJustification && (\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Justification' ) }\n\t\t\t\t\t\tvalue={ justifyContent }\n\t\t\t\t\t\tonChange={ onJustificationChange }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ justificationOptions.map(\n\t\t\t\t\t\t\t( { value, icon, label } ) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\t\t\t\t\t\t\tkey={ value }\n\t\t\t\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t},\n\ttoolBarControls: function DefaultLayoutToolbarControls() {\n\t\treturn null;\n\t},\n\tgetLayoutStyle: function getLayoutStyle( {\n\t\tselector,\n\t\tlayout = {},\n\t\tstyle,\n\t\tblockName,\n\t\thasBlockGapSupport,\n\t\tlayoutDefinitions,\n\t} ) {\n\t\tconst { contentSize, wideSize, justifyContent } = layout;\n\t\tconst blockGapStyleValue = getGapCSSValue( style?.spacing?.blockGap );\n\n\t\t// If a block's block.json skips serialization for spacing or\n\t\t// spacing.blockGap, don't apply the user-defined value to the styles.\n\t\tlet blockGapValue = '';\n\t\tif ( ! shouldSkipSerialization( blockName, 'spacing', 'blockGap' ) ) {\n\t\t\t// If an object is provided only use the 'top' value for this kind of gap.\n\t\t\tif ( blockGapStyleValue?.top ) {\n\t\t\t\tblockGapValue = getGapCSSValue( blockGapStyleValue?.top );\n\t\t\t} else if ( typeof blockGapStyleValue === 'string' ) {\n\t\t\t\tblockGapValue = getGapCSSValue( blockGapStyleValue );\n\t\t\t}\n\t\t}\n\n\t\tconst marginLeft =\n\t\t\tjustifyContent === 'left' ? '0 !important' : 'auto !important';\n\t\tconst marginRight =\n\t\t\tjustifyContent === 'right' ? '0 !important' : 'auto !important';\n\n\t\tlet output =\n\t\t\t!! contentSize || !! wideSize\n\t\t\t\t? `\n\t\t\t\t\t${ appendSelectors(\n\t\t\t\t\t\tselector,\n\t\t\t\t\t\t'> :where(:not(.alignleft):not(.alignright):not(.alignfull))'\n\t\t\t\t\t) } {\n\t\t\t\t\t\tmax-width: ${ contentSize ?? wideSize };\n\t\t\t\t\t\tmargin-left: ${ marginLeft };\n\t\t\t\t\t\tmargin-right: ${ marginRight };\n\t\t\t\t\t}\n\t\t\t\t\t${ appendSelectors( selector, '> .alignwide' ) } {\n\t\t\t\t\t\tmax-width: ${ wideSize ?? contentSize };\n\t\t\t\t\t}\n\t\t\t\t\t${ appendSelectors( selector, '> .alignfull' ) } {\n\t\t\t\t\t\tmax-width: none;\n\t\t\t\t\t}\n\t\t\t\t`\n\t\t\t\t: '';\n\n\t\tif ( justifyContent === 'left' ) {\n\t\t\toutput += `${ appendSelectors(\n\t\t\t\tselector,\n\t\t\t\t'> :where(:not(.alignleft):not(.alignright):not(.alignfull))'\n\t\t\t) }\n\t\t\t{ margin-left: ${ marginLeft }; }`;\n\t\t} else if ( justifyContent === 'right' ) {\n\t\t\toutput += `${ appendSelectors(\n\t\t\t\tselector,\n\t\t\t\t'> :where(:not(.alignleft):not(.alignright):not(.alignfull))'\n\t\t\t) }\n\t\t\t{ margin-right: ${ marginRight }; }`;\n\t\t}\n\n\t\t// If there is custom padding, add negative margins for alignfull blocks.\n\t\tif ( style?.spacing?.padding ) {\n\t\t\t// The style object might be storing a preset so we need to make sure we get a usable value.\n\t\t\tconst paddingValues = getCSSRules( style );\n\t\t\tpaddingValues.forEach( ( rule ) => {\n\t\t\t\tif ( rule.key === 'paddingRight' ) {\n\t\t\t\t\toutput += `\n\t\t\t\t\t${ appendSelectors( selector, '> .alignfull' ) } {\n\t\t\t\t\t\tmargin-right: calc(${ rule.value } * -1);\n\t\t\t\t\t}\n\t\t\t\t\t`;\n\t\t\t\t} else if ( rule.key === 'paddingLeft' ) {\n\t\t\t\t\toutput += `\n\t\t\t\t\t${ appendSelectors( selector, '> .alignfull' ) } {\n\t\t\t\t\t\tmargin-left: calc(${ rule.value } * -1);\n\t\t\t\t\t}\n\t\t\t\t\t`;\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\t// Output blockGap styles based on rules contained in layout definitions in theme.json.\n\t\tif ( hasBlockGapSupport && blockGapValue ) {\n\t\t\toutput += getBlockGapCSS(\n\t\t\t\tselector,\n\t\t\t\tlayoutDefinitions,\n\t\t\t\t'constrained',\n\t\t\t\tblockGapValue\n\t\t\t);\n\t\t}\n\t\treturn output;\n\t},\n\tgetOrientation() {\n\t\treturn 'vertical';\n\t},\n\tgetAlignments( layout ) {\n\t\tconst alignmentInfo = getAlignmentsInfo( layout );\n\t\tif ( layout.alignments !== undefined ) {\n\t\t\tif ( ! layout.alignments.includes( 'none' ) ) {\n\t\t\t\tlayout.alignments.unshift( 'none' );\n\t\t\t}\n\t\t\treturn layout.alignments.map( ( alignment ) => ( {\n\t\t\t\tname: alignment,\n\t\t\t\tinfo: alignmentInfo[ alignment ],\n\t\t\t} ) );\n\t\t}\n\t\tconst { contentSize, wideSize } = layout;\n\n\t\tconst alignments = [\n\t\t\t{ name: 'left' },\n\t\t\t{ name: 'center' },\n\t\t\t{ name: 'right' },\n\t\t];\n\n\t\tif ( contentSize ) {\n\t\t\talignments.unshift( { name: 'full' } );\n\t\t}\n\n\t\tif ( wideSize ) {\n\t\t\talignments.unshift( { name: 'wide', info: alignmentInfo.wide } );\n\t\t}\n\n\t\talignments.unshift( { name: 'none', info: alignmentInfo.none } );\n\n\t\treturn alignments;\n\t},\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/layouts/constrained.js"],"names":["__experimentalUseCustomUnits","useCustomUnits","__experimentalUnitControl","UnitControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOptionIcon","ToggleGroupControlOptionIcon","__","Icon","positionCenter","stretchWide","justifyLeft","justifyCenter","justifyRight","getCSSRules","useSetting","appendSelectors","getBlockGapCSS","getAlignmentsInfo","getGapCSSValue","shouldSkipSerialization","name","label","inspectorControls","DefaultLayoutInspectorControls","layout","onChange","layoutBlockSupport","wideSize","contentSize","justifyContent","allowJustification","onJustificationChange","value","justificationOptions","icon","units","availableUnits","nextWidth","parseFloat","map","toolBarControls","DefaultLayoutToolbarControls","getLayoutStyle","selector","style","blockName","hasBlockGapSupport","layoutDefinitions","blockGapStyleValue","spacing","blockGap","blockGapValue","top","marginLeft","marginRight","output","padding","paddingValues","forEach","rule","key","getOrientation","getAlignments","alignmentInfo","alignments","undefined","includes","unshift","alignment","info","wide","none"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOptionIcon as ToggleGroupControlOptionIcon,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tIcon,\n\tpositionCenter,\n\tstretchWide,\n\tjustifyLeft,\n\tjustifyCenter,\n\tjustifyRight,\n} from '@wordpress/icons';\nimport { getCSSRules } from '@wordpress/style-engine';\n\n/**\n * Internal dependencies\n */\nimport useSetting from '../components/use-setting';\nimport { appendSelectors, getBlockGapCSS, getAlignmentsInfo } from './utils';\nimport { getGapCSSValue } from '../hooks/gap';\nimport { shouldSkipSerialization } from '../hooks/utils';\n\nexport default {\n\tname: 'constrained',\n\tlabel: __( 'Constrained' ),\n\tinspectorControls: function DefaultLayoutInspectorControls( {\n\t\tlayout,\n\t\tonChange,\n\t\tlayoutBlockSupport = {},\n\t} ) {\n\t\tconst { wideSize, contentSize, justifyContent = 'center' } = layout;\n\t\tconst { allowJustification = true } = layoutBlockSupport;\n\t\tconst onJustificationChange = ( value ) => {\n\t\t\tonChange( {\n\t\t\t\t...layout,\n\t\t\t\tjustifyContent: value,\n\t\t\t} );\n\t\t};\n\t\tconst justificationOptions = [\n\t\t\t{\n\t\t\t\tvalue: 'left',\n\t\t\t\ticon: justifyLeft,\n\t\t\t\tlabel: __( 'Justify items left' ),\n\t\t\t},\n\t\t\t{\n\t\t\t\tvalue: 'center',\n\t\t\t\ticon: justifyCenter,\n\t\t\t\tlabel: __( 'Justify items center' ),\n\t\t\t},\n\t\t\t{\n\t\t\t\tvalue: 'right',\n\t\t\t\ticon: justifyRight,\n\t\t\t\tlabel: __( 'Justify items right' ),\n\t\t\t},\n\t\t];\n\t\tconst units = useCustomUnits( {\n\t\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t\t'%',\n\t\t\t\t'px',\n\t\t\t\t'em',\n\t\t\t\t'rem',\n\t\t\t\t'vw',\n\t\t\t],\n\t\t} );\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div className=\"block-editor-hooks__layout-controls\">\n\t\t\t\t\t<div className=\"block-editor-hooks__layout-controls-unit\">\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tclassName=\"block-editor-hooks__layout-controls-unit-input\"\n\t\t\t\t\t\t\tlabel={ __( 'Content' ) }\n\t\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\t\tvalue={ contentSize || wideSize || '' }\n\t\t\t\t\t\t\tonChange={ ( nextWidth ) => {\n\t\t\t\t\t\t\t\tnextWidth =\n\t\t\t\t\t\t\t\t\t0 > parseFloat( nextWidth )\n\t\t\t\t\t\t\t\t\t\t? '0'\n\t\t\t\t\t\t\t\t\t\t: nextWidth;\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\t\t\tcontentSize: nextWidth,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Icon icon={ positionCenter } />\n\t\t\t\t\t</div>\n\t\t\t\t\t<div className=\"block-editor-hooks__layout-controls-unit\">\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tclassName=\"block-editor-hooks__layout-controls-unit-input\"\n\t\t\t\t\t\t\tlabel={ __( 'Wide' ) }\n\t\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\t\t__unstableInputWidth=\"80px\"\n\t\t\t\t\t\t\tvalue={ wideSize || contentSize || '' }\n\t\t\t\t\t\t\tonChange={ ( nextWidth ) => {\n\t\t\t\t\t\t\t\tnextWidth =\n\t\t\t\t\t\t\t\t\t0 > parseFloat( nextWidth )\n\t\t\t\t\t\t\t\t\t\t? '0'\n\t\t\t\t\t\t\t\t\t\t: nextWidth;\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\t\t\twideSize: nextWidth,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Icon icon={ stretchWide } />\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<p className=\"block-editor-hooks__layout-controls-helptext\">\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Customize the width for all elements that are assigned to the center or wide columns.'\n\t\t\t\t\t) }\n\t\t\t\t</p>\n\t\t\t\t{ allowJustification && (\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Justification' ) }\n\t\t\t\t\t\tvalue={ justifyContent }\n\t\t\t\t\t\tonChange={ onJustificationChange }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ justificationOptions.map(\n\t\t\t\t\t\t\t( { value, icon, label } ) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\t\t\t\t\t\t\tkey={ value }\n\t\t\t\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t},\n\ttoolBarControls: function DefaultLayoutToolbarControls() {\n\t\treturn null;\n\t},\n\tgetLayoutStyle: function getLayoutStyle( {\n\t\tselector,\n\t\tlayout = {},\n\t\tstyle,\n\t\tblockName,\n\t\thasBlockGapSupport,\n\t\tlayoutDefinitions,\n\t} ) {\n\t\tconst { contentSize, wideSize, justifyContent } = layout;\n\t\tconst blockGapStyleValue = getGapCSSValue( style?.spacing?.blockGap );\n\n\t\t// If a block's block.json skips serialization for spacing or\n\t\t// spacing.blockGap, don't apply the user-defined value to the styles.\n\t\tlet blockGapValue = '';\n\t\tif ( ! shouldSkipSerialization( blockName, 'spacing', 'blockGap' ) ) {\n\t\t\t// If an object is provided only use the 'top' value for this kind of gap.\n\t\t\tif ( blockGapStyleValue?.top ) {\n\t\t\t\tblockGapValue = getGapCSSValue( blockGapStyleValue?.top );\n\t\t\t} else if ( typeof blockGapStyleValue === 'string' ) {\n\t\t\t\tblockGapValue = getGapCSSValue( blockGapStyleValue );\n\t\t\t}\n\t\t}\n\n\t\tconst marginLeft =\n\t\t\tjustifyContent === 'left' ? '0 !important' : 'auto !important';\n\t\tconst marginRight =\n\t\t\tjustifyContent === 'right' ? '0 !important' : 'auto !important';\n\n\t\tlet output =\n\t\t\t!! contentSize || !! wideSize\n\t\t\t\t? `\n\t\t\t\t\t${ appendSelectors(\n\t\t\t\t\t\tselector,\n\t\t\t\t\t\t'> :where(:not(.alignleft):not(.alignright):not(.alignfull))'\n\t\t\t\t\t) } {\n\t\t\t\t\t\tmax-width: ${ contentSize ?? wideSize };\n\t\t\t\t\t\tmargin-left: ${ marginLeft };\n\t\t\t\t\t\tmargin-right: ${ marginRight };\n\t\t\t\t\t}\n\t\t\t\t\t${ appendSelectors( selector, '> .alignwide' ) } {\n\t\t\t\t\t\tmax-width: ${ wideSize ?? contentSize };\n\t\t\t\t\t}\n\t\t\t\t\t${ appendSelectors( selector, '> .alignfull' ) } {\n\t\t\t\t\t\tmax-width: none;\n\t\t\t\t\t}\n\t\t\t\t`\n\t\t\t\t: '';\n\n\t\tif ( justifyContent === 'left' ) {\n\t\t\toutput += `${ appendSelectors(\n\t\t\t\tselector,\n\t\t\t\t'> :where(:not(.alignleft):not(.alignright):not(.alignfull))'\n\t\t\t) }\n\t\t\t{ margin-left: ${ marginLeft }; }`;\n\t\t} else if ( justifyContent === 'right' ) {\n\t\t\toutput += `${ appendSelectors(\n\t\t\t\tselector,\n\t\t\t\t'> :where(:not(.alignleft):not(.alignright):not(.alignfull))'\n\t\t\t) }\n\t\t\t{ margin-right: ${ marginRight }; }`;\n\t\t}\n\n\t\t// If there is custom padding, add negative margins for alignfull blocks.\n\t\tif ( style?.spacing?.padding ) {\n\t\t\t// The style object might be storing a preset so we need to make sure we get a usable value.\n\t\t\tconst paddingValues = getCSSRules( style );\n\t\t\tpaddingValues.forEach( ( rule ) => {\n\t\t\t\tif ( rule.key === 'paddingRight' ) {\n\t\t\t\t\toutput += `\n\t\t\t\t\t${ appendSelectors( selector, '> .alignfull' ) } {\n\t\t\t\t\t\tmargin-right: calc(${ rule.value } * -1);\n\t\t\t\t\t}\n\t\t\t\t\t`;\n\t\t\t\t} else if ( rule.key === 'paddingLeft' ) {\n\t\t\t\t\toutput += `\n\t\t\t\t\t${ appendSelectors( selector, '> .alignfull' ) } {\n\t\t\t\t\t\tmargin-left: calc(${ rule.value } * -1);\n\t\t\t\t\t}\n\t\t\t\t\t`;\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\t// Output blockGap styles based on rules contained in layout definitions in theme.json.\n\t\tif ( hasBlockGapSupport && blockGapValue ) {\n\t\t\toutput += getBlockGapCSS(\n\t\t\t\tselector,\n\t\t\t\tlayoutDefinitions,\n\t\t\t\t'constrained',\n\t\t\t\tblockGapValue\n\t\t\t);\n\t\t}\n\t\treturn output;\n\t},\n\tgetOrientation() {\n\t\treturn 'vertical';\n\t},\n\tgetAlignments( layout ) {\n\t\tconst alignmentInfo = getAlignmentsInfo( layout );\n\t\tif ( layout.alignments !== undefined ) {\n\t\t\tif ( ! layout.alignments.includes( 'none' ) ) {\n\t\t\t\tlayout.alignments.unshift( 'none' );\n\t\t\t}\n\t\t\treturn layout.alignments.map( ( alignment ) => ( {\n\t\t\t\tname: alignment,\n\t\t\t\tinfo: alignmentInfo[ alignment ],\n\t\t\t} ) );\n\t\t}\n\t\tconst { contentSize, wideSize } = layout;\n\n\t\tconst alignments = [\n\t\t\t{ name: 'left' },\n\t\t\t{ name: 'center' },\n\t\t\t{ name: 'right' },\n\t\t];\n\n\t\tif ( contentSize ) {\n\t\t\talignments.unshift( { name: 'full' } );\n\t\t}\n\n\t\tif ( wideSize ) {\n\t\t\talignments.unshift( { name: 'wide', info: alignmentInfo.wide } );\n\t\t}\n\n\t\talignments.unshift( { name: 'none', info: alignmentInfo.none } );\n\n\t\treturn alignments;\n\t},\n};\n"]}
@@ -39,12 +39,11 @@ const flexWrapOptions = ['wrap', 'nowrap'];
39
39
  export default {
40
40
  name: 'flex',
41
41
  label: __('Flex'),
42
- inspectorControls: function FlexLayoutInspectorControls(_ref) {
43
- let {
44
- layout = {},
45
- onChange,
46
- layoutBlockSupport = {}
47
- } = _ref;
42
+ inspectorControls: function FlexLayoutInspectorControls({
43
+ layout = {},
44
+ onChange,
45
+ layoutBlockSupport = {}
46
+ }) {
48
47
  const {
49
48
  allowOrientation = true
50
49
  } = layoutBlockSupport;
@@ -59,14 +58,12 @@ export default {
59
58
  onChange: onChange
60
59
  }));
61
60
  },
62
- toolBarControls: function FlexLayoutToolbarControls(_ref2) {
63
- let {
64
- layout = {},
65
- onChange,
66
- layoutBlockSupport
67
- } = _ref2;
68
-
69
- if (layoutBlockSupport !== null && layoutBlockSupport !== void 0 && layoutBlockSupport.allowSwitching) {
61
+ toolBarControls: function FlexLayoutToolbarControls({
62
+ layout = {},
63
+ onChange,
64
+ layoutBlockSupport
65
+ }) {
66
+ if (layoutBlockSupport?.allowSwitching) {
70
67
  return null;
71
68
  }
72
69
 
@@ -86,23 +83,20 @@ export default {
86
83
  isToolbar: true
87
84
  }));
88
85
  },
89
- getLayoutStyle: function getLayoutStyle(_ref3) {
90
- var _style$spacing, _style$spacing2;
91
-
92
- let {
93
- selector,
94
- layout,
95
- style,
96
- blockName,
97
- hasBlockGapSupport,
98
- layoutDefinitions
99
- } = _ref3;
86
+ getLayoutStyle: function getLayoutStyle({
87
+ selector,
88
+ layout,
89
+ style,
90
+ blockName,
91
+ hasBlockGapSupport,
92
+ layoutDefinitions
93
+ }) {
100
94
  const {
101
95
  orientation = 'horizontal'
102
96
  } = layout; // If a block's block.json skips serialization for spacing or spacing.blockGap,
103
97
  // don't apply the user-defined value to the styles.
104
98
 
105
- const blockGapValue = style !== null && style !== void 0 && (_style$spacing = style.spacing) !== null && _style$spacing !== void 0 && _style$spacing.blockGap && !shouldSkipSerialization(blockName, 'spacing', 'blockGap') ? getGapCSSValue(style === null || style === void 0 ? void 0 : (_style$spacing2 = style.spacing) === null || _style$spacing2 === void 0 ? void 0 : _style$spacing2.blockGap, '0.5em') : undefined;
99
+ const blockGapValue = style?.spacing?.blockGap && !shouldSkipSerialization(blockName, 'spacing', 'blockGap') ? getGapCSSValue(style?.spacing?.blockGap, '0.5em') : undefined;
106
100
  const justifyContent = justifyContentMap[layout.justifyContent];
107
101
  const flexWrap = flexWrapOptions.includes(layout.flexWrap) ? layout.flexWrap : 'wrap';
108
102
  const verticalAlignment = verticalAlignmentMap[layout.verticalAlignment];
@@ -158,12 +152,11 @@ export default {
158
152
 
159
153
  };
160
154
 
161
- function FlexLayoutVerticalAlignmentControl(_ref4) {
162
- let {
163
- layout,
164
- onChange,
165
- isToolbar = false
166
- } = _ref4;
155
+ function FlexLayoutVerticalAlignmentControl({
156
+ layout,
157
+ onChange,
158
+ isToolbar = false
159
+ }) {
167
160
  const {
168
161
  orientation = 'horizontal'
169
162
  } = layout;
@@ -209,12 +202,11 @@ function FlexLayoutVerticalAlignmentControl(_ref4) {
209
202
  })));
210
203
  }
211
204
 
212
- function FlexLayoutJustifyContentControl(_ref5) {
213
- let {
214
- layout,
215
- onChange,
216
- isToolbar = false
217
- } = _ref5;
205
+ function FlexLayoutJustifyContentControl({
206
+ layout,
207
+ onChange,
208
+ isToolbar = false
209
+ }) {
218
210
  const {
219
211
  justifyContent = 'left',
220
212
  orientation = 'horizontal'
@@ -280,12 +272,11 @@ function FlexLayoutJustifyContentControl(_ref5) {
280
272
  value: justifyContent,
281
273
  onChange: onJustificationChange,
282
274
  className: "block-editor-hooks__flex-layout-justification-controls"
283
- }, justificationOptions.map(_ref6 => {
284
- let {
285
- value,
286
- icon,
287
- label
288
- } = _ref6;
275
+ }, justificationOptions.map(({
276
+ value,
277
+ icon,
278
+ label
279
+ }) => {
289
280
  return createElement(ToggleGroupControlOptionIcon, {
290
281
  key: value,
291
282
  value: value,
@@ -295,11 +286,10 @@ function FlexLayoutJustifyContentControl(_ref5) {
295
286
  }));
296
287
  }
297
288
 
298
- function FlexWrapControl(_ref7) {
299
- let {
300
- layout,
301
- onChange
302
- } = _ref7;
289
+ function FlexWrapControl({
290
+ layout,
291
+ onChange
292
+ }) {
303
293
  const {
304
294
  flexWrap = 'wrap'
305
295
  } = layout;
@@ -315,11 +305,10 @@ function FlexWrapControl(_ref7) {
315
305
  });
316
306
  }
317
307
 
318
- function OrientationControl(_ref8) {
319
- let {
320
- layout,
321
- onChange
322
- } = _ref8;
308
+ function OrientationControl({
309
+ layout,
310
+ onChange
311
+ }) {
323
312
  const {
324
313
  orientation = 'horizontal',
325
314
  verticalAlignment,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/layouts/flex.js"],"names":["__","justifyLeft","justifyCenter","justifyRight","justifySpaceBetween","justifyStretch","arrowRight","arrowDown","Button","ToggleControl","Flex","FlexItem","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOptionIcon","ToggleGroupControlOptionIcon","appendSelectors","getBlockGapCSS","getGapCSSValue","BlockControls","JustifyContentControl","BlockVerticalAlignmentControl","shouldSkipSerialization","justifyContentMap","left","right","center","alignItemsMap","stretch","verticalAlignmentMap","top","bottom","flexWrapOptions","name","label","inspectorControls","FlexLayoutInspectorControls","layout","onChange","layoutBlockSupport","allowOrientation","toolBarControls","FlexLayoutToolbarControls","allowSwitching","allowVerticalAlignment","getLayoutStyle","selector","style","blockName","hasBlockGapSupport","layoutDefinitions","orientation","blockGapValue","spacing","blockGap","undefined","justifyContent","flexWrap","includes","verticalAlignment","alignItems","output","rules","push","length","join","getOrientation","getAlignments","FlexLayoutVerticalAlignmentControl","isToolbar","defaultVerticalAlignment","onVerticalAlignmentChange","value","verticalAlignmentOptions","map","icon","FlexLayoutJustifyContentControl","onJustificationChange","allowedControls","position","variant","justificationOptions","FlexWrapControl","OrientationControl","newVerticalAlignment","newJustification"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tjustifyLeft,\n\tjustifyCenter,\n\tjustifyRight,\n\tjustifySpaceBetween,\n\tjustifyStretch,\n\tarrowRight,\n\tarrowDown,\n} from '@wordpress/icons';\nimport {\n\tButton,\n\tToggleControl,\n\tFlex,\n\tFlexItem,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOptionIcon as ToggleGroupControlOptionIcon,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { appendSelectors, getBlockGapCSS } from './utils';\nimport { getGapCSSValue } from '../hooks/gap';\nimport {\n\tBlockControls,\n\tJustifyContentControl,\n\tBlockVerticalAlignmentControl,\n} from '../components';\nimport { shouldSkipSerialization } from '../hooks/utils';\n\n// Used with the default, horizontal flex orientation.\nconst justifyContentMap = {\n\tleft: 'flex-start',\n\tright: 'flex-end',\n\tcenter: 'center',\n\t'space-between': 'space-between',\n};\n\n// Used with the vertical (column) flex orientation.\nconst alignItemsMap = {\n\tleft: 'flex-start',\n\tright: 'flex-end',\n\tcenter: 'center',\n\tstretch: 'stretch',\n};\n\nconst verticalAlignmentMap = {\n\ttop: 'flex-start',\n\tcenter: 'center',\n\tbottom: 'flex-end',\n\tstretch: 'stretch',\n\t'space-between': 'space-between',\n};\n\nconst flexWrapOptions = [ 'wrap', 'nowrap' ];\n\nexport default {\n\tname: 'flex',\n\tlabel: __( 'Flex' ),\n\tinspectorControls: function FlexLayoutInspectorControls( {\n\t\tlayout = {},\n\t\tonChange,\n\t\tlayoutBlockSupport = {},\n\t} ) {\n\t\tconst { allowOrientation = true } = layoutBlockSupport;\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<Flex>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<FlexLayoutJustifyContentControl\n\t\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t{ allowOrientation && (\n\t\t\t\t\t\t\t<OrientationControl\n\t\t\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t\t<FlexWrapControl layout={ layout } onChange={ onChange } />\n\t\t\t</>\n\t\t);\n\t},\n\ttoolBarControls: function FlexLayoutToolbarControls( {\n\t\tlayout = {},\n\t\tonChange,\n\t\tlayoutBlockSupport,\n\t} ) {\n\t\tif ( layoutBlockSupport?.allowSwitching ) {\n\t\t\treturn null;\n\t\t}\n\t\tconst { allowVerticalAlignment = true } = layoutBlockSupport;\n\t\treturn (\n\t\t\t<BlockControls group=\"block\" __experimentalShareWithChildBlocks>\n\t\t\t\t<FlexLayoutJustifyContentControl\n\t\t\t\t\tlayout={ layout }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tisToolbar\n\t\t\t\t/>\n\t\t\t\t{ allowVerticalAlignment && (\n\t\t\t\t\t<FlexLayoutVerticalAlignmentControl\n\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\tisToolbar\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t);\n\t},\n\tgetLayoutStyle: function getLayoutStyle( {\n\t\tselector,\n\t\tlayout,\n\t\tstyle,\n\t\tblockName,\n\t\thasBlockGapSupport,\n\t\tlayoutDefinitions,\n\t} ) {\n\t\tconst { orientation = 'horizontal' } = layout;\n\n\t\t// If a block's block.json skips serialization for spacing or spacing.blockGap,\n\t\t// don't apply the user-defined value to the styles.\n\t\tconst blockGapValue =\n\t\t\tstyle?.spacing?.blockGap &&\n\t\t\t! shouldSkipSerialization( blockName, 'spacing', 'blockGap' )\n\t\t\t\t? getGapCSSValue( style?.spacing?.blockGap, '0.5em' )\n\t\t\t\t: undefined;\n\t\tconst justifyContent = justifyContentMap[ layout.justifyContent ];\n\t\tconst flexWrap = flexWrapOptions.includes( layout.flexWrap )\n\t\t\t? layout.flexWrap\n\t\t\t: 'wrap';\n\t\tconst verticalAlignment =\n\t\t\tverticalAlignmentMap[ layout.verticalAlignment ];\n\t\tconst alignItems =\n\t\t\talignItemsMap[ layout.justifyContent ] || alignItemsMap.left;\n\n\t\tlet output = '';\n\t\tconst rules = [];\n\n\t\tif ( flexWrap && flexWrap !== 'wrap' ) {\n\t\t\trules.push( `flex-wrap: ${ flexWrap }` );\n\t\t}\n\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\tif ( verticalAlignment ) {\n\t\t\t\trules.push( `align-items: ${ verticalAlignment }` );\n\t\t\t}\n\t\t\tif ( justifyContent ) {\n\t\t\t\trules.push( `justify-content: ${ justifyContent }` );\n\t\t\t}\n\t\t} else {\n\t\t\tif ( verticalAlignment ) {\n\t\t\t\trules.push( `justify-content: ${ verticalAlignment }` );\n\t\t\t}\n\t\t\trules.push( 'flex-direction: column' );\n\t\t\trules.push( `align-items: ${ alignItems }` );\n\t\t}\n\n\t\tif ( rules.length ) {\n\t\t\toutput = `${ appendSelectors( selector ) } {\n\t\t\t\t${ rules.join( '; ' ) };\n\t\t\t}`;\n\t\t}\n\n\t\t// Output blockGap styles based on rules contained in layout definitions in theme.json.\n\t\tif ( hasBlockGapSupport && blockGapValue ) {\n\t\t\toutput += getBlockGapCSS(\n\t\t\t\tselector,\n\t\t\t\tlayoutDefinitions,\n\t\t\t\t'flex',\n\t\t\t\tblockGapValue\n\t\t\t);\n\t\t}\n\t\treturn output;\n\t},\n\tgetOrientation( layout ) {\n\t\tconst { orientation = 'horizontal' } = layout;\n\t\treturn orientation;\n\t},\n\tgetAlignments() {\n\t\treturn [];\n\t},\n};\n\nfunction FlexLayoutVerticalAlignmentControl( {\n\tlayout,\n\tonChange,\n\tisToolbar = false,\n} ) {\n\tconst { orientation = 'horizontal' } = layout;\n\n\tconst defaultVerticalAlignment =\n\t\torientation === 'horizontal'\n\t\t\t? verticalAlignmentMap.center\n\t\t\t: verticalAlignmentMap.top;\n\n\tconst { verticalAlignment = defaultVerticalAlignment } = layout;\n\n\tconst onVerticalAlignmentChange = ( value ) => {\n\t\tonChange( {\n\t\t\t...layout,\n\t\t\tverticalAlignment: value,\n\t\t} );\n\t};\n\tif ( isToolbar ) {\n\t\treturn (\n\t\t\t<BlockVerticalAlignmentControl\n\t\t\t\tonChange={ onVerticalAlignmentChange }\n\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\tcontrols={\n\t\t\t\t\torientation === 'horizontal'\n\t\t\t\t\t\t? [ 'top', 'center', 'bottom', 'stretch' ]\n\t\t\t\t\t\t: [ 'top', 'center', 'bottom', 'space-between' ]\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst verticalAlignmentOptions = [\n\t\t{\n\t\t\tvalue: 'flex-start',\n\t\t\tlabel: __( 'Align items top' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'center',\n\t\t\tlabel: __( 'Align items center' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'flex-end',\n\t\t\tlabel: __( 'Align items bottom' ),\n\t\t},\n\t];\n\n\treturn (\n\t\t<fieldset className=\"block-editor-hooks__flex-layout-vertical-alignment-control\">\n\t\t\t<legend>{ __( 'Vertical alignment' ) }</legend>\n\t\t\t<div>\n\t\t\t\t{ verticalAlignmentOptions.map( ( value, icon, label ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ value }\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\tisPressed={ verticalAlignment === value }\n\t\t\t\t\t\t\tonClick={ () => onVerticalAlignmentChange( value ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</div>\n\t\t</fieldset>\n\t);\n}\n\nfunction FlexLayoutJustifyContentControl( {\n\tlayout,\n\tonChange,\n\tisToolbar = false,\n} ) {\n\tconst { justifyContent = 'left', orientation = 'horizontal' } = layout;\n\tconst onJustificationChange = ( value ) => {\n\t\tonChange( {\n\t\t\t...layout,\n\t\t\tjustifyContent: value,\n\t\t} );\n\t};\n\tconst allowedControls = [ 'left', 'center', 'right' ];\n\tif ( orientation === 'horizontal' ) {\n\t\tallowedControls.push( 'space-between' );\n\t} else {\n\t\tallowedControls.push( 'stretch' );\n\t}\n\tif ( isToolbar ) {\n\t\treturn (\n\t\t\t<JustifyContentControl\n\t\t\t\tallowedControls={ allowedControls }\n\t\t\t\tvalue={ justifyContent }\n\t\t\t\tonChange={ onJustificationChange }\n\t\t\t\tpopoverProps={ {\n\t\t\t\t\tposition: 'bottom right',\n\t\t\t\t\tvariant: 'toolbar',\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst justificationOptions = [\n\t\t{\n\t\t\tvalue: 'left',\n\t\t\ticon: justifyLeft,\n\t\t\tlabel: __( 'Justify items left' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'center',\n\t\t\ticon: justifyCenter,\n\t\t\tlabel: __( 'Justify items center' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'right',\n\t\t\ticon: justifyRight,\n\t\t\tlabel: __( 'Justify items right' ),\n\t\t},\n\t];\n\tif ( orientation === 'horizontal' ) {\n\t\tjustificationOptions.push( {\n\t\t\tvalue: 'space-between',\n\t\t\ticon: justifySpaceBetween,\n\t\t\tlabel: __( 'Space between items' ),\n\t\t} );\n\t} else {\n\t\tjustificationOptions.push( {\n\t\t\tvalue: 'stretch',\n\t\t\ticon: justifyStretch,\n\t\t\tlabel: __( 'Stretch items' ),\n\t\t} );\n\t}\n\n\treturn (\n\t\t<ToggleGroupControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tlabel={ __( 'Justification' ) }\n\t\t\tvalue={ justifyContent }\n\t\t\tonChange={ onJustificationChange }\n\t\t\tclassName=\"block-editor-hooks__flex-layout-justification-controls\"\n\t\t>\n\t\t\t{ justificationOptions.map( ( { value, icon, label } ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\t\t\tkey={ value }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</ToggleGroupControl>\n\t);\n}\n\nfunction FlexWrapControl( { layout, onChange } ) {\n\tconst { flexWrap = 'wrap' } = layout;\n\treturn (\n\t\t<ToggleControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tlabel={ __( 'Allow to wrap to multiple lines' ) }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tonChange( {\n\t\t\t\t\t...layout,\n\t\t\t\t\tflexWrap: value ? 'wrap' : 'nowrap',\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tchecked={ flexWrap === 'wrap' }\n\t\t/>\n\t);\n}\n\nfunction OrientationControl( { layout, onChange } ) {\n\tconst {\n\t\torientation = 'horizontal',\n\t\tverticalAlignment,\n\t\tjustifyContent,\n\t} = layout;\n\treturn (\n\t\t<ToggleGroupControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tclassName=\"block-editor-hooks__flex-layout-orientation-controls\"\n\t\t\tlabel={ __( 'Orientation' ) }\n\t\t\tvalue={ orientation }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\t// Make sure the vertical alignment and justification are compatible with the new orientation.\n\t\t\t\tlet newVerticalAlignment = verticalAlignment;\n\t\t\t\tlet newJustification = justifyContent;\n\t\t\t\tif ( value === 'horizontal' ) {\n\t\t\t\t\tif ( verticalAlignment === 'space-between' ) {\n\t\t\t\t\t\tnewVerticalAlignment = 'center';\n\t\t\t\t\t}\n\t\t\t\t\tif ( justifyContent === 'stretch' ) {\n\t\t\t\t\t\tnewJustification = 'left';\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif ( verticalAlignment === 'stretch' ) {\n\t\t\t\t\t\tnewVerticalAlignment = 'top';\n\t\t\t\t\t}\n\t\t\t\t\tif ( justifyContent === 'space-between' ) {\n\t\t\t\t\t\tnewJustification = 'left';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn onChange( {\n\t\t\t\t\t...layout,\n\t\t\t\t\torientation: value,\n\t\t\t\t\tverticalAlignment: newVerticalAlignment,\n\t\t\t\t\tjustifyContent: newJustification,\n\t\t\t\t} );\n\t\t\t} }\n\t\t>\n\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\ticon={ arrowRight }\n\t\t\t\tvalue={ 'horizontal' }\n\t\t\t\tlabel={ __( 'Horizontal' ) }\n\t\t\t/>\n\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\ticon={ arrowDown }\n\t\t\t\tvalue={ 'vertical' }\n\t\t\t\tlabel={ __( 'Vertical' ) }\n\t\t\t/>\n\t\t</ToggleGroupControl>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/layouts/flex.js"],"names":["__","justifyLeft","justifyCenter","justifyRight","justifySpaceBetween","justifyStretch","arrowRight","arrowDown","Button","ToggleControl","Flex","FlexItem","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOptionIcon","ToggleGroupControlOptionIcon","appendSelectors","getBlockGapCSS","getGapCSSValue","BlockControls","JustifyContentControl","BlockVerticalAlignmentControl","shouldSkipSerialization","justifyContentMap","left","right","center","alignItemsMap","stretch","verticalAlignmentMap","top","bottom","flexWrapOptions","name","label","inspectorControls","FlexLayoutInspectorControls","layout","onChange","layoutBlockSupport","allowOrientation","toolBarControls","FlexLayoutToolbarControls","allowSwitching","allowVerticalAlignment","getLayoutStyle","selector","style","blockName","hasBlockGapSupport","layoutDefinitions","orientation","blockGapValue","spacing","blockGap","undefined","justifyContent","flexWrap","includes","verticalAlignment","alignItems","output","rules","push","length","join","getOrientation","getAlignments","FlexLayoutVerticalAlignmentControl","isToolbar","defaultVerticalAlignment","onVerticalAlignmentChange","value","verticalAlignmentOptions","map","icon","FlexLayoutJustifyContentControl","onJustificationChange","allowedControls","position","variant","justificationOptions","FlexWrapControl","OrientationControl","newVerticalAlignment","newJustification"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tjustifyLeft,\n\tjustifyCenter,\n\tjustifyRight,\n\tjustifySpaceBetween,\n\tjustifyStretch,\n\tarrowRight,\n\tarrowDown,\n} from '@wordpress/icons';\nimport {\n\tButton,\n\tToggleControl,\n\tFlex,\n\tFlexItem,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOptionIcon as ToggleGroupControlOptionIcon,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { appendSelectors, getBlockGapCSS } from './utils';\nimport { getGapCSSValue } from '../hooks/gap';\nimport {\n\tBlockControls,\n\tJustifyContentControl,\n\tBlockVerticalAlignmentControl,\n} from '../components';\nimport { shouldSkipSerialization } from '../hooks/utils';\n\n// Used with the default, horizontal flex orientation.\nconst justifyContentMap = {\n\tleft: 'flex-start',\n\tright: 'flex-end',\n\tcenter: 'center',\n\t'space-between': 'space-between',\n};\n\n// Used with the vertical (column) flex orientation.\nconst alignItemsMap = {\n\tleft: 'flex-start',\n\tright: 'flex-end',\n\tcenter: 'center',\n\tstretch: 'stretch',\n};\n\nconst verticalAlignmentMap = {\n\ttop: 'flex-start',\n\tcenter: 'center',\n\tbottom: 'flex-end',\n\tstretch: 'stretch',\n\t'space-between': 'space-between',\n};\n\nconst flexWrapOptions = [ 'wrap', 'nowrap' ];\n\nexport default {\n\tname: 'flex',\n\tlabel: __( 'Flex' ),\n\tinspectorControls: function FlexLayoutInspectorControls( {\n\t\tlayout = {},\n\t\tonChange,\n\t\tlayoutBlockSupport = {},\n\t} ) {\n\t\tconst { allowOrientation = true } = layoutBlockSupport;\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<Flex>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<FlexLayoutJustifyContentControl\n\t\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t{ allowOrientation && (\n\t\t\t\t\t\t\t<OrientationControl\n\t\t\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t\t<FlexWrapControl layout={ layout } onChange={ onChange } />\n\t\t\t</>\n\t\t);\n\t},\n\ttoolBarControls: function FlexLayoutToolbarControls( {\n\t\tlayout = {},\n\t\tonChange,\n\t\tlayoutBlockSupport,\n\t} ) {\n\t\tif ( layoutBlockSupport?.allowSwitching ) {\n\t\t\treturn null;\n\t\t}\n\t\tconst { allowVerticalAlignment = true } = layoutBlockSupport;\n\t\treturn (\n\t\t\t<BlockControls group=\"block\" __experimentalShareWithChildBlocks>\n\t\t\t\t<FlexLayoutJustifyContentControl\n\t\t\t\t\tlayout={ layout }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tisToolbar\n\t\t\t\t/>\n\t\t\t\t{ allowVerticalAlignment && (\n\t\t\t\t\t<FlexLayoutVerticalAlignmentControl\n\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\tisToolbar\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t);\n\t},\n\tgetLayoutStyle: function getLayoutStyle( {\n\t\tselector,\n\t\tlayout,\n\t\tstyle,\n\t\tblockName,\n\t\thasBlockGapSupport,\n\t\tlayoutDefinitions,\n\t} ) {\n\t\tconst { orientation = 'horizontal' } = layout;\n\n\t\t// If a block's block.json skips serialization for spacing or spacing.blockGap,\n\t\t// don't apply the user-defined value to the styles.\n\t\tconst blockGapValue =\n\t\t\tstyle?.spacing?.blockGap &&\n\t\t\t! shouldSkipSerialization( blockName, 'spacing', 'blockGap' )\n\t\t\t\t? getGapCSSValue( style?.spacing?.blockGap, '0.5em' )\n\t\t\t\t: undefined;\n\t\tconst justifyContent = justifyContentMap[ layout.justifyContent ];\n\t\tconst flexWrap = flexWrapOptions.includes( layout.flexWrap )\n\t\t\t? layout.flexWrap\n\t\t\t: 'wrap';\n\t\tconst verticalAlignment =\n\t\t\tverticalAlignmentMap[ layout.verticalAlignment ];\n\t\tconst alignItems =\n\t\t\talignItemsMap[ layout.justifyContent ] || alignItemsMap.left;\n\n\t\tlet output = '';\n\t\tconst rules = [];\n\n\t\tif ( flexWrap && flexWrap !== 'wrap' ) {\n\t\t\trules.push( `flex-wrap: ${ flexWrap }` );\n\t\t}\n\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\tif ( verticalAlignment ) {\n\t\t\t\trules.push( `align-items: ${ verticalAlignment }` );\n\t\t\t}\n\t\t\tif ( justifyContent ) {\n\t\t\t\trules.push( `justify-content: ${ justifyContent }` );\n\t\t\t}\n\t\t} else {\n\t\t\tif ( verticalAlignment ) {\n\t\t\t\trules.push( `justify-content: ${ verticalAlignment }` );\n\t\t\t}\n\t\t\trules.push( 'flex-direction: column' );\n\t\t\trules.push( `align-items: ${ alignItems }` );\n\t\t}\n\n\t\tif ( rules.length ) {\n\t\t\toutput = `${ appendSelectors( selector ) } {\n\t\t\t\t${ rules.join( '; ' ) };\n\t\t\t}`;\n\t\t}\n\n\t\t// Output blockGap styles based on rules contained in layout definitions in theme.json.\n\t\tif ( hasBlockGapSupport && blockGapValue ) {\n\t\t\toutput += getBlockGapCSS(\n\t\t\t\tselector,\n\t\t\t\tlayoutDefinitions,\n\t\t\t\t'flex',\n\t\t\t\tblockGapValue\n\t\t\t);\n\t\t}\n\t\treturn output;\n\t},\n\tgetOrientation( layout ) {\n\t\tconst { orientation = 'horizontal' } = layout;\n\t\treturn orientation;\n\t},\n\tgetAlignments() {\n\t\treturn [];\n\t},\n};\n\nfunction FlexLayoutVerticalAlignmentControl( {\n\tlayout,\n\tonChange,\n\tisToolbar = false,\n} ) {\n\tconst { orientation = 'horizontal' } = layout;\n\n\tconst defaultVerticalAlignment =\n\t\torientation === 'horizontal'\n\t\t\t? verticalAlignmentMap.center\n\t\t\t: verticalAlignmentMap.top;\n\n\tconst { verticalAlignment = defaultVerticalAlignment } = layout;\n\n\tconst onVerticalAlignmentChange = ( value ) => {\n\t\tonChange( {\n\t\t\t...layout,\n\t\t\tverticalAlignment: value,\n\t\t} );\n\t};\n\tif ( isToolbar ) {\n\t\treturn (\n\t\t\t<BlockVerticalAlignmentControl\n\t\t\t\tonChange={ onVerticalAlignmentChange }\n\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\tcontrols={\n\t\t\t\t\torientation === 'horizontal'\n\t\t\t\t\t\t? [ 'top', 'center', 'bottom', 'stretch' ]\n\t\t\t\t\t\t: [ 'top', 'center', 'bottom', 'space-between' ]\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst verticalAlignmentOptions = [\n\t\t{\n\t\t\tvalue: 'flex-start',\n\t\t\tlabel: __( 'Align items top' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'center',\n\t\t\tlabel: __( 'Align items center' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'flex-end',\n\t\t\tlabel: __( 'Align items bottom' ),\n\t\t},\n\t];\n\n\treturn (\n\t\t<fieldset className=\"block-editor-hooks__flex-layout-vertical-alignment-control\">\n\t\t\t<legend>{ __( 'Vertical alignment' ) }</legend>\n\t\t\t<div>\n\t\t\t\t{ verticalAlignmentOptions.map( ( value, icon, label ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ value }\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\tisPressed={ verticalAlignment === value }\n\t\t\t\t\t\t\tonClick={ () => onVerticalAlignmentChange( value ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</div>\n\t\t</fieldset>\n\t);\n}\n\nfunction FlexLayoutJustifyContentControl( {\n\tlayout,\n\tonChange,\n\tisToolbar = false,\n} ) {\n\tconst { justifyContent = 'left', orientation = 'horizontal' } = layout;\n\tconst onJustificationChange = ( value ) => {\n\t\tonChange( {\n\t\t\t...layout,\n\t\t\tjustifyContent: value,\n\t\t} );\n\t};\n\tconst allowedControls = [ 'left', 'center', 'right' ];\n\tif ( orientation === 'horizontal' ) {\n\t\tallowedControls.push( 'space-between' );\n\t} else {\n\t\tallowedControls.push( 'stretch' );\n\t}\n\tif ( isToolbar ) {\n\t\treturn (\n\t\t\t<JustifyContentControl\n\t\t\t\tallowedControls={ allowedControls }\n\t\t\t\tvalue={ justifyContent }\n\t\t\t\tonChange={ onJustificationChange }\n\t\t\t\tpopoverProps={ {\n\t\t\t\t\tposition: 'bottom right',\n\t\t\t\t\tvariant: 'toolbar',\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst justificationOptions = [\n\t\t{\n\t\t\tvalue: 'left',\n\t\t\ticon: justifyLeft,\n\t\t\tlabel: __( 'Justify items left' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'center',\n\t\t\ticon: justifyCenter,\n\t\t\tlabel: __( 'Justify items center' ),\n\t\t},\n\t\t{\n\t\t\tvalue: 'right',\n\t\t\ticon: justifyRight,\n\t\t\tlabel: __( 'Justify items right' ),\n\t\t},\n\t];\n\tif ( orientation === 'horizontal' ) {\n\t\tjustificationOptions.push( {\n\t\t\tvalue: 'space-between',\n\t\t\ticon: justifySpaceBetween,\n\t\t\tlabel: __( 'Space between items' ),\n\t\t} );\n\t} else {\n\t\tjustificationOptions.push( {\n\t\t\tvalue: 'stretch',\n\t\t\ticon: justifyStretch,\n\t\t\tlabel: __( 'Stretch items' ),\n\t\t} );\n\t}\n\n\treturn (\n\t\t<ToggleGroupControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tlabel={ __( 'Justification' ) }\n\t\t\tvalue={ justifyContent }\n\t\t\tonChange={ onJustificationChange }\n\t\t\tclassName=\"block-editor-hooks__flex-layout-justification-controls\"\n\t\t>\n\t\t\t{ justificationOptions.map( ( { value, icon, label } ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\t\t\tkey={ value }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</ToggleGroupControl>\n\t);\n}\n\nfunction FlexWrapControl( { layout, onChange } ) {\n\tconst { flexWrap = 'wrap' } = layout;\n\treturn (\n\t\t<ToggleControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tlabel={ __( 'Allow to wrap to multiple lines' ) }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tonChange( {\n\t\t\t\t\t...layout,\n\t\t\t\t\tflexWrap: value ? 'wrap' : 'nowrap',\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tchecked={ flexWrap === 'wrap' }\n\t\t/>\n\t);\n}\n\nfunction OrientationControl( { layout, onChange } ) {\n\tconst {\n\t\torientation = 'horizontal',\n\t\tverticalAlignment,\n\t\tjustifyContent,\n\t} = layout;\n\treturn (\n\t\t<ToggleGroupControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tclassName=\"block-editor-hooks__flex-layout-orientation-controls\"\n\t\t\tlabel={ __( 'Orientation' ) }\n\t\t\tvalue={ orientation }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\t// Make sure the vertical alignment and justification are compatible with the new orientation.\n\t\t\t\tlet newVerticalAlignment = verticalAlignment;\n\t\t\t\tlet newJustification = justifyContent;\n\t\t\t\tif ( value === 'horizontal' ) {\n\t\t\t\t\tif ( verticalAlignment === 'space-between' ) {\n\t\t\t\t\t\tnewVerticalAlignment = 'center';\n\t\t\t\t\t}\n\t\t\t\t\tif ( justifyContent === 'stretch' ) {\n\t\t\t\t\t\tnewJustification = 'left';\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif ( verticalAlignment === 'stretch' ) {\n\t\t\t\t\t\tnewVerticalAlignment = 'top';\n\t\t\t\t\t}\n\t\t\t\t\tif ( justifyContent === 'space-between' ) {\n\t\t\t\t\t\tnewJustification = 'left';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn onChange( {\n\t\t\t\t\t...layout,\n\t\t\t\t\torientation: value,\n\t\t\t\t\tverticalAlignment: newVerticalAlignment,\n\t\t\t\t\tjustifyContent: newJustification,\n\t\t\t\t} );\n\t\t\t} }\n\t\t>\n\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\ticon={ arrowRight }\n\t\t\t\tvalue={ 'horizontal' }\n\t\t\t\tlabel={ __( 'Horizontal' ) }\n\t\t\t/>\n\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\ticon={ arrowDown }\n\t\t\t\tvalue={ 'vertical' }\n\t\t\t\tlabel={ __( 'Vertical' ) }\n\t\t\t/>\n\t\t</ToggleGroupControl>\n\t);\n}\n"]}