@wordpress/block-editor 10.3.0 → 10.5.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 (460) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +0 -1
  3. package/build/components/alignment-control/ui.js +1 -1
  4. package/build/components/alignment-control/ui.js.map +1 -1
  5. package/build/components/block-alignment-control/constants.js +1 -1
  6. package/build/components/block-alignment-control/constants.js.map +1 -1
  7. package/build/components/block-alignment-matrix-control/index.js +1 -1
  8. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  9. package/build/components/block-compare/index.js +1 -3
  10. package/build/components/block-compare/index.js.map +1 -1
  11. package/build/components/block-edit/index.js +4 -2
  12. package/build/components/block-edit/index.js.map +1 -1
  13. package/build/components/block-list/block.js +3 -1
  14. package/build/components/block-list/block.js.map +1 -1
  15. package/build/components/block-lock/menu-item.js +1 -1
  16. package/build/components/block-lock/menu-item.js.map +1 -1
  17. package/build/components/block-lock/modal.js +16 -9
  18. package/build/components/block-lock/modal.js.map +1 -1
  19. package/build/components/block-popover/inbetween.js +2 -1
  20. package/build/components/block-popover/inbetween.js.map +1 -1
  21. package/build/components/block-popover/index.js +2 -1
  22. package/build/components/block-popover/index.js.map +1 -1
  23. package/build/components/block-preview/index.js +2 -4
  24. package/build/components/block-preview/index.js.map +1 -1
  25. package/build/components/block-settings-menu/block-settings-dropdown.js +2 -8
  26. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  27. package/build/components/block-styles/utils.js +3 -3
  28. package/build/components/block-styles/utils.js.map +1 -1
  29. package/build/components/block-switcher/index.js +21 -12
  30. package/build/components/block-switcher/index.js.map +1 -1
  31. package/build/components/block-switcher/preview-block-popover.js +1 -1
  32. package/build/components/block-switcher/preview-block-popover.js.map +1 -1
  33. package/build/components/block-tools/insertion-point.js +12 -2
  34. package/build/components/block-tools/insertion-point.js.map +1 -1
  35. package/build/components/block-tools/selected-block-popover.js +27 -4
  36. package/build/components/block-tools/selected-block-popover.js.map +1 -1
  37. package/build/components/block-vertical-alignment-control/ui.js +1 -1
  38. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  39. package/build/components/border-radius-control/all-input-control.js +2 -1
  40. package/build/components/border-radius-control/all-input-control.js.map +1 -1
  41. package/build/components/border-radius-control/index.js +2 -1
  42. package/build/components/border-radius-control/index.js.map +1 -1
  43. package/build/components/border-radius-control/input-controls.js +2 -1
  44. package/build/components/border-radius-control/input-controls.js.map +1 -1
  45. package/build/components/colors/with-colors.js +4 -3
  46. package/build/components/colors/with-colors.js.map +1 -1
  47. package/build/components/duotone-control/index.js +1 -1
  48. package/build/components/duotone-control/index.js.map +1 -1
  49. package/build/components/font-sizes/fluid-utils.js +24 -40
  50. package/build/components/font-sizes/fluid-utils.js.map +1 -1
  51. package/build/components/font-sizes/with-font-sizes.js +8 -6
  52. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  53. package/build/components/iframe/index.js +1 -1
  54. package/build/components/iframe/index.js.map +1 -1
  55. package/build/components/image-editor/constants.js +1 -1
  56. package/build/components/image-editor/constants.js.map +1 -1
  57. package/build/components/index.js +9 -0
  58. package/build/components/index.js.map +1 -1
  59. package/build/components/inner-blocks/index.js +10 -4
  60. package/build/components/inner-blocks/index.js.map +1 -1
  61. package/build/components/inserter/hooks/use-insertion-point.js +2 -7
  62. package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
  63. package/build/components/inserter/reusable-blocks-tab.js +4 -1
  64. package/build/components/inserter/reusable-blocks-tab.js.map +1 -1
  65. package/build/components/inserter/search-items.js +23 -2
  66. package/build/components/inserter/search-items.js.map +1 -1
  67. package/build/components/line-height-control/index.js +2 -1
  68. package/build/components/line-height-control/index.js.map +1 -1
  69. package/build/components/link-control/index.js +18 -34
  70. package/build/components/link-control/index.js.map +1 -1
  71. package/build/components/link-control/search-input.js +1 -1
  72. package/build/components/link-control/search-input.js.map +1 -1
  73. package/build/components/link-control/use-internal-input-value.js +26 -0
  74. package/build/components/link-control/use-internal-input-value.js.map +1 -0
  75. package/build/components/list-view/block.js +5 -3
  76. package/build/components/list-view/block.js.map +1 -1
  77. package/build/components/list-view/branch.js +9 -3
  78. package/build/components/list-view/branch.js.map +1 -1
  79. package/build/components/list-view/drop-indicator.js +2 -1
  80. package/build/components/list-view/drop-indicator.js.map +1 -1
  81. package/build/components/media-replace-flow/index.js +1 -1
  82. package/build/components/media-replace-flow/index.js.map +1 -1
  83. package/build/components/off-canvas-editor/block-contents.js +100 -0
  84. package/build/components/off-canvas-editor/block-contents.js.map +1 -0
  85. package/build/components/off-canvas-editor/block-select-button.js +119 -0
  86. package/build/components/off-canvas-editor/block-select-button.js.map +1 -0
  87. package/build/components/off-canvas-editor/block.js +292 -0
  88. package/build/components/off-canvas-editor/block.js.map +1 -0
  89. package/build/components/off-canvas-editor/branch.js +181 -0
  90. package/build/components/off-canvas-editor/branch.js.map +1 -0
  91. package/build/components/off-canvas-editor/context.js +19 -0
  92. package/build/components/off-canvas-editor/context.js.map +1 -0
  93. package/build/components/off-canvas-editor/drop-indicator.js +118 -0
  94. package/build/components/off-canvas-editor/drop-indicator.js.map +1 -0
  95. package/build/components/off-canvas-editor/expander.js +41 -0
  96. package/build/components/off-canvas-editor/expander.js.map +1 -0
  97. package/build/components/off-canvas-editor/index.js +204 -0
  98. package/build/components/off-canvas-editor/index.js.map +1 -0
  99. package/build/components/off-canvas-editor/leaf.js +60 -0
  100. package/build/components/off-canvas-editor/leaf.js.map +1 -0
  101. package/build/components/off-canvas-editor/use-block-selection.js +139 -0
  102. package/build/components/off-canvas-editor/use-block-selection.js.map +1 -0
  103. package/build/components/off-canvas-editor/use-list-view-client-ids.js +33 -0
  104. package/build/components/off-canvas-editor/use-list-view-client-ids.js.map +1 -0
  105. package/build/components/off-canvas-editor/use-list-view-drop-zone.js +235 -0
  106. package/build/components/off-canvas-editor/use-list-view-drop-zone.js.map +1 -0
  107. package/build/components/off-canvas-editor/use-list-view-expand-selected-item.js +60 -0
  108. package/build/components/off-canvas-editor/use-list-view-expand-selected-item.js.map +1 -0
  109. package/build/components/off-canvas-editor/utils.js +60 -0
  110. package/build/components/off-canvas-editor/utils.js.map +1 -0
  111. package/build/components/rich-text/format-toolbar/index.js +1 -1
  112. package/build/components/rich-text/format-toolbar/index.js.map +1 -1
  113. package/build/components/rich-text/format-toolbar-container.js +1 -1
  114. package/build/components/rich-text/format-toolbar-container.js.map +1 -1
  115. package/build/components/rich-text/use-paste-handler.js +1 -1
  116. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  117. package/build/components/spacing-sizes-control/all-input-control.js +6 -2
  118. package/build/components/spacing-sizes-control/all-input-control.js.map +1 -1
  119. package/build/components/spacing-sizes-control/axial-input-controls.js +6 -2
  120. package/build/components/spacing-sizes-control/axial-input-controls.js.map +1 -1
  121. package/build/components/spacing-sizes-control/index.js +6 -2
  122. package/build/components/spacing-sizes-control/index.js.map +1 -1
  123. package/build/components/spacing-sizes-control/input-controls.js +6 -2
  124. package/build/components/spacing-sizes-control/input-controls.js.map +1 -1
  125. package/build/components/spacing-sizes-control/spacing-input-control.js +12 -5
  126. package/build/components/spacing-sizes-control/spacing-input-control.js.map +1 -1
  127. package/build/components/url-input/index.js +1 -1
  128. package/build/components/url-input/index.js.map +1 -1
  129. package/build/components/url-popover/index.js +31 -2
  130. package/build/components/url-popover/index.js.map +1 -1
  131. package/build/components/use-setting/index.js +1 -1
  132. package/build/components/use-setting/index.js.map +1 -1
  133. package/build/hooks/border.js +1 -0
  134. package/build/hooks/border.js.map +1 -1
  135. package/build/hooks/color-panel.js +17 -1
  136. package/build/hooks/color-panel.js.map +1 -1
  137. package/build/hooks/color.js +1 -1
  138. package/build/hooks/color.js.map +1 -1
  139. package/build/hooks/content-lock-ui.js +13 -6
  140. package/build/hooks/content-lock-ui.js.map +1 -1
  141. package/build/hooks/dimensions.js +72 -13
  142. package/build/hooks/dimensions.js.map +1 -1
  143. package/build/hooks/font-size.js +1 -0
  144. package/build/hooks/font-size.js.map +1 -1
  145. package/build/hooks/layout.js +5 -4
  146. package/build/hooks/layout.js.map +1 -1
  147. package/build/hooks/margin.js +26 -18
  148. package/build/hooks/margin.js.map +1 -1
  149. package/build/hooks/min-height.js +145 -0
  150. package/build/hooks/min-height.js.map +1 -0
  151. package/build/hooks/padding.js +22 -13
  152. package/build/hooks/padding.js.map +1 -1
  153. package/build/hooks/style.js +3 -2
  154. package/build/hooks/style.js.map +1 -1
  155. package/build/hooks/utils.js +7 -6
  156. package/build/hooks/utils.js.map +1 -1
  157. package/build/layouts/constrained.js +0 -1
  158. package/build/layouts/constrained.js.map +1 -1
  159. package/build/layouts/flex.js +23 -22
  160. package/build/layouts/flex.js.map +1 -1
  161. package/build/store/actions.js +30 -0
  162. package/build/store/actions.js.map +1 -1
  163. package/build/store/array.js +1 -7
  164. package/build/store/array.js.map +1 -1
  165. package/build/store/reducer.js +46 -14
  166. package/build/store/reducer.js.map +1 -1
  167. package/build/store/selectors.js +62 -31
  168. package/build/store/selectors.js.map +1 -1
  169. package/build-module/components/alignment-control/ui.js +1 -1
  170. package/build-module/components/alignment-control/ui.js.map +1 -1
  171. package/build-module/components/block-alignment-control/constants.js +1 -1
  172. package/build-module/components/block-alignment-control/constants.js.map +1 -1
  173. package/build-module/components/block-alignment-matrix-control/index.js +1 -1
  174. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  175. package/build-module/components/block-compare/index.js +2 -3
  176. package/build-module/components/block-compare/index.js.map +1 -1
  177. package/build-module/components/block-edit/index.js +4 -2
  178. package/build-module/components/block-edit/index.js.map +1 -1
  179. package/build-module/components/block-list/block.js +3 -1
  180. package/build-module/components/block-list/block.js.map +1 -1
  181. package/build-module/components/block-lock/menu-item.js +2 -2
  182. package/build-module/components/block-lock/menu-item.js.map +1 -1
  183. package/build-module/components/block-lock/modal.js +17 -10
  184. package/build-module/components/block-lock/modal.js.map +1 -1
  185. package/build-module/components/block-popover/inbetween.js +2 -1
  186. package/build-module/components/block-popover/inbetween.js.map +1 -1
  187. package/build-module/components/block-popover/index.js +2 -1
  188. package/build-module/components/block-popover/index.js.map +1 -1
  189. package/build-module/components/block-preview/index.js +2 -3
  190. package/build-module/components/block-preview/index.js.map +1 -1
  191. package/build-module/components/block-settings-menu/block-settings-dropdown.js +2 -7
  192. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  193. package/build-module/components/block-styles/utils.js +3 -3
  194. package/build-module/components/block-styles/utils.js.map +1 -1
  195. package/build-module/components/block-switcher/index.js +21 -11
  196. package/build-module/components/block-switcher/index.js.map +1 -1
  197. package/build-module/components/block-switcher/preview-block-popover.js +1 -1
  198. package/build-module/components/block-switcher/preview-block-popover.js.map +1 -1
  199. package/build-module/components/block-tools/insertion-point.js +12 -2
  200. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  201. package/build-module/components/block-tools/selected-block-popover.js +27 -5
  202. package/build-module/components/block-tools/selected-block-popover.js.map +1 -1
  203. package/build-module/components/block-vertical-alignment-control/ui.js +1 -1
  204. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  205. package/build-module/components/border-radius-control/all-input-control.js +2 -1
  206. package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
  207. package/build-module/components/border-radius-control/index.js +2 -1
  208. package/build-module/components/border-radius-control/index.js.map +1 -1
  209. package/build-module/components/border-radius-control/input-controls.js +2 -1
  210. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  211. package/build-module/components/colors/with-colors.js +5 -4
  212. package/build-module/components/colors/with-colors.js.map +1 -1
  213. package/build-module/components/duotone-control/index.js +1 -1
  214. package/build-module/components/duotone-control/index.js.map +1 -1
  215. package/build-module/components/font-sizes/fluid-utils.js +24 -40
  216. package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
  217. package/build-module/components/font-sizes/with-font-sizes.js +9 -7
  218. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  219. package/build-module/components/iframe/index.js +1 -1
  220. package/build-module/components/iframe/index.js.map +1 -1
  221. package/build-module/components/image-editor/constants.js +1 -1
  222. package/build-module/components/image-editor/constants.js.map +1 -1
  223. package/build-module/components/index.js +1 -0
  224. package/build-module/components/index.js.map +1 -1
  225. package/build-module/components/inner-blocks/index.js +10 -4
  226. package/build-module/components/inner-blocks/index.js.map +1 -1
  227. package/build-module/components/inserter/hooks/use-insertion-point.js +2 -6
  228. package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
  229. package/build-module/components/inserter/reusable-blocks-tab.js +3 -1
  230. package/build-module/components/inserter/reusable-blocks-tab.js.map +1 -1
  231. package/build-module/components/inserter/search-items.js +23 -3
  232. package/build-module/components/inserter/search-items.js.map +1 -1
  233. package/build-module/components/line-height-control/index.js +2 -1
  234. package/build-module/components/line-height-control/index.js.map +1 -1
  235. package/build-module/components/link-control/index.js +17 -34
  236. package/build-module/components/link-control/index.js.map +1 -1
  237. package/build-module/components/link-control/search-input.js +1 -1
  238. package/build-module/components/link-control/search-input.js.map +1 -1
  239. package/build-module/components/link-control/use-internal-input-value.js +18 -0
  240. package/build-module/components/link-control/use-internal-input-value.js.map +1 -0
  241. package/build-module/components/list-view/block.js +5 -3
  242. package/build-module/components/list-view/block.js.map +1 -1
  243. package/build-module/components/list-view/branch.js +9 -3
  244. package/build-module/components/list-view/branch.js.map +1 -1
  245. package/build-module/components/list-view/drop-indicator.js +2 -1
  246. package/build-module/components/list-view/drop-indicator.js.map +1 -1
  247. package/build-module/components/media-replace-flow/index.js +1 -1
  248. package/build-module/components/media-replace-flow/index.js.map +1 -1
  249. package/build-module/components/off-canvas-editor/block-contents.js +85 -0
  250. package/build-module/components/off-canvas-editor/block-contents.js.map +1 -0
  251. package/build-module/components/off-canvas-editor/block-select-button.js +101 -0
  252. package/build-module/components/off-canvas-editor/block-select-button.js.map +1 -0
  253. package/build-module/components/off-canvas-editor/block.js +268 -0
  254. package/build-module/components/off-canvas-editor/block.js.map +1 -0
  255. package/build-module/components/off-canvas-editor/branch.js +165 -0
  256. package/build-module/components/off-canvas-editor/branch.js.map +1 -0
  257. package/build-module/components/off-canvas-editor/context.js +7 -0
  258. package/build-module/components/off-canvas-editor/context.js.map +1 -0
  259. package/build-module/components/off-canvas-editor/drop-indicator.js +111 -0
  260. package/build-module/components/off-canvas-editor/drop-indicator.js.map +1 -0
  261. package/build-module/components/off-canvas-editor/expander.js +32 -0
  262. package/build-module/components/off-canvas-editor/expander.js.map +1 -0
  263. package/build-module/components/off-canvas-editor/index.js +181 -0
  264. package/build-module/components/off-canvas-editor/index.js.map +1 -0
  265. package/build-module/components/off-canvas-editor/leaf.js +45 -0
  266. package/build-module/components/off-canvas-editor/leaf.js.map +1 -0
  267. package/build-module/components/off-canvas-editor/use-block-selection.js +124 -0
  268. package/build-module/components/off-canvas-editor/use-block-selection.js.map +1 -0
  269. package/build-module/components/off-canvas-editor/use-list-view-client-ids.js +24 -0
  270. package/build-module/components/off-canvas-editor/use-list-view-client-ids.js.map +1 -0
  271. package/build-module/components/off-canvas-editor/use-list-view-drop-zone.js +220 -0
  272. package/build-module/components/off-canvas-editor/use-list-view-drop-zone.js.map +1 -0
  273. package/build-module/components/off-canvas-editor/use-list-view-expand-selected-item.js +50 -0
  274. package/build-module/components/off-canvas-editor/use-list-view-expand-selected-item.js.map +1 -0
  275. package/build-module/components/off-canvas-editor/utils.js +44 -0
  276. package/build-module/components/off-canvas-editor/utils.js.map +1 -0
  277. package/build-module/components/rich-text/format-toolbar/index.js +1 -1
  278. package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
  279. package/build-module/components/rich-text/format-toolbar-container.js +1 -1
  280. package/build-module/components/rich-text/format-toolbar-container.js.map +1 -1
  281. package/build-module/components/rich-text/use-paste-handler.js +1 -1
  282. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  283. package/build-module/components/spacing-sizes-control/all-input-control.js +6 -2
  284. package/build-module/components/spacing-sizes-control/all-input-control.js.map +1 -1
  285. package/build-module/components/spacing-sizes-control/axial-input-controls.js +6 -2
  286. package/build-module/components/spacing-sizes-control/axial-input-controls.js.map +1 -1
  287. package/build-module/components/spacing-sizes-control/index.js +6 -2
  288. package/build-module/components/spacing-sizes-control/index.js.map +1 -1
  289. package/build-module/components/spacing-sizes-control/input-controls.js +6 -2
  290. package/build-module/components/spacing-sizes-control/input-controls.js.map +1 -1
  291. package/build-module/components/spacing-sizes-control/spacing-input-control.js +12 -5
  292. package/build-module/components/spacing-sizes-control/spacing-input-control.js.map +1 -1
  293. package/build-module/components/url-input/index.js +1 -1
  294. package/build-module/components/url-input/index.js.map +1 -1
  295. package/build-module/components/url-popover/index.js +30 -3
  296. package/build-module/components/url-popover/index.js.map +1 -1
  297. package/build-module/components/use-setting/index.js +1 -1
  298. package/build-module/components/use-setting/index.js.map +1 -1
  299. package/build-module/hooks/border.js +1 -0
  300. package/build-module/hooks/border.js.map +1 -1
  301. package/build-module/hooks/color-panel.js +17 -1
  302. package/build-module/hooks/color-panel.js.map +1 -1
  303. package/build-module/hooks/color.js +1 -1
  304. package/build-module/hooks/color.js.map +1 -1
  305. package/build-module/hooks/content-lock-ui.js +15 -8
  306. package/build-module/hooks/content-lock-ui.js.map +1 -1
  307. package/build-module/hooks/dimensions.js +67 -12
  308. package/build-module/hooks/dimensions.js.map +1 -1
  309. package/build-module/hooks/font-size.js +1 -0
  310. package/build-module/hooks/font-size.js.map +1 -1
  311. package/build-module/hooks/layout.js +6 -5
  312. package/build-module/hooks/layout.js.map +1 -1
  313. package/build-module/hooks/margin.js +27 -19
  314. package/build-module/hooks/margin.js.map +1 -1
  315. package/build-module/hooks/min-height.js +122 -0
  316. package/build-module/hooks/min-height.js.map +1 -0
  317. package/build-module/hooks/padding.js +23 -14
  318. package/build-module/hooks/padding.js.map +1 -1
  319. package/build-module/hooks/style.js +4 -3
  320. package/build-module/hooks/style.js.map +1 -1
  321. package/build-module/hooks/utils.js +7 -7
  322. package/build-module/hooks/utils.js.map +1 -1
  323. package/build-module/layouts/constrained.js +0 -1
  324. package/build-module/layouts/constrained.js.map +1 -1
  325. package/build-module/layouts/flex.js +24 -23
  326. package/build-module/layouts/flex.js.map +1 -1
  327. package/build-module/store/actions.js +26 -0
  328. package/build-module/store/actions.js.map +1 -1
  329. package/build-module/store/array.js +1 -6
  330. package/build-module/store/array.js.map +1 -1
  331. package/build-module/store/reducer.js +44 -14
  332. package/build-module/store/reducer.js.map +1 -1
  333. package/build-module/store/selectors.js +59 -31
  334. package/build-module/store/selectors.js.map +1 -1
  335. package/build-style/style-rtl.css +88 -88
  336. package/build-style/style.css +84 -84
  337. package/package.json +29 -28
  338. package/src/components/alignment-control/README.md +1 -1
  339. package/src/components/alignment-control/ui.js +1 -1
  340. package/src/components/block-alignment-control/constants.js +1 -1
  341. package/src/components/block-alignment-control/test/index.native.js +4 -4
  342. package/src/components/block-alignment-matrix-control/index.js +1 -1
  343. package/src/components/block-breadcrumb/test/__snapshots__/index.js.snap +13 -11
  344. package/src/components/block-breadcrumb/test/index.js +1 -1
  345. package/src/components/block-compare/index.js +3 -2
  346. package/src/components/block-draggable/test/helpers.native.js +3 -3
  347. package/src/components/block-draggable/test/index.native.js +27 -27
  348. package/src/components/block-edit/index.js +2 -1
  349. package/src/components/block-list/block.js +2 -0
  350. package/src/components/block-list/style.scss +11 -6
  351. package/src/components/block-lock/menu-item.js +5 -2
  352. package/src/components/block-lock/modal.js +19 -36
  353. package/src/components/block-lock/style.scss +8 -17
  354. package/src/components/block-mover/stories/index.js +1 -1
  355. package/src/components/block-mover/style.scss +35 -1
  356. package/src/components/block-popover/inbetween.js +1 -0
  357. package/src/components/block-popover/index.js +1 -0
  358. package/src/components/block-popover/style.scss +1 -5
  359. package/src/components/block-preview/index.js +8 -3
  360. package/src/components/block-settings-menu/block-settings-dropdown.js +4 -7
  361. package/src/components/block-styles/utils.js +3 -3
  362. package/src/components/block-switcher/index.js +21 -11
  363. package/src/components/block-switcher/preview-block-popover.js +1 -1
  364. package/src/components/block-tools/insertion-point.js +10 -1
  365. package/src/components/block-tools/selected-block-popover.js +80 -34
  366. package/src/components/block-tools/style.scss +15 -0
  367. package/src/components/block-variation-picker/README.md +1 -1
  368. package/src/components/block-vertical-alignment-control/ui.js +1 -1
  369. package/src/components/border-radius-control/all-input-control.js +1 -0
  370. package/src/components/border-radius-control/index.js +1 -0
  371. package/src/components/border-radius-control/input-controls.js +1 -0
  372. package/src/components/border-radius-control/style.scss +15 -24
  373. package/src/components/color-palette/test/__snapshots__/control.js.snap +85 -83
  374. package/src/components/color-palette/test/control.js +1 -1
  375. package/src/components/colors/with-colors.js +13 -23
  376. package/src/components/default-block-appender/style.scss +1 -0
  377. package/src/components/duotone-control/index.js +1 -1
  378. package/src/components/font-sizes/fluid-utils.js +37 -64
  379. package/src/components/font-sizes/test/fluid-utils.js +5 -5
  380. package/src/components/font-sizes/with-font-sizes.js +15 -13
  381. package/src/components/iframe/index.js +1 -1
  382. package/src/components/image-editor/constants.js +1 -1
  383. package/src/components/index.js +1 -0
  384. package/src/components/inner-blocks/index.js +11 -4
  385. package/src/components/inner-blocks/test/index.js +4 -0
  386. package/src/components/inserter/hooks/use-insertion-point.js +3 -11
  387. package/src/components/inserter/reusable-blocks-tab.js +4 -2
  388. package/src/components/inserter/search-items.js +23 -3
  389. package/src/components/inserter/style.scss +8 -7
  390. package/src/components/inserter/test/reusable-blocks-tab.js +14 -57
  391. package/src/components/inserter/test/search-items.js +6 -0
  392. package/src/components/inserter-list-item/style.scss +2 -0
  393. package/src/components/letter-spacing-control/README.md +55 -0
  394. package/src/components/line-height-control/index.js +1 -0
  395. package/src/components/link-control/README.md +3 -3
  396. package/src/components/link-control/index.js +23 -39
  397. package/src/components/link-control/search-input.js +1 -1
  398. package/src/components/link-control/test/index.js +272 -241
  399. package/src/components/link-control/use-internal-input-value.js +22 -0
  400. package/src/components/list-view/block.js +4 -3
  401. package/src/components/list-view/branch.js +11 -6
  402. package/src/components/list-view/drop-indicator.js +1 -0
  403. package/src/components/list-view/style.scss +1 -36
  404. package/src/components/media-replace-flow/index.js +1 -1
  405. package/src/components/media-replace-flow/test/index.js +69 -51
  406. package/src/components/off-canvas-editor/README.md +5 -0
  407. package/src/components/off-canvas-editor/block-contents.js +89 -0
  408. package/src/components/off-canvas-editor/block-select-button.js +113 -0
  409. package/src/components/off-canvas-editor/block.js +335 -0
  410. package/src/components/off-canvas-editor/branch.js +210 -0
  411. package/src/components/off-canvas-editor/context.js +8 -0
  412. package/src/components/off-canvas-editor/drop-indicator.js +126 -0
  413. package/src/components/off-canvas-editor/expander.js +26 -0
  414. package/src/components/off-canvas-editor/index.js +216 -0
  415. package/src/components/off-canvas-editor/leaf.js +48 -0
  416. package/src/components/off-canvas-editor/style.scss +397 -0
  417. package/src/components/off-canvas-editor/test/utils.js +50 -0
  418. package/src/components/off-canvas-editor/use-block-selection.js +169 -0
  419. package/src/components/off-canvas-editor/use-list-view-client-ids.js +29 -0
  420. package/src/components/off-canvas-editor/use-list-view-drop-zone.js +260 -0
  421. package/src/components/off-canvas-editor/use-list-view-expand-selected-item.js +58 -0
  422. package/src/components/off-canvas-editor/utils.js +58 -0
  423. package/src/components/responsive-block-control/test/index.js +69 -92
  424. package/src/components/rich-text/format-toolbar/index.js +1 -1
  425. package/src/components/rich-text/format-toolbar-container.js +1 -1
  426. package/src/components/rich-text/use-paste-handler.js +1 -1
  427. package/src/components/spacing-sizes-control/all-input-control.js +4 -0
  428. package/src/components/spacing-sizes-control/axial-input-controls.js +4 -0
  429. package/src/components/spacing-sizes-control/index.js +4 -0
  430. package/src/components/spacing-sizes-control/input-controls.js +4 -0
  431. package/src/components/spacing-sizes-control/spacing-input-control.js +10 -1
  432. package/src/components/spacing-sizes-control/style.scss +1 -0
  433. package/src/components/url-input/index.js +1 -1
  434. package/src/components/url-popover/README.md +12 -3
  435. package/src/components/url-popover/index.js +33 -3
  436. package/src/components/use-setting/index.js +7 -1
  437. package/src/hooks/border.js +1 -0
  438. package/src/hooks/color-panel.js +13 -1
  439. package/src/hooks/color.js +2 -0
  440. package/src/hooks/content-lock-ui.js +46 -34
  441. package/src/hooks/dimensions.js +106 -19
  442. package/src/hooks/font-size.js +1 -0
  443. package/src/hooks/layout.js +8 -11
  444. package/src/hooks/margin.js +23 -17
  445. package/src/hooks/min-height.js +121 -0
  446. package/src/hooks/padding.js +23 -19
  447. package/src/hooks/style.js +10 -2
  448. package/src/hooks/test/align.js +96 -72
  449. package/src/hooks/test/style.js +4 -0
  450. package/src/hooks/test/use-typography-props.js +1 -1
  451. package/src/hooks/utils.js +5 -6
  452. package/src/layouts/constrained.js +0 -1
  453. package/src/layouts/flex.js +44 -39
  454. package/src/store/actions.js +26 -0
  455. package/src/store/array.js +1 -6
  456. package/src/store/reducer.js +50 -40
  457. package/src/store/selectors.js +43 -29
  458. package/src/store/test/actions.js +18 -0
  459. package/src/store/test/reducer.js +40 -0
  460. package/src/store/test/selectors.js +20 -1
@@ -117,114 +117,116 @@ exports[`ColorPaletteControl matches the snapshot 1`] = `
117
117
  min-width: 0;
118
118
  }
119
119
 
120
- <div
121
- class="components-base-control block-editor-color-gradient-control emotion-0 emotion-1"
122
- >
120
+ <div>
123
121
  <div
124
- class="components-base-control__field emotion-2 emotion-3"
122
+ class="components-base-control block-editor-color-gradient-control emotion-0 emotion-1"
125
123
  >
126
- <fieldset
127
- class="block-editor-color-gradient-control__fieldset"
124
+ <div
125
+ class="components-base-control__field emotion-2 emotion-3"
128
126
  >
129
- <div
130
- class="components-flex components-h-stack components-v-stack emotion-4 emotion-5"
131
- data-wp-c16t="true"
132
- data-wp-component="VStack"
127
+ <fieldset
128
+ class="block-editor-color-gradient-control__fieldset"
133
129
  >
134
- <legend>
135
- <div
136
- class="block-editor-color-gradient-control__color-indicator"
137
- >
138
- <span
139
- class="components-base-control__label emotion-6 emotion-7"
140
- >
141
- Test Color
142
- </span>
143
- </div>
144
- </legend>
145
130
  <div
146
- class="block-editor-color-gradient-control__panel"
131
+ class="components-flex components-h-stack components-v-stack emotion-4 emotion-5"
132
+ data-wp-c16t="true"
133
+ data-wp-component="VStack"
147
134
  >
135
+ <legend>
136
+ <div
137
+ class="block-editor-color-gradient-control__color-indicator"
138
+ >
139
+ <span
140
+ class="components-base-control__label emotion-6 emotion-7"
141
+ >
142
+ Test Color
143
+ </span>
144
+ </div>
145
+ </legend>
148
146
  <div
149
- class="components-flex components-h-stack components-v-stack emotion-8 emotion-5"
150
- data-wp-c16t="true"
151
- data-wp-component="VStack"
147
+ class="block-editor-color-gradient-control__panel"
152
148
  >
153
149
  <div
154
- class="components-dropdown"
155
- tabindex="-1"
150
+ class="components-flex components-h-stack components-v-stack emotion-8 emotion-5"
151
+ data-wp-c16t="true"
152
+ data-wp-component="VStack"
156
153
  >
157
- <button
158
- aria-expanded="false"
159
- aria-haspopup="true"
160
- aria-label="Custom color picker. The currently selected color is called \\"red\\" and has a value of \\"f00\\"."
161
- class="components-flex components-color-palette__custom-color emotion-10 emotion-5"
162
- data-wp-c16t="true"
163
- data-wp-component="Flex"
164
- style="background: rgb(255, 0, 0); color: rgb(0, 0, 0);"
154
+ <div
155
+ class="components-dropdown"
156
+ tabindex="-1"
165
157
  >
166
- <span
167
- class="components-truncate components-flex-item components-color-palette__custom-color-name emotion-5 emotion-13 emotion-5"
168
- data-wp-c16t="true"
169
- data-wp-component="FlexItem"
170
- >
171
- red
172
- </span>
173
- <span
174
- class="components-flex-item components-color-palette__custom-color-value emotion-15 emotion-5"
158
+ <button
159
+ aria-expanded="false"
160
+ aria-haspopup="true"
161
+ aria-label="Custom color picker. The currently selected color is called \\"red\\" and has a value of \\"f00\\"."
162
+ class="components-flex components-color-palette__custom-color emotion-10 emotion-5"
175
163
  data-wp-c16t="true"
176
- data-wp-component="FlexItem"
164
+ data-wp-component="Flex"
165
+ style="background: rgb(255, 0, 0); color: rgb(0, 0, 0);"
177
166
  >
178
- f00
179
- </span>
180
- </button>
181
- </div>
182
- <div
183
- class="components-circular-option-picker"
184
- >
167
+ <span
168
+ class="components-truncate components-flex-item components-color-palette__custom-color-name emotion-5 emotion-13 emotion-5"
169
+ data-wp-c16t="true"
170
+ data-wp-component="FlexItem"
171
+ >
172
+ red
173
+ </span>
174
+ <span
175
+ class="components-flex-item components-color-palette__custom-color-value emotion-15 emotion-5"
176
+ data-wp-c16t="true"
177
+ data-wp-component="FlexItem"
178
+ >
179
+ f00
180
+ </span>
181
+ </button>
182
+ </div>
185
183
  <div
186
- class="components-circular-option-picker__swatches"
184
+ class="components-circular-option-picker"
187
185
  >
188
186
  <div
189
- class="components-circular-option-picker__option-wrapper"
187
+ class="components-circular-option-picker__swatches"
190
188
  >
191
- <button
192
- aria-label="Color: red"
193
- aria-pressed="true"
194
- class="components-button components-circular-option-picker__option is-pressed"
195
- style="background-color: rgb(255, 0, 0); color: rgb(255, 0, 0);"
196
- type="button"
197
- />
198
- <svg
199
- aria-hidden="true"
200
- fill="#000"
201
- focusable="false"
202
- height="24"
203
- viewBox="0 0 24 24"
204
- width="24"
205
- xmlns="http://www.w3.org/2000/svg"
189
+ <div
190
+ class="components-circular-option-picker__option-wrapper"
206
191
  >
207
- <path
208
- d="M16.7 7.1l-6.3 8.5-3.3-2.5-.9 1.2 4.5 3.4L17.9 8z"
192
+ <button
193
+ aria-label="Color: red"
194
+ aria-pressed="true"
195
+ class="components-button components-circular-option-picker__option is-pressed"
196
+ style="background-color: rgb(255, 0, 0); color: rgb(255, 0, 0);"
197
+ type="button"
209
198
  />
210
- </svg>
199
+ <svg
200
+ aria-hidden="true"
201
+ fill="#000"
202
+ focusable="false"
203
+ height="24"
204
+ viewBox="0 0 24 24"
205
+ width="24"
206
+ xmlns="http://www.w3.org/2000/svg"
207
+ >
208
+ <path
209
+ d="M16.7 7.1l-6.3 8.5-3.3-2.5-.9 1.2 4.5 3.4L17.9 8z"
210
+ />
211
+ </svg>
212
+ </div>
211
213
  </div>
212
- </div>
213
- <div
214
- class="components-circular-option-picker__custom-clear-wrapper"
215
- >
216
- <button
217
- class="components-button components-circular-option-picker__clear is-tertiary"
218
- type="button"
214
+ <div
215
+ class="components-circular-option-picker__custom-clear-wrapper"
219
216
  >
220
- Clear
221
- </button>
217
+ <button
218
+ class="components-button components-circular-option-picker__clear is-tertiary"
219
+ type="button"
220
+ >
221
+ Clear
222
+ </button>
223
+ </div>
222
224
  </div>
223
225
  </div>
224
226
  </div>
225
227
  </div>
226
- </div>
227
- </fieldset>
228
+ </fieldset>
229
+ </div>
228
230
  </div>
229
231
  </div>
230
232
  `;
@@ -22,6 +22,6 @@ describe( 'ColorPaletteControl', () => {
22
22
  />
23
23
  );
24
24
 
25
- expect( container.firstChild ).toMatchSnapshot();
25
+ expect( container ).toMatchSnapshot();
26
26
  } );
27
27
  } );
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import { kebabCase, reduce } from 'lodash';
4
+ import { kebabCase } from 'lodash';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -83,18 +83,14 @@ const withEditorColorPalette = () =>
83
83
  * @return {WPComponent} The component that can be used as a HOC.
84
84
  */
85
85
  function createColorHOC( colorTypes, withColorPalette ) {
86
- const colorMap = reduce(
87
- colorTypes,
88
- ( colorObject, colorType ) => {
89
- return {
90
- ...colorObject,
91
- ...( typeof colorType === 'string'
92
- ? { [ colorType ]: kebabCase( colorType ) }
93
- : colorType ),
94
- };
95
- },
96
- {}
97
- );
86
+ const colorMap = colorTypes.reduce( ( colorObject, colorType ) => {
87
+ return {
88
+ ...colorObject,
89
+ ...( typeof colorType === 'string'
90
+ ? { [ colorType ]: kebabCase( colorType ) }
91
+ : colorType ),
92
+ };
93
+ }, {} );
98
94
 
99
95
  return compose( [
100
96
  withColorPalette,
@@ -118,13 +114,8 @@ function createColorHOC( colorTypes, withColorPalette ) {
118
114
  }
119
115
 
120
116
  createSetters() {
121
- return reduce(
122
- colorMap,
123
- (
124
- settersAccumulator,
125
- colorContext,
126
- colorAttributeName
127
- ) => {
117
+ return Object.keys( colorMap ).reduce(
118
+ ( settersAccumulator, colorAttributeName ) => {
128
119
  const upperFirstColorAttributeName =
129
120
  upperFirst( colorAttributeName );
130
121
  const customColorAttributeName = `custom${ upperFirstColorAttributeName }`;
@@ -163,9 +154,8 @@ function createColorHOC( colorTypes, withColorPalette ) {
163
154
  { attributes, colors },
164
155
  previousState
165
156
  ) {
166
- return reduce(
167
- colorMap,
168
- ( newState, colorContext, colorAttributeName ) => {
157
+ return Object.entries( colorMap ).reduce(
158
+ ( newState, [ colorAttributeName, colorContext ] ) => {
169
159
  const colorObject = getColorObjectByAttributeValues(
170
160
  colors,
171
161
  attributes[ colorAttributeName ],
@@ -34,6 +34,7 @@
34
34
 
35
35
  // The black plus that shows up on the right side of an empty paragraph block, or the initial appender
36
36
  // that exists only on empty documents.
37
+ .block-editor-block-list__empty-block-inserter.block-editor-block-list__empty-block-inserter,
37
38
  .block-editor-default-block-appender .block-editor-inserter {
38
39
  position: absolute;
39
40
  top: 0;
@@ -36,7 +36,7 @@ function DuotoneControl( {
36
36
  popoverProps={ {
37
37
  className: 'block-editor-duotone-control__popover',
38
38
  headerTitle: __( 'Duotone' ),
39
- isAlternate: true,
39
+ variant: 'toolbar',
40
40
  } }
41
41
  renderToggle={ ( { isOpen, onToggle } ) => {
42
42
  const openOnArrowDown = ( event ) => {
@@ -9,7 +9,6 @@ const DEFAULT_MAXIMUM_VIEWPORT_WIDTH = '1600px';
9
9
  const DEFAULT_MINIMUM_VIEWPORT_WIDTH = '768px';
10
10
  const DEFAULT_SCALE_FACTOR = 1;
11
11
  const DEFAULT_MINIMUM_FONT_SIZE_FACTOR = 0.75;
12
- const DEFAULT_MAXIMUM_FONT_SIZE_FACTOR = 1.5;
13
12
  const DEFAULT_MINIMUM_FONT_SIZE_LIMIT = '14px';
14
13
 
15
14
  /**
@@ -41,7 +40,6 @@ const DEFAULT_MINIMUM_FONT_SIZE_LIMIT = '14px';
41
40
  * @param {?string} args.minimumFontSize Minimum font size for any clamp() calculation. Optional.
42
41
  * @param {?number} args.scaleFactor A scale factor to determine how fast a font scales within boundaries. Optional.
43
42
  * @param {?number} args.minimumFontSizeFactor How much to scale defaultFontSize by to derive minimumFontSize. Optional.
44
- * @param {?number} args.maximumFontSizeFactor How much to scale defaultFontSize by to derive maximumFontSize. Optional.
45
43
  *
46
44
  * @return {string|null} A font-size value using clamp().
47
45
  */
@@ -53,15 +51,8 @@ export function getComputedFluidTypographyValue( {
53
51
  maximumViewPortWidth = DEFAULT_MAXIMUM_VIEWPORT_WIDTH,
54
52
  scaleFactor = DEFAULT_SCALE_FACTOR,
55
53
  minimumFontSizeFactor = DEFAULT_MINIMUM_FONT_SIZE_FACTOR,
56
- maximumFontSizeFactor = DEFAULT_MAXIMUM_FONT_SIZE_FACTOR,
57
54
  minimumFontSizeLimit = DEFAULT_MINIMUM_FONT_SIZE_LIMIT,
58
55
  } ) {
59
- /*
60
- * Caches minimumFontSize in minimumFontSizeValue
61
- * so we can check if minimumFontSize exists later.
62
- */
63
- let minimumFontSizeValue = minimumFontSize;
64
-
65
56
  /*
66
57
  * Calculates missing minimumFontSize and maximumFontSize from
67
58
  * defaultFontSize if provided.
@@ -75,15 +66,6 @@ export function getComputedFluidTypographyValue( {
75
66
  return null;
76
67
  }
77
68
 
78
- // If no minimumFontSize is provided, derive using min scale factor.
79
- if ( ! minimumFontSizeValue ) {
80
- minimumFontSizeValue =
81
- roundToPrecision(
82
- fontSizeParsed.value * minimumFontSizeFactor,
83
- 3
84
- ) + fontSizeParsed.unit;
85
- }
86
-
87
69
  // Parses the minimum font size limit, so we can perform checks using it.
88
70
  const minimumFontSizeLimitParsed = getTypographyValueAndUnit(
89
71
  minimumFontSizeLimit,
@@ -92,57 +74,51 @@ export function getComputedFluidTypographyValue( {
92
74
  }
93
75
  );
94
76
 
95
- if ( !! minimumFontSizeLimitParsed?.value ) {
77
+ // Don't enforce minimum font size if a font size has explicitly set a min and max value.
78
+ if (
79
+ !! minimumFontSizeLimitParsed?.value &&
80
+ ! minimumFontSize &&
81
+ ! maximumFontSize
82
+ ) {
96
83
  /*
97
84
  * If a minimum size was not passed to this function
98
- * and the user-defined font size is lower than `minimumFontSizeLimit`,
99
- * then uses the user-defined font size as the minimum font-size.
85
+ * and the user-defined font size is lower than $minimum_font_size_limit,
86
+ * do not calculate a fluid value.
100
87
  */
101
- if (
102
- ! minimumFontSize &&
103
- fontSizeParsed?.value < minimumFontSizeLimitParsed?.value
104
- ) {
105
- minimumFontSizeValue = `${ fontSizeParsed.value }${ fontSizeParsed.unit }`;
106
- } else {
107
- const minimumFontSizeParsed = getTypographyValueAndUnit(
108
- minimumFontSizeValue,
109
- {
110
- coerceTo: fontSizeParsed.unit,
111
- }
112
- );
113
-
114
- /*
115
- * Otherwise, if the passed or calculated minimum font size is lower than `minimumFontSizeLimit`
116
- * use `minimumFontSizeLimit` instead.
117
- */
118
- if (
119
- !! minimumFontSizeParsed?.value &&
120
- minimumFontSizeParsed.value <
121
- minimumFontSizeLimitParsed.value
122
- ) {
123
- minimumFontSizeValue = `${ minimumFontSizeLimitParsed.value }${ minimumFontSizeLimitParsed.unit }`;
124
- }
88
+ if ( fontSizeParsed?.value <= minimumFontSizeLimitParsed?.value ) {
89
+ return null;
125
90
  }
126
91
  }
127
92
 
128
- // If no maximumFontSize is provided, derive using max scale factor.
93
+ // If no fluid max font size is available use the incoming value.
129
94
  if ( ! maximumFontSize ) {
130
- maximumFontSize =
131
- roundToPrecision(
132
- fontSizeParsed.value * maximumFontSizeFactor,
133
- 3
134
- ) + fontSizeParsed.unit;
95
+ maximumFontSize = `${ fontSizeParsed.value }${ fontSizeParsed.unit }`;
135
96
  }
136
- }
137
97
 
138
- // Return early if one of the provided inputs is not provided.
139
- if ( ! minimumFontSizeValue || ! maximumFontSize ) {
140
- return null;
98
+ /*
99
+ * If no minimumFontSize is provided, create one using
100
+ * the given font size multiplied by the min font size scale factor.
101
+ */
102
+ if ( ! minimumFontSize ) {
103
+ const calculatedMinimumFontSize = roundToPrecision(
104
+ fontSizeParsed.value * minimumFontSizeFactor,
105
+ 3
106
+ );
107
+
108
+ // Only use calculated min font size if it's > $minimum_font_size_limit value.
109
+ if (
110
+ !! minimumFontSizeLimitParsed?.value &&
111
+ calculatedMinimumFontSize < minimumFontSizeLimitParsed?.value
112
+ ) {
113
+ minimumFontSize = `${ minimumFontSizeLimitParsed.value }${ minimumFontSizeLimitParsed.unit }`;
114
+ } else {
115
+ minimumFontSize = `${ calculatedMinimumFontSize }${ fontSizeParsed.unit }`;
116
+ }
117
+ }
141
118
  }
142
119
 
143
120
  // Grab the minimum font size and normalize it in order to use the value for calculations.
144
- const minimumFontSizeParsed =
145
- getTypographyValueAndUnit( minimumFontSizeValue );
121
+ const minimumFontSizeParsed = getTypographyValueAndUnit( minimumFontSize );
146
122
 
147
123
  // We get a 'preferred' unit to keep units consistent when calculating,
148
124
  // otherwise the result will not be accurate.
@@ -159,12 +135,9 @@ export function getComputedFluidTypographyValue( {
159
135
  }
160
136
 
161
137
  // Uses rem for accessible fluid target font scaling.
162
- const minimumFontSizeRem = getTypographyValueAndUnit(
163
- minimumFontSizeValue,
164
- {
165
- coerceTo: 'rem',
166
- }
167
- );
138
+ const minimumFontSizeRem = getTypographyValueAndUnit( minimumFontSize, {
139
+ coerceTo: 'rem',
140
+ } );
168
141
 
169
142
  // Viewport widths defined for fluid typography. Normalize units
170
143
  const maximumViewPortWidthParsed = getTypographyValueAndUnit(
@@ -205,7 +178,7 @@ export function getComputedFluidTypographyValue( {
205
178
  );
206
179
  const fluidTargetFontSize = `${ minimumFontSizeRem.value }${ minimumFontSizeRem.unit } + ((1vw - ${ viewPortWidthOffset }) * ${ linearFactorScaled })`;
207
180
 
208
- return `clamp(${ minimumFontSizeValue }, ${ fluidTargetFontSize }, ${ maximumFontSize })`;
181
+ return `clamp(${ minimumFontSize }, ${ fluidTargetFontSize }, ${ maximumFontSize })`;
209
182
  }
210
183
 
211
184
  /**
@@ -33,7 +33,7 @@ describe( 'getComputedFluidTypographyValue()', () => {
33
33
  fontSize: '30px',
34
34
  } );
35
35
  expect( fluidTypographyValues ).toBe(
36
- 'clamp(22.5px, 1.406rem + ((1vw - 7.68px) * 2.704), 45px)'
36
+ 'clamp(22.5px, 1.406rem + ((1vw - 7.68px) * 0.901), 30px)'
37
37
  );
38
38
  } );
39
39
 
@@ -42,7 +42,7 @@ describe( 'getComputedFluidTypographyValue()', () => {
42
42
  fontSize: '30px',
43
43
  } );
44
44
  expect( fluidTypographyValues ).toBe(
45
- 'clamp(22.5px, 1.406rem + ((1vw - 7.68px) * 2.704), 45px)'
45
+ 'clamp(22.5px, 1.406rem + ((1vw - 7.68px) * 0.901), 30px)'
46
46
  );
47
47
  } );
48
48
 
@@ -53,7 +53,7 @@ describe( 'getComputedFluidTypographyValue()', () => {
53
53
  maximumViewPortWidth: '1000px',
54
54
  } );
55
55
  expect( fluidTypographyValues ).toBe(
56
- 'clamp(22.5px, 1.406rem + ((1vw - 5px) * 4.5), 45px)'
56
+ 'clamp(22.5px, 1.406rem + ((1vw - 5px) * 1.5), 30px)'
57
57
  );
58
58
  } );
59
59
 
@@ -63,7 +63,7 @@ describe( 'getComputedFluidTypographyValue()', () => {
63
63
  scaleFactor: '2',
64
64
  } );
65
65
  expect( fluidTypographyValues ).toBe(
66
- 'clamp(22.5px, 1.406rem + ((1vw - 7.68px) * 5.409), 45px)'
66
+ 'clamp(22.5px, 1.406rem + ((1vw - 7.68px) * 1.803), 30px)'
67
67
  );
68
68
  } );
69
69
 
@@ -74,7 +74,7 @@ describe( 'getComputedFluidTypographyValue()', () => {
74
74
  maximumFontSizeFactor: '2',
75
75
  } );
76
76
  expect( fluidTypographyValues ).toBe(
77
- 'clamp(15px, 0.938rem + ((1vw - 7.68px) * 5.409), 60px)'
77
+ 'clamp(15px, 0.938rem + ((1vw - 7.68px) * 1.803), 30px)'
78
78
  );
79
79
  } );
80
80
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import { find, pickBy, reduce, some } from 'lodash';
4
+ import { find, pickBy } from 'lodash';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -43,8 +43,7 @@ export default ( ...fontSizeNames ) => {
43
43
  * and the value is the custom font size attribute name.
44
44
  * Custom font size is automatically compted by appending custom followed by the font size attribute name in with the first letter capitalized.
45
45
  */
46
- const fontSizeAttributeNames = reduce(
47
- fontSizeNames,
46
+ const fontSizeAttributeNames = fontSizeNames.reduce(
48
47
  ( fontSizeAttributeNamesAccumulator, fontSizeAttributeName ) => {
49
48
  fontSizeAttributeNamesAccumulator[
50
49
  fontSizeAttributeName
@@ -81,12 +80,13 @@ export default ( ...fontSizeNames ) => {
81
80
  }
82
81
 
83
82
  createSetters() {
84
- return reduce(
85
- fontSizeAttributeNames,
83
+ return Object.entries( fontSizeAttributeNames ).reduce(
86
84
  (
87
85
  settersAccumulator,
88
- customFontSizeAttributeName,
89
- fontSizeAttributeName
86
+ [
87
+ fontSizeAttributeName,
88
+ customFontSizeAttributeName,
89
+ ]
90
90
  ) => {
91
91
  const upperFirstFontSizeAttributeName =
92
92
  upperFirst( fontSizeAttributeName );
@@ -152,23 +152,25 @@ export default ( ...fontSizeNames ) => {
152
152
  };
153
153
 
154
154
  if (
155
- ! some(
156
- fontSizeAttributeNames,
155
+ ! Object.values( fontSizeAttributeNames ).some(
157
156
  didAttributesChange
158
157
  )
159
158
  ) {
160
159
  return null;
161
160
  }
162
161
 
163
- const newState = reduce(
162
+ const newState = Object.entries(
164
163
  pickBy(
165
164
  fontSizeAttributeNames,
166
165
  didAttributesChange
167
- ),
166
+ )
167
+ ).reduce(
168
168
  (
169
169
  newStateAccumulator,
170
- customFontSizeAttributeName,
171
- fontSizeAttributeName
170
+ [
171
+ fontSizeAttributeName,
172
+ customFontSizeAttributeName,
173
+ ]
172
174
  ) => {
173
175
  const fontSizeAttributeValue =
174
176
  attributes[ fontSizeAttributeName ];
@@ -282,7 +282,7 @@ function Iframe(
282
282
 
283
283
  head = (
284
284
  <>
285
- <style>{ 'body{margin:0}' }</style>
285
+ <style>{ 'html{height:auto!important;}body{margin:0}' }</style>
286
286
  { styles.map(
287
287
  ( { tagName, href, id, rel, media, textContent } ) => {
288
288
  const TagName = tagName.toLowerCase();
@@ -2,5 +2,5 @@ export const MIN_ZOOM = 100;
2
2
  export const MAX_ZOOM = 300;
3
3
  export const POPOVER_PROPS = {
4
4
  position: 'bottom right',
5
- isAlternate: true,
5
+ variant: 'toolbar',
6
6
  };
@@ -73,6 +73,7 @@ export { default as __experimentalLinkControlSearchResults } from './link-contro
73
73
  export { default as __experimentalLinkControlSearchItem } from './link-control/search-item';
74
74
  export { default as LineHeightControl } from './line-height-control';
75
75
  export { default as __experimentalListView } from './list-view';
76
+ export { default as __experimentalOffCanvasEditor } from './off-canvas-editor';
76
77
  export { default as MediaReplaceFlow } from './media-replace-flow';
77
78
  export { default as MediaPlaceholder } from './media-placeholder';
78
79
  export { default as MediaUpload } from './media-upload';
@@ -150,7 +150,10 @@ const ForwardedInnerBlocks = forwardRef( ( props, ref ) => {
150
150
  * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/inner-blocks/README.md
151
151
  */
152
152
  export function useInnerBlocksProps( props = {}, options = {} ) {
153
- const { clientId } = useBlockEditContext();
153
+ const { __unstableDisableLayoutClassNames, __unstableDisableDropZone } =
154
+ options;
155
+ const { clientId, __unstableLayoutClassNames: layoutClassNames = '' } =
156
+ useBlockEditContext();
154
157
  const isSmallScreen = useViewportMatch( 'medium', '<' );
155
158
  const { __experimentalCaptureToolbars, hasOverlay } = useSelect(
156
159
  ( select ) => {
@@ -185,11 +188,13 @@ export function useInnerBlocksProps( props = {}, options = {} ) {
185
188
  [ clientId, isSmallScreen ]
186
189
  );
187
190
 
191
+ const blockDropZoneRef = useBlockDropZone( {
192
+ rootClientId: clientId,
193
+ } );
194
+
188
195
  const ref = useMergeRefs( [
189
196
  props.ref,
190
- useBlockDropZone( {
191
- rootClientId: clientId,
192
- } ),
197
+ __unstableDisableDropZone ? null : blockDropZoneRef,
193
198
  ] );
194
199
 
195
200
  const innerBlocksProps = {
@@ -200,12 +205,14 @@ export function useInnerBlocksProps( props = {}, options = {} ) {
200
205
  innerBlocksProps.value && innerBlocksProps.onChange
201
206
  ? ControlledInnerBlocks
202
207
  : UncontrolledInnerBlocks;
208
+
203
209
  return {
204
210
  ...props,
205
211
  ref,
206
212
  className: classnames(
207
213
  props.className,
208
214
  'block-editor-block-list__layout',
215
+ __unstableDisableLayoutClassNames ? '' : layoutClassNames,
209
216
  {
210
217
  'has-overlay': hasOverlay,
211
218
  }
@@ -1,3 +1,5 @@
1
+ /* eslint-disable testing-library/render-result-naming-convention */
2
+
1
3
  /**
2
4
  * WordPress dependencies
3
5
  */
@@ -102,3 +104,5 @@ describe( 'InnerBlocks', () => {
102
104
  expect( serialize( block ) ).toMatchSnapshot();
103
105
  } );
104
106
  } );
107
+
108
+ /* eslint-enable testing-library/render-result-naming-convention */