@wordpress/block-editor 11.2.0 → 11.3.1

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 (675) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/README.md +28 -4
  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/autocomplete/index.js +2 -7
  6. package/build/components/autocomplete/index.js.map +1 -1
  7. package/build/components/block-actions/index.js +7 -2
  8. package/build/components/block-actions/index.js.map +1 -1
  9. package/build/components/block-alignment-matrix-control/index.js +2 -2
  10. package/build/components/block-alignment-matrix-control/index.js.map +1 -1
  11. package/build/components/block-card/index.js +2 -4
  12. package/build/components/block-card/index.js.map +1 -1
  13. package/build/components/block-edit/index.js +8 -0
  14. package/build/components/block-edit/index.js.map +1 -1
  15. package/build/components/block-inspector/index.js +15 -14
  16. package/build/components/block-inspector/index.js.map +1 -1
  17. package/build/components/block-list/use-in-between-inserter.js +5 -0
  18. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  19. package/build/components/block-lock/modal.js +0 -1
  20. package/build/components/block-lock/modal.js.map +1 -1
  21. package/build/components/block-mover/mover-description.js +2 -2
  22. package/build/components/block-mover/mover-description.js.map +1 -1
  23. package/build/components/block-navigation/dropdown.js +3 -1
  24. package/build/components/block-navigation/dropdown.js.map +1 -1
  25. package/build/components/block-pattern-setup/index.js +1 -1
  26. package/build/components/block-pattern-setup/index.js.map +1 -1
  27. package/build/components/block-pattern-setup/use-patterns-setup.js +2 -2
  28. package/build/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  29. package/build/components/block-patterns-list/index.js +31 -3
  30. package/build/components/block-patterns-list/index.js.map +1 -1
  31. package/build/components/block-preview/auto.js +9 -11
  32. package/build/components/block-preview/auto.js.map +1 -1
  33. package/build/components/block-preview/index.js +32 -8
  34. package/build/components/block-preview/index.js.map +1 -1
  35. package/build/components/block-selection-clearer/index.js +1 -1
  36. package/build/components/block-selection-clearer/index.js.map +1 -1
  37. package/build/components/block-settings/container.native.js +7 -33
  38. package/build/components/block-settings/container.native.js.map +1 -1
  39. package/build/components/block-settings-menu/block-settings-dropdown.js +12 -6
  40. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  41. package/build/components/block-settings-menu-controls/index.js +2 -8
  42. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  43. package/build/components/block-switcher/utils.js +1 -1
  44. package/build/components/block-switcher/utils.js.map +1 -1
  45. package/build/components/block-tools/selected-block-popover.js +55 -47
  46. package/build/components/block-tools/selected-block-popover.js.map +1 -1
  47. package/build/components/block-vertical-alignment-control/icons.js +15 -1
  48. package/build/components/block-vertical-alignment-control/icons.js.map +1 -1
  49. package/build/components/block-vertical-alignment-control/ui.js +9 -4
  50. package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
  51. package/build/components/color-style-selector/index.js +3 -1
  52. package/build/components/color-style-selector/index.js.map +1 -1
  53. package/build/components/date-format-picker/index.js +3 -4
  54. package/build/components/date-format-picker/index.js.map +1 -1
  55. package/build/components/font-family/index.js +1 -7
  56. package/build/components/font-family/index.js.map +1 -1
  57. package/build/components/font-sizes/fluid-utils.js +1 -1
  58. package/build/components/font-sizes/fluid-utils.js.map +1 -1
  59. package/build/components/font-sizes/utils.js +1 -1
  60. package/build/components/font-sizes/utils.js.map +1 -1
  61. package/build/components/global-styles/context.js +22 -0
  62. package/build/components/global-styles/context.js.map +1 -0
  63. package/build/components/global-styles/hooks.js +142 -0
  64. package/build/components/global-styles/hooks.js.map +1 -0
  65. package/build/components/global-styles/index.js +42 -0
  66. package/build/components/global-styles/index.js.map +1 -0
  67. package/build/components/global-styles/typography-utils.js +92 -0
  68. package/build/components/global-styles/typography-utils.js.map +1 -0
  69. package/build/components/global-styles/use-global-styles-output.js +974 -0
  70. package/build/components/global-styles/use-global-styles-output.js.map +1 -0
  71. package/build/components/global-styles/utils.js +340 -0
  72. package/build/components/global-styles/utils.js.map +1 -0
  73. package/build/components/height-control/index.js +13 -1
  74. package/build/components/height-control/index.js.map +1 -1
  75. package/build/components/iframe/index.js +5 -3
  76. package/build/components/iframe/index.js.map +1 -1
  77. package/build/components/image-editor/constants.js +1 -1
  78. package/build/components/image-editor/constants.js.map +1 -1
  79. package/build/components/image-editor/context.js +1 -2
  80. package/build/components/image-editor/context.js.map +1 -1
  81. package/build/components/image-editor/cropper.js +3 -1
  82. package/build/components/image-editor/cropper.js.map +1 -1
  83. package/build/components/image-editor/index.js +13 -9
  84. package/build/components/image-editor/index.js.map +1 -1
  85. package/build/components/image-editor/use-transform-image.js +11 -35
  86. package/build/components/image-editor/use-transform-image.js.map +1 -1
  87. package/build/components/image-size-control/index.js +1 -7
  88. package/build/components/image-size-control/index.js.map +1 -1
  89. package/build/components/index.js +8 -24
  90. package/build/components/index.js.map +1 -1
  91. package/build/components/inner-blocks/index.js +22 -32
  92. package/build/components/inner-blocks/index.js.map +1 -1
  93. package/build/components/inner-blocks/index.native.js +8 -23
  94. package/build/components/inner-blocks/index.native.js.map +1 -1
  95. package/build/components/inner-blocks/use-block-context.js +53 -0
  96. package/build/components/inner-blocks/use-block-context.js.map +1 -0
  97. package/build/components/inserter/block-patterns-explorer/explorer.js +0 -1
  98. package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  99. package/build/components/inserter/block-patterns-tab.js +9 -2
  100. package/build/components/inserter/block-patterns-tab.js.map +1 -1
  101. package/build/components/inserter/block-types-tab.js +2 -2
  102. package/build/components/inserter/block-types-tab.js.map +1 -1
  103. package/build/components/inserter/hooks/use-patterns-state.js +1 -7
  104. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  105. package/build/components/inserter/index.js +5 -4
  106. package/build/components/inserter/index.js.map +1 -1
  107. package/build/components/inserter/media-tab/hooks.js +142 -56
  108. package/build/components/inserter/media-tab/hooks.js.map +1 -1
  109. package/build/components/inserter/media-tab/media-list.js +74 -21
  110. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  111. package/build/components/inserter/media-tab/media-panel.js +11 -13
  112. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  113. package/build/components/inserter/media-tab/media-tab.js +6 -3
  114. package/build/components/inserter/media-tab/media-tab.js.map +1 -1
  115. package/build/components/inserter/media-tab/utils.js +26 -15
  116. package/build/components/inserter/media-tab/utils.js.map +1 -1
  117. package/build/components/inserter/menu.js +4 -0
  118. package/build/components/inserter/menu.js.map +1 -1
  119. package/build/components/inserter/preview-panel.js +5 -3
  120. package/build/components/inserter/preview-panel.js.map +1 -1
  121. package/build/components/inserter/search-results.js +2 -7
  122. package/build/components/inserter/search-results.js.map +1 -1
  123. package/build/components/inserter-list-item/index.js +1 -9
  124. package/build/components/inserter-list-item/index.js.map +1 -1
  125. package/build/components/inspector-controls/fill.js +15 -2
  126. package/build/components/inspector-controls/fill.js.map +1 -1
  127. package/build/components/inspector-controls/fill.native.js +14 -1
  128. package/build/components/inspector-controls/fill.native.js.map +1 -1
  129. package/build/components/inspector-controls/groups.js +4 -0
  130. package/build/components/inspector-controls/groups.js.map +1 -1
  131. package/build/components/inspector-controls/index.js +2 -2
  132. package/build/components/inspector-controls/index.js.map +1 -1
  133. package/build/components/inspector-controls/slot.js +14 -1
  134. package/build/components/inspector-controls/slot.js.map +1 -1
  135. package/build/components/inspector-controls/slot.native.js +14 -1
  136. package/build/components/inspector-controls/slot.native.js.map +1 -1
  137. package/build/components/inspector-controls-tabs/advanced-controls-panel.js +1 -1
  138. package/build/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  139. package/build/components/inspector-controls-tabs/index.js +2 -2
  140. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  141. package/build/components/inspector-controls-tabs/position-controls-panel.js +1 -1
  142. package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  143. package/build/components/inspector-controls-tabs/styles-tab.js +6 -4
  144. package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  145. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js +17 -12
  146. package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  147. package/build/components/justify-content-control/ui.js +8 -1
  148. package/build/components/justify-content-control/ui.js.map +1 -1
  149. package/build/components/link-control/index.js +45 -17
  150. package/build/components/link-control/index.js.map +1 -1
  151. package/build/components/list-view/block.js +1 -1
  152. package/build/components/list-view/block.js.map +1 -1
  153. package/build/components/list-view/use-list-view-drop-zone.js +1 -1
  154. package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
  155. package/build/components/media-upload/index.native.js +4 -1
  156. package/build/components/media-upload/index.native.js.map +1 -1
  157. package/build/components/off-canvas-editor/appender.js +50 -3
  158. package/build/components/off-canvas-editor/appender.js.map +1 -1
  159. package/build/components/off-canvas-editor/block-contents.js +3 -1
  160. package/build/components/off-canvas-editor/block-contents.js.map +1 -1
  161. package/build/components/off-canvas-editor/block-select-button.js +10 -4
  162. package/build/components/off-canvas-editor/block-select-button.js.map +1 -1
  163. package/build/components/off-canvas-editor/block.js +6 -27
  164. package/build/components/off-canvas-editor/block.js.map +1 -1
  165. package/build/components/off-canvas-editor/branch.js +25 -10
  166. package/build/components/off-canvas-editor/branch.js.map +1 -1
  167. package/build/components/off-canvas-editor/index.js +27 -20
  168. package/build/components/off-canvas-editor/index.js.map +1 -1
  169. package/build/components/off-canvas-editor/link-ui.js +2 -2
  170. package/build/components/off-canvas-editor/link-ui.js.map +1 -1
  171. package/build/components/off-canvas-editor/use-list-view-drop-zone.js +1 -1
  172. package/build/components/off-canvas-editor/use-list-view-drop-zone.js.map +1 -1
  173. package/build/components/provider/index.js +21 -9
  174. package/build/components/provider/index.js.map +1 -1
  175. package/build/components/provider/index.native.js +5 -6
  176. package/build/components/provider/index.native.js.map +1 -1
  177. package/build/components/rich-text/use-before-input-rules.js +11 -3
  178. package/build/components/rich-text/use-before-input-rules.js.map +1 -1
  179. package/build/components/rich-text/utils.js +1 -1
  180. package/build/components/rich-text/utils.js.map +1 -1
  181. package/build/components/spacing-sizes-control/utils.js +2 -8
  182. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  183. package/build/components/tool-selector/index.js +3 -1
  184. package/build/components/tool-selector/index.js.map +1 -1
  185. package/build/components/url-popover/image-url-input-ui.js +7 -8
  186. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  187. package/build/components/use-block-display-information/index.js +1 -1
  188. package/build/components/use-block-display-information/index.js.map +1 -1
  189. package/build/experiments.js +45 -0
  190. package/build/experiments.js.map +1 -0
  191. package/build/experiments.native.js +40 -0
  192. package/build/experiments.native.js.map +1 -0
  193. package/build/hooks/anchor.js +2 -1
  194. package/build/hooks/anchor.js.map +1 -1
  195. package/build/hooks/border.js +1 -1
  196. package/build/hooks/border.js.map +1 -1
  197. package/build/hooks/child-layout.js +5 -1
  198. package/build/hooks/child-layout.js.map +1 -1
  199. package/build/hooks/color-panel.js +1 -1
  200. package/build/hooks/color-panel.js.map +1 -1
  201. package/build/hooks/color.js +3 -3
  202. package/build/hooks/color.js.map +1 -1
  203. package/build/hooks/custom-class-name.js +2 -1
  204. package/build/hooks/custom-class-name.js.map +1 -1
  205. package/build/hooks/dimensions.js +7 -5
  206. package/build/hooks/dimensions.js.map +1 -1
  207. package/build/hooks/margin.js +1 -0
  208. package/build/hooks/margin.js.map +1 -1
  209. package/build/hooks/padding.js +1 -0
  210. package/build/hooks/padding.js.map +1 -1
  211. package/build/hooks/position.js +39 -17
  212. package/build/hooks/position.js.map +1 -1
  213. package/build/hooks/typography.js +1 -1
  214. package/build/hooks/typography.js.map +1 -1
  215. package/build/hooks/use-color-props.js +3 -3
  216. package/build/hooks/use-color-props.js.map +1 -1
  217. package/build/hooks/utils.js +69 -3
  218. package/build/hooks/utils.js.map +1 -1
  219. package/build/index.js +10 -1
  220. package/build/index.js.map +1 -1
  221. package/build/layouts/constrained.js +3 -0
  222. package/build/layouts/constrained.js.map +1 -1
  223. package/build/layouts/flex.js +59 -9
  224. package/build/layouts/flex.js.map +1 -1
  225. package/build/layouts/flow.js +0 -18
  226. package/build/layouts/flow.js.map +1 -1
  227. package/build/store/actions.js +3 -30
  228. package/build/store/actions.js.map +1 -1
  229. package/build/store/defaults.js +5 -2
  230. package/build/store/defaults.js.map +1 -1
  231. package/build/store/index.js +11 -2
  232. package/build/store/index.js.map +1 -1
  233. package/build/store/private-actions.js +78 -0
  234. package/build/store/private-actions.js.map +1 -0
  235. package/build/store/private-selectors.js +32 -0
  236. package/build/store/private-selectors.js.map +1 -0
  237. package/build/store/reducer.js +1 -1
  238. package/build/store/reducer.js.map +1 -1
  239. package/build/store/selectors.js +60 -48
  240. package/build/store/selectors.js.map +1 -1
  241. package/build/utils/block-variation-transforms.js +1 -1
  242. package/build/utils/block-variation-transforms.js.map +1 -1
  243. package/build/utils/parse-css-unit-to-px.js +1 -1
  244. package/build/utils/parse-css-unit-to-px.js.map +1 -1
  245. package/build/utils/transform-styles/index.js +1 -7
  246. package/build/utils/transform-styles/index.js.map +1 -1
  247. package/build-module/components/alignment-control/ui.js +1 -1
  248. package/build-module/components/alignment-control/ui.js.map +1 -1
  249. package/build-module/components/autocomplete/index.js +2 -6
  250. package/build-module/components/autocomplete/index.js.map +1 -1
  251. package/build-module/components/block-actions/index.js +7 -2
  252. package/build-module/components/block-actions/index.js.map +1 -1
  253. package/build-module/components/block-alignment-matrix-control/index.js +2 -2
  254. package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
  255. package/build-module/components/block-card/index.js +2 -4
  256. package/build-module/components/block-card/index.js.map +1 -1
  257. package/build-module/components/block-edit/index.js +7 -0
  258. package/build-module/components/block-edit/index.js.map +1 -1
  259. package/build-module/components/block-inspector/index.js +15 -14
  260. package/build-module/components/block-inspector/index.js.map +1 -1
  261. package/build-module/components/block-list/use-in-between-inserter.js +5 -0
  262. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  263. package/build-module/components/block-lock/modal.js +0 -1
  264. package/build-module/components/block-lock/modal.js.map +1 -1
  265. package/build-module/components/block-mover/mover-description.js +2 -2
  266. package/build-module/components/block-mover/mover-description.js.map +1 -1
  267. package/build-module/components/block-navigation/dropdown.js +3 -1
  268. package/build-module/components/block-navigation/dropdown.js.map +1 -1
  269. package/build-module/components/block-pattern-setup/index.js +1 -1
  270. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  271. package/build-module/components/block-pattern-setup/use-patterns-setup.js +2 -2
  272. package/build-module/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
  273. package/build-module/components/block-patterns-list/index.js +32 -3
  274. package/build-module/components/block-patterns-list/index.js.map +1 -1
  275. package/build-module/components/block-preview/auto.js +9 -11
  276. package/build-module/components/block-preview/auto.js.map +1 -1
  277. package/build-module/components/block-preview/index.js +31 -8
  278. package/build-module/components/block-preview/index.js.map +1 -1
  279. package/build-module/components/block-selection-clearer/index.js +1 -1
  280. package/build-module/components/block-selection-clearer/index.js.map +1 -1
  281. package/build-module/components/block-settings/container.native.js +6 -30
  282. package/build-module/components/block-settings/container.native.js.map +1 -1
  283. package/build-module/components/block-settings-menu/block-settings-dropdown.js +12 -6
  284. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  285. package/build-module/components/block-settings-menu-controls/index.js +2 -7
  286. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  287. package/build-module/components/block-switcher/utils.js +1 -1
  288. package/build-module/components/block-switcher/utils.js.map +1 -1
  289. package/build-module/components/block-tools/selected-block-popover.js +55 -48
  290. package/build-module/components/block-tools/selected-block-popover.js.map +1 -1
  291. package/build-module/components/block-vertical-alignment-control/icons.js +12 -0
  292. package/build-module/components/block-vertical-alignment-control/icons.js.map +1 -1
  293. package/build-module/components/block-vertical-alignment-control/ui.js +10 -5
  294. package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
  295. package/build-module/components/color-style-selector/index.js +3 -1
  296. package/build-module/components/color-style-selector/index.js.map +1 -1
  297. package/build-module/components/date-format-picker/index.js +4 -5
  298. package/build-module/components/date-format-picker/index.js.map +1 -1
  299. package/build-module/components/font-family/index.js +1 -6
  300. package/build-module/components/font-family/index.js.map +1 -1
  301. package/build-module/components/font-sizes/fluid-utils.js +1 -1
  302. package/build-module/components/font-sizes/fluid-utils.js.map +1 -1
  303. package/build-module/components/font-sizes/utils.js +1 -1
  304. package/build-module/components/font-sizes/utils.js.map +1 -1
  305. package/build-module/components/global-styles/context.js +12 -0
  306. package/build-module/components/global-styles/context.js.map +1 -0
  307. package/build-module/components/global-styles/hooks.js +121 -0
  308. package/build-module/components/global-styles/hooks.js.map +1 -0
  309. package/build-module/components/global-styles/index.js +4 -0
  310. package/build-module/components/global-styles/index.js.map +1 -0
  311. package/build-module/components/global-styles/typography-utils.js +84 -0
  312. package/build-module/components/global-styles/typography-utils.js.map +1 -0
  313. package/build-module/components/global-styles/use-global-styles-output.js +930 -0
  314. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -0
  315. package/build-module/components/global-styles/utils.js +321 -0
  316. package/build-module/components/global-styles/utils.js.map +1 -0
  317. package/build-module/components/height-control/index.js +14 -1
  318. package/build-module/components/height-control/index.js.map +1 -1
  319. package/build-module/components/iframe/index.js +6 -4
  320. package/build-module/components/iframe/index.js.map +1 -1
  321. package/build-module/components/image-editor/constants.js +1 -1
  322. package/build-module/components/image-editor/constants.js.map +1 -1
  323. package/build-module/components/image-editor/context.js +1 -2
  324. package/build-module/components/image-editor/context.js.map +1 -1
  325. package/build-module/components/image-editor/cropper.js +3 -1
  326. package/build-module/components/image-editor/cropper.js.map +1 -1
  327. package/build-module/components/image-editor/index.js +13 -3
  328. package/build-module/components/image-editor/index.js.map +1 -1
  329. package/build-module/components/image-editor/use-transform-image.js +12 -37
  330. package/build-module/components/image-editor/use-transform-image.js.map +1 -1
  331. package/build-module/components/image-size-control/index.js +1 -6
  332. package/build-module/components/image-size-control/index.js.map +1 -1
  333. package/build-module/components/index.js +2 -3
  334. package/build-module/components/index.js.map +1 -1
  335. package/build-module/components/inner-blocks/index.js +21 -32
  336. package/build-module/components/inner-blocks/index.js.map +1 -1
  337. package/build-module/components/inner-blocks/index.native.js +9 -22
  338. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  339. package/build-module/components/inner-blocks/use-block-context.js +43 -0
  340. package/build-module/components/inner-blocks/use-block-context.js.map +1 -0
  341. package/build-module/components/inserter/block-patterns-explorer/explorer.js +0 -1
  342. package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  343. package/build-module/components/inserter/block-patterns-tab.js +9 -2
  344. package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
  345. package/build-module/components/inserter/block-types-tab.js +3 -3
  346. package/build-module/components/inserter/block-types-tab.js.map +1 -1
  347. package/build-module/components/inserter/hooks/use-patterns-state.js +1 -6
  348. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  349. package/build-module/components/inserter/index.js +5 -4
  350. package/build-module/components/inserter/index.js.map +1 -1
  351. package/build-module/components/inserter/media-tab/hooks.js +145 -56
  352. package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
  353. package/build-module/components/inserter/media-tab/media-list.js +74 -24
  354. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  355. package/build-module/components/inserter/media-tab/media-panel.js +14 -14
  356. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  357. package/build-module/components/inserter/media-tab/media-tab.js +7 -4
  358. package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
  359. package/build-module/components/inserter/media-tab/utils.js +27 -15
  360. package/build-module/components/inserter/media-tab/utils.js.map +1 -1
  361. package/build-module/components/inserter/menu.js +4 -0
  362. package/build-module/components/inserter/menu.js.map +1 -1
  363. package/build-module/components/inserter/preview-panel.js +5 -3
  364. package/build-module/components/inserter/preview-panel.js.map +1 -1
  365. package/build-module/components/inserter/search-results.js +2 -6
  366. package/build-module/components/inserter/search-results.js.map +1 -1
  367. package/build-module/components/inserter-list-item/index.js +1 -9
  368. package/build-module/components/inserter-list-item/index.js.map +1 -1
  369. package/build-module/components/inspector-controls/fill.js +14 -2
  370. package/build-module/components/inspector-controls/fill.js.map +1 -1
  371. package/build-module/components/inspector-controls/fill.native.js +13 -1
  372. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  373. package/build-module/components/inspector-controls/groups.js +4 -0
  374. package/build-module/components/inspector-controls/groups.js.map +1 -1
  375. package/build-module/components/inspector-controls/index.js +2 -2
  376. package/build-module/components/inspector-controls/index.js.map +1 -1
  377. package/build-module/components/inspector-controls/slot.js +13 -1
  378. package/build-module/components/inspector-controls/slot.js.map +1 -1
  379. package/build-module/components/inspector-controls/slot.native.js +13 -1
  380. package/build-module/components/inspector-controls/slot.native.js.map +1 -1
  381. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js +1 -1
  382. package/build-module/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
  383. package/build-module/components/inspector-controls-tabs/index.js +2 -2
  384. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  385. package/build-module/components/inspector-controls-tabs/position-controls-panel.js +1 -1
  386. package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
  387. package/build-module/components/inspector-controls-tabs/styles-tab.js +6 -4
  388. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  389. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js +17 -12
  390. package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
  391. package/build-module/components/justify-content-control/ui.js +9 -2
  392. package/build-module/components/justify-content-control/ui.js.map +1 -1
  393. package/build-module/components/link-control/index.js +45 -16
  394. package/build-module/components/link-control/index.js.map +1 -1
  395. package/build-module/components/list-view/block.js +1 -1
  396. package/build-module/components/list-view/block.js.map +1 -1
  397. package/build-module/components/list-view/use-list-view-drop-zone.js +1 -1
  398. package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
  399. package/build-module/components/media-upload/index.native.js +4 -1
  400. package/build-module/components/media-upload/index.native.js.map +1 -1
  401. package/build-module/components/off-canvas-editor/appender.js +47 -4
  402. package/build-module/components/off-canvas-editor/appender.js.map +1 -1
  403. package/build-module/components/off-canvas-editor/block-contents.js +2 -1
  404. package/build-module/components/off-canvas-editor/block-contents.js.map +1 -1
  405. package/build-module/components/off-canvas-editor/block-select-button.js +9 -4
  406. package/build-module/components/off-canvas-editor/block-select-button.js.map +1 -1
  407. package/build-module/components/off-canvas-editor/block.js +6 -25
  408. package/build-module/components/off-canvas-editor/block.js.map +1 -1
  409. package/build-module/components/off-canvas-editor/branch.js +23 -11
  410. package/build-module/components/off-canvas-editor/branch.js.map +1 -1
  411. package/build-module/components/off-canvas-editor/index.js +27 -19
  412. package/build-module/components/off-canvas-editor/index.js.map +1 -1
  413. package/build-module/components/off-canvas-editor/link-ui.js +2 -2
  414. package/build-module/components/off-canvas-editor/link-ui.js.map +1 -1
  415. package/build-module/components/off-canvas-editor/use-list-view-drop-zone.js +1 -1
  416. package/build-module/components/off-canvas-editor/use-list-view-drop-zone.js.map +1 -1
  417. package/build-module/components/provider/index.js +16 -9
  418. package/build-module/components/provider/index.js.map +1 -1
  419. package/build-module/components/provider/index.native.js +4 -4
  420. package/build-module/components/provider/index.native.js.map +1 -1
  421. package/build-module/components/rich-text/use-before-input-rules.js +10 -2
  422. package/build-module/components/rich-text/use-before-input-rules.js.map +1 -1
  423. package/build-module/components/rich-text/utils.js +1 -1
  424. package/build-module/components/rich-text/utils.js.map +1 -1
  425. package/build-module/components/spacing-sizes-control/utils.js +2 -7
  426. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  427. package/build-module/components/tool-selector/index.js +3 -1
  428. package/build-module/components/tool-selector/index.js.map +1 -1
  429. package/build-module/components/url-popover/image-url-input-ui.js +8 -8
  430. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  431. package/build-module/components/use-block-display-information/index.js +1 -1
  432. package/build-module/components/use-block-display-information/index.js.map +1 -1
  433. package/build-module/experiments.js +25 -0
  434. package/build-module/experiments.js.map +1 -0
  435. package/build-module/experiments.native.js +23 -0
  436. package/build-module/experiments.native.js.map +1 -0
  437. package/build-module/hooks/anchor.js +2 -1
  438. package/build-module/hooks/anchor.js.map +1 -1
  439. package/build-module/hooks/border.js +1 -1
  440. package/build-module/hooks/border.js.map +1 -1
  441. package/build-module/hooks/child-layout.js +5 -1
  442. package/build-module/hooks/child-layout.js.map +1 -1
  443. package/build-module/hooks/color-panel.js +1 -1
  444. package/build-module/hooks/color-panel.js.map +1 -1
  445. package/build-module/hooks/color.js +3 -3
  446. package/build-module/hooks/color.js.map +1 -1
  447. package/build-module/hooks/custom-class-name.js +2 -1
  448. package/build-module/hooks/custom-class-name.js.map +1 -1
  449. package/build-module/hooks/dimensions.js +6 -5
  450. package/build-module/hooks/dimensions.js.map +1 -1
  451. package/build-module/hooks/margin.js +1 -0
  452. package/build-module/hooks/margin.js.map +1 -1
  453. package/build-module/hooks/padding.js +1 -0
  454. package/build-module/hooks/padding.js.map +1 -1
  455. package/build-module/hooks/position.js +36 -16
  456. package/build-module/hooks/position.js.map +1 -1
  457. package/build-module/hooks/typography.js +1 -1
  458. package/build-module/hooks/typography.js.map +1 -1
  459. package/build-module/hooks/use-color-props.js +3 -3
  460. package/build-module/hooks/use-color-props.js.map +1 -1
  461. package/build-module/hooks/utils.js +70 -4
  462. package/build-module/hooks/utils.js.map +1 -1
  463. package/build-module/index.js +1 -0
  464. package/build-module/index.js.map +1 -1
  465. package/build-module/layouts/constrained.js +3 -0
  466. package/build-module/layouts/constrained.js.map +1 -1
  467. package/build-module/layouts/flex.js +60 -10
  468. package/build-module/layouts/flex.js.map +1 -1
  469. package/build-module/layouts/flow.js +0 -18
  470. package/build-module/layouts/flow.js.map +1 -1
  471. package/build-module/store/actions.js +2 -26
  472. package/build-module/store/actions.js.map +1 -1
  473. package/build-module/store/defaults.js +5 -2
  474. package/build-module/store/defaults.js.map +1 -1
  475. package/build-module/store/index.js +8 -2
  476. package/build-module/store/index.js.map +1 -1
  477. package/build-module/store/private-actions.js +66 -0
  478. package/build-module/store/private-actions.js.map +1 -0
  479. package/build-module/store/private-selectors.js +23 -0
  480. package/build-module/store/private-selectors.js.map +1 -0
  481. package/build-module/store/reducer.js +1 -1
  482. package/build-module/store/reducer.js.map +1 -1
  483. package/build-module/store/selectors.js +48 -37
  484. package/build-module/store/selectors.js.map +1 -1
  485. package/build-module/utils/block-variation-transforms.js +1 -1
  486. package/build-module/utils/block-variation-transforms.js.map +1 -1
  487. package/build-module/utils/parse-css-unit-to-px.js +1 -1
  488. package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
  489. package/build-module/utils/transform-styles/index.js +1 -6
  490. package/build-module/utils/transform-styles/index.js.map +1 -1
  491. package/build-style/content-rtl.css +283 -3
  492. package/build-style/content.css +283 -3
  493. package/build-style/style-rtl.css +105 -221
  494. package/build-style/style.css +105 -221
  495. package/package.json +30 -29
  496. package/src/components/alignment-control/test/__snapshots__/index.js.snap +3 -3
  497. package/src/components/alignment-control/test/index.js +5 -15
  498. package/src/components/alignment-control/ui.js +1 -1
  499. package/src/components/autocomplete/index.js +3 -6
  500. package/src/components/block-actions/index.js +9 -0
  501. package/src/components/block-alignment-control/test/index.js +3 -11
  502. package/src/components/block-alignment-matrix-control/index.js +1 -2
  503. package/src/components/block-card/index.js +1 -4
  504. package/src/components/block-content-overlay/content.scss +4 -4
  505. package/src/components/block-edit/index.js +15 -1
  506. package/src/components/block-icon/content.scss +31 -0
  507. package/src/components/block-inspector/index.js +13 -17
  508. package/src/components/block-list/use-in-between-inserter.js +5 -0
  509. package/src/components/block-lock/modal.js +0 -1
  510. package/src/components/block-mover/mover-description.js +2 -2
  511. package/src/components/block-mover/stories/index.js +3 -3
  512. package/src/components/block-navigation/dropdown.js +1 -1
  513. package/src/components/block-pattern-setup/index.js +1 -4
  514. package/src/components/block-pattern-setup/use-patterns-setup.js +2 -5
  515. package/src/components/block-patterns-list/index.js +29 -3
  516. package/src/components/block-preview/README.md +9 -9
  517. package/src/components/block-preview/auto.js +9 -11
  518. package/src/components/block-preview/content.scss +23 -0
  519. package/src/components/block-preview/index.js +40 -10
  520. package/src/components/block-preview/style.scss +0 -23
  521. package/src/components/block-selection-clearer/index.js +1 -1
  522. package/src/components/block-selection-clearer/test/index.js +6 -6
  523. package/src/components/block-settings/container.native.js +7 -26
  524. package/src/components/block-settings-menu/block-settings-dropdown.js +13 -5
  525. package/src/components/block-settings-menu-controls/index.js +2 -10
  526. package/src/components/block-switcher/test/index.js +43 -44
  527. package/src/components/block-switcher/utils.js +1 -1
  528. package/src/components/block-tools/selected-block-popover.js +77 -80
  529. package/src/components/block-tools/style.scss +0 -1
  530. package/src/components/block-variation-picker/{style.scss → content.scss} +0 -0
  531. package/src/components/block-vertical-alignment-control/icons.js +12 -0
  532. package/src/components/block-vertical-alignment-control/test/index.js +3 -11
  533. package/src/components/block-vertical-alignment-control/ui.js +16 -6
  534. package/src/components/color-style-selector/index.js +1 -1
  535. package/src/components/colors/test/with-colors.js +2 -8
  536. package/src/components/date-format-picker/index.js +23 -24
  537. package/src/components/date-format-picker/style.scss +0 -6
  538. package/src/components/default-block-appender/content.scss +18 -0
  539. package/src/components/default-block-appender/test/index.js +2 -8
  540. package/src/components/font-family/index.js +1 -6
  541. package/src/components/font-sizes/fluid-utils.js +1 -1
  542. package/src/components/font-sizes/utils.js +1 -1
  543. package/src/components/global-styles/README.md +77 -0
  544. package/src/components/global-styles/context.js +15 -0
  545. package/src/components/global-styles/hooks.js +145 -0
  546. package/src/components/global-styles/index.js +7 -0
  547. package/src/components/global-styles/test/typography-utils.js +393 -0
  548. package/src/components/global-styles/test/use-global-styles-output.js +814 -0
  549. package/src/components/global-styles/test/utils.js +206 -0
  550. package/src/components/global-styles/typography-utils.js +87 -0
  551. package/src/components/global-styles/use-global-styles-output.js +1088 -0
  552. package/src/components/global-styles/utils.js +373 -0
  553. package/src/components/height-control/README.md +55 -0
  554. package/src/components/height-control/index.js +13 -1
  555. package/src/components/iframe/index.js +8 -2
  556. package/src/components/image-editor/constants.js +1 -1
  557. package/src/components/image-editor/context.js +5 -9
  558. package/src/components/image-editor/cropper.js +3 -1
  559. package/src/components/image-editor/index.js +13 -4
  560. package/src/components/image-editor/use-transform-image.js +14 -55
  561. package/src/components/image-size-control/index.js +1 -6
  562. package/src/components/index.js +2 -6
  563. package/src/components/inner-blocks/index.js +29 -33
  564. package/src/components/inner-blocks/index.native.js +27 -47
  565. package/src/components/inner-blocks/use-block-context.js +47 -0
  566. package/src/components/inserter/block-patterns-explorer/explorer.js +0 -1
  567. package/src/components/inserter/block-patterns-tab.js +9 -1
  568. package/src/components/inserter/block-types-tab.js +3 -4
  569. package/src/components/inserter/hooks/use-patterns-state.js +1 -6
  570. package/src/components/inserter/index.js +3 -4
  571. package/src/components/inserter/media-tab/hooks.js +167 -65
  572. package/src/components/inserter/media-tab/media-list.js +94 -26
  573. package/src/components/inserter/media-tab/media-panel.js +9 -20
  574. package/src/components/inserter/media-tab/media-tab.js +12 -4
  575. package/src/components/inserter/media-tab/utils.js +20 -10
  576. package/src/components/inserter/menu.js +8 -0
  577. package/src/components/inserter/preview-panel.js +4 -2
  578. package/src/components/inserter/search-results.js +2 -6
  579. package/src/components/inserter/stories/index.js +9 -9
  580. package/src/components/inserter/style.scss +58 -11
  581. package/src/components/inserter-list-item/index.js +0 -7
  582. package/src/components/inspector-controls/README.md +3 -7
  583. package/src/components/inspector-controls/fill.js +15 -1
  584. package/src/components/inspector-controls/fill.native.js +14 -1
  585. package/src/components/inspector-controls/groups.js +3 -0
  586. package/src/components/inspector-controls/index.js +2 -6
  587. package/src/components/inspector-controls/slot.js +14 -1
  588. package/src/components/inspector-controls/slot.native.js +14 -1
  589. package/src/components/inspector-controls-tabs/advanced-controls-panel.js +1 -1
  590. package/src/components/inspector-controls-tabs/index.js +2 -4
  591. package/src/components/inspector-controls-tabs/position-controls-panel.js +1 -1
  592. package/src/components/inspector-controls-tabs/styles-tab.js +5 -7
  593. package/src/components/inspector-controls-tabs/use-inspector-controls-tabs.js +21 -10
  594. package/src/components/justify-content-control/ui.js +9 -0
  595. package/src/components/link-control/index.js +59 -23
  596. package/src/components/link-control/style.scss +7 -24
  597. package/src/components/link-control/test/index.js +134 -5
  598. package/src/components/list-view/block.js +1 -1
  599. package/src/components/list-view/use-list-view-drop-zone.js +1 -1
  600. package/src/components/media-replace-flow/test/index.js +4 -12
  601. package/src/components/media-upload/index.native.js +2 -2
  602. package/src/components/off-canvas-editor/README.md +2 -2
  603. package/src/components/off-canvas-editor/appender.js +93 -37
  604. package/src/components/off-canvas-editor/block-contents.js +2 -1
  605. package/src/components/off-canvas-editor/block-select-button.js +12 -1
  606. package/src/components/off-canvas-editor/block.js +3 -42
  607. package/src/components/off-canvas-editor/branch.js +32 -5
  608. package/src/components/off-canvas-editor/index.js +20 -20
  609. package/src/components/off-canvas-editor/link-ui.js +2 -2
  610. package/src/components/off-canvas-editor/style.scss +5 -1
  611. package/src/components/off-canvas-editor/use-list-view-drop-zone.js +1 -1
  612. package/src/components/provider/index.js +33 -14
  613. package/src/components/provider/index.native.js +4 -3
  614. package/src/components/provider/test/experimental-provider.js +94 -0
  615. package/src/components/provider/test/use-block-sync.js +10 -0
  616. package/src/components/responsive-block-control/test/index.js +1 -5
  617. package/src/components/rich-text/use-before-input-rules.js +10 -2
  618. package/src/components/rich-text/utils.js +1 -1
  619. package/src/components/spacing-sizes-control/utils.js +2 -7
  620. package/src/components/tool-selector/index.js +1 -1
  621. package/src/components/url-input/test/button.js +24 -24
  622. package/src/components/url-popover/image-url-input-ui.js +7 -8
  623. package/src/components/url-popover/style.scss +0 -10
  624. package/src/components/use-block-display-information/index.js +1 -1
  625. package/src/components/warning/{style.scss → content.scss} +0 -0
  626. package/src/components/warning/test/index.js +1 -5
  627. package/src/content.scss +7 -0
  628. package/src/experiments.js +27 -0
  629. package/src/experiments.native.js +25 -0
  630. package/src/hooks/anchor.js +2 -1
  631. package/src/hooks/border.js +1 -1
  632. package/src/hooks/child-layout.js +6 -1
  633. package/src/hooks/color-panel.js +1 -1
  634. package/src/hooks/color.js +3 -3
  635. package/src/hooks/custom-class-name.js +2 -1
  636. package/src/hooks/dimensions.js +6 -6
  637. package/src/hooks/layout.scss +4 -0
  638. package/src/hooks/margin.js +1 -0
  639. package/src/hooks/padding.js +1 -0
  640. package/src/hooks/position.js +56 -36
  641. package/src/hooks/test/align.native.js +1 -1
  642. package/src/hooks/test/utils.js +104 -0
  643. package/src/hooks/typography.js +1 -1
  644. package/src/hooks/use-color-props.js +3 -3
  645. package/src/hooks/utils.js +68 -2
  646. package/src/index.js +1 -0
  647. package/src/layouts/constrained.js +3 -0
  648. package/src/layouts/flex.js +66 -14
  649. package/src/layouts/flow.js +0 -9
  650. package/src/store/actions.js +2 -26
  651. package/src/store/defaults.js +7 -2
  652. package/src/store/index.js +8 -2
  653. package/src/store/private-actions.js +65 -0
  654. package/src/store/private-selectors.js +20 -0
  655. package/src/store/reducer.js +1 -1
  656. package/src/store/selectors.js +103 -62
  657. package/src/store/test/actions.js +0 -18
  658. package/src/store/test/private-actions.js +22 -0
  659. package/src/store/test/private-selectors.js +52 -0
  660. package/src/store/test/selectors.js +52 -54
  661. package/src/style.scss +3 -5
  662. package/src/utils/block-variation-transforms.js +1 -1
  663. package/src/utils/parse-css-unit-to-px.js +3 -1
  664. package/src/utils/test/parse-css-unit-to-px.js +16 -24
  665. package/src/utils/transform-styles/index.js +1 -6
  666. package/build/components/inner-blocks/get-block-context.js +0 -45
  667. package/build/components/inner-blocks/get-block-context.js.map +0 -1
  668. package/build/components/off-canvas-editor/block-edit-button.js +0 -50
  669. package/build/components/off-canvas-editor/block-edit-button.js.map +0 -1
  670. package/build-module/components/inner-blocks/get-block-context.js +0 -37
  671. package/build-module/components/inner-blocks/get-block-context.js.map +0 -1
  672. package/build-module/components/off-canvas-editor/block-edit-button.js +0 -35
  673. package/build-module/components/off-canvas-editor/block-edit-button.js.map +0 -1
  674. package/src/components/inner-blocks/get-block-context.js +0 -39
  675. package/src/components/off-canvas-editor/block-edit-button.js +0 -27
package/CHANGELOG.md CHANGED
@@ -2,11 +2,16 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 11.3.0 (2023-02-01)
6
+
5
7
  ## 11.2.0 (2023-01-11)
6
8
 
7
9
  ### Bug Fix
8
10
 
9
11
  - `BlockInspector`: Fix browser warning error when block is not selected ([#46875](https://github.com/WordPress/gutenberg/pull/46875)).
12
+ - Move component styles needed for iframes to content styles ([#47103](https://github.com/WordPress/gutenberg/pull/47103)).
13
+ - Block Inserter: Correctly apply style to the default inserter ([#47166](https://github.com/WordPress/gutenberg/pull/47166)).
14
+ - List View: Fix crash when the first template-parts is deleted width del key ([#47227](https://github.com/WordPress/gutenberg/pull/47227)).
10
15
 
11
16
  ## 11.1.0 (2023-01-02)
12
17
 
package/README.md CHANGED
@@ -348,6 +348,10 @@ _Returns_
348
348
 
349
349
  Undocumented declaration.
350
350
 
351
+ ### experiments
352
+
353
+ Experimental @wordpress/block-editor APIs.
354
+
351
355
  ### FontSizePicker
352
356
 
353
357
  _Related_
@@ -397,7 +401,7 @@ _Returns_
397
401
 
398
402
  ### getComputedFluidTypographyValue
399
403
 
400
- Computes a fluid font-size value that uses clamp(). A minimum and maxinmum
404
+ Computes a fluid font-size value that uses clamp(). A minimum and maximum
401
405
  font size OR a single font size can be specified.
402
406
 
403
407
  If a single font size is specified, it is scaled up and down by
@@ -459,7 +463,7 @@ _Parameters_
459
463
 
460
464
  _Returns_
461
465
 
462
- - `string`: String with the class corresponding to the fontSize passed. The class is generated by appending 'has-' followed by fontSizeSlug in kebabCase and ending with '-font-size'.
466
+ - `string | undefined`: String with the class corresponding to the fontSize passed. The class is generated by appending 'has-' followed by fontSizeSlug in kebabCase and ending with '-font-size'.
463
467
 
464
468
  ### getFontSizeObjectByValue
465
469
 
@@ -527,6 +531,25 @@ _Returns_
527
531
 
528
532
  - `Object`: Typography block support derived CSS classes & styles.
529
533
 
534
+ ### HeightControl
535
+
536
+ HeightControl renders a linked unit control and range control for adjusting the height of a block.
537
+
538
+ _Related_
539
+
540
+ - <https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/height-control/README.md>
541
+
542
+ _Parameters_
543
+
544
+ - _props_ `Object`:
545
+ - _props.label_ `?string`: A label for the control.
546
+ - _props.onChange_ `( value: string ) => void`: Called when the height changes.
547
+ - _props.value_ `string`: The current height value.
548
+
549
+ _Returns_
550
+
551
+ - `WPComponent`: The component to be rendered.
552
+
530
553
  ### InnerBlocks
531
554
 
532
555
  _Related_
@@ -655,8 +678,9 @@ _Properties_
655
678
  - _canLockBlocks_ `boolean`: Whether the user can manage Block Lock state
656
679
  - _codeEditingEnabled_ `boolean`: Whether or not the user can switch to the code editor
657
680
  - _generateAnchors_ `boolean`: Enable/Disable auto anchor generation for Heading blocks
681
+ - _enableOpenverseMediaCategory_ `boolean`: Enable/Disable the Openverse media category in the inserter.
682
+ - _clearBlockSelection_ `boolean`: Whether the block editor should clear selection on mousedown when a block is not clicked.
658
683
  - _\_\_experimentalCanUserUseUnfilteredHTML_ `boolean`: Whether the user should be able to use unfiltered HTML or the HTML should be filtered e.g., to remove elements considered insecure like iframes.
659
- - _\_\_experimentalClearBlockSelection_ `boolean`: Whether the block editor should clear selection on mousedown when a block is not clicked.
660
684
  - _\_\_experimentalBlockDirectory_ `boolean`: Whether the user has enabled the Block Directory
661
685
  - _\_\_experimentalBlockPatterns_ `Array`: Array of objects representing the block patterns
662
686
  - _\_\_experimentalBlockPatternCategories_ `Array`: Array of objects representing the block pattern categories
@@ -733,7 +757,7 @@ to try to find a match we need to things:
733
757
  1\. Block's client id to extract it's current attributes.
734
758
  2\. A block variation should have set `isActive` prop to a proper function.
735
759
 
736
- If for any reason a block variaton match cannot be found,
760
+ If for any reason a block variation match cannot be found,
737
761
  the returned information come from the Block Type.
738
762
  If no blockType is found with the provided clientId, returns null.
739
763
 
@@ -43,7 +43,7 @@ function AlignmentUI(_ref) {
43
43
  value,
44
44
  onChange,
45
45
  alignmentControls = DEFAULT_ALIGNMENT_CONTROLS,
46
- label = (0, _i18n.__)('Align'),
46
+ label = (0, _i18n.__)('Align text'),
47
47
  describedBy = (0, _i18n.__)('Change text alignment'),
48
48
  isCollapsed = true,
49
49
  isToolbar
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/alignment-control/ui.js"],"names":["DEFAULT_ALIGNMENT_CONTROLS","icon","alignLeft","title","align","alignCenter","alignRight","POPOVER_PROPS","position","variant","AlignmentUI","value","onChange","alignmentControls","label","describedBy","isCollapsed","isToolbar","applyOrUnset","undefined","activeAlignment","find","control","setIcon","UIComponent","ToolbarGroup","ToolbarDropdownMenu","extraProps","toggleProps","popoverProps","map","isActive","role","onClick"],"mappings":";;;;;;;;;;;;;AAGA;;AACA;;AACA;;AALA;AACA;AACA;AAKA,MAAMA,0BAA0B,GAAG,CAClC;AACCC,EAAAA,IAAI,EAAEC,gBADP;AAECC,EAAAA,KAAK,EAAE,cAAI,iBAAJ,CAFR;AAGCC,EAAAA,KAAK,EAAE;AAHR,CADkC,EAMlC;AACCH,EAAAA,IAAI,EAAEI,kBADP;AAECF,EAAAA,KAAK,EAAE,cAAI,mBAAJ,CAFR;AAGCC,EAAAA,KAAK,EAAE;AAHR,CANkC,EAWlC;AACCH,EAAAA,IAAI,EAAEK,iBADP;AAECH,EAAAA,KAAK,EAAE,cAAI,kBAAJ,CAFR;AAGCC,EAAAA,KAAK,EAAE;AAHR,CAXkC,CAAnC;AAkBA,MAAMG,aAAa,GAAG;AACrBC,EAAAA,QAAQ,EAAE,cADW;AAErBC,EAAAA,OAAO,EAAE;AAFY,CAAtB;;AAKA,SAASC,WAAT,OAQI;AAAA,MARkB;AACrBC,IAAAA,KADqB;AAErBC,IAAAA,QAFqB;AAGrBC,IAAAA,iBAAiB,GAAGb,0BAHC;AAIrBc,IAAAA,KAAK,GAAG,cAAI,OAAJ,CAJa;AAKrBC,IAAAA,WAAW,GAAG,cAAI,uBAAJ,CALO;AAMrBC,IAAAA,WAAW,GAAG,IANO;AAOrBC,IAAAA;AAPqB,GAQlB;;AACH,WAASC,YAAT,CAAuBd,KAAvB,EAA+B;AAC9B,WAAO,MAAMQ,QAAQ,CAAED,KAAK,KAAKP,KAAV,GAAkBe,SAAlB,GAA8Bf,KAAhC,CAArB;AACA;;AAED,QAAMgB,eAAe,GAAGP,iBAAiB,CAACQ,IAAlB,CACrBC,OAAF,IAAeA,OAAO,CAAClB,KAAR,KAAkBO,KADV,CAAxB;;AAIA,WAASY,OAAT,GAAmB;AAClB,QAAKH,eAAL,EAAuB,OAAOA,eAAe,CAACnB,IAAvB;AACvB,WAAO,qBAAUK,iBAAV,GAAuBJ,gBAA9B;AACA;;AAED,QAAMsB,WAAW,GAAGP,SAAS,GAAGQ,wBAAH,GAAkBC,+BAA/C;AACA,QAAMC,UAAU,GAAGV,SAAS,GACzB;AAAED,IAAAA;AAAF,GADyB,GAEzB;AACAY,IAAAA,WAAW,EAAE;AACZb,MAAAA;AADY,KADb;AAIAc,IAAAA,YAAY,EAAEtB;AAJd,GAFH;AASA,SACC,4BAAC,WAAD;AACC,IAAA,IAAI,EAAGgB,OAAO,EADf;AAEC,IAAA,KAAK,EAAGT,KAFT;AAGC,IAAA,QAAQ,EAAGD,iBAAiB,CAACiB,GAAlB,CAAyBR,OAAF,IAAe;AAChD,YAAM;AAAElB,QAAAA;AAAF,UAAYkB,OAAlB;AACA,YAAMS,QAAQ,GAAGpB,KAAK,KAAKP,KAA3B;AAEA,aAAO,EACN,GAAGkB,OADG;AAENS,QAAAA,QAFM;AAGNC,QAAAA,IAAI,EAAEhB,WAAW,GAAG,eAAH,GAAqBG,SAHhC;AAINc,QAAAA,OAAO,EAAEf,YAAY,CAAEd,KAAF;AAJf,OAAP;AAMA,KAVU;AAHZ,KAcMuB,UAdN,EADD;AAkBA;;eAEcjB,W","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport { ToolbarDropdownMenu, ToolbarGroup } from '@wordpress/components';\nimport { alignLeft, alignRight, alignCenter } from '@wordpress/icons';\n\nconst DEFAULT_ALIGNMENT_CONTROLS = [\n\t{\n\t\ticon: alignLeft,\n\t\ttitle: __( 'Align text left' ),\n\t\talign: 'left',\n\t},\n\t{\n\t\ticon: alignCenter,\n\t\ttitle: __( 'Align text center' ),\n\t\talign: 'center',\n\t},\n\t{\n\t\ticon: alignRight,\n\t\ttitle: __( 'Align text right' ),\n\t\talign: 'right',\n\t},\n];\n\nconst POPOVER_PROPS = {\n\tposition: 'bottom right',\n\tvariant: 'toolbar',\n};\n\nfunction AlignmentUI( {\n\tvalue,\n\tonChange,\n\talignmentControls = DEFAULT_ALIGNMENT_CONTROLS,\n\tlabel = __( 'Align' ),\n\tdescribedBy = __( 'Change text alignment' ),\n\tisCollapsed = true,\n\tisToolbar,\n} ) {\n\tfunction applyOrUnset( align ) {\n\t\treturn () => onChange( value === align ? undefined : align );\n\t}\n\n\tconst activeAlignment = alignmentControls.find(\n\t\t( control ) => control.align === value\n\t);\n\n\tfunction setIcon() {\n\t\tif ( activeAlignment ) return activeAlignment.icon;\n\t\treturn isRTL() ? alignRight : alignLeft;\n\t}\n\n\tconst UIComponent = isToolbar ? ToolbarGroup : ToolbarDropdownMenu;\n\tconst extraProps = isToolbar\n\t\t? { isCollapsed }\n\t\t: {\n\t\t\t\ttoggleProps: {\n\t\t\t\t\tdescribedBy,\n\t\t\t\t},\n\t\t\t\tpopoverProps: POPOVER_PROPS,\n\t\t };\n\n\treturn (\n\t\t<UIComponent\n\t\t\ticon={ setIcon() }\n\t\t\tlabel={ label }\n\t\t\tcontrols={ alignmentControls.map( ( control ) => {\n\t\t\t\tconst { align } = control;\n\t\t\t\tconst isActive = value === align;\n\n\t\t\t\treturn {\n\t\t\t\t\t...control,\n\t\t\t\t\tisActive,\n\t\t\t\t\trole: isCollapsed ? 'menuitemradio' : undefined,\n\t\t\t\t\tonClick: applyOrUnset( align ),\n\t\t\t\t};\n\t\t\t} ) }\n\t\t\t{ ...extraProps }\n\t\t/>\n\t);\n}\n\nexport default AlignmentUI;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/alignment-control/ui.js"],"names":["DEFAULT_ALIGNMENT_CONTROLS","icon","alignLeft","title","align","alignCenter","alignRight","POPOVER_PROPS","position","variant","AlignmentUI","value","onChange","alignmentControls","label","describedBy","isCollapsed","isToolbar","applyOrUnset","undefined","activeAlignment","find","control","setIcon","UIComponent","ToolbarGroup","ToolbarDropdownMenu","extraProps","toggleProps","popoverProps","map","isActive","role","onClick"],"mappings":";;;;;;;;;;;;;AAGA;;AACA;;AACA;;AALA;AACA;AACA;AAKA,MAAMA,0BAA0B,GAAG,CAClC;AACCC,EAAAA,IAAI,EAAEC,gBADP;AAECC,EAAAA,KAAK,EAAE,cAAI,iBAAJ,CAFR;AAGCC,EAAAA,KAAK,EAAE;AAHR,CADkC,EAMlC;AACCH,EAAAA,IAAI,EAAEI,kBADP;AAECF,EAAAA,KAAK,EAAE,cAAI,mBAAJ,CAFR;AAGCC,EAAAA,KAAK,EAAE;AAHR,CANkC,EAWlC;AACCH,EAAAA,IAAI,EAAEK,iBADP;AAECH,EAAAA,KAAK,EAAE,cAAI,kBAAJ,CAFR;AAGCC,EAAAA,KAAK,EAAE;AAHR,CAXkC,CAAnC;AAkBA,MAAMG,aAAa,GAAG;AACrBC,EAAAA,QAAQ,EAAE,cADW;AAErBC,EAAAA,OAAO,EAAE;AAFY,CAAtB;;AAKA,SAASC,WAAT,OAQI;AAAA,MARkB;AACrBC,IAAAA,KADqB;AAErBC,IAAAA,QAFqB;AAGrBC,IAAAA,iBAAiB,GAAGb,0BAHC;AAIrBc,IAAAA,KAAK,GAAG,cAAI,YAAJ,CAJa;AAKrBC,IAAAA,WAAW,GAAG,cAAI,uBAAJ,CALO;AAMrBC,IAAAA,WAAW,GAAG,IANO;AAOrBC,IAAAA;AAPqB,GAQlB;;AACH,WAASC,YAAT,CAAuBd,KAAvB,EAA+B;AAC9B,WAAO,MAAMQ,QAAQ,CAAED,KAAK,KAAKP,KAAV,GAAkBe,SAAlB,GAA8Bf,KAAhC,CAArB;AACA;;AAED,QAAMgB,eAAe,GAAGP,iBAAiB,CAACQ,IAAlB,CACrBC,OAAF,IAAeA,OAAO,CAAClB,KAAR,KAAkBO,KADV,CAAxB;;AAIA,WAASY,OAAT,GAAmB;AAClB,QAAKH,eAAL,EAAuB,OAAOA,eAAe,CAACnB,IAAvB;AACvB,WAAO,qBAAUK,iBAAV,GAAuBJ,gBAA9B;AACA;;AAED,QAAMsB,WAAW,GAAGP,SAAS,GAAGQ,wBAAH,GAAkBC,+BAA/C;AACA,QAAMC,UAAU,GAAGV,SAAS,GACzB;AAAED,IAAAA;AAAF,GADyB,GAEzB;AACAY,IAAAA,WAAW,EAAE;AACZb,MAAAA;AADY,KADb;AAIAc,IAAAA,YAAY,EAAEtB;AAJd,GAFH;AASA,SACC,4BAAC,WAAD;AACC,IAAA,IAAI,EAAGgB,OAAO,EADf;AAEC,IAAA,KAAK,EAAGT,KAFT;AAGC,IAAA,QAAQ,EAAGD,iBAAiB,CAACiB,GAAlB,CAAyBR,OAAF,IAAe;AAChD,YAAM;AAAElB,QAAAA;AAAF,UAAYkB,OAAlB;AACA,YAAMS,QAAQ,GAAGpB,KAAK,KAAKP,KAA3B;AAEA,aAAO,EACN,GAAGkB,OADG;AAENS,QAAAA,QAFM;AAGNC,QAAAA,IAAI,EAAEhB,WAAW,GAAG,eAAH,GAAqBG,SAHhC;AAINc,QAAAA,OAAO,EAAEf,YAAY,CAAEd,KAAF;AAJf,OAAP;AAMA,KAVU;AAHZ,KAcMuB,UAdN,EADD;AAkBA;;eAEcjB,W","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport { ToolbarDropdownMenu, ToolbarGroup } from '@wordpress/components';\nimport { alignLeft, alignRight, alignCenter } from '@wordpress/icons';\n\nconst DEFAULT_ALIGNMENT_CONTROLS = [\n\t{\n\t\ticon: alignLeft,\n\t\ttitle: __( 'Align text left' ),\n\t\talign: 'left',\n\t},\n\t{\n\t\ticon: alignCenter,\n\t\ttitle: __( 'Align text center' ),\n\t\talign: 'center',\n\t},\n\t{\n\t\ticon: alignRight,\n\t\ttitle: __( 'Align text right' ),\n\t\talign: 'right',\n\t},\n];\n\nconst POPOVER_PROPS = {\n\tposition: 'bottom right',\n\tvariant: 'toolbar',\n};\n\nfunction AlignmentUI( {\n\tvalue,\n\tonChange,\n\talignmentControls = DEFAULT_ALIGNMENT_CONTROLS,\n\tlabel = __( 'Align text' ),\n\tdescribedBy = __( 'Change text alignment' ),\n\tisCollapsed = true,\n\tisToolbar,\n} ) {\n\tfunction applyOrUnset( align ) {\n\t\treturn () => onChange( value === align ? undefined : align );\n\t}\n\n\tconst activeAlignment = alignmentControls.find(\n\t\t( control ) => control.align === value\n\t);\n\n\tfunction setIcon() {\n\t\tif ( activeAlignment ) return activeAlignment.icon;\n\t\treturn isRTL() ? alignRight : alignLeft;\n\t}\n\n\tconst UIComponent = isToolbar ? ToolbarGroup : ToolbarDropdownMenu;\n\tconst extraProps = isToolbar\n\t\t? { isCollapsed }\n\t\t: {\n\t\t\t\ttoggleProps: {\n\t\t\t\t\tdescribedBy,\n\t\t\t\t},\n\t\t\t\tpopoverProps: POPOVER_PROPS,\n\t\t };\n\n\treturn (\n\t\t<UIComponent\n\t\t\ticon={ setIcon() }\n\t\t\tlabel={ label }\n\t\t\tcontrols={ alignmentControls.map( ( control ) => {\n\t\t\t\tconst { align } = control;\n\t\t\t\tconst isActive = value === align;\n\n\t\t\t\treturn {\n\t\t\t\t\t...control,\n\t\t\t\t\tisActive,\n\t\t\t\t\trole: isCollapsed ? 'menuitemradio' : undefined,\n\t\t\t\t\tonClick: applyOrUnset( align ),\n\t\t\t\t};\n\t\t\t} ) }\n\t\t\t{ ...extraProps }\n\t\t/>\n\t);\n}\n\nexport default AlignmentUI;\n"]}
@@ -12,8 +12,6 @@ var _element = require("@wordpress/element");
12
12
 
13
13
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
14
14
 
15
- var _lodash = require("lodash");
16
-
17
15
  var _hooks = require("@wordpress/hooks");
18
16
 
19
17
  var _components = require("@wordpress/components");
@@ -26,10 +24,6 @@ var _block = _interopRequireDefault(require("../../autocompleters/block"));
26
24
 
27
25
  var _link = _interopRequireDefault(require("../../autocompleters/link"));
28
26
 
29
- /**
30
- * External dependencies
31
- */
32
-
33
27
  /**
34
28
  * WordPress dependencies
35
29
  */
@@ -63,7 +57,8 @@ function useCompleters(_ref) {
63
57
  if ((0, _hooks.hasFilter)('editor.Autocomplete.completers')) {
64
58
  // Provide copies so filters may directly modify them.
65
59
  if (filteredCompleters === completers) {
66
- filteredCompleters = filteredCompleters.map(_lodash.clone);
60
+ filteredCompleters = filteredCompleters.map(completer => ({ ...completer
61
+ }));
67
62
  }
68
63
 
69
64
  filteredCompleters = (0, _hooks.applyFilters)('editor.Autocomplete.completers', filteredCompleters, name);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/autocomplete/index.js"],"names":["EMPTY_ARRAY","useCompleters","completers","name","filteredCompleters","linkAutocompleter","blockAutocompleter","map","clone","useBlockEditorAutocompleteProps","props","BlockEditorAutocomplete"],"mappings":";;;;;;;;;;AAaA;;;;AAVA;;AAKA;;AACA;;AAKA;;AAKA;;AACA;;AACA;;AArBA;AACA;AACA;;AAGA;AACA;AACA;;AASA;AACA;AACA;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,WAAW,GAAG,EAApB;;AAEA,SAASC,aAAT,OAAuD;AAAA,MAA/B;AAAEC,IAAAA,UAAU,GAAGF;AAAf,GAA+B;AACtD,QAAM;AAAEG,IAAAA;AAAF,MAAW,mCAAjB;AACA,SAAO,sBAAS,MAAM;AACrB,QAAIC,kBAAkB,GAAG,CAAE,GAAGF,UAAL,EAAiBG,aAAjB,CAAzB;;AAEA,QACCF,IAAI,KAAK,kCAAT,IACA,6BAAiBA,IAAjB,EAAuB,6BAAvB,EAAsD,KAAtD,CAFD,EAGE;AACDC,MAAAA,kBAAkB,GAAG,CAAE,GAAGA,kBAAL,EAAyBE,cAAzB,CAArB;AACA;;AAED,QAAK,sBAAW,gCAAX,CAAL,EAAqD;AACpD;AACA,UAAKF,kBAAkB,KAAKF,UAA5B,EAAyC;AACxCE,QAAAA,kBAAkB,GAAGA,kBAAkB,CAACG,GAAnB,CAAwBC,aAAxB,CAArB;AACA;;AAEDJ,MAAAA,kBAAkB,GAAG,yBACpB,gCADoB,EAEpBA,kBAFoB,EAGpBD,IAHoB,CAArB;AAKA;;AAED,WAAOC,kBAAP;AACA,GAxBM,EAwBJ,CAAEF,UAAF,EAAcC,IAAd,CAxBI,CAAP;AAyBA;;AAEM,SAASM,+BAAT,CAA0CC,KAA1C,EAAkD;AACxD,SAAO,gDAAsB,EAC5B,GAAGA,KADyB;AAE5BR,IAAAA,UAAU,EAAED,aAAa,CAAES,KAAF;AAFG,GAAtB,CAAP;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASC,uBAAT,CAAkCD,KAAlC,EAA0C;AACzC,SAAO,4BAAC,wBAAD,6BAAmBA,KAAnB;AAA2B,IAAA,UAAU,EAAGT,aAAa,CAAES,KAAF;AAArD,KAAP;AACA;AAED;AACA;AACA;;;eACeC,uB","sourcesContent":["/**\n * External dependencies\n */\nimport { clone } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { applyFilters, hasFilter } from '@wordpress/hooks';\nimport {\n\tAutocomplete,\n\t__unstableUseAutocompleteProps as useAutocompleteProps,\n} from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\nimport { getDefaultBlockName, getBlockSupport } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { useBlockEditContext } from '../block-edit/context';\nimport blockAutocompleter from '../../autocompleters/block';\nimport linkAutocompleter from '../../autocompleters/link';\n\n/**\n * Shared reference to an empty array for cases where it is important to avoid\n * returning a new array reference on every invocation.\n *\n * @type {Array}\n */\nconst EMPTY_ARRAY = [];\n\nfunction useCompleters( { completers = EMPTY_ARRAY } ) {\n\tconst { name } = useBlockEditContext();\n\treturn useMemo( () => {\n\t\tlet filteredCompleters = [ ...completers, linkAutocompleter ];\n\n\t\tif (\n\t\t\tname === getDefaultBlockName() ||\n\t\t\tgetBlockSupport( name, '__experimentalSlashInserter', false )\n\t\t) {\n\t\t\tfilteredCompleters = [ ...filteredCompleters, blockAutocompleter ];\n\t\t}\n\n\t\tif ( hasFilter( 'editor.Autocomplete.completers' ) ) {\n\t\t\t// Provide copies so filters may directly modify them.\n\t\t\tif ( filteredCompleters === completers ) {\n\t\t\t\tfilteredCompleters = filteredCompleters.map( clone );\n\t\t\t}\n\n\t\t\tfilteredCompleters = applyFilters(\n\t\t\t\t'editor.Autocomplete.completers',\n\t\t\t\tfilteredCompleters,\n\t\t\t\tname\n\t\t\t);\n\t\t}\n\n\t\treturn filteredCompleters;\n\t}, [ completers, name ] );\n}\n\nexport function useBlockEditorAutocompleteProps( props ) {\n\treturn useAutocompleteProps( {\n\t\t...props,\n\t\tcompleters: useCompleters( props ),\n\t} );\n}\n\n/**\n * Wrap the default Autocomplete component with one that supports a filter hook\n * for customizing its list of autocompleters.\n *\n * @type {import('react').FC}\n */\nfunction BlockEditorAutocomplete( props ) {\n\treturn <Autocomplete { ...props } completers={ useCompleters( props ) } />;\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/autocomplete/README.md\n */\nexport default BlockEditorAutocomplete;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/autocomplete/index.js"],"names":["EMPTY_ARRAY","useCompleters","completers","name","filteredCompleters","linkAutocompleter","blockAutocompleter","map","completer","useBlockEditorAutocompleteProps","props","BlockEditorAutocomplete"],"mappings":";;;;;;;;;;AAQA;;;;AALA;;AACA;;AAKA;;AAKA;;AACA;;AACA;;AAhBA;AACA;AACA;;AASA;AACA;AACA;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,WAAW,GAAG,EAApB;;AAEA,SAASC,aAAT,OAAuD;AAAA,MAA/B;AAAEC,IAAAA,UAAU,GAAGF;AAAf,GAA+B;AACtD,QAAM;AAAEG,IAAAA;AAAF,MAAW,mCAAjB;AACA,SAAO,sBAAS,MAAM;AACrB,QAAIC,kBAAkB,GAAG,CAAE,GAAGF,UAAL,EAAiBG,aAAjB,CAAzB;;AAEA,QACCF,IAAI,KAAK,kCAAT,IACA,6BAAiBA,IAAjB,EAAuB,6BAAvB,EAAsD,KAAtD,CAFD,EAGE;AACDC,MAAAA,kBAAkB,GAAG,CAAE,GAAGA,kBAAL,EAAyBE,cAAzB,CAArB;AACA;;AAED,QAAK,sBAAW,gCAAX,CAAL,EAAqD;AACpD;AACA,UAAKF,kBAAkB,KAAKF,UAA5B,EAAyC;AACxCE,QAAAA,kBAAkB,GAAGA,kBAAkB,CAACG,GAAnB,CAClBC,SAAF,KAAmB,EAAE,GAAGA;AAAL,SAAnB,CADoB,CAArB;AAGA;;AAEDJ,MAAAA,kBAAkB,GAAG,yBACpB,gCADoB,EAEpBA,kBAFoB,EAGpBD,IAHoB,CAArB;AAKA;;AAED,WAAOC,kBAAP;AACA,GA1BM,EA0BJ,CAAEF,UAAF,EAAcC,IAAd,CA1BI,CAAP;AA2BA;;AAEM,SAASM,+BAAT,CAA0CC,KAA1C,EAAkD;AACxD,SAAO,gDAAsB,EAC5B,GAAGA,KADyB;AAE5BR,IAAAA,UAAU,EAAED,aAAa,CAAES,KAAF;AAFG,GAAtB,CAAP;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASC,uBAAT,CAAkCD,KAAlC,EAA0C;AACzC,SAAO,4BAAC,wBAAD,6BAAmBA,KAAnB;AAA2B,IAAA,UAAU,EAAGT,aAAa,CAAES,KAAF;AAArD,KAAP;AACA;AAED;AACA;AACA;;;eACeC,uB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { applyFilters, hasFilter } from '@wordpress/hooks';\nimport {\n\tAutocomplete,\n\t__unstableUseAutocompleteProps as useAutocompleteProps,\n} from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\nimport { getDefaultBlockName, getBlockSupport } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { useBlockEditContext } from '../block-edit/context';\nimport blockAutocompleter from '../../autocompleters/block';\nimport linkAutocompleter from '../../autocompleters/link';\n\n/**\n * Shared reference to an empty array for cases where it is important to avoid\n * returning a new array reference on every invocation.\n *\n * @type {Array}\n */\nconst EMPTY_ARRAY = [];\n\nfunction useCompleters( { completers = EMPTY_ARRAY } ) {\n\tconst { name } = useBlockEditContext();\n\treturn useMemo( () => {\n\t\tlet filteredCompleters = [ ...completers, linkAutocompleter ];\n\n\t\tif (\n\t\t\tname === getDefaultBlockName() ||\n\t\t\tgetBlockSupport( name, '__experimentalSlashInserter', false )\n\t\t) {\n\t\t\tfilteredCompleters = [ ...filteredCompleters, blockAutocompleter ];\n\t\t}\n\n\t\tif ( hasFilter( 'editor.Autocomplete.completers' ) ) {\n\t\t\t// Provide copies so filters may directly modify them.\n\t\t\tif ( filteredCompleters === completers ) {\n\t\t\t\tfilteredCompleters = filteredCompleters.map(\n\t\t\t\t\t( completer ) => ( { ...completer } )\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tfilteredCompleters = applyFilters(\n\t\t\t\t'editor.Autocomplete.completers',\n\t\t\t\tfilteredCompleters,\n\t\t\t\tname\n\t\t\t);\n\t\t}\n\n\t\treturn filteredCompleters;\n\t}, [ completers, name ] );\n}\n\nexport function useBlockEditorAutocompleteProps( props ) {\n\treturn useAutocompleteProps( {\n\t\t...props,\n\t\tcompleters: useCompleters( props ),\n\t} );\n}\n\n/**\n * Wrap the default Autocomplete component with one that supports a filter hook\n * for customizing its list of autocompleters.\n *\n * @type {import('react').FC}\n */\nfunction BlockEditorAutocomplete( props ) {\n\treturn <Autocomplete { ...props } completers={ useCompleters( props ) } />;\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/autocomplete/README.md\n */\nexport default BlockEditorAutocomplete;\n"]}
@@ -58,7 +58,9 @@ function BlockActions(_ref) {
58
58
  flashBlock,
59
59
  setBlockMovingClientId,
60
60
  setNavigationMode,
61
- selectBlock
61
+ selectBlock,
62
+ clearSelectedBlock,
63
+ multiSelect
62
64
  } = (0, _data.useDispatch)(_store.store);
63
65
  const notifyCopy = (0, _copyHandler.useNotifyCopy)();
64
66
  const pasteStyles = (0, _usePasteStyles.default)();
@@ -140,7 +142,10 @@ function BlockActions(_ref) {
140
142
  },
141
143
 
142
144
  async onPasteStyles() {
143
- await pasteStyles(blocks);
145
+ await pasteStyles(blocks); // Need to reselect the block(s) in order for optional tool panel control changes to register.
146
+
147
+ clearSelectedBlock();
148
+ multiSelect(blocks[0].clientId, blocks[blocks.length - 1].clientId);
144
149
  }
145
150
 
146
151
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/block-actions/index.js"],"names":["BlockActions","clientIds","children","__experimentalUpdateSelection","updateSelection","canInsertBlockType","getBlockRootClientId","getBlocksByClientId","canMoveBlocks","canRemoveBlocks","blockEditorStore","getDefaultBlockName","getGroupingBlockName","blocksStore","blocks","rootClientId","canDuplicate","every","block","name","canInsertDefaultBlock","canMove","canRemove","removeBlocks","replaceBlocks","duplicateBlocks","insertAfterBlock","insertBeforeBlock","flashBlock","setBlockMovingClientId","setNavigationMode","selectBlock","notifyCopy","pasteStyles","onDuplicate","onRemove","onInsertBefore","clientId","Array","isArray","onInsertAfter","length","onMoveTo","onGroup","groupingBlockName","newBlocks","onUngroup","innerBlocks","onCopy","selectedBlockClientIds","map","onPasteStyles"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\thasBlockSupport,\n\tswitchToBlockType,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { useNotifyCopy } from '../copy-handler';\nimport usePasteStyles from '../use-paste-styles';\nimport { store as blockEditorStore } from '../../store';\n\nexport default function BlockActions( {\n\tclientIds,\n\tchildren,\n\t__experimentalUpdateSelection: updateSelection,\n} ) {\n\tconst {\n\t\tcanInsertBlockType,\n\t\tgetBlockRootClientId,\n\t\tgetBlocksByClientId,\n\t\tcanMoveBlocks,\n\t\tcanRemoveBlocks,\n\t} = useSelect( blockEditorStore );\n\tconst { getDefaultBlockName, getGroupingBlockName } =\n\t\tuseSelect( blocksStore );\n\n\tconst blocks = getBlocksByClientId( clientIds );\n\tconst rootClientId = getBlockRootClientId( clientIds[ 0 ] );\n\tconst canDuplicate = blocks.every( ( block ) => {\n\t\treturn (\n\t\t\t!! block &&\n\t\t\thasBlockSupport( block.name, 'multiple', true ) &&\n\t\t\tcanInsertBlockType( block.name, rootClientId )\n\t\t);\n\t} );\n\n\tconst canInsertDefaultBlock = canInsertBlockType(\n\t\tgetDefaultBlockName(),\n\t\trootClientId\n\t);\n\n\tconst canMove = canMoveBlocks( clientIds, rootClientId );\n\tconst canRemove = canRemoveBlocks( clientIds, rootClientId );\n\n\tconst {\n\t\tremoveBlocks,\n\t\treplaceBlocks,\n\t\tduplicateBlocks,\n\t\tinsertAfterBlock,\n\t\tinsertBeforeBlock,\n\t\tflashBlock,\n\t\tsetBlockMovingClientId,\n\t\tsetNavigationMode,\n\t\tselectBlock,\n\t} = useDispatch( blockEditorStore );\n\n\tconst notifyCopy = useNotifyCopy();\n\tconst pasteStyles = usePasteStyles();\n\n\treturn children( {\n\t\tcanDuplicate,\n\t\tcanInsertDefaultBlock,\n\t\tcanMove,\n\t\tcanRemove,\n\t\trootClientId,\n\t\tblocks,\n\t\tonDuplicate() {\n\t\t\treturn duplicateBlocks( clientIds, updateSelection );\n\t\t},\n\t\tonRemove() {\n\t\t\treturn removeBlocks( clientIds, updateSelection );\n\t\t},\n\t\tonInsertBefore() {\n\t\t\tconst clientId = Array.isArray( clientIds )\n\t\t\t\t? clientIds[ 0 ]\n\t\t\t\t: clientId;\n\t\t\tinsertBeforeBlock( clientId );\n\t\t},\n\t\tonInsertAfter() {\n\t\t\tconst clientId = Array.isArray( clientIds )\n\t\t\t\t? clientIds[ clientIds.length - 1 ]\n\t\t\t\t: clientId;\n\t\t\tinsertAfterBlock( clientId );\n\t\t},\n\t\tonMoveTo() {\n\t\t\tsetNavigationMode( true );\n\t\t\tselectBlock( clientIds[ 0 ] );\n\t\t\tsetBlockMovingClientId( clientIds[ 0 ] );\n\t\t},\n\t\tonGroup() {\n\t\t\tif ( ! blocks.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst groupingBlockName = getGroupingBlockName();\n\n\t\t\t// Activate the `transform` on `core/group` which does the conversion.\n\t\t\tconst newBlocks = switchToBlockType( blocks, groupingBlockName );\n\n\t\t\tif ( ! newBlocks ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\treplaceBlocks( clientIds, newBlocks );\n\t\t},\n\t\tonUngroup() {\n\t\t\tif ( ! blocks.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst innerBlocks = blocks[ 0 ].innerBlocks;\n\n\t\t\tif ( ! innerBlocks.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\treplaceBlocks( clientIds, innerBlocks );\n\t\t},\n\t\tonCopy() {\n\t\t\tconst selectedBlockClientIds = blocks.map(\n\t\t\t\t( { clientId } ) => clientId\n\t\t\t);\n\t\t\tif ( blocks.length === 1 ) {\n\t\t\t\tflashBlock( selectedBlockClientIds[ 0 ] );\n\t\t\t}\n\t\t\tnotifyCopy( 'copy', selectedBlockClientIds );\n\t\t},\n\t\tasync onPasteStyles() {\n\t\t\tawait pasteStyles( blocks );\n\t\t},\n\t} );\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/block-actions/index.js"],"names":["BlockActions","clientIds","children","__experimentalUpdateSelection","updateSelection","canInsertBlockType","getBlockRootClientId","getBlocksByClientId","canMoveBlocks","canRemoveBlocks","blockEditorStore","getDefaultBlockName","getGroupingBlockName","blocksStore","blocks","rootClientId","canDuplicate","every","block","name","canInsertDefaultBlock","canMove","canRemove","removeBlocks","replaceBlocks","duplicateBlocks","insertAfterBlock","insertBeforeBlock","flashBlock","setBlockMovingClientId","setNavigationMode","selectBlock","clearSelectedBlock","multiSelect","notifyCopy","pasteStyles","onDuplicate","onRemove","onInsertBefore","clientId","Array","isArray","onInsertAfter","length","onMoveTo","onGroup","groupingBlockName","newBlocks","onUngroup","innerBlocks","onCopy","selectedBlockClientIds","map","onPasteStyles"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\thasBlockSupport,\n\tswitchToBlockType,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { useNotifyCopy } from '../copy-handler';\nimport usePasteStyles from '../use-paste-styles';\nimport { store as blockEditorStore } from '../../store';\n\nexport default function BlockActions( {\n\tclientIds,\n\tchildren,\n\t__experimentalUpdateSelection: updateSelection,\n} ) {\n\tconst {\n\t\tcanInsertBlockType,\n\t\tgetBlockRootClientId,\n\t\tgetBlocksByClientId,\n\t\tcanMoveBlocks,\n\t\tcanRemoveBlocks,\n\t} = useSelect( blockEditorStore );\n\tconst { getDefaultBlockName, getGroupingBlockName } =\n\t\tuseSelect( blocksStore );\n\n\tconst blocks = getBlocksByClientId( clientIds );\n\tconst rootClientId = getBlockRootClientId( clientIds[ 0 ] );\n\tconst canDuplicate = blocks.every( ( block ) => {\n\t\treturn (\n\t\t\t!! block &&\n\t\t\thasBlockSupport( block.name, 'multiple', true ) &&\n\t\t\tcanInsertBlockType( block.name, rootClientId )\n\t\t);\n\t} );\n\n\tconst canInsertDefaultBlock = canInsertBlockType(\n\t\tgetDefaultBlockName(),\n\t\trootClientId\n\t);\n\n\tconst canMove = canMoveBlocks( clientIds, rootClientId );\n\tconst canRemove = canRemoveBlocks( clientIds, rootClientId );\n\n\tconst {\n\t\tremoveBlocks,\n\t\treplaceBlocks,\n\t\tduplicateBlocks,\n\t\tinsertAfterBlock,\n\t\tinsertBeforeBlock,\n\t\tflashBlock,\n\t\tsetBlockMovingClientId,\n\t\tsetNavigationMode,\n\t\tselectBlock,\n\t\tclearSelectedBlock,\n\t\tmultiSelect,\n\t} = useDispatch( blockEditorStore );\n\n\tconst notifyCopy = useNotifyCopy();\n\tconst pasteStyles = usePasteStyles();\n\n\treturn children( {\n\t\tcanDuplicate,\n\t\tcanInsertDefaultBlock,\n\t\tcanMove,\n\t\tcanRemove,\n\t\trootClientId,\n\t\tblocks,\n\t\tonDuplicate() {\n\t\t\treturn duplicateBlocks( clientIds, updateSelection );\n\t\t},\n\t\tonRemove() {\n\t\t\treturn removeBlocks( clientIds, updateSelection );\n\t\t},\n\t\tonInsertBefore() {\n\t\t\tconst clientId = Array.isArray( clientIds )\n\t\t\t\t? clientIds[ 0 ]\n\t\t\t\t: clientId;\n\t\t\tinsertBeforeBlock( clientId );\n\t\t},\n\t\tonInsertAfter() {\n\t\t\tconst clientId = Array.isArray( clientIds )\n\t\t\t\t? clientIds[ clientIds.length - 1 ]\n\t\t\t\t: clientId;\n\t\t\tinsertAfterBlock( clientId );\n\t\t},\n\t\tonMoveTo() {\n\t\t\tsetNavigationMode( true );\n\t\t\tselectBlock( clientIds[ 0 ] );\n\t\t\tsetBlockMovingClientId( clientIds[ 0 ] );\n\t\t},\n\t\tonGroup() {\n\t\t\tif ( ! blocks.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst groupingBlockName = getGroupingBlockName();\n\n\t\t\t// Activate the `transform` on `core/group` which does the conversion.\n\t\t\tconst newBlocks = switchToBlockType( blocks, groupingBlockName );\n\n\t\t\tif ( ! newBlocks ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\treplaceBlocks( clientIds, newBlocks );\n\t\t},\n\t\tonUngroup() {\n\t\t\tif ( ! blocks.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst innerBlocks = blocks[ 0 ].innerBlocks;\n\n\t\t\tif ( ! innerBlocks.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\treplaceBlocks( clientIds, innerBlocks );\n\t\t},\n\t\tonCopy() {\n\t\t\tconst selectedBlockClientIds = blocks.map(\n\t\t\t\t( { clientId } ) => clientId\n\t\t\t);\n\t\t\tif ( blocks.length === 1 ) {\n\t\t\t\tflashBlock( selectedBlockClientIds[ 0 ] );\n\t\t\t}\n\t\t\tnotifyCopy( 'copy', selectedBlockClientIds );\n\t\t},\n\t\tasync onPasteStyles() {\n\t\t\tawait pasteStyles( blocks );\n\n\t\t\t// Need to reselect the block(s) in order for optional tool panel control changes to register.\n\t\t\tclearSelectedBlock();\n\t\t\tmultiSelect(\n\t\t\t\tblocks[ 0 ].clientId,\n\t\t\t\tblocks[ blocks.length - 1 ].clientId\n\t\t\t);\n\t\t},\n\t} );\n}\n"]}
@@ -29,9 +29,9 @@ function BlockAlignmentMatrixControl(props) {
29
29
  value: value
30
30
  });
31
31
  return (0, _element.createElement)(_components.Dropdown, {
32
- position: "bottom right",
33
32
  popoverProps: {
34
- variant: 'toolbar'
33
+ variant: 'toolbar',
34
+ placement: 'bottom-start'
35
35
  },
36
36
  renderToggle: _ref => {
37
37
  let {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/block-alignment-matrix-control/index.js"],"names":["noop","BlockAlignmentMatrixControl","props","label","onChange","value","isDisabled","icon","variant","onToggle","isOpen","openOnArrowDown","event","keyCode","DOWN","preventDefault"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AALA;AACA;AACA;AASA,MAAMA,IAAI,GAAG,MAAM,CAAE,CAArB;;AAEA,SAASC,2BAAT,CAAsCC,KAAtC,EAA8C;AAC7C,QAAM;AACLC,IAAAA,KAAK,GAAG,cAAI,yBAAJ,CADH;AAELC,IAAAA,QAAQ,GAAGJ,IAFN;AAGLK,IAAAA,KAAK,GAAG,QAHH;AAILC,IAAAA;AAJK,MAKFJ,KALJ;AAOA,QAAMK,IAAI,GAAG,4BAAC,gDAAD,CAAwB,IAAxB;AAA6B,IAAA,KAAK,EAAGF;AAArC,IAAb;AAEA,SACC,4BAAC,oBAAD;AACC,IAAA,QAAQ,EAAC,cADV;AAEC,IAAA,YAAY,EAAG;AAAEG,MAAAA,OAAO,EAAE;AAAX,KAFhB;AAGC,IAAA,YAAY,EAAG,QAA4B;AAAA,UAA1B;AAAEC,QAAAA,QAAF;AAAYC,QAAAA;AAAZ,OAA0B;;AAC1C,YAAMC,eAAe,GAAKC,KAAF,IAAa;AACpC,YAAK,CAAEF,MAAF,IAAYE,KAAK,CAACC,OAAN,KAAkBC,cAAnC,EAA0C;AACzCF,UAAAA,KAAK,CAACG,cAAN;AACAN,UAAAA,QAAQ;AACR;AACD,OALD;;AAOA,aACC,4BAAC,yBAAD;AACC,QAAA,OAAO,EAAGA,QADX;AAEC,yBAAc,MAFf;AAGC,yBAAgBC,MAHjB;AAIC,QAAA,SAAS,EAAGC,eAJb;AAKC,QAAA,KAAK,EAAGR,KALT;AAMC,QAAA,IAAI,EAAGI,IANR;AAOC,QAAA,WAAW,MAPZ;AAQC,QAAA,QAAQ,EAAGD;AARZ,QADD;AAYA,KAvBF;AAwBC,IAAA,aAAa,EAAG,MACf,4BAAC,gDAAD;AACC,MAAA,cAAc,EAAG,KADlB;AAEC,MAAA,QAAQ,EAAGF,QAFZ;AAGC,MAAA,KAAK,EAAGC;AAHT;AAzBF,IADD;AAkCA;;eAEcJ,2B","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { DOWN } from '@wordpress/keycodes';\nimport {\n\tToolbarButton,\n\tDropdown,\n\t__experimentalAlignmentMatrixControl as AlignmentMatrixControl,\n} from '@wordpress/components';\n\nconst noop = () => {};\n\nfunction BlockAlignmentMatrixControl( props ) {\n\tconst {\n\t\tlabel = __( 'Change matrix alignment' ),\n\t\tonChange = noop,\n\t\tvalue = 'center',\n\t\tisDisabled,\n\t} = props;\n\n\tconst icon = <AlignmentMatrixControl.Icon value={ value } />;\n\n\treturn (\n\t\t<Dropdown\n\t\t\tposition=\"bottom right\"\n\t\t\tpopoverProps={ { variant: 'toolbar' } }\n\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\tconst openOnArrowDown = ( event ) => {\n\t\t\t\t\tif ( ! isOpen && event.keyCode === DOWN ) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tonToggle();\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\tonKeyDown={ openOnArrowDown }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\tdisabled={ isDisabled }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => (\n\t\t\t\t<AlignmentMatrixControl\n\t\t\t\t\thasFocusBorder={ false }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t/>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nexport default BlockAlignmentMatrixControl;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/block-alignment-matrix-control/index.js"],"names":["noop","BlockAlignmentMatrixControl","props","label","onChange","value","isDisabled","icon","variant","placement","onToggle","isOpen","openOnArrowDown","event","keyCode","DOWN","preventDefault"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AALA;AACA;AACA;AASA,MAAMA,IAAI,GAAG,MAAM,CAAE,CAArB;;AAEA,SAASC,2BAAT,CAAsCC,KAAtC,EAA8C;AAC7C,QAAM;AACLC,IAAAA,KAAK,GAAG,cAAI,yBAAJ,CADH;AAELC,IAAAA,QAAQ,GAAGJ,IAFN;AAGLK,IAAAA,KAAK,GAAG,QAHH;AAILC,IAAAA;AAJK,MAKFJ,KALJ;AAOA,QAAMK,IAAI,GAAG,4BAAC,gDAAD,CAAwB,IAAxB;AAA6B,IAAA,KAAK,EAAGF;AAArC,IAAb;AAEA,SACC,4BAAC,oBAAD;AACC,IAAA,YAAY,EAAG;AAAEG,MAAAA,OAAO,EAAE,SAAX;AAAsBC,MAAAA,SAAS,EAAE;AAAjC,KADhB;AAEC,IAAA,YAAY,EAAG,QAA4B;AAAA,UAA1B;AAAEC,QAAAA,QAAF;AAAYC,QAAAA;AAAZ,OAA0B;;AAC1C,YAAMC,eAAe,GAAKC,KAAF,IAAa;AACpC,YAAK,CAAEF,MAAF,IAAYE,KAAK,CAACC,OAAN,KAAkBC,cAAnC,EAA0C;AACzCF,UAAAA,KAAK,CAACG,cAAN;AACAN,UAAAA,QAAQ;AACR;AACD,OALD;;AAOA,aACC,4BAAC,yBAAD;AACC,QAAA,OAAO,EAAGA,QADX;AAEC,yBAAc,MAFf;AAGC,yBAAgBC,MAHjB;AAIC,QAAA,SAAS,EAAGC,eAJb;AAKC,QAAA,KAAK,EAAGT,KALT;AAMC,QAAA,IAAI,EAAGI,IANR;AAOC,QAAA,WAAW,MAPZ;AAQC,QAAA,QAAQ,EAAGD;AARZ,QADD;AAYA,KAtBF;AAuBC,IAAA,aAAa,EAAG,MACf,4BAAC,gDAAD;AACC,MAAA,cAAc,EAAG,KADlB;AAEC,MAAA,QAAQ,EAAGF,QAFZ;AAGC,MAAA,KAAK,EAAGC;AAHT;AAxBF,IADD;AAiCA;;eAEcJ,2B","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { DOWN } from '@wordpress/keycodes';\nimport {\n\tToolbarButton,\n\tDropdown,\n\t__experimentalAlignmentMatrixControl as AlignmentMatrixControl,\n} from '@wordpress/components';\n\nconst noop = () => {};\n\nfunction BlockAlignmentMatrixControl( props ) {\n\tconst {\n\t\tlabel = __( 'Change matrix alignment' ),\n\t\tonChange = noop,\n\t\tvalue = 'center',\n\t\tisDisabled,\n\t} = props;\n\n\tconst icon = <AlignmentMatrixControl.Icon value={ value } />;\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ { variant: 'toolbar', placement: 'bottom-start' } }\n\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\tconst openOnArrowDown = ( event ) => {\n\t\t\t\t\tif ( ! isOpen && event.keyCode === DOWN ) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tonToggle();\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\tonKeyDown={ openOnArrowDown }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\tdisabled={ isDisabled }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => (\n\t\t\t\t<AlignmentMatrixControl\n\t\t\t\t\thasFocusBorder={ false }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t/>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nexport default BlockAlignmentMatrixControl;\n"]}
@@ -37,8 +37,6 @@ var _store = require("../../store");
37
37
  * Internal dependencies
38
38
  */
39
39
  function BlockCard(_ref) {
40
- var _window;
41
-
42
40
  let {
43
41
  title,
44
42
  icon,
@@ -59,7 +57,6 @@ function BlockCard(_ref) {
59
57
  } = blockType);
60
58
  }
61
59
 
62
- const isOffCanvasNavigationEditorEnabled = ((_window = window) === null || _window === void 0 ? void 0 : _window.__experimentalEnableOffCanvasNavigationEditor) === true;
63
60
  const {
64
61
  parentNavBlockClientId
65
62
  } = (0, _data.useSelect)(select => {
@@ -79,7 +76,8 @@ function BlockCard(_ref) {
79
76
  } = (0, _data.useDispatch)(_store.store);
80
77
  return (0, _element.createElement)("div", {
81
78
  className: (0, _classnames.default)('block-editor-block-card', className)
82
- }, isOffCanvasNavigationEditorEnabled && parentNavBlockClientId && (0, _element.createElement)(_components.Button, {
79
+ }, parentNavBlockClientId && // This is only used by the Navigation block for now. It's not ideal having Navigation block specific code here.
80
+ (0, _element.createElement)(_components.Button, {
83
81
  onClick: () => selectBlock(parentNavBlockClientId),
84
82
  label: (0, _i18n.__)('Go to parent Navigation block'),
85
83
  style: // TODO: This style override is also used in ToolsPanelHeader.
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/block-card/index.js"],"names":["BlockCard","title","icon","description","blockType","className","since","alternative","isOffCanvasNavigationEditorEnabled","window","__experimentalEnableOffCanvasNavigationEditor","parentNavBlockClientId","select","getSelectedBlockClientId","getBlockParentsByBlockName","blockEditorStore","_selectedBlockClientId","selectBlock","minWidth","padding","chevronRight","chevronLeft"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AAlBA;AACA;AACA;;AAGA;AACA;AACA;;AAOA;AACA;AACA;AAIA,SAASA,SAAT,OAAyE;AAAA;;AAAA,MAArD;AAAEC,IAAAA,KAAF;AAASC,IAAAA,IAAT;AAAeC,IAAAA,WAAf;AAA4BC,IAAAA,SAA5B;AAAuCC,IAAAA;AAAvC,GAAqD;;AACxE,MAAKD,SAAL,EAAiB;AAChB,6BAAY,+CAAZ,EAA6D;AAC5DE,MAAAA,KAAK,EAAE,KADqD;AAE5DC,MAAAA,WAAW,EAAE;AAF+C,KAA7D;AAIA,KAAE;AAAEN,MAAAA,KAAF;AAASC,MAAAA,IAAT;AAAeC,MAAAA;AAAf,QAA+BC,SAAjC;AACA;;AAED,QAAMI,kCAAkC,GACvC,YAAAC,MAAM,UAAN,0CAAQC,6CAAR,MAA0D,IAD3D;AAGA,QAAM;AAAEC,IAAAA;AAAF,MAA6B,qBAAaC,MAAF,IAAc;AAC3D,UAAM;AAAEC,MAAAA,wBAAF;AAA4BC,MAAAA;AAA5B,QACLF,MAAM,CAAEG,YAAF,CADP;;AAGA,UAAMC,sBAAsB,GAAGH,wBAAwB,EAAvD;;AAEA,WAAO;AACNF,MAAAA,sBAAsB,EAAEG,0BAA0B,CACjDE,sBADiD,EAEjD,iBAFiD,EAGjD,IAHiD,CAA1B,CAIrB,CAJqB;AADlB,KAAP;AAOA,GAbkC,EAahC,EAbgC,CAAnC;AAeA,QAAM;AAAEC,IAAAA;AAAF,MAAkB,uBAAaF,YAAb,CAAxB;AAEA,SACC;AAAK,IAAA,SAAS,EAAG,yBAAY,yBAAZ,EAAuCV,SAAvC;AAAjB,KACGG,kCAAkC,IAAIG,sBAAtC,IACD,4BAAC,kBAAD;AACC,IAAA,OAAO,EAAG,MAAMM,WAAW,CAAEN,sBAAF,CAD5B;AAEC,IAAA,KAAK,EAAG,cAAI,+BAAJ,CAFT;AAGC,IAAA,KAAK,EACJ;AACA;AACA;AAAEO,MAAAA,QAAQ,EAAE,EAAZ;AAAgBC,MAAAA,OAAO,EAAE;AAAzB,KANF;AAQC,IAAA,IAAI,EAAG,qBAAUC,mBAAV,GAAyBC,kBARjC;AASC,IAAA,OAAO;AATR,IAFF,EAcC,4BAAC,kBAAD;AAAW,IAAA,IAAI,EAAGnB,IAAlB;AAAyB,IAAA,UAAU;AAAnC,IAdD,EAeC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC;AAAI,IAAA,SAAS,EAAC;AAAd,KAAiDD,KAAjD,CADD,EAEC;AAAM,IAAA,SAAS,EAAC;AAAhB,KACGE,WADH,CAFD,CAfD,CADD;AAwBA;;eAEcH,S","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport deprecated from '@wordpress/deprecated';\nimport { Button } from '@wordpress/components';\nimport { chevronLeft, chevronRight } from '@wordpress/icons';\nimport { __, isRTL } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport BlockIcon from '../block-icon';\nimport { store as blockEditorStore } from '../../store';\n\nfunction BlockCard( { title, icon, description, blockType, className } ) {\n\tif ( blockType ) {\n\t\tdeprecated( '`blockType` property in `BlockCard component`', {\n\t\t\tsince: '5.7',\n\t\t\talternative: '`title, icon and description` properties',\n\t\t} );\n\t\t( { title, icon, description } = blockType );\n\t}\n\n\tconst isOffCanvasNavigationEditorEnabled =\n\t\twindow?.__experimentalEnableOffCanvasNavigationEditor === true;\n\n\tconst { parentNavBlockClientId } = useSelect( ( select ) => {\n\t\tconst { getSelectedBlockClientId, getBlockParentsByBlockName } =\n\t\t\tselect( blockEditorStore );\n\n\t\tconst _selectedBlockClientId = getSelectedBlockClientId();\n\n\t\treturn {\n\t\t\tparentNavBlockClientId: getBlockParentsByBlockName(\n\t\t\t\t_selectedBlockClientId,\n\t\t\t\t'core/navigation',\n\t\t\t\ttrue\n\t\t\t)[ 0 ],\n\t\t};\n\t}, [] );\n\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\n\treturn (\n\t\t<div className={ classnames( 'block-editor-block-card', className ) }>\n\t\t\t{ isOffCanvasNavigationEditorEnabled && parentNavBlockClientId && (\n\t\t\t\t<Button\n\t\t\t\t\tonClick={ () => selectBlock( parentNavBlockClientId ) }\n\t\t\t\t\tlabel={ __( 'Go to parent Navigation block' ) }\n\t\t\t\t\tstyle={\n\t\t\t\t\t\t// TODO: This style override is also used in ToolsPanelHeader.\n\t\t\t\t\t\t// It should be supported out-of-the-box by Button.\n\t\t\t\t\t\t{ minWidth: 24, padding: 0 }\n\t\t\t\t\t}\n\t\t\t\t\ticon={ isRTL() ? chevronRight : chevronLeft }\n\t\t\t\t\tisSmall\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<BlockIcon icon={ icon } showColors />\n\t\t\t<div className=\"block-editor-block-card__content\">\n\t\t\t\t<h2 className=\"block-editor-block-card__title\">{ title }</h2>\n\t\t\t\t<span className=\"block-editor-block-card__description\">\n\t\t\t\t\t{ description }\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nexport default BlockCard;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/block-card/index.js"],"names":["BlockCard","title","icon","description","blockType","className","since","alternative","parentNavBlockClientId","select","getSelectedBlockClientId","getBlockParentsByBlockName","blockEditorStore","_selectedBlockClientId","selectBlock","minWidth","padding","chevronRight","chevronLeft"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AAlBA;AACA;AACA;;AAGA;AACA;AACA;;AAOA;AACA;AACA;AAIA,SAASA,SAAT,OAAyE;AAAA,MAArD;AAAEC,IAAAA,KAAF;AAASC,IAAAA,IAAT;AAAeC,IAAAA,WAAf;AAA4BC,IAAAA,SAA5B;AAAuCC,IAAAA;AAAvC,GAAqD;;AACxE,MAAKD,SAAL,EAAiB;AAChB,6BAAY,+CAAZ,EAA6D;AAC5DE,MAAAA,KAAK,EAAE,KADqD;AAE5DC,MAAAA,WAAW,EAAE;AAF+C,KAA7D;AAIA,KAAE;AAAEN,MAAAA,KAAF;AAASC,MAAAA,IAAT;AAAeC,MAAAA;AAAf,QAA+BC,SAAjC;AACA;;AAED,QAAM;AAAEI,IAAAA;AAAF,MAA6B,qBAAaC,MAAF,IAAc;AAC3D,UAAM;AAAEC,MAAAA,wBAAF;AAA4BC,MAAAA;AAA5B,QACLF,MAAM,CAAEG,YAAF,CADP;;AAGA,UAAMC,sBAAsB,GAAGH,wBAAwB,EAAvD;;AAEA,WAAO;AACNF,MAAAA,sBAAsB,EAAEG,0BAA0B,CACjDE,sBADiD,EAEjD,iBAFiD,EAGjD,IAHiD,CAA1B,CAIrB,CAJqB;AADlB,KAAP;AAOA,GAbkC,EAahC,EAbgC,CAAnC;AAeA,QAAM;AAAEC,IAAAA;AAAF,MAAkB,uBAAaF,YAAb,CAAxB;AAEA,SACC;AAAK,IAAA,SAAS,EAAG,yBAAY,yBAAZ,EAAuCP,SAAvC;AAAjB,KACGG,sBAAsB,IAAM;AAC7B,8BAAC,kBAAD;AACC,IAAA,OAAO,EAAG,MAAMM,WAAW,CAAEN,sBAAF,CAD5B;AAEC,IAAA,KAAK,EAAG,cAAI,+BAAJ,CAFT;AAGC,IAAA,KAAK,EACJ;AACA;AACA;AAAEO,MAAAA,QAAQ,EAAE,EAAZ;AAAgBC,MAAAA,OAAO,EAAE;AAAzB,KANF;AAQC,IAAA,IAAI,EAAG,qBAAUC,mBAAV,GAAyBC,kBARjC;AASC,IAAA,OAAO;AATR,IAFF,EAcC,4BAAC,kBAAD;AAAW,IAAA,IAAI,EAAGhB,IAAlB;AAAyB,IAAA,UAAU;AAAnC,IAdD,EAeC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC;AAAI,IAAA,SAAS,EAAC;AAAd,KAAiDD,KAAjD,CADD,EAEC;AAAM,IAAA,SAAS,EAAC;AAAhB,KACGE,WADH,CAFD,CAfD,CADD;AAwBA;;eAEcH,S","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport deprecated from '@wordpress/deprecated';\nimport { Button } from '@wordpress/components';\nimport { chevronLeft, chevronRight } from '@wordpress/icons';\nimport { __, isRTL } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport BlockIcon from '../block-icon';\nimport { store as blockEditorStore } from '../../store';\n\nfunction BlockCard( { title, icon, description, blockType, className } ) {\n\tif ( blockType ) {\n\t\tdeprecated( '`blockType` property in `BlockCard component`', {\n\t\t\tsince: '5.7',\n\t\t\talternative: '`title, icon and description` properties',\n\t\t} );\n\t\t( { title, icon, description } = blockType );\n\t}\n\n\tconst { parentNavBlockClientId } = useSelect( ( select ) => {\n\t\tconst { getSelectedBlockClientId, getBlockParentsByBlockName } =\n\t\t\tselect( blockEditorStore );\n\n\t\tconst _selectedBlockClientId = getSelectedBlockClientId();\n\n\t\treturn {\n\t\t\tparentNavBlockClientId: getBlockParentsByBlockName(\n\t\t\t\t_selectedBlockClientId,\n\t\t\t\t'core/navigation',\n\t\t\t\ttrue\n\t\t\t)[ 0 ],\n\t\t};\n\t}, [] );\n\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\n\treturn (\n\t\t<div className={ classnames( 'block-editor-block-card', className ) }>\n\t\t\t{ parentNavBlockClientId && ( // This is only used by the Navigation block for now. It's not ideal having Navigation block specific code here.\n\t\t\t\t<Button\n\t\t\t\t\tonClick={ () => selectBlock( parentNavBlockClientId ) }\n\t\t\t\t\tlabel={ __( 'Go to parent Navigation block' ) }\n\t\t\t\t\tstyle={\n\t\t\t\t\t\t// TODO: This style override is also used in ToolsPanelHeader.\n\t\t\t\t\t\t// It should be supported out-of-the-box by Button.\n\t\t\t\t\t\t{ minWidth: 24, padding: 0 }\n\t\t\t\t\t}\n\t\t\t\t\ticon={ isRTL() ? chevronRight : chevronLeft }\n\t\t\t\t\tisSmall\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<BlockIcon icon={ icon } showColors />\n\t\t\t<div className=\"block-editor-block-card__content\">\n\t\t\t\t<h2 className=\"block-editor-block-card__title\">{ title }</h2>\n\t\t\t\t<span className=\"block-editor-block-card__description\">\n\t\t\t\t\t{ description }\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nexport default BlockCard;\n"]}
@@ -15,6 +15,8 @@ Object.defineProperty(exports, "useBlockEditContext", {
15
15
 
16
16
  var _element = require("@wordpress/element");
17
17
 
18
+ var _blocks = require("@wordpress/blocks");
19
+
18
20
  var _edit = _interopRequireDefault(require("./edit"));
19
21
 
20
22
  var _context = require("./context");
@@ -40,12 +42,18 @@ function BlockEdit(props) {
40
42
  name,
41
43
  isSelected,
42
44
  clientId,
45
+ attributes = {},
43
46
  __unstableLayoutClassNames
44
47
  } = props;
48
+ const {
49
+ layout = null
50
+ } = attributes;
51
+ const layoutSupport = (0, _blocks.hasBlockSupport)(name, '__experimentalLayout', false);
45
52
  const context = {
46
53
  name,
47
54
  isSelected,
48
55
  clientId,
56
+ layout: layoutSupport ? layout : null,
49
57
  __unstableLayoutClassNames
50
58
  };
51
59
  return (0, _element.createElement)(_context.BlockEditContextProvider // It is important to return the same object if props haven't
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/block-edit/index.js"],"names":["BlockEdit","props","name","isSelected","clientId","__unstableLayoutClassNames","context","Object","values"],"mappings":";;;;;;;;;;;;;;;AAGA;;AAKA;;AACA;;AATA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGe,SAASA,SAAT,CAAoBC,KAApB,EAA4B;AAC1C,QAAM;AAAEC,IAAAA,IAAF;AAAQC,IAAAA,UAAR;AAAoBC,IAAAA,QAApB;AAA8BC,IAAAA;AAA9B,MAA6DJ,KAAnE;AACA,QAAMK,OAAO,GAAG;AACfJ,IAAAA,IADe;AAEfC,IAAAA,UAFe;AAGfC,IAAAA,QAHe;AAIfC,IAAAA;AAJe,GAAhB;AAMA,SACC,4BAAC,iCAAD,CACC;AACA;AACA;AAHD;AAIC,IAAA,KAAK,EAAG,sBAAS,MAAMC,OAAf,EAAwBC,MAAM,CAACC,MAAP,CAAeF,OAAf,CAAxB;AAJT,KAMC,4BAAC,aAAD,EAAWL,KAAX,CAND,CADD;AAUA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Edit from './edit';\nimport { BlockEditContextProvider, useBlockEditContext } from './context';\n\n/**\n * The `useBlockEditContext` hook provides information about the block this hook is being used in.\n * It returns an object with the `name`, `isSelected` state, and the `clientId` of the block.\n * It is useful if you want to create custom hooks that need access to the current blocks clientId\n * but don't want to rely on the data getting passed in as a parameter.\n *\n * @return {Object} Block edit context\n */\nexport { useBlockEditContext };\n\nexport default function BlockEdit( props ) {\n\tconst { name, isSelected, clientId, __unstableLayoutClassNames } = props;\n\tconst context = {\n\t\tname,\n\t\tisSelected,\n\t\tclientId,\n\t\t__unstableLayoutClassNames,\n\t};\n\treturn (\n\t\t<BlockEditContextProvider\n\t\t\t// It is important to return the same object if props haven't\n\t\t\t// changed to avoid unnecessary rerenders.\n\t\t\t// See https://reactjs.org/docs/context.html#caveats.\n\t\t\tvalue={ useMemo( () => context, Object.values( context ) ) }\n\t\t>\n\t\t\t<Edit { ...props } />\n\t\t</BlockEditContextProvider>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/block-edit/index.js"],"names":["BlockEdit","props","name","isSelected","clientId","attributes","__unstableLayoutClassNames","layout","layoutSupport","context","Object","values"],"mappings":";;;;;;;;;;;;;;;AAGA;;AAEA;;AAIA;;AACA;;AAVA;AACA;AACA;;AAIA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGe,SAASA,SAAT,CAAoBC,KAApB,EAA4B;AAC1C,QAAM;AACLC,IAAAA,IADK;AAELC,IAAAA,UAFK;AAGLC,IAAAA,QAHK;AAILC,IAAAA,UAAU,GAAG,EAJR;AAKLC,IAAAA;AALK,MAMFL,KANJ;AAOA,QAAM;AAAEM,IAAAA,MAAM,GAAG;AAAX,MAAoBF,UAA1B;AACA,QAAMG,aAAa,GAAG,6BACrBN,IADqB,EAErB,sBAFqB,EAGrB,KAHqB,CAAtB;AAKA,QAAMO,OAAO,GAAG;AACfP,IAAAA,IADe;AAEfC,IAAAA,UAFe;AAGfC,IAAAA,QAHe;AAIfG,IAAAA,MAAM,EAAEC,aAAa,GAAGD,MAAH,GAAY,IAJlB;AAKfD,IAAAA;AALe,GAAhB;AAOA,SACC,4BAAC,iCAAD,CACC;AACA;AACA;AAHD;AAIC,IAAA,KAAK,EAAG,sBAAS,MAAMG,OAAf,EAAwBC,MAAM,CAACC,MAAP,CAAeF,OAAf,CAAxB;AAJT,KAMC,4BAAC,aAAD,EAAWR,KAAX,CAND,CADD;AAUA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n\nimport { hasBlockSupport } from '@wordpress/blocks';\n/**\n * Internal dependencies\n */\nimport Edit from './edit';\nimport { BlockEditContextProvider, useBlockEditContext } from './context';\n\n/**\n * The `useBlockEditContext` hook provides information about the block this hook is being used in.\n * It returns an object with the `name`, `isSelected` state, and the `clientId` of the block.\n * It is useful if you want to create custom hooks that need access to the current blocks clientId\n * but don't want to rely on the data getting passed in as a parameter.\n *\n * @return {Object} Block edit context\n */\nexport { useBlockEditContext };\n\nexport default function BlockEdit( props ) {\n\tconst {\n\t\tname,\n\t\tisSelected,\n\t\tclientId,\n\t\tattributes = {},\n\t\t__unstableLayoutClassNames,\n\t} = props;\n\tconst { layout = null } = attributes;\n\tconst layoutSupport = hasBlockSupport(\n\t\tname,\n\t\t'__experimentalLayout',\n\t\tfalse\n\t);\n\tconst context = {\n\t\tname,\n\t\tisSelected,\n\t\tclientId,\n\t\tlayout: layoutSupport ? layout : null,\n\t\t__unstableLayoutClassNames,\n\t};\n\treturn (\n\t\t<BlockEditContextProvider\n\t\t\t// It is important to return the same object if props haven't\n\t\t\t// changed to avoid unnecessary rerenders.\n\t\t\t// See https://reactjs.org/docs/context.html#caveats.\n\t\t\tvalue={ useMemo( () => context, Object.values( context ) ) }\n\t\t>\n\t\t\t<Edit { ...props } />\n\t\t</BlockEditContextProvider>\n\t);\n}\n"]}
@@ -155,8 +155,6 @@ function BlockInspectorLockedBlocks(_ref4) {
155
155
  }
156
156
 
157
157
  const BlockInspector = _ref5 => {
158
- var _window;
159
-
160
158
  let {
161
159
  showNoBlockSelectedMessage = true
162
160
  } = _ref5;
@@ -191,16 +189,15 @@ const BlockInspector = _ref5 => {
191
189
  }, []);
192
190
  const availableTabs = (0, _useInspectorControlsTabs.default)(blockType === null || blockType === void 0 ? void 0 : blockType.name);
193
191
  const showTabs = (availableTabs === null || availableTabs === void 0 ? void 0 : availableTabs.length) > 1;
194
- const isOffCanvasNavigationEditorEnabled = ((_window = window) === null || _window === void 0 ? void 0 : _window.__experimentalEnableOffCanvasNavigationEditor) === true;
195
192
  const blockInspectorAnimationSettings = (0, _data.useSelect)(select => {
196
- if (isOffCanvasNavigationEditorEnabled && blockType) {
193
+ if (blockType) {
197
194
  const globalBlockInspectorAnimationSettings = select(_store.store).getSettings().__experimentalBlockInspectorAnimation;
198
195
 
199
196
  return globalBlockInspectorAnimationSettings === null || globalBlockInspectorAnimationSettings === void 0 ? void 0 : globalBlockInspectorAnimationSettings[blockType.name];
200
197
  }
201
198
 
202
199
  return null;
203
- }, [selectedBlockClientId, isOffCanvasNavigationEditorEnabled, blockType]);
200
+ }, [selectedBlockClientId, blockType]);
204
201
 
205
202
  if (count > 1) {
206
203
  return (0, _element.createElement)("div", {
@@ -208,18 +205,20 @@ const BlockInspector = _ref5 => {
208
205
  }, (0, _element.createElement)(_multiSelectionInspector.default, null), showTabs ? (0, _element.createElement)(_inspectorControlsTabs.default, {
209
206
  tabs: availableTabs
210
207
  }) : (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_inspectorControls.default.Slot, null), (0, _element.createElement)(_inspectorControls.default.Slot, {
211
- __experimentalGroup: "color",
208
+ group: "color",
212
209
  label: (0, _i18n.__)('Color'),
213
210
  className: "color-block-support-panel__inner-wrapper"
214
211
  }), (0, _element.createElement)(_inspectorControls.default.Slot, {
215
- __experimentalGroup: "typography",
212
+ group: "typography",
216
213
  label: (0, _i18n.__)('Typography')
217
214
  }), (0, _element.createElement)(_inspectorControls.default.Slot, {
218
- __experimentalGroup: "dimensions",
215
+ group: "dimensions",
219
216
  label: (0, _i18n.__)('Dimensions')
220
217
  }), (0, _element.createElement)(_inspectorControls.default.Slot, {
221
- __experimentalGroup: "border",
218
+ group: "border",
222
219
  label: (0, _i18n.__)('Border')
220
+ }), (0, _element.createElement)(_inspectorControls.default.Slot, {
221
+ group: "styles"
223
222
  })));
224
223
  }
225
224
 
@@ -246,7 +245,7 @@ const BlockInspector = _ref5 => {
246
245
  }
247
246
 
248
247
  return (0, _element.createElement)(BlockInspectorSingleBlockWrapper, {
249
- animate: isOffCanvasNavigationEditorEnabled && blockInspectorAnimationSettings,
248
+ animate: blockInspectorAnimationSettings,
250
249
  wrapper: children => (0, _element.createElement)(AnimatedContainer, {
251
250
  blockInspectorAnimationSettings: blockInspectorAnimationSettings,
252
251
  selectedBlockClientId: selectedBlockClientId
@@ -323,18 +322,20 @@ const BlockInspectorSingleBlock = _ref8 => {
323
322
  }), (0, _blocks.hasBlockSupport)(blockName, 'defaultStylePicker', true) && (0, _element.createElement)(_defaultStylePicker.default, {
324
323
  blockName: blockName
325
324
  }))), (0, _element.createElement)(_inspectorControls.default.Slot, null), (0, _element.createElement)(_inspectorControls.default.Slot, {
326
- __experimentalGroup: "color",
325
+ group: "color",
327
326
  label: (0, _i18n.__)('Color'),
328
327
  className: "color-block-support-panel__inner-wrapper"
329
328
  }), (0, _element.createElement)(_inspectorControls.default.Slot, {
330
- __experimentalGroup: "typography",
329
+ group: "typography",
331
330
  label: (0, _i18n.__)('Typography')
332
331
  }), (0, _element.createElement)(_inspectorControls.default.Slot, {
333
- __experimentalGroup: "dimensions",
332
+ group: "dimensions",
334
333
  label: (0, _i18n.__)('Dimensions')
335
334
  }), (0, _element.createElement)(_inspectorControls.default.Slot, {
336
- __experimentalGroup: "border",
335
+ group: "border",
337
336
  label: (0, _i18n.__)('Border')
337
+ }), (0, _element.createElement)(_inspectorControls.default.Slot, {
338
+ group: "styles"
338
339
  }), (0, _element.createElement)(_positionControlsPanel.default, null), (0, _element.createElement)("div", null, (0, _element.createElement)(_advancedControlsPanel.default, null))), (0, _element.createElement)(_skipToSelectedBlock.default, {
339
340
  key: "back"
340
341
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-editor/src/components/block-inspector/index.js"],"names":["useContentBlocks","blockTypes","block","contentBlocksObjectAux","reduce","result","blockType","name","Object","entries","attributes","some","__experimentalRole","isContentBlock","blockName","getContentBlocks","blocks","push","innerBlocks","BlockNavigationButton","selectedBlock","selectBlock","blockEditorStore","find","isSelected","clientId","icon","title","BlockInspectorLockedBlocks","topLevelLockedBlock","select","blocksStore","getBlockTypes","getBlock","getSelectedBlock","blockInformation","contentBlocks","isSynced","map","contentBlock","BlockInspector","showNoBlockSelectedMessage","count","selectedBlockName","selectedBlockClientId","getSelectedBlockClientId","getSelectedBlockCount","getBlockName","__unstableGetContentLockingParent","getTemplateLock","_selectedBlockClientId","_selectedBlockName","_blockType","undefined","availableTabs","showTabs","length","isOffCanvasNavigationEditorEnabled","window","__experimentalEnableOffCanvasNavigationEditor","blockInspectorAnimationSettings","globalBlockInspectorAnimationSettings","getSettings","__experimentalBlockInspectorAnimation","isSelectedBlockUnregistered","children","BlockInspectorSingleBlockWrapper","animate","wrapper","AnimatedContainer","animationOrigin","enterDirection","x","opacity","transition","ease","duration","BlockInspectorSingleBlock","hasBlockStyles","getBlockStyles","blockStyles"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tgetBlockType,\n\tgetUnregisteredTypeHandlerName,\n\thasBlockSupport,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport {\n\tFlexItem,\n\tPanelBody,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tButton,\n\t__unstableMotion as motion,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMemo, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport SkipToSelectedBlock from '../skip-to-selected-block';\nimport BlockCard from '../block-card';\nimport MultiSelectionInspector from '../multi-selection-inspector';\nimport BlockVariationTransforms from '../block-variation-transforms';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport { store as blockEditorStore } from '../../store';\nimport BlockIcon from '../block-icon';\nimport BlockStyles from '../block-styles';\nimport DefaultStylePicker from '../default-style-picker';\nimport { default as InspectorControls } from '../inspector-controls';\nimport { default as InspectorControlsTabs } from '../inspector-controls-tabs';\nimport useInspectorControlsTabs from '../inspector-controls-tabs/use-inspector-controls-tabs';\nimport AdvancedControls from '../inspector-controls-tabs/advanced-controls-panel';\nimport PositionControls from '../inspector-controls-tabs/position-controls-panel';\n\nfunction useContentBlocks( blockTypes, block ) {\n\tconst contentBlocksObjectAux = useMemo( () => {\n\t\treturn blockTypes.reduce( ( result, blockType ) => {\n\t\t\tif (\n\t\t\t\tblockType.name !== 'core/list-item' &&\n\t\t\t\tObject.entries( blockType.attributes ).some(\n\t\t\t\t\t( [ , { __experimentalRole } ] ) =>\n\t\t\t\t\t\t__experimentalRole === 'content'\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tresult[ blockType.name ] = true;\n\t\t\t}\n\t\t\treturn result;\n\t\t}, {} );\n\t}, [ blockTypes ] );\n\tconst isContentBlock = useCallback(\n\t\t( blockName ) => {\n\t\t\treturn !! contentBlocksObjectAux[ blockName ];\n\t\t},\n\t\t[ blockTypes ]\n\t);\n\treturn useMemo( () => {\n\t\treturn getContentBlocks( [ block ], isContentBlock );\n\t}, [ block, isContentBlock ] );\n}\n\nfunction getContentBlocks( blocks, isContentBlock ) {\n\tconst result = [];\n\tfor ( const block of blocks ) {\n\t\tif ( isContentBlock( block.name ) ) {\n\t\t\tresult.push( block );\n\t\t}\n\t\tresult.push( ...getContentBlocks( block.innerBlocks, isContentBlock ) );\n\t}\n\treturn result;\n}\n\nfunction BlockNavigationButton( { blockTypes, block, selectedBlock } ) {\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\tconst blockType = blockTypes.find( ( { name } ) => name === block.name );\n\tconst isSelected =\n\t\tselectedBlock && selectedBlock.clientId === block.clientId;\n\treturn (\n\t\t<Button\n\t\t\tisPressed={ isSelected }\n\t\t\tonClick={ () => selectBlock( block.clientId ) }\n\t\t>\n\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t<BlockIcon icon={ blockType.icon } />\n\t\t\t\t<FlexItem>{ blockType.title }</FlexItem>\n\t\t\t</HStack>\n\t\t</Button>\n\t);\n}\n\nfunction BlockInspectorLockedBlocks( { topLevelLockedBlock } ) {\n\tconst { blockTypes, block, selectedBlock } = useSelect(\n\t\t( select ) => {\n\t\t\treturn {\n\t\t\t\tblockTypes: select( blocksStore ).getBlockTypes(),\n\t\t\t\tblock: select( blockEditorStore ).getBlock(\n\t\t\t\t\ttopLevelLockedBlock\n\t\t\t\t),\n\t\t\t\tselectedBlock: select( blockEditorStore ).getSelectedBlock(),\n\t\t\t};\n\t\t},\n\t\t[ topLevelLockedBlock ]\n\t);\n\tconst blockInformation = useBlockDisplayInformation( topLevelLockedBlock );\n\tconst contentBlocks = useContentBlocks( blockTypes, block );\n\treturn (\n\t\t<div className=\"block-editor-block-inspector\">\n\t\t\t<BlockCard\n\t\t\t\t{ ...blockInformation }\n\t\t\t\tclassName={ blockInformation.isSynced && 'is-synced' }\n\t\t\t/>\n\t\t\t<BlockVariationTransforms blockClientId={ topLevelLockedBlock } />\n\t\t\t<VStack\n\t\t\t\tspacing={ 1 }\n\t\t\t\tpadding={ 4 }\n\t\t\t\tclassName=\"block-editor-block-inspector__block-buttons-container\"\n\t\t\t>\n\t\t\t\t<h2 className=\"block-editor-block-card__title\">\n\t\t\t\t\t{ __( 'Content' ) }\n\t\t\t\t</h2>\n\t\t\t\t{ contentBlocks.map( ( contentBlock ) => (\n\t\t\t\t\t<BlockNavigationButton\n\t\t\t\t\t\tselectedBlock={ selectedBlock }\n\t\t\t\t\t\tkey={ contentBlock.clientId }\n\t\t\t\t\t\tblock={ contentBlock }\n\t\t\t\t\t\tblockTypes={ blockTypes }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nconst BlockInspector = ( { showNoBlockSelectedMessage = true } ) => {\n\tconst {\n\t\tcount,\n\t\tselectedBlockName,\n\t\tselectedBlockClientId,\n\t\tblockType,\n\t\ttopLevelLockedBlock,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetSelectedBlockClientId,\n\t\t\tgetSelectedBlockCount,\n\t\t\tgetBlockName,\n\t\t\t__unstableGetContentLockingParent,\n\t\t\tgetTemplateLock,\n\t\t} = select( blockEditorStore );\n\n\t\tconst _selectedBlockClientId = getSelectedBlockClientId();\n\t\tconst _selectedBlockName =\n\t\t\t_selectedBlockClientId && getBlockName( _selectedBlockClientId );\n\t\tconst _blockType =\n\t\t\t_selectedBlockName && getBlockType( _selectedBlockName );\n\n\t\treturn {\n\t\t\tcount: getSelectedBlockCount(),\n\t\t\tselectedBlockClientId: _selectedBlockClientId,\n\t\t\tselectedBlockName: _selectedBlockName,\n\t\t\tblockType: _blockType,\n\t\t\ttopLevelLockedBlock:\n\t\t\t\t__unstableGetContentLockingParent( _selectedBlockClientId ) ||\n\t\t\t\t( getTemplateLock( _selectedBlockClientId ) === 'contentOnly'\n\t\t\t\t\t? _selectedBlockClientId\n\t\t\t\t\t: undefined ),\n\t\t};\n\t}, [] );\n\n\tconst availableTabs = useInspectorControlsTabs( blockType?.name );\n\tconst showTabs = availableTabs?.length > 1;\n\n\tconst isOffCanvasNavigationEditorEnabled =\n\t\twindow?.__experimentalEnableOffCanvasNavigationEditor === true;\n\n\tconst blockInspectorAnimationSettings = useSelect(\n\t\t( select ) => {\n\t\t\tif ( isOffCanvasNavigationEditorEnabled && blockType ) {\n\t\t\t\tconst globalBlockInspectorAnimationSettings =\n\t\t\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t\t\t.__experimentalBlockInspectorAnimation;\n\t\t\t\treturn globalBlockInspectorAnimationSettings?.[\n\t\t\t\t\tblockType.name\n\t\t\t\t];\n\t\t\t}\n\t\t\treturn null;\n\t\t},\n\t\t[ selectedBlockClientId, isOffCanvasNavigationEditorEnabled, blockType ]\n\t);\n\n\tif ( count > 1 ) {\n\t\treturn (\n\t\t\t<div className=\"block-editor-block-inspector\">\n\t\t\t\t<MultiSelectionInspector />\n\t\t\t\t{ showTabs ? (\n\t\t\t\t\t<InspectorControlsTabs tabs={ availableTabs } />\n\t\t\t\t) : (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<InspectorControls.Slot />\n\t\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\t\t__experimentalGroup=\"color\"\n\t\t\t\t\t\t\tlabel={ __( 'Color' ) }\n\t\t\t\t\t\t\tclassName=\"color-block-support-panel__inner-wrapper\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\t\t__experimentalGroup=\"typography\"\n\t\t\t\t\t\t\tlabel={ __( 'Typography' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\t\t__experimentalGroup=\"dimensions\"\n\t\t\t\t\t\t\tlabel={ __( 'Dimensions' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\t\t__experimentalGroup=\"border\"\n\t\t\t\t\t\t\tlabel={ __( 'Border' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst isSelectedBlockUnregistered =\n\t\tselectedBlockName === getUnregisteredTypeHandlerName();\n\n\t/*\n\t * If the selected block is of an unregistered type, avoid showing it as an actual selection\n\t * because we want the user to focus on the unregistered block warning, not block settings.\n\t */\n\tif (\n\t\t! blockType ||\n\t\t! selectedBlockClientId ||\n\t\tisSelectedBlockUnregistered\n\t) {\n\t\tif ( showNoBlockSelectedMessage ) {\n\t\t\treturn (\n\t\t\t\t<span className=\"block-editor-block-inspector__no-blocks\">\n\t\t\t\t\t{ __( 'No block selected.' ) }\n\t\t\t\t</span>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}\n\tif ( topLevelLockedBlock ) {\n\t\treturn (\n\t\t\t<BlockInspectorLockedBlocks\n\t\t\t\ttopLevelLockedBlock={ topLevelLockedBlock }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<BlockInspectorSingleBlockWrapper\n\t\t\tanimate={\n\t\t\t\tisOffCanvasNavigationEditorEnabled &&\n\t\t\t\tblockInspectorAnimationSettings\n\t\t\t}\n\t\t\twrapper={ ( children ) => (\n\t\t\t\t<AnimatedContainer\n\t\t\t\t\tblockInspectorAnimationSettings={\n\t\t\t\t\t\tblockInspectorAnimationSettings\n\t\t\t\t\t}\n\t\t\t\t\tselectedBlockClientId={ selectedBlockClientId }\n\t\t\t\t>\n\t\t\t\t\t{ children }\n\t\t\t\t</AnimatedContainer>\n\t\t\t) }\n\t\t>\n\t\t\t<BlockInspectorSingleBlock\n\t\t\t\tclientId={ selectedBlockClientId }\n\t\t\t\tblockName={ blockType.name }\n\t\t\t/>\n\t\t</BlockInspectorSingleBlockWrapper>\n\t);\n};\n\nconst BlockInspectorSingleBlockWrapper = ( { animate, wrapper, children } ) => {\n\treturn animate ? wrapper( children ) : children;\n};\n\nconst AnimatedContainer = ( {\n\tblockInspectorAnimationSettings,\n\tselectedBlockClientId,\n\tchildren,\n} ) => {\n\tconst animationOrigin =\n\t\tblockInspectorAnimationSettings &&\n\t\tblockInspectorAnimationSettings.enterDirection === 'leftToRight'\n\t\t\t? -50\n\t\t\t: 50;\n\n\treturn (\n\t\t<motion.div\n\t\t\tanimate={ {\n\t\t\t\tx: 0,\n\t\t\t\topacity: 1,\n\t\t\t\ttransition: {\n\t\t\t\t\tease: 'easeInOut',\n\t\t\t\t\tduration: 0.14,\n\t\t\t\t},\n\t\t\t} }\n\t\t\tinitial={ {\n\t\t\t\tx: animationOrigin,\n\t\t\t\topacity: 0,\n\t\t\t} }\n\t\t\tkey={ selectedBlockClientId }\n\t\t>\n\t\t\t{ children }\n\t\t</motion.div>\n\t);\n};\n\nconst BlockInspectorSingleBlock = ( { clientId, blockName } ) => {\n\tconst availableTabs = useInspectorControlsTabs( blockName );\n\tconst showTabs = availableTabs?.length > 1;\n\n\tconst hasBlockStyles = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockStyles } = select( blocksStore );\n\t\t\tconst blockStyles = getBlockStyles( blockName );\n\t\t\treturn blockStyles && blockStyles.length > 0;\n\t\t},\n\t\t[ blockName ]\n\t);\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\n\treturn (\n\t\t<div className=\"block-editor-block-inspector\">\n\t\t\t<BlockCard\n\t\t\t\t{ ...blockInformation }\n\t\t\t\tclassName={ blockInformation.isSynced && 'is-synced' }\n\t\t\t/>\n\t\t\t<BlockVariationTransforms blockClientId={ clientId } />\n\t\t\t{ showTabs && (\n\t\t\t\t<InspectorControlsTabs\n\t\t\t\t\thasBlockStyles={ hasBlockStyles }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tblockName={ blockName }\n\t\t\t\t\ttabs={ availableTabs }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! showTabs && (\n\t\t\t\t<>\n\t\t\t\t\t{ hasBlockStyles && (\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t<PanelBody title={ __( 'Styles' ) }>\n\t\t\t\t\t\t\t\t<BlockStyles clientId={ clientId } />\n\t\t\t\t\t\t\t\t{ hasBlockSupport(\n\t\t\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\t\t\t'defaultStylePicker',\n\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t) && (\n\t\t\t\t\t\t\t\t\t<DefaultStylePicker\n\t\t\t\t\t\t\t\t\t\tblockName={ blockName }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t\t<InspectorControls.Slot />\n\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\t__experimentalGroup=\"color\"\n\t\t\t\t\t\tlabel={ __( 'Color' ) }\n\t\t\t\t\t\tclassName=\"color-block-support-panel__inner-wrapper\"\n\t\t\t\t\t/>\n\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\t__experimentalGroup=\"typography\"\n\t\t\t\t\t\tlabel={ __( 'Typography' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\t__experimentalGroup=\"dimensions\"\n\t\t\t\t\t\tlabel={ __( 'Dimensions' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\t__experimentalGroup=\"border\"\n\t\t\t\t\t\tlabel={ __( 'Border' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<PositionControls />\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<AdvancedControls />\n\t\t\t\t\t</div>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<SkipToSelectedBlock key=\"back\" />\n\t\t</div>\n\t);\n};\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-inspector/README.md\n */\nexport default BlockInspector;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-editor/src/components/block-inspector/index.js"],"names":["useContentBlocks","blockTypes","block","contentBlocksObjectAux","reduce","result","blockType","name","Object","entries","attributes","some","__experimentalRole","isContentBlock","blockName","getContentBlocks","blocks","push","innerBlocks","BlockNavigationButton","selectedBlock","selectBlock","blockEditorStore","find","isSelected","clientId","icon","title","BlockInspectorLockedBlocks","topLevelLockedBlock","select","blocksStore","getBlockTypes","getBlock","getSelectedBlock","blockInformation","contentBlocks","isSynced","map","contentBlock","BlockInspector","showNoBlockSelectedMessage","count","selectedBlockName","selectedBlockClientId","getSelectedBlockClientId","getSelectedBlockCount","getBlockName","__unstableGetContentLockingParent","getTemplateLock","_selectedBlockClientId","_selectedBlockName","_blockType","undefined","availableTabs","showTabs","length","blockInspectorAnimationSettings","globalBlockInspectorAnimationSettings","getSettings","__experimentalBlockInspectorAnimation","isSelectedBlockUnregistered","children","BlockInspectorSingleBlockWrapper","animate","wrapper","AnimatedContainer","animationOrigin","enterDirection","x","opacity","transition","ease","duration","BlockInspectorSingleBlock","hasBlockStyles","getBlockStyles","blockStyles"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tgetBlockType,\n\tgetUnregisteredTypeHandlerName,\n\thasBlockSupport,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport {\n\tFlexItem,\n\tPanelBody,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tButton,\n\t__unstableMotion as motion,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMemo, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport SkipToSelectedBlock from '../skip-to-selected-block';\nimport BlockCard from '../block-card';\nimport MultiSelectionInspector from '../multi-selection-inspector';\nimport BlockVariationTransforms from '../block-variation-transforms';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport { store as blockEditorStore } from '../../store';\nimport BlockIcon from '../block-icon';\nimport BlockStyles from '../block-styles';\nimport DefaultStylePicker from '../default-style-picker';\nimport { default as InspectorControls } from '../inspector-controls';\nimport { default as InspectorControlsTabs } from '../inspector-controls-tabs';\nimport useInspectorControlsTabs from '../inspector-controls-tabs/use-inspector-controls-tabs';\nimport AdvancedControls from '../inspector-controls-tabs/advanced-controls-panel';\nimport PositionControls from '../inspector-controls-tabs/position-controls-panel';\n\nfunction useContentBlocks( blockTypes, block ) {\n\tconst contentBlocksObjectAux = useMemo( () => {\n\t\treturn blockTypes.reduce( ( result, blockType ) => {\n\t\t\tif (\n\t\t\t\tblockType.name !== 'core/list-item' &&\n\t\t\t\tObject.entries( blockType.attributes ).some(\n\t\t\t\t\t( [ , { __experimentalRole } ] ) =>\n\t\t\t\t\t\t__experimentalRole === 'content'\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tresult[ blockType.name ] = true;\n\t\t\t}\n\t\t\treturn result;\n\t\t}, {} );\n\t}, [ blockTypes ] );\n\tconst isContentBlock = useCallback(\n\t\t( blockName ) => {\n\t\t\treturn !! contentBlocksObjectAux[ blockName ];\n\t\t},\n\t\t[ blockTypes ]\n\t);\n\treturn useMemo( () => {\n\t\treturn getContentBlocks( [ block ], isContentBlock );\n\t}, [ block, isContentBlock ] );\n}\n\nfunction getContentBlocks( blocks, isContentBlock ) {\n\tconst result = [];\n\tfor ( const block of blocks ) {\n\t\tif ( isContentBlock( block.name ) ) {\n\t\t\tresult.push( block );\n\t\t}\n\t\tresult.push( ...getContentBlocks( block.innerBlocks, isContentBlock ) );\n\t}\n\treturn result;\n}\n\nfunction BlockNavigationButton( { blockTypes, block, selectedBlock } ) {\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\tconst blockType = blockTypes.find( ( { name } ) => name === block.name );\n\tconst isSelected =\n\t\tselectedBlock && selectedBlock.clientId === block.clientId;\n\treturn (\n\t\t<Button\n\t\t\tisPressed={ isSelected }\n\t\t\tonClick={ () => selectBlock( block.clientId ) }\n\t\t>\n\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t<BlockIcon icon={ blockType.icon } />\n\t\t\t\t<FlexItem>{ blockType.title }</FlexItem>\n\t\t\t</HStack>\n\t\t</Button>\n\t);\n}\n\nfunction BlockInspectorLockedBlocks( { topLevelLockedBlock } ) {\n\tconst { blockTypes, block, selectedBlock } = useSelect(\n\t\t( select ) => {\n\t\t\treturn {\n\t\t\t\tblockTypes: select( blocksStore ).getBlockTypes(),\n\t\t\t\tblock: select( blockEditorStore ).getBlock(\n\t\t\t\t\ttopLevelLockedBlock\n\t\t\t\t),\n\t\t\t\tselectedBlock: select( blockEditorStore ).getSelectedBlock(),\n\t\t\t};\n\t\t},\n\t\t[ topLevelLockedBlock ]\n\t);\n\tconst blockInformation = useBlockDisplayInformation( topLevelLockedBlock );\n\tconst contentBlocks = useContentBlocks( blockTypes, block );\n\treturn (\n\t\t<div className=\"block-editor-block-inspector\">\n\t\t\t<BlockCard\n\t\t\t\t{ ...blockInformation }\n\t\t\t\tclassName={ blockInformation.isSynced && 'is-synced' }\n\t\t\t/>\n\t\t\t<BlockVariationTransforms blockClientId={ topLevelLockedBlock } />\n\t\t\t<VStack\n\t\t\t\tspacing={ 1 }\n\t\t\t\tpadding={ 4 }\n\t\t\t\tclassName=\"block-editor-block-inspector__block-buttons-container\"\n\t\t\t>\n\t\t\t\t<h2 className=\"block-editor-block-card__title\">\n\t\t\t\t\t{ __( 'Content' ) }\n\t\t\t\t</h2>\n\t\t\t\t{ contentBlocks.map( ( contentBlock ) => (\n\t\t\t\t\t<BlockNavigationButton\n\t\t\t\t\t\tselectedBlock={ selectedBlock }\n\t\t\t\t\t\tkey={ contentBlock.clientId }\n\t\t\t\t\t\tblock={ contentBlock }\n\t\t\t\t\t\tblockTypes={ blockTypes }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nconst BlockInspector = ( { showNoBlockSelectedMessage = true } ) => {\n\tconst {\n\t\tcount,\n\t\tselectedBlockName,\n\t\tselectedBlockClientId,\n\t\tblockType,\n\t\ttopLevelLockedBlock,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetSelectedBlockClientId,\n\t\t\tgetSelectedBlockCount,\n\t\t\tgetBlockName,\n\t\t\t__unstableGetContentLockingParent,\n\t\t\tgetTemplateLock,\n\t\t} = select( blockEditorStore );\n\n\t\tconst _selectedBlockClientId = getSelectedBlockClientId();\n\t\tconst _selectedBlockName =\n\t\t\t_selectedBlockClientId && getBlockName( _selectedBlockClientId );\n\t\tconst _blockType =\n\t\t\t_selectedBlockName && getBlockType( _selectedBlockName );\n\n\t\treturn {\n\t\t\tcount: getSelectedBlockCount(),\n\t\t\tselectedBlockClientId: _selectedBlockClientId,\n\t\t\tselectedBlockName: _selectedBlockName,\n\t\t\tblockType: _blockType,\n\t\t\ttopLevelLockedBlock:\n\t\t\t\t__unstableGetContentLockingParent( _selectedBlockClientId ) ||\n\t\t\t\t( getTemplateLock( _selectedBlockClientId ) === 'contentOnly'\n\t\t\t\t\t? _selectedBlockClientId\n\t\t\t\t\t: undefined ),\n\t\t};\n\t}, [] );\n\n\tconst availableTabs = useInspectorControlsTabs( blockType?.name );\n\tconst showTabs = availableTabs?.length > 1;\n\n\tconst blockInspectorAnimationSettings = useSelect(\n\t\t( select ) => {\n\t\t\tif ( blockType ) {\n\t\t\t\tconst globalBlockInspectorAnimationSettings =\n\t\t\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t\t\t.__experimentalBlockInspectorAnimation;\n\t\t\t\treturn globalBlockInspectorAnimationSettings?.[\n\t\t\t\t\tblockType.name\n\t\t\t\t];\n\t\t\t}\n\t\t\treturn null;\n\t\t},\n\t\t[ selectedBlockClientId, blockType ]\n\t);\n\n\tif ( count > 1 ) {\n\t\treturn (\n\t\t\t<div className=\"block-editor-block-inspector\">\n\t\t\t\t<MultiSelectionInspector />\n\t\t\t\t{ showTabs ? (\n\t\t\t\t\t<InspectorControlsTabs tabs={ availableTabs } />\n\t\t\t\t) : (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<InspectorControls.Slot />\n\t\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\t\tgroup=\"color\"\n\t\t\t\t\t\t\tlabel={ __( 'Color' ) }\n\t\t\t\t\t\t\tclassName=\"color-block-support-panel__inner-wrapper\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\t\tgroup=\"typography\"\n\t\t\t\t\t\t\tlabel={ __( 'Typography' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\t\tgroup=\"dimensions\"\n\t\t\t\t\t\t\tlabel={ __( 'Dimensions' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\t\tgroup=\"border\"\n\t\t\t\t\t\t\tlabel={ __( 'Border' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<InspectorControls.Slot group=\"styles\" />\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst isSelectedBlockUnregistered =\n\t\tselectedBlockName === getUnregisteredTypeHandlerName();\n\n\t/*\n\t * If the selected block is of an unregistered type, avoid showing it as an actual selection\n\t * because we want the user to focus on the unregistered block warning, not block settings.\n\t */\n\tif (\n\t\t! blockType ||\n\t\t! selectedBlockClientId ||\n\t\tisSelectedBlockUnregistered\n\t) {\n\t\tif ( showNoBlockSelectedMessage ) {\n\t\t\treturn (\n\t\t\t\t<span className=\"block-editor-block-inspector__no-blocks\">\n\t\t\t\t\t{ __( 'No block selected.' ) }\n\t\t\t\t</span>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}\n\tif ( topLevelLockedBlock ) {\n\t\treturn (\n\t\t\t<BlockInspectorLockedBlocks\n\t\t\t\ttopLevelLockedBlock={ topLevelLockedBlock }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<BlockInspectorSingleBlockWrapper\n\t\t\tanimate={ blockInspectorAnimationSettings }\n\t\t\twrapper={ ( children ) => (\n\t\t\t\t<AnimatedContainer\n\t\t\t\t\tblockInspectorAnimationSettings={\n\t\t\t\t\t\tblockInspectorAnimationSettings\n\t\t\t\t\t}\n\t\t\t\t\tselectedBlockClientId={ selectedBlockClientId }\n\t\t\t\t>\n\t\t\t\t\t{ children }\n\t\t\t\t</AnimatedContainer>\n\t\t\t) }\n\t\t>\n\t\t\t<BlockInspectorSingleBlock\n\t\t\t\tclientId={ selectedBlockClientId }\n\t\t\t\tblockName={ blockType.name }\n\t\t\t/>\n\t\t</BlockInspectorSingleBlockWrapper>\n\t);\n};\n\nconst BlockInspectorSingleBlockWrapper = ( { animate, wrapper, children } ) => {\n\treturn animate ? wrapper( children ) : children;\n};\n\nconst AnimatedContainer = ( {\n\tblockInspectorAnimationSettings,\n\tselectedBlockClientId,\n\tchildren,\n} ) => {\n\tconst animationOrigin =\n\t\tblockInspectorAnimationSettings &&\n\t\tblockInspectorAnimationSettings.enterDirection === 'leftToRight'\n\t\t\t? -50\n\t\t\t: 50;\n\n\treturn (\n\t\t<motion.div\n\t\t\tanimate={ {\n\t\t\t\tx: 0,\n\t\t\t\topacity: 1,\n\t\t\t\ttransition: {\n\t\t\t\t\tease: 'easeInOut',\n\t\t\t\t\tduration: 0.14,\n\t\t\t\t},\n\t\t\t} }\n\t\t\tinitial={ {\n\t\t\t\tx: animationOrigin,\n\t\t\t\topacity: 0,\n\t\t\t} }\n\t\t\tkey={ selectedBlockClientId }\n\t\t>\n\t\t\t{ children }\n\t\t</motion.div>\n\t);\n};\n\nconst BlockInspectorSingleBlock = ( { clientId, blockName } ) => {\n\tconst availableTabs = useInspectorControlsTabs( blockName );\n\tconst showTabs = availableTabs?.length > 1;\n\n\tconst hasBlockStyles = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockStyles } = select( blocksStore );\n\t\t\tconst blockStyles = getBlockStyles( blockName );\n\t\t\treturn blockStyles && blockStyles.length > 0;\n\t\t},\n\t\t[ blockName ]\n\t);\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\n\treturn (\n\t\t<div className=\"block-editor-block-inspector\">\n\t\t\t<BlockCard\n\t\t\t\t{ ...blockInformation }\n\t\t\t\tclassName={ blockInformation.isSynced && 'is-synced' }\n\t\t\t/>\n\t\t\t<BlockVariationTransforms blockClientId={ clientId } />\n\t\t\t{ showTabs && (\n\t\t\t\t<InspectorControlsTabs\n\t\t\t\t\thasBlockStyles={ hasBlockStyles }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tblockName={ blockName }\n\t\t\t\t\ttabs={ availableTabs }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! showTabs && (\n\t\t\t\t<>\n\t\t\t\t\t{ hasBlockStyles && (\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t<PanelBody title={ __( 'Styles' ) }>\n\t\t\t\t\t\t\t\t<BlockStyles clientId={ clientId } />\n\t\t\t\t\t\t\t\t{ hasBlockSupport(\n\t\t\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\t\t\t'defaultStylePicker',\n\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t) && (\n\t\t\t\t\t\t\t\t\t<DefaultStylePicker\n\t\t\t\t\t\t\t\t\t\tblockName={ blockName }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t\t<InspectorControls.Slot />\n\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\tgroup=\"color\"\n\t\t\t\t\t\tlabel={ __( 'Color' ) }\n\t\t\t\t\t\tclassName=\"color-block-support-panel__inner-wrapper\"\n\t\t\t\t\t/>\n\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\tgroup=\"typography\"\n\t\t\t\t\t\tlabel={ __( 'Typography' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\tgroup=\"dimensions\"\n\t\t\t\t\t\tlabel={ __( 'Dimensions' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<InspectorControls.Slot\n\t\t\t\t\t\tgroup=\"border\"\n\t\t\t\t\t\tlabel={ __( 'Border' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<InspectorControls.Slot group=\"styles\" />\n\t\t\t\t\t<PositionControls />\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<AdvancedControls />\n\t\t\t\t\t</div>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<SkipToSelectedBlock key=\"back\" />\n\t\t</div>\n\t);\n};\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-inspector/README.md\n */\nexport default BlockInspector;\n"]}
@@ -49,6 +49,11 @@ function useInBetweenInserter() {
49
49
 
50
50
  if (openRef.current) {
51
51
  return;
52
+ } // Ignore text nodes sometimes detected in FireFox.
53
+
54
+
55
+ if (event.target.nodeType === event.target.TEXT_NODE) {
56
+ return;
52
57
  }
53
58
 
54
59
  if (isMultiSelecting()) {