@wordpress/block-editor 8.0.16 → 8.1.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 (436) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/LICENSE.md +1 -1
  3. package/README.md +12 -1
  4. package/build/components/block-caption/index.native.js +14 -3
  5. package/build/components/block-caption/index.native.js.map +1 -1
  6. package/build/components/block-edit/index.js +9 -0
  7. package/build/components/block-edit/index.js.map +1 -1
  8. package/build/components/block-inspector/index.js +8 -20
  9. package/build/components/block-inspector/index.js.map +1 -1
  10. package/build/components/block-list-appender/index.js +3 -11
  11. package/build/components/block-list-appender/index.js.map +1 -1
  12. package/build/components/block-media-update-progress/index.native.js +2 -1
  13. package/build/components/block-media-update-progress/index.native.js.map +1 -1
  14. package/build/components/block-preview/auto.js +10 -2
  15. package/build/components/block-preview/auto.js.map +1 -1
  16. package/build/components/block-settings/container.native.js +2 -1
  17. package/build/components/block-settings/container.native.js.map +1 -1
  18. package/build/components/block-styles/index.js +110 -134
  19. package/build/components/block-styles/index.js.map +1 -1
  20. package/build/components/block-styles/menu-items.js +63 -0
  21. package/build/components/block-styles/menu-items.js.map +1 -0
  22. package/build/components/block-styles/preview-panel.js +45 -0
  23. package/build/components/block-styles/preview-panel.js.map +1 -0
  24. package/build/components/block-styles/preview.native.js +2 -2
  25. package/build/components/block-styles/preview.native.js.map +1 -1
  26. package/build/components/block-styles/use-styles-for-block.js +119 -0
  27. package/build/components/block-styles/use-styles-for-block.js.map +1 -0
  28. package/build/components/block-styles/utils.js +39 -0
  29. package/build/components/block-styles/utils.js.map +1 -1
  30. package/build/components/block-switcher/block-styles-menu.js +3 -23
  31. package/build/components/block-switcher/block-styles-menu.js.map +1 -1
  32. package/build/components/block-tools/back-compat.js +2 -1
  33. package/build/components/block-tools/back-compat.js.map +1 -1
  34. package/build/components/block-tools/block-selection-button.js +5 -1
  35. package/build/components/block-tools/block-selection-button.js.map +1 -1
  36. package/build/components/block-tools/insertion-point.js +11 -1
  37. package/build/components/block-tools/insertion-point.js.map +1 -1
  38. package/build/components/block-types-list/index.native.js +2 -2
  39. package/build/components/block-types-list/index.native.js.map +1 -1
  40. package/build/components/button-block-appender/index.js +2 -1
  41. package/build/components/button-block-appender/index.js.map +1 -1
  42. package/build/components/colors-gradients/dropdown.js +88 -0
  43. package/build/components/colors-gradients/dropdown.js.map +1 -0
  44. package/build/components/colors-gradients/panel-color-gradient-settings.js +6 -5
  45. package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  46. package/build/components/colors-gradients/panel-color-gradient-settings.native.js +6 -3
  47. package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  48. package/build/components/contrast-checker/index.js +34 -9
  49. package/build/components/contrast-checker/index.js.map +1 -1
  50. package/build/components/contrast-checker/index.native.js +108 -0
  51. package/build/components/contrast-checker/index.native.js.map +1 -0
  52. package/build/components/default-block-appender/index.js +16 -19
  53. package/build/components/default-block-appender/index.js.map +1 -1
  54. package/build/components/default-style-picker/index.js +18 -3
  55. package/build/components/default-style-picker/index.js.map +1 -1
  56. package/build/components/iframe/index.js +4 -5
  57. package/build/components/iframe/index.js.map +1 -1
  58. package/build/components/index.js +18 -9
  59. package/build/components/index.js.map +1 -1
  60. package/build/components/index.native.js +9 -0
  61. package/build/components/index.native.js.map +1 -1
  62. package/build/components/inner-blocks/default-block-appender.js +2 -4
  63. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  64. package/build/components/inner-blocks/use-nested-settings-update.js +16 -14
  65. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  66. package/build/components/inserter/index.js +61 -3
  67. package/build/components/inserter/index.js.map +1 -1
  68. package/build/components/inserter/index.native.js +1 -1
  69. package/build/components/inserter/index.native.js.map +1 -1
  70. package/build/components/inserter/library.js +5 -3
  71. package/build/components/inserter/library.js.map +1 -1
  72. package/build/components/inserter/menu.js +11 -3
  73. package/build/components/inserter/menu.js.map +1 -1
  74. package/build/components/inserter/tabs.native.js +7 -4
  75. package/build/components/inserter/tabs.native.js.map +1 -1
  76. package/build/components/inspector-controls/block-support-slot-container.js +2 -1
  77. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  78. package/build/components/inspector-controls/block-support-tools-panel.js +11 -43
  79. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  80. package/build/components/inspector-controls/fill.native.js +3 -5
  81. package/build/components/inspector-controls/fill.native.js.map +1 -1
  82. package/build/components/inspector-controls/groups.js +2 -0
  83. package/build/components/inspector-controls/groups.js.map +1 -1
  84. package/build/components/inspector-controls/slot.js +1 -3
  85. package/build/components/inspector-controls/slot.js.map +1 -1
  86. package/build/components/letter-spacing-control/index.js +6 -6
  87. package/build/components/letter-spacing-control/index.js.map +1 -1
  88. package/build/components/link-control/link-preview.js +1 -1
  89. package/build/components/link-control/link-preview.js.map +1 -1
  90. package/build/components/link-control/search-item.js +11 -1
  91. package/build/components/link-control/search-item.js.map +1 -1
  92. package/build/components/link-control/search-results.js +2 -1
  93. package/build/components/link-control/search-results.js.map +1 -1
  94. package/build/components/link-control/use-search-handler.js +18 -5
  95. package/build/components/link-control/use-search-handler.js.map +1 -1
  96. package/build/components/list-view/block-select-button.js +23 -3
  97. package/build/components/list-view/block-select-button.js.map +1 -1
  98. package/build/components/list-view/block.js +8 -0
  99. package/build/components/list-view/block.js.map +1 -1
  100. package/build/components/media-placeholder/index.js +2 -0
  101. package/build/components/media-placeholder/index.js.map +1 -1
  102. package/build/components/media-replace-flow/index.js +32 -6
  103. package/build/components/media-replace-flow/index.js.map +1 -1
  104. package/build/components/media-upload-progress/index.native.js +2 -1
  105. package/build/components/media-upload-progress/index.native.js.map +1 -1
  106. package/build/components/panel-color-settings/index.js +7 -3
  107. package/build/components/panel-color-settings/index.js.map +1 -1
  108. package/build/components/provider/block-refs-provider.js +4 -1
  109. package/build/components/provider/block-refs-provider.js.map +1 -1
  110. package/build/components/rich-text/file-paste-handler.js +1 -1
  111. package/build/components/rich-text/file-paste-handler.js.map +1 -1
  112. package/build/components/rich-text/prevent-event-discovery.js +33 -0
  113. package/build/components/rich-text/prevent-event-discovery.js.map +1 -0
  114. package/build/components/rich-text/use-input-rules.js +3 -1
  115. package/build/components/rich-text/use-input-rules.js.map +1 -1
  116. package/build/components/selection-scroll-into-view/index.js +2 -1
  117. package/build/components/selection-scroll-into-view/index.js.map +1 -1
  118. package/build/components/use-display-block-controls/index.native.js +45 -0
  119. package/build/components/use-display-block-controls/index.native.js.map +1 -0
  120. package/build/components/use-on-block-drop/index.js +7 -3
  121. package/build/components/use-on-block-drop/index.js.map +1 -1
  122. package/build/components/writing-flow/use-multi-selection.js +3 -1
  123. package/build/components/writing-flow/use-multi-selection.js.map +1 -1
  124. package/build/hooks/border-color.js +74 -10
  125. package/build/hooks/border-color.js.map +1 -1
  126. package/build/hooks/border-radius.js +47 -0
  127. package/build/hooks/border-radius.js.map +1 -1
  128. package/build/hooks/border-style.js +41 -0
  129. package/build/hooks/border-style.js.map +1 -1
  130. package/build/hooks/border-width.js +70 -31
  131. package/build/hooks/border-width.js.map +1 -1
  132. package/build/hooks/border.js +81 -11
  133. package/build/hooks/border.js.map +1 -1
  134. package/build/hooks/color-panel.js +4 -1
  135. package/build/hooks/color-panel.js.map +1 -1
  136. package/build/hooks/color-panel.native.js +77 -0
  137. package/build/hooks/color-panel.native.js.map +1 -0
  138. package/build/hooks/color.js +6 -5
  139. package/build/hooks/color.js.map +1 -1
  140. package/build/hooks/index.native.js +2 -0
  141. package/build/hooks/index.native.js.map +1 -1
  142. package/build/hooks/layout.native.js +20 -0
  143. package/build/hooks/layout.native.js.map +1 -0
  144. package/build/hooks/letter-spacing.js +1 -1
  145. package/build/hooks/letter-spacing.js.map +1 -1
  146. package/build/hooks/typography.js +1 -1
  147. package/build/hooks/typography.js.map +1 -1
  148. package/build/store/actions.js +1 -2
  149. package/build/store/actions.js.map +1 -1
  150. package/build/store/defaults.js +5 -1
  151. package/build/store/defaults.js.map +1 -1
  152. package/build/store/defaults.native.js +2 -6
  153. package/build/store/defaults.native.js.map +1 -1
  154. package/build/store/selectors.js +10 -5
  155. package/build/store/selectors.js.map +1 -1
  156. package/build/utils/get-paste-event-data.js +1 -1
  157. package/build/utils/get-paste-event-data.js.map +1 -1
  158. package/build/utils/parse-css-unit-to-px.js +1 -1
  159. package/build/utils/parse-css-unit-to-px.js.map +1 -1
  160. package/build-module/components/block-caption/index.native.js +13 -3
  161. package/build-module/components/block-caption/index.native.js.map +1 -1
  162. package/build-module/components/block-edit/index.js +9 -0
  163. package/build-module/components/block-edit/index.js.map +1 -1
  164. package/build-module/components/block-inspector/index.js +8 -20
  165. package/build-module/components/block-inspector/index.js.map +1 -1
  166. package/build-module/components/block-list-appender/index.js +3 -10
  167. package/build-module/components/block-list-appender/index.js.map +1 -1
  168. package/build-module/components/block-media-update-progress/index.native.js +2 -1
  169. package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
  170. package/build-module/components/block-preview/auto.js +10 -2
  171. package/build-module/components/block-preview/auto.js.map +1 -1
  172. package/build-module/components/block-settings/container.native.js +2 -1
  173. package/build-module/components/block-settings/container.native.js.map +1 -1
  174. package/build-module/components/block-styles/index.js +112 -133
  175. package/build-module/components/block-styles/index.js.map +1 -1
  176. package/build-module/components/block-styles/menu-items.js +50 -0
  177. package/build-module/components/block-styles/menu-items.js.map +1 -0
  178. package/build-module/components/block-styles/preview-panel.js +35 -0
  179. package/build-module/components/block-styles/preview-panel.js.map +1 -0
  180. package/build-module/components/block-styles/preview.native.js +2 -2
  181. package/build-module/components/block-styles/preview.native.js.map +1 -1
  182. package/build-module/components/block-styles/use-styles-for-block.js +107 -0
  183. package/build-module/components/block-styles/use-styles-for-block.js.map +1 -0
  184. package/build-module/components/block-styles/utils.js +34 -0
  185. package/build-module/components/block-styles/utils.js.map +1 -1
  186. package/build-module/components/block-switcher/block-styles-menu.js +3 -21
  187. package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
  188. package/build-module/components/block-tools/back-compat.js +2 -1
  189. package/build-module/components/block-tools/back-compat.js.map +1 -1
  190. package/build-module/components/block-tools/block-selection-button.js +5 -1
  191. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  192. package/build-module/components/block-tools/insertion-point.js +11 -1
  193. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  194. package/build-module/components/block-types-list/index.native.js +2 -2
  195. package/build-module/components/block-types-list/index.native.js.map +1 -1
  196. package/build-module/components/button-block-appender/index.js +2 -1
  197. package/build-module/components/button-block-appender/index.js.map +1 -1
  198. package/build-module/components/colors-gradients/dropdown.js +75 -0
  199. package/build-module/components/colors-gradients/dropdown.js.map +1 -0
  200. package/build-module/components/colors-gradients/panel-color-gradient-settings.js +8 -7
  201. package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
  202. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +7 -4
  203. package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
  204. package/build-module/components/contrast-checker/index.js +34 -9
  205. package/build-module/components/contrast-checker/index.js.map +1 -1
  206. package/build-module/components/contrast-checker/index.native.js +90 -0
  207. package/build-module/components/contrast-checker/index.native.js.map +1 -0
  208. package/build-module/components/default-block-appender/index.js +15 -18
  209. package/build-module/components/default-block-appender/index.js.map +1 -1
  210. package/build-module/components/default-style-picker/index.js +17 -3
  211. package/build-module/components/default-style-picker/index.js.map +1 -1
  212. package/build-module/components/iframe/index.js +4 -5
  213. package/build-module/components/iframe/index.js.map +1 -1
  214. package/build-module/components/index.js +2 -1
  215. package/build-module/components/index.js.map +1 -1
  216. package/build-module/components/index.native.js +1 -0
  217. package/build-module/components/index.native.js.map +1 -1
  218. package/build-module/components/inner-blocks/default-block-appender.js +2 -4
  219. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  220. package/build-module/components/inner-blocks/use-nested-settings-update.js +16 -14
  221. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  222. package/build-module/components/inserter/index.js +61 -3
  223. package/build-module/components/inserter/index.js.map +1 -1
  224. package/build-module/components/inserter/index.native.js +2 -2
  225. package/build-module/components/inserter/index.native.js.map +1 -1
  226. package/build-module/components/inserter/library.js +5 -3
  227. package/build-module/components/inserter/library.js.map +1 -1
  228. package/build-module/components/inserter/menu.js +11 -4
  229. package/build-module/components/inserter/menu.js.map +1 -1
  230. package/build-module/components/inserter/tabs.native.js +7 -4
  231. package/build-module/components/inserter/tabs.native.js.map +1 -1
  232. package/build-module/components/inspector-controls/block-support-slot-container.js +2 -1
  233. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  234. package/build-module/components/inspector-controls/block-support-tools-panel.js +12 -43
  235. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  236. package/build-module/components/inspector-controls/fill.native.js +3 -5
  237. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  238. package/build-module/components/inspector-controls/groups.js +2 -0
  239. package/build-module/components/inspector-controls/groups.js.map +1 -1
  240. package/build-module/components/inspector-controls/slot.js +1 -3
  241. package/build-module/components/inspector-controls/slot.js.map +1 -1
  242. package/build-module/components/letter-spacing-control/index.js +6 -6
  243. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  244. package/build-module/components/link-control/link-preview.js +1 -1
  245. package/build-module/components/link-control/link-preview.js.map +1 -1
  246. package/build-module/components/link-control/search-item.js +11 -1
  247. package/build-module/components/link-control/search-item.js.map +1 -1
  248. package/build-module/components/link-control/search-results.js +2 -1
  249. package/build-module/components/link-control/search-results.js.map +1 -1
  250. package/build-module/components/link-control/use-search-handler.js +18 -5
  251. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  252. package/build-module/components/list-view/block-select-button.js +22 -3
  253. package/build-module/components/list-view/block-select-button.js.map +1 -1
  254. package/build-module/components/list-view/block.js +6 -0
  255. package/build-module/components/list-view/block.js.map +1 -1
  256. package/build-module/components/media-placeholder/index.js +2 -0
  257. package/build-module/components/media-placeholder/index.js.map +1 -1
  258. package/build-module/components/media-replace-flow/index.js +32 -6
  259. package/build-module/components/media-replace-flow/index.js.map +1 -1
  260. package/build-module/components/media-upload-progress/index.native.js +2 -1
  261. package/build-module/components/media-upload-progress/index.native.js.map +1 -1
  262. package/build-module/components/panel-color-settings/index.js +7 -3
  263. package/build-module/components/panel-color-settings/index.js.map +1 -1
  264. package/build-module/components/provider/block-refs-provider.js +4 -1
  265. package/build-module/components/provider/block-refs-provider.js.map +1 -1
  266. package/build-module/components/rich-text/file-paste-handler.js +1 -1
  267. package/build-module/components/rich-text/file-paste-handler.js.map +1 -1
  268. package/build-module/components/rich-text/prevent-event-discovery.js +25 -0
  269. package/build-module/components/rich-text/prevent-event-discovery.js.map +1 -0
  270. package/build-module/components/rich-text/use-input-rules.js +2 -1
  271. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  272. package/build-module/components/selection-scroll-into-view/index.js +2 -1
  273. package/build-module/components/selection-scroll-into-view/index.js.map +1 -1
  274. package/build-module/components/use-display-block-controls/index.native.js +34 -0
  275. package/build-module/components/use-display-block-controls/index.native.js.map +1 -0
  276. package/build-module/components/use-on-block-drop/index.js +7 -3
  277. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  278. package/build-module/components/writing-flow/use-multi-selection.js +3 -4
  279. package/build-module/components/writing-flow/use-multi-selection.js.map +1 -1
  280. package/build-module/hooks/border-color.js +72 -12
  281. package/build-module/hooks/border-color.js.map +1 -1
  282. package/build-module/hooks/border-radius.js +42 -0
  283. package/build-module/hooks/border-radius.js.map +1 -1
  284. package/build-module/hooks/border-style.js +36 -0
  285. package/build-module/hooks/border-style.js.map +1 -1
  286. package/build-module/hooks/border-width.js +66 -32
  287. package/build-module/hooks/border-width.js.map +1 -1
  288. package/build-module/hooks/border.js +80 -12
  289. package/build-module/hooks/border.js.map +1 -1
  290. package/build-module/hooks/color-panel.js +4 -1
  291. package/build-module/hooks/color-panel.js.map +1 -1
  292. package/build-module/hooks/color-panel.native.js +62 -0
  293. package/build-module/hooks/color-panel.native.js.map +1 -0
  294. package/build-module/hooks/color.js +6 -5
  295. package/build-module/hooks/color.js.map +1 -1
  296. package/build-module/hooks/index.native.js +1 -0
  297. package/build-module/hooks/index.native.js.map +1 -1
  298. package/build-module/hooks/layout.native.js +16 -0
  299. package/build-module/hooks/layout.native.js.map +1 -0
  300. package/build-module/hooks/letter-spacing.js +1 -1
  301. package/build-module/hooks/letter-spacing.js.map +1 -1
  302. package/build-module/hooks/typography.js +1 -1
  303. package/build-module/hooks/typography.js.map +1 -1
  304. package/build-module/store/actions.js +1 -2
  305. package/build-module/store/actions.js.map +1 -1
  306. package/build-module/store/defaults.js +5 -1
  307. package/build-module/store/defaults.js.map +1 -1
  308. package/build-module/store/defaults.native.js +2 -5
  309. package/build-module/store/defaults.native.js.map +1 -1
  310. package/build-module/store/selectors.js +10 -5
  311. package/build-module/store/selectors.js.map +1 -1
  312. package/build-module/utils/get-paste-event-data.js +1 -1
  313. package/build-module/utils/get-paste-event-data.js.map +1 -1
  314. package/build-module/utils/parse-css-unit-to-px.js +1 -1
  315. package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
  316. package/build-style/style-rtl.css +226 -181
  317. package/build-style/style.css +226 -181
  318. package/package.json +31 -27
  319. package/src/components/block-caption/index.native.js +22 -4
  320. package/src/components/block-card/README.md +1 -1
  321. package/src/components/block-edit/index.js +8 -0
  322. package/src/components/block-edit/test/edit.native.js +10 -9
  323. package/src/components/block-inspector/index.js +9 -16
  324. package/src/components/block-list-appender/index.js +5 -21
  325. package/src/components/block-media-update-progress/index.native.js +1 -1
  326. package/src/components/block-media-update-progress/test/index.native.js +136 -93
  327. package/src/components/block-mover/test/__snapshots__/index.native.js.snap +108 -47
  328. package/src/components/block-mover/test/index.native.js +5 -5
  329. package/src/components/block-preview/README.md +14 -26
  330. package/src/components/block-preview/auto.js +7 -2
  331. package/src/components/block-preview/test/index.js +2 -0
  332. package/src/components/block-settings/container.native.js +1 -0
  333. package/src/components/block-styles/index.js +125 -145
  334. package/src/components/block-styles/menu-items.js +49 -0
  335. package/src/components/block-styles/preview-panel.js +36 -0
  336. package/src/components/block-styles/preview.native.js +5 -2
  337. package/src/components/block-styles/style.scss +59 -51
  338. package/src/components/block-styles/test/{index.js → utils.js} +60 -1
  339. package/src/components/block-styles/use-styles-for-block.js +99 -0
  340. package/src/components/block-styles/utils.js +39 -0
  341. package/src/components/block-switcher/block-styles-menu.js +3 -38
  342. package/src/components/block-tools/back-compat.js +1 -0
  343. package/src/components/block-tools/block-selection-button.js +7 -1
  344. package/src/components/block-tools/insertion-point.js +10 -1
  345. package/src/components/block-types-list/index.native.js +5 -2
  346. package/src/components/border-radius-control/style.scss +1 -1
  347. package/src/components/border-style-control/style.scss +0 -1
  348. package/src/components/button-block-appender/index.js +1 -0
  349. package/src/components/color-palette/test/__snapshots__/control.js.snap +9 -4
  350. package/src/components/colors-gradients/dropdown.js +96 -0
  351. package/src/components/colors-gradients/panel-color-gradient-settings.js +23 -19
  352. package/src/components/colors-gradients/panel-color-gradient-settings.native.js +13 -2
  353. package/src/components/colors-gradients/style.scss +59 -5
  354. package/src/components/contrast-checker/README.md +3 -1
  355. package/src/components/contrast-checker/index.js +48 -20
  356. package/src/components/contrast-checker/index.native.js +113 -0
  357. package/src/components/contrast-checker/style.native.scss +26 -0
  358. package/src/components/contrast-checker/test/index.js +65 -0
  359. package/src/components/default-block-appender/index.js +17 -24
  360. package/src/components/default-block-appender/style.scss +4 -0
  361. package/src/components/default-block-appender/test/__snapshots__/index.js.snap +12 -24
  362. package/src/components/default-block-appender/test/index.js +4 -14
  363. package/src/components/default-style-picker/index.js +18 -6
  364. package/src/components/iframe/index.js +7 -3
  365. package/src/components/index.js +2 -1
  366. package/src/components/index.native.js +1 -0
  367. package/src/components/inner-blocks/README.md +2 -0
  368. package/src/components/inner-blocks/default-block-appender.js +2 -7
  369. package/src/components/inner-blocks/use-nested-settings-update.js +16 -14
  370. package/src/components/inserter/index.js +77 -5
  371. package/src/components/inserter/index.native.js +2 -2
  372. package/src/components/inserter/library.js +17 -12
  373. package/src/components/inserter/menu.js +31 -13
  374. package/src/components/inserter/tabs.native.js +5 -4
  375. package/src/components/inserter/test/block-types-tab.native.js +9 -10
  376. package/src/components/inserter/test/index.native.js +3 -7
  377. package/src/components/inserter/test/reusable-blocks-tab.native.js +8 -10
  378. package/src/components/inspector-controls/block-support-slot-container.js +3 -1
  379. package/src/components/inspector-controls/block-support-tools-panel.js +39 -58
  380. package/src/components/inspector-controls/fill.native.js +4 -3
  381. package/src/components/inspector-controls/groups.js +2 -0
  382. package/src/components/inspector-controls/slot.js +2 -7
  383. package/src/components/letter-spacing-control/index.js +6 -6
  384. package/src/components/link-control/README.md +1 -1
  385. package/src/components/link-control/link-preview.js +1 -1
  386. package/src/components/link-control/search-item.js +11 -2
  387. package/src/components/link-control/search-results.js +1 -0
  388. package/src/components/link-control/style.scss +2 -1
  389. package/src/components/link-control/test/index.js +4 -0
  390. package/src/components/link-control/use-search-handler.js +25 -4
  391. package/src/components/list-view/block-select-button.js +20 -1
  392. package/src/components/list-view/block.js +10 -0
  393. package/src/components/media-placeholder/index.js +2 -0
  394. package/src/components/media-replace-flow/index.js +35 -5
  395. package/src/components/media-upload/test/index.native.js +28 -47
  396. package/src/components/media-upload-progress/index.native.js +1 -0
  397. package/src/components/media-upload-progress/test/index.native.js +60 -47
  398. package/src/components/panel-color-settings/index.js +8 -4
  399. package/src/components/provider/block-refs-provider.js +4 -1
  400. package/src/components/rich-text/file-paste-handler.js +3 -1
  401. package/src/components/rich-text/prevent-event-discovery.js +23 -0
  402. package/src/components/rich-text/use-input-rules.js +2 -1
  403. package/src/components/selection-scroll-into-view/index.js +1 -0
  404. package/src/components/url-input/README.md +5 -0
  405. package/src/components/use-display-block-controls/index.native.js +38 -0
  406. package/src/components/use-on-block-drop/index.js +7 -3
  407. package/src/components/writing-flow/test/use-multi-selection.js +36 -0
  408. package/src/components/writing-flow/use-multi-selection.js +12 -9
  409. package/src/hooks/border-color.js +69 -9
  410. package/src/hooks/border-radius.js +32 -0
  411. package/src/hooks/border-style.js +26 -0
  412. package/src/hooks/border-width.js +56 -32
  413. package/src/hooks/border.js +115 -20
  414. package/src/hooks/border.scss +3 -17
  415. package/src/hooks/color-panel.js +3 -0
  416. package/src/hooks/color-panel.native.js +63 -0
  417. package/src/hooks/color.js +8 -7
  418. package/src/hooks/dimensions.scss +5 -0
  419. package/src/hooks/index.native.js +1 -0
  420. package/src/hooks/layout.native.js +23 -0
  421. package/src/hooks/letter-spacing.js +1 -1
  422. package/src/hooks/typography.js +1 -1
  423. package/src/store/actions.js +1 -2
  424. package/src/store/defaults.js +2 -0
  425. package/src/store/defaults.native.js +2 -6
  426. package/src/store/selectors.js +10 -5
  427. package/src/style.scss +4 -3
  428. package/src/utils/get-paste-event-data.js +1 -1
  429. package/src/utils/parse-css-unit-to-px.js +1 -1
  430. package/src/utils/test/parse-css-unit-to-px.js +3 -0
  431. package/tsconfig.tsbuildinfo +1 -1
  432. package/build/components/use-canvas-click-redirect/index.js +0 -66
  433. package/build/components/use-canvas-click-redirect/index.js.map +0 -1
  434. package/build-module/components/use-canvas-click-redirect/index.js +0 -54
  435. package/build-module/components/use-canvas-click-redirect/index.js.map +0 -1
  436. package/src/components/use-canvas-click-redirect/index.js +0 -57
@@ -1206,62 +1206,65 @@
1206
1206
  padding: 0;
1207
1207
  }
1208
1208
 
1209
- .block-editor-block-styles {
1210
- display: flex;
1211
- flex-wrap: wrap;
1212
- justify-content: space-between;
1209
+ .block-editor-block-styles + .default-style-picker__default-switcher {
1210
+ margin-top: 16px;
1213
1211
  }
1214
1212
 
1215
- .block-editor-block-styles__item {
1216
- width: calc(50% - 4px);
1217
- margin: 4px 0;
1218
- flex-shrink: 0;
1219
- cursor: pointer;
1220
- overflow: hidden;
1221
- border-radius: 2px;
1222
- padding: 6px;
1223
- display: flex;
1224
- flex-direction: column;
1225
- }
1226
- .block-editor-block-styles__item:focus {
1227
- box-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);
1228
- outline: 2px solid transparent;
1213
+ .block-editor-block-styles__preview-panel {
1214
+ display: none;
1215
+ position: absolute;
1216
+ right: 16px;
1217
+ left: auto;
1218
+ z-index: 90;
1229
1219
  }
1230
- .block-editor-block-styles__item:hover .block-editor-block-styles__item-preview {
1231
- border-color: var(--wp-admin-theme-color);
1220
+ @media (min-width: 782px) {
1221
+ .block-editor-block-styles__preview-panel {
1222
+ display: block;
1223
+ }
1232
1224
  }
1233
- .block-editor-block-styles__item.is-active .block-editor-block-styles__item-label {
1234
- font-weight: bold;
1225
+ .block-editor-block-styles__preview-panel .block-editor-inserter__preview-container {
1226
+ left: auto;
1227
+ right: auto;
1228
+ top: auto;
1229
+ position: static;
1235
1230
  }
1236
- .block-editor-block-styles__item.is-active .block-editor-block-styles__item-preview {
1231
+ .block-editor-block-styles__preview-panel .block-editor-block-card__title.block-editor-block-card__title {
1237
1232
  margin: 0;
1238
- border: 2px solid #1e1e1e;
1239
1233
  }
1240
- .block-editor-block-styles__item .block-editor-block-preview__container {
1241
- cursor: inherit;
1234
+ .block-editor-block-styles__preview-panel .block-editor-block-icon {
1235
+ display: none;
1242
1236
  }
1243
1237
 
1244
- .block-editor-block-styles__item-preview {
1245
- outline: 1px solid transparent;
1246
- padding: 0;
1247
- margin: 2px;
1248
- border-radius: 2px;
1238
+ .block-editor-block-styles__variants {
1249
1239
  display: flex;
1250
- overflow: hidden;
1251
- background: #fff;
1252
- align-items: center;
1253
- flex-grow: 1;
1254
- min-height: 80px;
1255
- max-height: 160px;
1240
+ flex-wrap: wrap;
1241
+ justify-content: space-between;
1242
+ gap: 8px;
1256
1243
  }
1257
-
1258
- .block-editor-block-switcher__styles__menugroup {
1259
- position: relative;
1244
+ .block-editor-block-styles__variants .block-editor-block-styles__item {
1245
+ color: #2f2f2f;
1246
+ box-shadow: inset 0 0 0 1px #ccc;
1247
+ display: inline-block;
1248
+ width: calc(50% - 4px);
1249
+ }
1250
+ .block-editor-block-styles__variants .block-editor-block-styles__item:focus, .block-editor-block-styles__variants .block-editor-block-styles__item:hover {
1251
+ color: var(--wp-admin-theme-color);
1252
+ box-shadow: inset 0 0 0 2px var(--wp-admin-theme-color);
1253
+ }
1254
+ .block-editor-block-styles__variants .block-editor-block-styles__item.is-active, .block-editor-block-styles__variants .block-editor-block-styles__item.is-active:hover {
1255
+ background-color: #2f2f2f;
1256
+ box-shadow: none;
1257
+ }
1258
+ .block-editor-block-styles__variants .block-editor-block-styles__item.is-active .block-editor-block-styles__item-text, .block-editor-block-styles__variants .block-editor-block-styles__item.is-active:hover .block-editor-block-styles__item-text {
1259
+ color: #fff;
1260
+ }
1261
+ .block-editor-block-styles__variants .block-editor-block-styles__item.is-active:focus {
1262
+ box-shadow: inset 0 0 0 1px #fff, 0 0 0 2px var(--wp-admin-theme-color);
1260
1263
  }
1261
1264
 
1262
- .block-editor-block-styles__item-label {
1263
- text-align: center;
1264
- padding: 4px 0;
1265
+ .block-editor-block-styles__block-preview-container,
1266
+ .block-editor-block-styles__block-preview-container * {
1267
+ box-sizing: border-box !important;
1265
1268
  }
1266
1269
 
1267
1270
  .block-editor-block-switcher {
@@ -1668,7 +1671,7 @@
1668
1671
  margin-bottom: 12px;
1669
1672
  }
1670
1673
  .components-border-radius-control legend {
1671
- padding-bottom: 4px;
1674
+ margin-bottom: 8px;
1672
1675
  }
1673
1676
  .components-border-radius-control .components-border-radius-control__wrapper {
1674
1677
  display: flex;
@@ -1718,7 +1721,6 @@
1718
1721
  }
1719
1722
  .components-border-style-control .components-border-style-control__buttons {
1720
1723
  display: inline-flex;
1721
- margin-bottom: 24px;
1722
1724
  }
1723
1725
  .components-border-style-control .components-border-style-control__buttons .components-button.has-icon {
1724
1726
  min-width: 30px;
@@ -1757,11 +1759,17 @@
1757
1759
  margin-bottom: 12px;
1758
1760
  }
1759
1761
 
1760
- .block-editor-panel-color-gradient-settings .component-color-indicator {
1761
- vertical-align: text-bottom;
1762
+ .block-editor-panel-color-gradient-settings .block-editor-panel-color-gradient-settings__panel-title {
1763
+ display: flex;
1764
+ gap: 8px;
1762
1765
  }
1763
- .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator {
1764
- display: inline-block;
1766
+ .block-editor-panel-color-gradient-settings .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator {
1767
+ width: 12px;
1768
+ height: 12px;
1769
+ align-self: center;
1770
+ }
1771
+ .block-editor-panel-color-gradient-settings .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator:first-child {
1772
+ margin-left: 12px;
1765
1773
  }
1766
1774
  .block-editor-panel-color-gradient-settings.is-opened .block-editor-panel-color-gradient-settings__panel-title .component-color-indicator {
1767
1775
  display: none;
@@ -1776,6 +1784,44 @@
1776
1784
  .block-editor-block-inspector .block-editor-panel-color-gradient-settings .components-base-control {
1777
1785
  margin-bottom: inherit;
1778
1786
  }
1787
+ .block-editor-panel-color-gradient-settings .block-editor-panel-color-gradient-settings__dropdown {
1788
+ display: block;
1789
+ }
1790
+
1791
+ .block-editor-panel-color-gradient-settings__dropdown {
1792
+ width: 100%;
1793
+ }
1794
+
1795
+ .block-editor-panel-color-gradient-settings__dropdown-content .components-popover__content > div {
1796
+ width: 280px;
1797
+ }
1798
+
1799
+ @media (min-width: 782px) {
1800
+ .block-editor-panel-color-gradient-settings__dropdown-content .components-popover__content {
1801
+ margin-right: 156px !important;
1802
+ }
1803
+ .block-editor-panel-color-gradient-settings__dropdown-content.is-from-top .components-popover__content {
1804
+ margin-top: -60px !important;
1805
+ }
1806
+ .block-editor-panel-color-gradient-settings__dropdown-content.is-from-bottom .components-popover__content {
1807
+ margin-bottom: -60px !important;
1808
+ }
1809
+ }
1810
+ .block-editor-panel-color-gradient-settings__dropdown:last-child > div {
1811
+ border-bottom-width: 0;
1812
+ }
1813
+
1814
+ .block-editor-panel-color-gradient-settings__item {
1815
+ padding-top: 12px !important;
1816
+ padding-bottom: 12px !important;
1817
+ }
1818
+ .block-editor-panel-color-gradient-settings__item .block-editor-panel-color-gradient-settings__color-indicator {
1819
+ background: linear-gradient(-45deg, transparent 48%, #ddd 48%, #ddd 52%, transparent 52%);
1820
+ }
1821
+ .block-editor-panel-color-gradient-settings__item.is-open {
1822
+ background: #f0f0f0;
1823
+ color: var(--wp-admin-theme-color);
1824
+ }
1779
1825
 
1780
1826
  .block-editor-contrast-checker > .components-notice {
1781
1827
  margin: 0;
@@ -1873,6 +1919,10 @@
1873
1919
  display: flex;
1874
1920
  }
1875
1921
 
1922
+ .block-editor-default-block-appender__content {
1923
+ cursor: text;
1924
+ }
1925
+
1876
1926
  .block-editor-duotone-control__popover > .components-popover__content > div {
1877
1927
  padding: 16px;
1878
1928
  width: 280px;
@@ -1907,6 +1957,119 @@
1907
1957
  text-transform: capitalize;
1908
1958
  }
1909
1959
 
1960
+ .block-editor-image-size-control {
1961
+ margin-bottom: 1em;
1962
+ }
1963
+ .block-editor-image-size-control .block-editor-image-size-control__row {
1964
+ display: flex;
1965
+ justify-content: space-between;
1966
+ }
1967
+ .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width,
1968
+ .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height {
1969
+ margin-bottom: 0.5em;
1970
+ }
1971
+ .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width input,
1972
+ .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height input {
1973
+ line-height: 1.25;
1974
+ }
1975
+ .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width {
1976
+ margin-right: 5px;
1977
+ }
1978
+ .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height {
1979
+ margin-left: 5px;
1980
+ }
1981
+
1982
+ .block-editor-block-list__layout.has-overlay::after {
1983
+ content: "";
1984
+ position: absolute;
1985
+ top: 0;
1986
+ right: 0;
1987
+ bottom: 0;
1988
+ left: 0;
1989
+ z-index: 60;
1990
+ }
1991
+
1992
+ .block-editor-block-types-list__list-item {
1993
+ display: block;
1994
+ width: 33.33%;
1995
+ padding: 0;
1996
+ margin: 0;
1997
+ }
1998
+
1999
+ .components-button.block-editor-block-types-list__item {
2000
+ display: flex;
2001
+ flex-direction: column;
2002
+ width: 100%;
2003
+ font-size: 13px;
2004
+ color: #1e1e1e;
2005
+ padding: 8px;
2006
+ align-items: stretch;
2007
+ justify-content: center;
2008
+ cursor: pointer;
2009
+ background: transparent;
2010
+ word-break: break-word;
2011
+ border-radius: 2px;
2012
+ transition: all 0.05s ease-in-out;
2013
+ position: relative;
2014
+ height: auto;
2015
+ }
2016
+ @media (prefers-reduced-motion: reduce) {
2017
+ .components-button.block-editor-block-types-list__item {
2018
+ transition-duration: 0s;
2019
+ transition-delay: 0s;
2020
+ }
2021
+ }
2022
+ .components-button.block-editor-block-types-list__item:disabled {
2023
+ opacity: 0.6;
2024
+ cursor: default;
2025
+ }
2026
+ .components-button.block-editor-block-types-list__item:not(:disabled):hover {
2027
+ color: var(--wp-admin-theme-color) !important;
2028
+ }
2029
+ .components-button.block-editor-block-types-list__item:not(:disabled):focus {
2030
+ box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);
2031
+ }
2032
+ .components-button.block-editor-block-types-list__item:not(:disabled).is-active {
2033
+ color: #fff;
2034
+ background: #1e1e1e;
2035
+ outline: 2px solid transparent;
2036
+ outline-offset: -2px;
2037
+ }
2038
+
2039
+ .block-editor-block-types-list__item-icon {
2040
+ padding: 12px 20px;
2041
+ border-radius: 2px;
2042
+ color: #1e1e1e;
2043
+ transition: all 0.05s ease-in-out;
2044
+ }
2045
+ @media (prefers-reduced-motion: reduce) {
2046
+ .block-editor-block-types-list__item-icon {
2047
+ transition-duration: 0s;
2048
+ transition-delay: 0s;
2049
+ }
2050
+ }
2051
+ .block-editor-block-types-list__item-icon .block-editor-block-icon {
2052
+ margin-left: auto;
2053
+ margin-right: auto;
2054
+ }
2055
+ .block-editor-block-types-list__item-icon svg {
2056
+ transition: all 0.15s ease-out;
2057
+ }
2058
+ @media (prefers-reduced-motion: reduce) {
2059
+ .block-editor-block-types-list__item-icon svg {
2060
+ transition-duration: 0s;
2061
+ transition-delay: 0s;
2062
+ }
2063
+ }
2064
+ .block-editor-block-types-list__list-item[draggable=true] .block-editor-block-types-list__item-icon {
2065
+ cursor: grab;
2066
+ }
2067
+
2068
+ .block-editor-block-types-list__item-title {
2069
+ padding: 4px 2px 8px;
2070
+ font-size: 12px;
2071
+ }
2072
+
1910
2073
  .items-justified-left {
1911
2074
  justify-content: flex-start;
1912
2075
  }
@@ -1923,6 +2086,14 @@
1923
2086
  justify-content: space-between;
1924
2087
  }
1925
2088
 
2089
+ .block-editor-line-height-control {
2090
+ margin-bottom: 24px;
2091
+ }
2092
+ .block-editor-line-height-control input {
2093
+ display: block;
2094
+ max-width: 60px;
2095
+ }
2096
+
1926
2097
  @keyframes loadingpulse {
1927
2098
  0% {
1928
2099
  opacity: 1;
@@ -2200,6 +2371,7 @@
2200
2371
  font-size: 0.9em;
2201
2372
  background-color: #f0f0f0;
2202
2373
  border-radius: 2px;
2374
+ white-space: nowrap;
2203
2375
  }
2204
2376
  .block-editor-link-control__search-item .block-editor-link-control__search-item-description {
2205
2377
  padding-top: 12px;
@@ -2378,127 +2550,6 @@
2378
2550
  flex-shrink: 0;
2379
2551
  }
2380
2552
 
2381
- .block-editor-line-height-control {
2382
- margin-bottom: 24px;
2383
- }
2384
- .block-editor-line-height-control input {
2385
- display: block;
2386
- max-width: 60px;
2387
- }
2388
-
2389
- .block-editor-image-size-control {
2390
- margin-bottom: 1em;
2391
- }
2392
- .block-editor-image-size-control .block-editor-image-size-control__row {
2393
- display: flex;
2394
- justify-content: space-between;
2395
- }
2396
- .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width,
2397
- .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height {
2398
- margin-bottom: 0.5em;
2399
- }
2400
- .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width input,
2401
- .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height input {
2402
- line-height: 1.25;
2403
- }
2404
- .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__width {
2405
- margin-right: 5px;
2406
- }
2407
- .block-editor-image-size-control .block-editor-image-size-control__row .block-editor-image-size-control__height {
2408
- margin-left: 5px;
2409
- }
2410
-
2411
- .block-editor-block-list__layout.has-overlay::after {
2412
- content: "";
2413
- position: absolute;
2414
- top: 0;
2415
- right: 0;
2416
- bottom: 0;
2417
- left: 0;
2418
- z-index: 60;
2419
- }
2420
-
2421
- .block-editor-block-types-list__list-item {
2422
- display: block;
2423
- width: 33.33%;
2424
- padding: 0;
2425
- margin: 0;
2426
- }
2427
-
2428
- .components-button.block-editor-block-types-list__item {
2429
- display: flex;
2430
- flex-direction: column;
2431
- width: 100%;
2432
- font-size: 13px;
2433
- color: #1e1e1e;
2434
- padding: 8px;
2435
- align-items: stretch;
2436
- justify-content: center;
2437
- cursor: pointer;
2438
- background: transparent;
2439
- word-break: break-word;
2440
- border-radius: 2px;
2441
- transition: all 0.05s ease-in-out;
2442
- position: relative;
2443
- height: auto;
2444
- }
2445
- @media (prefers-reduced-motion: reduce) {
2446
- .components-button.block-editor-block-types-list__item {
2447
- transition-duration: 0s;
2448
- transition-delay: 0s;
2449
- }
2450
- }
2451
- .components-button.block-editor-block-types-list__item:disabled {
2452
- opacity: 0.6;
2453
- cursor: default;
2454
- }
2455
- .components-button.block-editor-block-types-list__item:not(:disabled):hover {
2456
- color: var(--wp-admin-theme-color) !important;
2457
- }
2458
- .components-button.block-editor-block-types-list__item:not(:disabled):focus {
2459
- box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);
2460
- }
2461
- .components-button.block-editor-block-types-list__item:not(:disabled).is-active {
2462
- color: #fff;
2463
- background: #1e1e1e;
2464
- outline: 2px solid transparent;
2465
- outline-offset: -2px;
2466
- }
2467
-
2468
- .block-editor-block-types-list__item-icon {
2469
- padding: 12px 20px;
2470
- border-radius: 2px;
2471
- color: #1e1e1e;
2472
- transition: all 0.05s ease-in-out;
2473
- }
2474
- @media (prefers-reduced-motion: reduce) {
2475
- .block-editor-block-types-list__item-icon {
2476
- transition-duration: 0s;
2477
- transition-delay: 0s;
2478
- }
2479
- }
2480
- .block-editor-block-types-list__item-icon .block-editor-block-icon {
2481
- margin-left: auto;
2482
- margin-right: auto;
2483
- }
2484
- .block-editor-block-types-list__item-icon svg {
2485
- transition: all 0.15s ease-out;
2486
- }
2487
- @media (prefers-reduced-motion: reduce) {
2488
- .block-editor-block-types-list__item-icon svg {
2489
- transition-duration: 0s;
2490
- transition-delay: 0s;
2491
- }
2492
- }
2493
- .block-editor-block-types-list__list-item[draggable=true] .block-editor-block-types-list__item-icon {
2494
- cursor: grab;
2495
- }
2496
-
2497
- .block-editor-block-types-list__item-title {
2498
- padding: 4px 2px 8px;
2499
- font-size: 12px;
2500
- }
2501
-
2502
2553
  .block-editor-list-view-tree {
2503
2554
  width: 100%;
2504
2555
  border-collapse: collapse;
@@ -3528,18 +3579,12 @@ figcaption.block-editor-rich-text__editable [data-rich-text-placeholder]::before
3528
3579
  margin-bottom: 8px;
3529
3580
  }
3530
3581
 
3531
- .block-editor-hooks__border-controls .block-editor-hooks__border-controls-row {
3532
- display: flex;
3533
- justify-content: space-between;
3534
- }
3535
- .block-editor-hooks__border-controls .block-editor-hooks__border-controls-row > * {
3536
- width: calc(50% - 8px);
3537
- }
3538
- .block-editor-hooks__border-controls .components-unit-control-wrapper {
3539
- margin-bottom: 24px;
3582
+ .border-block-support-panel .single-column {
3583
+ grid-column: span 1;
3540
3584
  }
3541
- .block-editor-hooks__border-controls .components-unit-control-wrapper:last-child {
3542
- margin-bottom: 8px;
3585
+
3586
+ .dimensions-block-support-panel .single-column {
3587
+ grid-column: span 1;
3543
3588
  }
3544
3589
 
3545
3590
  .typography-block-support-panel .components-font-appearance-control,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/block-editor",
3
- "version": "8.0.16",
3
+ "version": "8.1.0",
4
4
  "description": "Generic block editor.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -33,31 +33,31 @@
33
33
  "dependencies": {
34
34
  "@babel/runtime": "^7.16.0",
35
35
  "@react-spring/web": "^9.2.4",
36
- "@wordpress/a11y": "^3.2.4",
37
- "@wordpress/api-fetch": "^5.2.6",
38
- "@wordpress/blob": "^3.2.2",
39
- "@wordpress/block-serialization-default-parser": "^4.2.3",
40
- "@wordpress/blocks": "^11.1.5",
41
- "@wordpress/components": "^19.2.2",
42
- "@wordpress/compose": "^5.0.7",
43
- "@wordpress/data": "^6.1.5",
44
- "@wordpress/deprecated": "^3.2.3",
45
- "@wordpress/dom": "^3.2.7",
46
- "@wordpress/element": "^4.0.4",
47
- "@wordpress/hooks": "^3.2.2",
48
- "@wordpress/html-entities": "^3.2.3",
49
- "@wordpress/i18n": "^4.2.4",
50
- "@wordpress/icons": "^6.1.1",
51
- "@wordpress/is-shallow-equal": "^4.2.1",
52
- "@wordpress/keyboard-shortcuts": "^3.0.7",
53
- "@wordpress/keycodes": "^3.2.4",
54
- "@wordpress/notices": "^3.2.8",
55
- "@wordpress/rich-text": "^5.0.8",
56
- "@wordpress/shortcode": "^3.2.3",
57
- "@wordpress/token-list": "^2.2.2",
58
- "@wordpress/url": "^3.3.1",
59
- "@wordpress/warning": "^2.2.2",
60
- "@wordpress/wordcount": "^3.2.3",
36
+ "@wordpress/a11y": "^3.3.0",
37
+ "@wordpress/api-fetch": "^6.0.0",
38
+ "@wordpress/blob": "^3.3.0",
39
+ "@wordpress/block-serialization-default-parser": "^4.3.0",
40
+ "@wordpress/blocks": "^11.2.0",
41
+ "@wordpress/components": "^19.3.0",
42
+ "@wordpress/compose": "^5.1.0",
43
+ "@wordpress/data": "^6.2.0",
44
+ "@wordpress/deprecated": "^3.3.0",
45
+ "@wordpress/dom": "^3.3.0",
46
+ "@wordpress/element": "^4.1.0",
47
+ "@wordpress/hooks": "^3.3.0",
48
+ "@wordpress/html-entities": "^3.3.0",
49
+ "@wordpress/i18n": "^4.3.0",
50
+ "@wordpress/icons": "^6.2.0",
51
+ "@wordpress/is-shallow-equal": "^4.3.0",
52
+ "@wordpress/keyboard-shortcuts": "^3.1.0",
53
+ "@wordpress/keycodes": "^3.3.0",
54
+ "@wordpress/notices": "^3.3.0",
55
+ "@wordpress/rich-text": "^5.1.0",
56
+ "@wordpress/shortcode": "^3.3.0",
57
+ "@wordpress/token-list": "^2.3.0",
58
+ "@wordpress/url": "^3.4.0",
59
+ "@wordpress/warning": "^2.3.0",
60
+ "@wordpress/wordcount": "^3.3.0",
61
61
  "classnames": "^2.3.1",
62
62
  "colord": "^2.7.0",
63
63
  "css-mediaquery": "^0.1.2",
@@ -72,8 +72,12 @@
72
72
  "rememo": "^3.0.0",
73
73
  "traverse": "^0.6.6"
74
74
  },
75
+ "peerDependencies": {
76
+ "react": "^17.0.0",
77
+ "react-dom": "^17.0.0"
78
+ },
75
79
  "publishConfig": {
76
80
  "access": "public"
77
81
  },
78
- "gitHead": "cac1a1f3c854fc282d67b91a74936c3fe42d7d0a"
82
+ "gitHead": "d95ccb9366e249133cdb1d7b25c382446b9ee502"
79
83
  }
@@ -9,6 +9,7 @@ import { View } from 'react-native';
9
9
  import { Caption, RichText } from '@wordpress/block-editor';
10
10
  import { compose } from '@wordpress/compose';
11
11
  import { withDispatch, withSelect } from '@wordpress/data';
12
+ import { hasBlockSupport } from '@wordpress/blocks';
12
13
 
13
14
  /**
14
15
  * Internal dependencies
@@ -44,16 +45,33 @@ const BlockCaption = ( {
44
45
 
45
46
  export default compose( [
46
47
  withSelect( ( select, { clientId } ) => {
47
- const { getBlockAttributes, getSelectedBlockClientId } = select(
48
- blockEditorStore
49
- );
48
+ const {
49
+ getBlockAttributes,
50
+ getSelectedBlockClientId,
51
+ getBlockName,
52
+ getBlockRootClientId,
53
+ } = select( blockEditorStore );
50
54
  const { caption } = getBlockAttributes( clientId ) || {};
51
55
  const isBlockSelected = getSelectedBlockClientId() === clientId;
52
56
 
57
+ // Detect whether the block is an inner block by checking if it has a parent block.
58
+ // getBlockRootClientId() will return an empty string for all top-level blocks.
59
+ // If the block is an inner block, its parent may explicitly hide child block controls.
60
+ // See: https://github.com/wordpress-mobile/gutenberg-mobile/pull/4256
61
+ const parentId = getBlockRootClientId( clientId );
62
+ const parentBlockName = getBlockName( parentId );
63
+
64
+ const hideCaption = hasBlockSupport(
65
+ parentBlockName,
66
+ '__experimentalHideChildBlockControls',
67
+ false
68
+ );
69
+
53
70
  // We'll render the caption so that the soft keyboard is not forced to close on Android
54
71
  // but still hide it by setting its display style to none. See wordpress-mobile/gutenberg-mobile#1221
55
72
  const shouldDisplay =
56
- ! RichText.isEmpty( caption ) > 0 || isBlockSelected;
73
+ ! hideCaption &&
74
+ ( ! RichText.isEmpty( caption ) > 0 || isBlockSelected );
57
75
 
58
76
  return {
59
77
  shouldDisplay,
@@ -25,7 +25,7 @@ const MyBlockCard = () => (
25
25
  <BlockCard
26
26
  icon={ paragraph }
27
27
  title="Paragraph"
28
- description="Start with the building block of all narrative."
28
+ description="Start with the basic building block of all narrative."
29
29
  />
30
30
  );
31
31
  ```
@@ -9,6 +9,14 @@ import { useMemo } from '@wordpress/element';
9
9
  import Edit from './edit';
10
10
  import { BlockEditContextProvider, useBlockEditContext } from './context';
11
11
 
12
+ /**
13
+ * The `useBlockEditContext` hook provides information about the block this hook is being used in.
14
+ * It returns an object with the `name`, `isSelected` state, and the `clientId` of the block.
15
+ * It is useful if you want to create custom hooks that need access to the current blocks clientId
16
+ * but don't want to rely on the data getting passed in as a parameter.
17
+ *
18
+ * @return {Object} Block edit context
19
+ */
12
20
  export { useBlockEditContext };
13
21
 
14
22
  export default function BlockEdit( props ) {