@wordpress/block-editor 12.16.0 → 12.16.1-next.79a6196f.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (650) hide show
  1. package/LICENSE.md +1 -1
  2. package/README.md +3 -6
  3. package/build/components/block-canvas/index.js +0 -2
  4. package/build/components/block-canvas/index.js.map +1 -1
  5. package/build/components/block-card/index.js +1 -1
  6. package/build/components/block-card/index.js.map +1 -1
  7. package/build/components/block-draggable/draggable-chip.js +6 -1
  8. package/build/components/block-draggable/draggable-chip.js.map +1 -1
  9. package/build/components/block-draggable/index.js +76 -6
  10. package/build/components/block-draggable/index.js.map +1 -1
  11. package/build/components/block-draggable/index.native.js +0 -6
  12. package/build/components/block-draggable/index.native.js.map +1 -1
  13. package/build/components/block-draggable/use-scroll-when-dragging.native.js +1 -1
  14. package/build/components/block-draggable/use-scroll-when-dragging.native.js.map +1 -1
  15. package/build/components/block-editing-mode/index.js +2 -3
  16. package/build/components/block-editing-mode/index.js.map +1 -1
  17. package/build/components/block-inspector/index.js +1 -1
  18. package/build/components/block-inspector/index.js.map +1 -1
  19. package/build/components/block-list/block-list-item-cell.native.js +1 -0
  20. package/build/components/block-list/block-list-item-cell.native.js.map +1 -1
  21. package/build/components/block-list/block.js +245 -102
  22. package/build/components/block-list/block.js.map +1 -1
  23. package/build/components/block-list/block.native.js +46 -20
  24. package/build/components/block-list/block.native.js.map +1 -1
  25. package/build/components/block-list/index.native.js +3 -5
  26. package/build/components/block-list/index.native.js.map +1 -1
  27. package/build/components/block-list/private-block-context.js +14 -0
  28. package/build/components/block-list/private-block-context.js.map +1 -0
  29. package/build/components/block-list/use-block-props/index.js +33 -96
  30. package/build/components/block-list/use-block-props/index.js.map +1 -1
  31. package/build/components/block-list/use-in-between-inserter.js +3 -2
  32. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  33. package/build/components/block-list/use-scroll-upon-insertion.native.js +41 -0
  34. package/build/components/block-list/use-scroll-upon-insertion.native.js.map +1 -0
  35. package/build/components/block-lock/toolbar.js +21 -27
  36. package/build/components/block-lock/toolbar.js.map +1 -1
  37. package/build/components/block-mover/index.js +2 -1
  38. package/build/components/block-mover/index.js.map +1 -1
  39. package/build/components/block-patterns-list/index.js +4 -4
  40. package/build/components/block-patterns-list/index.js.map +1 -1
  41. package/build/components/block-switcher/index.js +4 -4
  42. package/build/components/block-switcher/index.js.map +1 -1
  43. package/build/components/block-toolbar/index.js +1 -2
  44. package/build/components/block-toolbar/index.js.map +1 -1
  45. package/build/components/block-tools/block-toolbar-popover.js +0 -2
  46. package/build/components/block-tools/block-toolbar-popover.js.map +1 -1
  47. package/build/components/block-variation-transforms/index.js +29 -2
  48. package/build/components/block-variation-transforms/index.js.map +1 -1
  49. package/build/components/border-radius-control/linked-button.js +1 -1
  50. package/build/components/border-radius-control/linked-button.js.map +1 -1
  51. package/build/components/colors/utils.js +10 -2
  52. package/build/components/colors/utils.js.map +1 -1
  53. package/build/components/colors/with-colors.js +6 -2
  54. package/build/components/colors/with-colors.js.map +1 -1
  55. package/build/components/font-sizes/utils.js +10 -2
  56. package/build/components/font-sizes/utils.js.map +1 -1
  57. package/build/components/global-styles/border-panel.js +2 -1
  58. package/build/components/global-styles/border-panel.js.map +1 -1
  59. package/build/components/global-styles/color-panel.js +2 -1
  60. package/build/components/global-styles/color-panel.js.map +1 -1
  61. package/build/components/global-styles/dimensions-panel.js +4 -3
  62. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  63. package/build/components/global-styles/effects-panel.js +2 -1
  64. package/build/components/global-styles/effects-panel.js.map +1 -1
  65. package/build/components/global-styles/filters-panel.js +1 -4
  66. package/build/components/global-styles/filters-panel.js.map +1 -1
  67. package/build/components/global-styles/get-global-styles-changes.js +192 -0
  68. package/build/components/global-styles/get-global-styles-changes.js.map +1 -0
  69. package/build/components/global-styles/hooks.js +3 -2
  70. package/build/components/global-styles/hooks.js.map +1 -1
  71. package/build/components/global-styles/image-settings-panel.js +7 -1
  72. package/build/components/global-styles/image-settings-panel.js.map +1 -1
  73. package/build/components/global-styles/index.js +7 -0
  74. package/build/components/global-styles/index.js.map +1 -1
  75. package/build/components/global-styles/typography-panel.js +33 -15
  76. package/build/components/global-styles/typography-panel.js.map +1 -1
  77. package/build/components/global-styles/use-global-styles-output.js +22 -8
  78. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  79. package/build/components/global-styles/utils.js +8 -1
  80. package/build/components/global-styles/utils.js.map +1 -1
  81. package/build/components/height-control/index.js +6 -2
  82. package/build/components/height-control/index.js.map +1 -1
  83. package/build/components/image-size-control/index.js +2 -2
  84. package/build/components/image-size-control/index.js.map +1 -1
  85. package/build/components/index.native.js +6 -5
  86. package/build/components/index.native.js.map +1 -1
  87. package/build/components/inner-blocks/index.js +61 -22
  88. package/build/components/inner-blocks/index.js.map +1 -1
  89. package/build/components/inner-blocks/index.native.js +18 -4
  90. package/build/components/inner-blocks/index.native.js.map +1 -1
  91. package/build/components/inner-blocks/use-inner-block-template-sync.js +5 -6
  92. package/build/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  93. package/build/components/inner-blocks/use-nested-settings-update.js +5 -9
  94. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  95. package/build/components/inserter/block-patterns-explorer/pattern-list.js +1 -1
  96. package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  97. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +10 -9
  98. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  99. package/build/components/inserter/block-patterns-tab/patterns-filter.js +10 -10
  100. package/build/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  101. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js +9 -9
  102. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  103. package/build/components/inserter/block-patterns-tab/utils.js +10 -14
  104. package/build/components/inserter/block-patterns-tab/utils.js.map +1 -1
  105. package/build/components/inserter/hooks/use-block-types-state.js +4 -14
  106. package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
  107. package/build/components/inserter/hooks/use-patterns-state.js +1 -1
  108. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  109. package/build/components/inserter/index.js +1 -2
  110. package/build/components/inserter/index.js.map +1 -1
  111. package/build/components/inserter/library.js +3 -7
  112. package/build/components/inserter/library.js.map +1 -1
  113. package/build/components/inserter/menu.js +14 -28
  114. package/build/components/inserter/menu.js.map +1 -1
  115. package/build/components/inserter/tabs.js +21 -21
  116. package/build/components/inserter/tabs.js.map +1 -1
  117. package/build/components/inserter-draggable-blocks/index.js +1 -1
  118. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  119. package/build/components/inserter-list-item/index.js +2 -4
  120. package/build/components/inserter-list-item/index.js.map +1 -1
  121. package/build/components/inspector-controls/block-support-tools-panel.js +3 -1
  122. package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  123. package/build/components/inspector-controls-tabs/index.js +34 -23
  124. package/build/components/inspector-controls-tabs/index.js.map +1 -1
  125. package/build/components/list-view/block-select-button.js +4 -0
  126. package/build/components/list-view/block-select-button.js.map +1 -1
  127. package/build/components/list-view/block.js +57 -3
  128. package/build/components/list-view/block.js.map +1 -1
  129. package/build/components/media-upload-progress/constants.js +19 -0
  130. package/build/components/media-upload-progress/constants.js.map +1 -0
  131. package/build/components/media-upload-progress/index.native.js +42 -17
  132. package/build/components/media-upload-progress/index.native.js.map +1 -1
  133. package/build/components/navigable-toolbar/index.js +9 -14
  134. package/build/components/navigable-toolbar/index.js.map +1 -1
  135. package/build/components/plain-text/index.native.js +8 -3
  136. package/build/components/plain-text/index.native.js.map +1 -1
  137. package/build/components/provider/index.js +3 -1
  138. package/build/components/provider/index.js.map +1 -1
  139. package/build/components/provider/use-block-sync.js +7 -1
  140. package/build/components/provider/use-block-sync.js.map +1 -1
  141. package/build/components/rich-text/index.js +17 -7
  142. package/build/components/rich-text/index.js.map +1 -1
  143. package/build/components/rich-text/native/index.native.js +16 -24
  144. package/build/components/rich-text/native/index.native.js.map +1 -1
  145. package/build/components/rich-text/use-input-rules.js +2 -2
  146. package/build/components/rich-text/use-input-rules.js.map +1 -1
  147. package/build/components/rich-text/use-mark-persistent.js +1 -1
  148. package/build/components/rich-text/use-mark-persistent.js.map +1 -1
  149. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -1
  150. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  151. package/build/components/url-input/index.js +9 -6
  152. package/build/components/url-input/index.js.map +1 -1
  153. package/build/components/use-block-commands/index.js +14 -18
  154. package/build/components/use-block-commands/index.js.map +1 -1
  155. package/build/components/use-block-drop-zone/index.js +51 -22
  156. package/build/components/use-block-drop-zone/index.js.map +1 -1
  157. package/build/components/use-moving-animation/index.js +100 -92
  158. package/build/components/use-moving-animation/index.js.map +1 -1
  159. package/build/components/use-on-block-drop/index.js +8 -11
  160. package/build/components/use-on-block-drop/index.js.map +1 -1
  161. package/build/components/writing-flow/index.js +0 -1
  162. package/build/components/writing-flow/index.js.map +1 -1
  163. package/build/components/writing-flow/use-drag-selection.js +15 -4
  164. package/build/components/writing-flow/use-drag-selection.js.map +1 -1
  165. package/build/components/writing-flow/use-selection-observer.js +73 -27
  166. package/build/components/writing-flow/use-selection-observer.js.map +1 -1
  167. package/build/components/writing-flow/use-tab-nav.js +7 -4
  168. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  169. package/build/hooks/align.js +1 -1
  170. package/build/hooks/align.js.map +1 -1
  171. package/build/hooks/anchor.js +1 -1
  172. package/build/hooks/anchor.js.map +1 -1
  173. package/build/hooks/aria-label.js +9 -1
  174. package/build/hooks/aria-label.js.map +1 -1
  175. package/build/hooks/background.js +185 -20
  176. package/build/hooks/background.js.map +1 -1
  177. package/build/hooks/border.js +5 -10
  178. package/build/hooks/border.js.map +1 -1
  179. package/build/hooks/color.js +13 -11
  180. package/build/hooks/color.js.map +1 -1
  181. package/build/hooks/custom-class-name.js +1 -1
  182. package/build/hooks/custom-class-name.js.map +1 -1
  183. package/build/hooks/custom-class-name.native.js +9 -1
  184. package/build/hooks/custom-class-name.native.js.map +1 -1
  185. package/build/hooks/dimensions.js +4 -9
  186. package/build/hooks/dimensions.js.map +1 -1
  187. package/build/hooks/font-family.js +7 -3
  188. package/build/hooks/font-family.js.map +1 -1
  189. package/build/hooks/font-size.js +1 -1
  190. package/build/hooks/font-size.js.map +1 -1
  191. package/build/hooks/index.js +4 -4
  192. package/build/hooks/index.js.map +1 -1
  193. package/build/hooks/index.native.js +5 -3
  194. package/build/hooks/index.native.js.map +1 -1
  195. package/build/hooks/layout.js +10 -4
  196. package/build/hooks/layout.js.map +1 -1
  197. package/build/hooks/style.js +1 -1
  198. package/build/hooks/style.js.map +1 -1
  199. package/build/hooks/typography.js +4 -9
  200. package/build/hooks/typography.js.map +1 -1
  201. package/build/hooks/typography.native.js +43 -18
  202. package/build/hooks/typography.native.js.map +1 -1
  203. package/build/hooks/use-typography-props.js +10 -2
  204. package/build/hooks/use-typography-props.js.map +1 -1
  205. package/build/hooks/utils.js +48 -5
  206. package/build/hooks/utils.js.map +1 -1
  207. package/build/private-apis.js +2 -4
  208. package/build/private-apis.js.map +1 -1
  209. package/build/private-apis.native.js +0 -2
  210. package/build/private-apis.native.js.map +1 -1
  211. package/build/store/actions.js +0 -16
  212. package/build/store/actions.js.map +1 -1
  213. package/build/store/private-actions.js +51 -5
  214. package/build/store/private-actions.js.map +1 -1
  215. package/build/store/private-selectors.js +12 -0
  216. package/build/store/private-selectors.js.map +1 -1
  217. package/build/store/reducer.js +14 -6
  218. package/build/store/reducer.js.map +1 -1
  219. package/build/store/selectors.js +1 -13
  220. package/build/store/selectors.js.map +1 -1
  221. package/build/store/undo-ignore.js +12 -0
  222. package/build/store/undo-ignore.js.map +1 -0
  223. package/build/store/utils.js +1 -1
  224. package/build/store/utils.js.map +1 -1
  225. package/build/utils/get-px-from-css-unit.js +16 -0
  226. package/build/utils/get-px-from-css-unit.js.map +1 -0
  227. package/build/utils/index.js +2 -2
  228. package/build/utils/index.js.map +1 -1
  229. package/build/utils/object.js +17 -38
  230. package/build/utils/object.js.map +1 -1
  231. package/build/utils/use-can-block-toolbar-be-focused.js +46 -0
  232. package/build/utils/use-can-block-toolbar-be-focused.js.map +1 -0
  233. package/build-module/components/block-canvas/index.js +0 -2
  234. package/build-module/components/block-canvas/index.js.map +1 -1
  235. package/build-module/components/block-card/index.js +1 -1
  236. package/build-module/components/block-card/index.js.map +1 -1
  237. package/build-module/components/block-draggable/draggable-chip.js +6 -1
  238. package/build-module/components/block-draggable/draggable-chip.js.map +1 -1
  239. package/build-module/components/block-draggable/index.js +76 -6
  240. package/build-module/components/block-draggable/index.js.map +1 -1
  241. package/build-module/components/block-draggable/index.native.js +1 -7
  242. package/build-module/components/block-draggable/index.native.js.map +1 -1
  243. package/build-module/components/block-draggable/use-scroll-when-dragging.native.js +1 -1
  244. package/build-module/components/block-draggable/use-scroll-when-dragging.native.js.map +1 -1
  245. package/build-module/components/block-editing-mode/index.js +3 -4
  246. package/build-module/components/block-editing-mode/index.js.map +1 -1
  247. package/build-module/components/block-inspector/index.js +1 -1
  248. package/build-module/components/block-inspector/index.js.map +1 -1
  249. package/build-module/components/block-list/block-list-item-cell.native.js +1 -0
  250. package/build-module/components/block-list/block-list-item-cell.native.js.map +1 -1
  251. package/build-module/components/block-list/block.js +249 -106
  252. package/build-module/components/block-list/block.js.map +1 -1
  253. package/build-module/components/block-list/block.native.js +48 -22
  254. package/build-module/components/block-list/block.native.js.map +1 -1
  255. package/build-module/components/block-list/index.native.js +3 -5
  256. package/build-module/components/block-list/index.native.js.map +1 -1
  257. package/build-module/components/block-list/private-block-context.js +6 -0
  258. package/build-module/components/block-list/private-block-context.js.map +1 -0
  259. package/build-module/components/block-list/use-block-props/index.js +34 -97
  260. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  261. package/build-module/components/block-list/use-in-between-inserter.js +3 -2
  262. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  263. package/build-module/components/block-list/use-scroll-upon-insertion.native.js +33 -0
  264. package/build-module/components/block-list/use-scroll-upon-insertion.native.js.map +1 -0
  265. package/build-module/components/block-lock/toolbar.js +22 -28
  266. package/build-module/components/block-lock/toolbar.js.map +1 -1
  267. package/build-module/components/block-mover/index.js +2 -1
  268. package/build-module/components/block-mover/index.js.map +1 -1
  269. package/build-module/components/block-patterns-list/index.js +5 -5
  270. package/build-module/components/block-patterns-list/index.js.map +1 -1
  271. package/build-module/components/block-switcher/index.js +4 -4
  272. package/build-module/components/block-switcher/index.js.map +1 -1
  273. package/build-module/components/block-toolbar/index.js +1 -2
  274. package/build-module/components/block-toolbar/index.js.map +1 -1
  275. package/build-module/components/block-tools/block-toolbar-popover.js +0 -2
  276. package/build-module/components/block-tools/block-toolbar-popover.js.map +1 -1
  277. package/build-module/components/block-variation-transforms/index.js +30 -3
  278. package/build-module/components/block-variation-transforms/index.js.map +1 -1
  279. package/build-module/components/border-radius-control/linked-button.js +1 -1
  280. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  281. package/build-module/components/colors/utils.js +9 -1
  282. package/build-module/components/colors/utils.js.map +1 -1
  283. package/build-module/components/colors/with-colors.js +5 -1
  284. package/build-module/components/colors/with-colors.js.map +1 -1
  285. package/build-module/components/font-sizes/utils.js +9 -1
  286. package/build-module/components/font-sizes/utils.js.map +1 -1
  287. package/build-module/components/global-styles/border-panel.js +3 -2
  288. package/build-module/components/global-styles/border-panel.js.map +1 -1
  289. package/build-module/components/global-styles/color-panel.js +3 -2
  290. package/build-module/components/global-styles/color-panel.js.map +1 -1
  291. package/build-module/components/global-styles/dimensions-panel.js +5 -4
  292. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  293. package/build-module/components/global-styles/effects-panel.js +3 -2
  294. package/build-module/components/global-styles/effects-panel.js.map +1 -1
  295. package/build-module/components/global-styles/filters-panel.js +2 -5
  296. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  297. package/build-module/components/global-styles/get-global-styles-changes.js +184 -0
  298. package/build-module/components/global-styles/get-global-styles-changes.js.map +1 -0
  299. package/build-module/components/global-styles/hooks.js +3 -2
  300. package/build-module/components/global-styles/hooks.js.map +1 -1
  301. package/build-module/components/global-styles/image-settings-panel.js +7 -1
  302. package/build-module/components/global-styles/image-settings-panel.js.map +1 -1
  303. package/build-module/components/global-styles/index.js +1 -0
  304. package/build-module/components/global-styles/index.js.map +1 -1
  305. package/build-module/components/global-styles/typography-panel.js +35 -17
  306. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  307. package/build-module/components/global-styles/use-global-styles-output.js +15 -1
  308. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  309. package/build-module/components/global-styles/utils.js +7 -0
  310. package/build-module/components/global-styles/utils.js.map +1 -1
  311. package/build-module/components/height-control/index.js +6 -2
  312. package/build-module/components/height-control/index.js.map +1 -1
  313. package/build-module/components/image-size-control/index.js +2 -2
  314. package/build-module/components/image-size-control/index.js.map +1 -1
  315. package/build-module/components/index.native.js +2 -1
  316. package/build-module/components/index.native.js.map +1 -1
  317. package/build-module/components/inner-blocks/index.js +62 -23
  318. package/build-module/components/inner-blocks/index.js.map +1 -1
  319. package/build-module/components/inner-blocks/index.native.js +18 -4
  320. package/build-module/components/inner-blocks/index.native.js.map +1 -1
  321. package/build-module/components/inner-blocks/use-inner-block-template-sync.js +5 -6
  322. package/build-module/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
  323. package/build-module/components/inner-blocks/use-nested-settings-update.js +6 -10
  324. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  325. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js +2 -2
  326. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  327. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +11 -10
  328. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  329. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js +11 -11
  330. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
  331. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js +11 -11
  332. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  333. package/build-module/components/inserter/block-patterns-tab/utils.js +7 -11
  334. package/build-module/components/inserter/block-patterns-tab/utils.js.map +1 -1
  335. package/build-module/components/inserter/hooks/use-block-types-state.js +4 -14
  336. package/build-module/components/inserter/hooks/use-block-types-state.js.map +1 -1
  337. package/build-module/components/inserter/hooks/use-patterns-state.js +2 -2
  338. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  339. package/build-module/components/inserter/index.js +1 -2
  340. package/build-module/components/inserter/index.js.map +1 -1
  341. package/build-module/components/inserter/library.js +3 -7
  342. package/build-module/components/inserter/library.js.map +1 -1
  343. package/build-module/components/inserter/menu.js +14 -28
  344. package/build-module/components/inserter/menu.js.map +1 -1
  345. package/build-module/components/inserter/tabs.js +22 -22
  346. package/build-module/components/inserter/tabs.js.map +1 -1
  347. package/build-module/components/inserter-draggable-blocks/index.js +2 -2
  348. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  349. package/build-module/components/inserter-list-item/index.js +2 -4
  350. package/build-module/components/inserter-list-item/index.js.map +1 -1
  351. package/build-module/components/inspector-controls/block-support-tools-panel.js +3 -1
  352. package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
  353. package/build-module/components/inspector-controls-tabs/index.js +35 -24
  354. package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
  355. package/build-module/components/list-view/block-select-button.js +4 -0
  356. package/build-module/components/list-view/block-select-button.js.map +1 -1
  357. package/build-module/components/list-view/block.js +58 -4
  358. package/build-module/components/list-view/block.js.map +1 -1
  359. package/build-module/components/media-upload-progress/constants.js +7 -0
  360. package/build-module/components/media-upload-progress/constants.js.map +1 -0
  361. package/build-module/components/media-upload-progress/index.native.js +37 -8
  362. package/build-module/components/media-upload-progress/index.native.js.map +1 -1
  363. package/build-module/components/navigable-toolbar/index.js +9 -14
  364. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  365. package/build-module/components/plain-text/index.native.js +6 -1
  366. package/build-module/components/plain-text/index.native.js.map +1 -1
  367. package/build-module/components/provider/index.js +3 -1
  368. package/build-module/components/provider/index.js.map +1 -1
  369. package/build-module/components/provider/use-block-sync.js +7 -1
  370. package/build-module/components/provider/use-block-sync.js.map +1 -1
  371. package/build-module/components/rich-text/index.js +17 -7
  372. package/build-module/components/rich-text/index.js.map +1 -1
  373. package/build-module/components/rich-text/native/index.native.js +16 -23
  374. package/build-module/components/rich-text/native/index.native.js.map +1 -1
  375. package/build-module/components/rich-text/use-input-rules.js +2 -2
  376. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  377. package/build-module/components/rich-text/use-mark-persistent.js +1 -1
  378. package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
  379. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -1
  380. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  381. package/build-module/components/url-input/index.js +9 -6
  382. package/build-module/components/url-input/index.js.map +1 -1
  383. package/build-module/components/use-block-commands/index.js +14 -18
  384. package/build-module/components/use-block-commands/index.js.map +1 -1
  385. package/build-module/components/use-block-drop-zone/index.js +51 -23
  386. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  387. package/build-module/components/use-moving-animation/index.js +102 -94
  388. package/build-module/components/use-moving-animation/index.js.map +1 -1
  389. package/build-module/components/use-on-block-drop/index.js +8 -11
  390. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  391. package/build-module/components/writing-flow/index.js +0 -1
  392. package/build-module/components/writing-flow/index.js.map +1 -1
  393. package/build-module/components/writing-flow/use-drag-selection.js +15 -4
  394. package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
  395. package/build-module/components/writing-flow/use-selection-observer.js +73 -27
  396. package/build-module/components/writing-flow/use-selection-observer.js.map +1 -1
  397. package/build-module/components/writing-flow/use-tab-nav.js +7 -4
  398. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  399. package/build-module/hooks/align.js +1 -1
  400. package/build-module/hooks/align.js.map +1 -1
  401. package/build-module/hooks/anchor.js +1 -1
  402. package/build-module/hooks/anchor.js.map +1 -1
  403. package/build-module/hooks/aria-label.js +7 -1
  404. package/build-module/hooks/aria-label.js.map +1 -1
  405. package/build-module/hooks/background.js +181 -19
  406. package/build-module/hooks/background.js.map +1 -1
  407. package/build-module/hooks/border.js +2 -8
  408. package/build-module/hooks/border.js.map +1 -1
  409. package/build-module/hooks/color.js +11 -9
  410. package/build-module/hooks/color.js.map +1 -1
  411. package/build-module/hooks/custom-class-name.js +1 -1
  412. package/build-module/hooks/custom-class-name.js.map +1 -1
  413. package/build-module/hooks/custom-class-name.native.js +7 -1
  414. package/build-module/hooks/custom-class-name.native.js.map +1 -1
  415. package/build-module/hooks/dimensions.js +1 -7
  416. package/build-module/hooks/dimensions.js.map +1 -1
  417. package/build-module/hooks/font-family.js +6 -2
  418. package/build-module/hooks/font-family.js.map +1 -1
  419. package/build-module/hooks/font-size.js +1 -1
  420. package/build-module/hooks/font-size.js.map +1 -1
  421. package/build-module/hooks/index.js +5 -5
  422. package/build-module/hooks/index.js.map +1 -1
  423. package/build-module/hooks/index.native.js +6 -4
  424. package/build-module/hooks/index.native.js.map +1 -1
  425. package/build-module/hooks/layout.js +9 -3
  426. package/build-module/hooks/layout.js.map +1 -1
  427. package/build-module/hooks/style.js +1 -1
  428. package/build-module/hooks/style.js.map +1 -1
  429. package/build-module/hooks/typography.js +1 -7
  430. package/build-module/hooks/typography.js.map +1 -1
  431. package/build-module/hooks/typography.native.js +43 -17
  432. package/build-module/hooks/typography.native.js.map +1 -1
  433. package/build-module/hooks/use-typography-props.js +9 -1
  434. package/build-module/hooks/use-typography-props.js.map +1 -1
  435. package/build-module/hooks/utils.js +47 -5
  436. package/build-module/hooks/utils.js.map +1 -1
  437. package/build-module/private-apis.js +2 -4
  438. package/build-module/private-apis.js.map +1 -1
  439. package/build-module/private-apis.native.js +0 -2
  440. package/build-module/private-apis.native.js.map +1 -1
  441. package/build-module/store/actions.js +0 -15
  442. package/build-module/store/actions.js.map +1 -1
  443. package/build-module/store/private-actions.js +49 -4
  444. package/build-module/store/private-actions.js.map +1 -1
  445. package/build-module/store/private-selectors.js +11 -0
  446. package/build-module/store/private-selectors.js.map +1 -1
  447. package/build-module/store/reducer.js +14 -6
  448. package/build-module/store/reducer.js.map +1 -1
  449. package/build-module/store/selectors.js +1 -12
  450. package/build-module/store/selectors.js.map +1 -1
  451. package/build-module/store/undo-ignore.js +5 -0
  452. package/build-module/store/undo-ignore.js.map +1 -0
  453. package/build-module/store/utils.js +2 -2
  454. package/build-module/store/utils.js.map +1 -1
  455. package/build-module/utils/get-px-from-css-unit.js +9 -0
  456. package/build-module/utils/get-px-from-css-unit.js.map +1 -0
  457. package/build-module/utils/index.js +1 -1
  458. package/build-module/utils/index.js.map +1 -1
  459. package/build-module/utils/object.js +16 -37
  460. package/build-module/utils/object.js.map +1 -1
  461. package/build-module/utils/use-can-block-toolbar-be-focused.js +40 -0
  462. package/build-module/utils/use-can-block-toolbar-be-focused.js.map +1 -0
  463. package/build-style/content-rtl.css +7 -6
  464. package/build-style/content.css +7 -6
  465. package/build-style/style-rtl.css +51 -8
  466. package/build-style/style.css +51 -8
  467. package/package.json +31 -31
  468. package/src/components/alignment-control/README.md +0 -5
  469. package/src/components/block-alignment-control/README.md +0 -5
  470. package/src/components/block-alignment-matrix-control/README.md +0 -10
  471. package/src/components/block-breadcrumb/README.md +0 -5
  472. package/src/components/block-canvas/index.js +0 -2
  473. package/src/components/block-canvas/style.scss +6 -0
  474. package/src/components/block-caption/README.md +0 -5
  475. package/src/components/block-card/README.md +0 -5
  476. package/src/components/block-card/index.js +1 -1
  477. package/src/components/block-draggable/draggable-chip.js +11 -1
  478. package/src/components/block-draggable/index.js +116 -4
  479. package/src/components/block-draggable/index.native.js +0 -5
  480. package/src/components/block-draggable/style.scss +35 -0
  481. package/src/components/block-draggable/test/helpers.native.js +8 -7
  482. package/src/components/block-draggable/use-scroll-when-dragging.native.js +1 -1
  483. package/src/components/block-editing-mode/index.js +3 -3
  484. package/src/components/block-icon/README.md +0 -5
  485. package/src/components/block-inspector/README.md +0 -5
  486. package/src/components/block-inspector/index.js +3 -1
  487. package/src/components/block-list/block-list-item-cell.native.js +5 -1
  488. package/src/components/block-list/block.js +290 -119
  489. package/src/components/block-list/block.native.js +55 -21
  490. package/src/components/block-list/content.scss +14 -10
  491. package/src/components/block-list/index.native.js +3 -5
  492. package/src/components/block-list/{block-list-block-context.js → private-block-context.js} +1 -1
  493. package/src/components/block-list/use-block-props/index.js +32 -128
  494. package/src/components/block-list/use-in-between-inserter.js +4 -1
  495. package/src/components/block-list/use-scroll-upon-insertion.native.js +52 -0
  496. package/src/components/block-lock/toolbar.js +23 -34
  497. package/src/components/block-mover/README.md +0 -5
  498. package/src/components/block-mover/index.js +1 -1
  499. package/src/components/block-parent-selector/README.md +0 -5
  500. package/src/components/block-patterns-list/README.md +0 -5
  501. package/src/components/block-patterns-list/index.js +8 -5
  502. package/src/components/block-switcher/index.js +49 -59
  503. package/src/components/block-toolbar/README.md +0 -5
  504. package/src/components/block-toolbar/index.js +1 -2
  505. package/src/components/block-tools/block-toolbar-popover.js +4 -10
  506. package/src/components/block-types-list/README.md +0 -5
  507. package/src/components/block-variation-picker/README.md +0 -5
  508. package/src/components/block-variation-transforms/README.md +0 -5
  509. package/src/components/block-variation-transforms/index.js +49 -3
  510. package/src/components/border-radius-control/linked-button.js +1 -1
  511. package/src/components/caption/README.md +0 -5
  512. package/src/components/color-palette/test/__snapshots__/control.js.snap +0 -1
  513. package/src/components/colors/utils.js +8 -1
  514. package/src/components/colors/with-colors.js +3 -1
  515. package/src/components/contrast-checker/README.md +0 -4
  516. package/src/components/copy-handler/README.md +0 -10
  517. package/src/components/font-sizes/utils.js +7 -1
  518. package/src/components/global-styles/border-panel.js +2 -1
  519. package/src/components/global-styles/color-panel.js +2 -1
  520. package/src/components/global-styles/dimensions-panel.js +4 -3
  521. package/src/components/global-styles/effects-panel.js +2 -1
  522. package/src/components/global-styles/filters-panel.js +2 -5
  523. package/src/components/global-styles/get-global-styles-changes.js +210 -0
  524. package/src/components/global-styles/hooks.js +5 -0
  525. package/src/components/global-styles/image-settings-panel.js +6 -0
  526. package/src/components/global-styles/index.js +1 -0
  527. package/src/components/global-styles/test/get-global-styles-changes.js +234 -0
  528. package/src/components/global-styles/typography-panel.js +47 -14
  529. package/src/components/global-styles/use-global-styles-output.js +9 -5
  530. package/src/components/global-styles/utils.js +7 -0
  531. package/src/components/height-control/README.md +2 -7
  532. package/src/components/height-control/index.js +4 -0
  533. package/src/components/image-size-control/index.js +5 -2
  534. package/src/components/index.native.js +2 -2
  535. package/src/components/inner-blocks/index.js +68 -29
  536. package/src/components/inner-blocks/index.native.js +19 -7
  537. package/src/components/inner-blocks/use-inner-block-template-sync.js +5 -7
  538. package/src/components/inner-blocks/use-nested-settings-update.js +6 -13
  539. package/src/components/inserter/block-patterns-explorer/pattern-list.js +2 -2
  540. package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +15 -15
  541. package/src/components/inserter/block-patterns-tab/patterns-filter.js +15 -13
  542. package/src/components/inserter/block-patterns-tab/use-pattern-categories.js +15 -18
  543. package/src/components/inserter/block-patterns-tab/utils.js +11 -12
  544. package/src/components/inserter/hooks/use-block-types-state.js +9 -11
  545. package/src/components/inserter/hooks/use-patterns-state.js +2 -2
  546. package/src/components/inserter/index.js +0 -1
  547. package/src/components/inserter/library.js +2 -8
  548. package/src/components/inserter/menu.js +13 -31
  549. package/src/components/inserter/style.scss +6 -4
  550. package/src/components/inserter/tabs.js +34 -25
  551. package/src/components/inserter-draggable-blocks/index.js +2 -2
  552. package/src/components/inserter-list-item/index.js +6 -6
  553. package/src/components/inspector-controls/block-support-tools-panel.js +2 -0
  554. package/src/components/inspector-controls-tabs/index.js +39 -28
  555. package/src/components/inspector-controls-tabs/style.scss +3 -2
  556. package/src/components/letter-spacing-control/README.md +0 -5
  557. package/src/components/line-height-control/README.md +0 -5
  558. package/src/components/list-view/README.md +0 -5
  559. package/src/components/list-view/block-select-button.js +4 -0
  560. package/src/components/list-view/block.js +73 -2
  561. package/src/components/list-view/style.scss +6 -0
  562. package/src/components/media-upload-progress/constants.js +6 -0
  563. package/src/components/media-upload-progress/index.native.js +66 -14
  564. package/src/components/media-upload-progress/test/index.native.js +2 -2
  565. package/src/components/multi-selection-inspector/README.md +0 -5
  566. package/src/components/navigable-toolbar/index.js +13 -11
  567. package/src/components/plain-text/index.native.js +6 -1
  568. package/src/components/provider/index.js +1 -1
  569. package/src/components/provider/test/use-block-sync.js +20 -17
  570. package/src/components/provider/use-block-sync.js +6 -0
  571. package/src/components/rich-text/index.js +18 -6
  572. package/src/components/rich-text/native/index.native.js +16 -24
  573. package/src/components/rich-text/native/test/__snapshots__/index.native.js.snap +3 -3
  574. package/src/components/rich-text/native/test/index.native.js +72 -5
  575. package/src/components/rich-text/use-input-rules.js +2 -2
  576. package/src/components/rich-text/use-mark-persistent.js +1 -2
  577. package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -1
  578. package/src/components/text-decoration-control/README.md +40 -0
  579. package/src/components/text-transform-control/README.md +0 -4
  580. package/src/components/ungroup-button/README.md +0 -5
  581. package/src/components/unit-control/README.md +0 -4
  582. package/src/components/url-input/index.js +11 -11
  583. package/src/components/use-block-commands/index.js +18 -21
  584. package/src/components/use-block-drop-zone/index.js +85 -34
  585. package/src/components/use-moving-animation/index.js +107 -103
  586. package/src/components/use-on-block-drop/index.js +7 -23
  587. package/src/components/use-on-block-drop/test/index.js +12 -26
  588. package/src/components/use-resize-canvas/README.md +0 -4
  589. package/src/components/use-settings/README.md +0 -4
  590. package/src/components/writing-flow/index.js +0 -1
  591. package/src/components/writing-flow/use-drag-selection.js +18 -4
  592. package/src/components/writing-flow/use-selection-observer.js +99 -37
  593. package/src/components/writing-flow/use-tab-nav.js +7 -7
  594. package/src/hooks/align.js +1 -5
  595. package/src/hooks/anchor.js +1 -5
  596. package/src/hooks/aria-label.js +8 -5
  597. package/src/hooks/background.js +253 -21
  598. package/src/hooks/border.js +2 -13
  599. package/src/hooks/color.js +19 -14
  600. package/src/hooks/custom-class-name.js +1 -5
  601. package/src/hooks/custom-class-name.native.js +8 -5
  602. package/src/hooks/dimensions.js +1 -7
  603. package/src/hooks/font-family.js +4 -7
  604. package/src/hooks/font-size.js +1 -6
  605. package/src/hooks/index.js +19 -5
  606. package/src/hooks/index.native.js +17 -4
  607. package/src/hooks/layout.js +5 -2
  608. package/src/hooks/style.js +1 -6
  609. package/src/hooks/test/anchor.js +4 -9
  610. package/src/hooks/test/custom-class-name.js +3 -8
  611. package/src/hooks/test/style.js +4 -14
  612. package/src/hooks/typography.js +1 -7
  613. package/src/hooks/typography.native.js +31 -33
  614. package/src/hooks/use-typography-props.js +7 -1
  615. package/src/hooks/utils.js +76 -6
  616. package/src/private-apis.js +2 -4
  617. package/src/private-apis.native.js +0 -2
  618. package/src/store/actions.js +0 -15
  619. package/src/store/private-actions.js +44 -4
  620. package/src/store/private-selectors.js +11 -0
  621. package/src/store/reducer.js +16 -5
  622. package/src/store/selectors.js +5 -13
  623. package/src/store/undo-ignore.js +4 -0
  624. package/src/store/utils.js +2 -2
  625. package/src/style.scss +1 -0
  626. package/src/utils/get-px-from-css-unit.js +8 -0
  627. package/src/utils/index.js +1 -1
  628. package/src/utils/object.js +16 -35
  629. package/src/utils/test/object.js +1 -96
  630. package/src/utils/use-can-block-toolbar-be-focused.js +48 -0
  631. package/build/components/block-list/block-list-block-context.js +0 -14
  632. package/build/components/block-list/block-list-block-context.js.map +0 -1
  633. package/build/hooks/custom-fields.js +0 -106
  634. package/build/hooks/custom-fields.js.map +0 -1
  635. package/build/utils/parse-css-unit-to-px.js +0 -302
  636. package/build/utils/parse-css-unit-to-px.js.map +0 -1
  637. package/build/utils/use-should-contextual-toolbar-show.js +0 -63
  638. package/build/utils/use-should-contextual-toolbar-show.js.map +0 -1
  639. package/build-module/components/block-list/block-list-block-context.js +0 -6
  640. package/build-module/components/block-list/block-list-block-context.js.map +0 -1
  641. package/build-module/hooks/custom-fields.js +0 -99
  642. package/build-module/hooks/custom-fields.js.map +0 -1
  643. package/build-module/utils/parse-css-unit-to-px.js +0 -294
  644. package/build-module/utils/parse-css-unit-to-px.js.map +0 -1
  645. package/build-module/utils/use-should-contextual-toolbar-show.js +0 -57
  646. package/build-module/utils/use-should-contextual-toolbar-show.js.map +0 -1
  647. package/src/hooks/custom-fields.js +0 -115
  648. package/src/utils/parse-css-unit-to-px.js +0 -329
  649. package/src/utils/test/parse-css-unit-to-px.js +0 -172
  650. package/src/utils/use-should-contextual-toolbar-show.js +0 -85
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_dom","_element","_icons","_modal","_interopRequireDefault","_useBlockLock","BlockLockToolbar","clientId","wrapperRef","canEdit","canMove","canRemove","canLock","useBlockLock","isModalOpen","toggleModal","useReducer","isActive","lockButtonRef","useRef","isFirstRender","shouldHideBlockLockUI","useEffect","current","focus","focusable","find","sequential","element","tagName","_react","createElement","Fragment","ToolbarGroup","className","ToolbarButton","ref","icon","lock","label","__","onClick","default","onClose"],"sources":["@wordpress/block-editor/src/components/block-lock/toolbar.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { ToolbarButton, ToolbarGroup } from '@wordpress/components';\nimport { focus } from '@wordpress/dom';\nimport { useReducer, useRef, useEffect } from '@wordpress/element';\nimport { lock } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport BlockLockModal from './modal';\nimport useBlockLock from './use-block-lock';\n\nexport default function BlockLockToolbar( { clientId, wrapperRef } ) {\n\tconst { canEdit, canMove, canRemove, canLock } = useBlockLock( clientId );\n\n\tconst [ isModalOpen, toggleModal ] = useReducer(\n\t\t( isActive ) => ! isActive,\n\t\tfalse\n\t);\n\n\tconst lockButtonRef = useRef( null );\n\tconst isFirstRender = useRef( true );\n\n\tconst shouldHideBlockLockUI =\n\t\t! canLock || ( canEdit && canMove && canRemove );\n\n\t// Restore focus manually on the first focusable element in the toolbar\n\t// when the block lock modal is closed and the block is not locked anymore.\n\t// See https://github.com/WordPress/gutenberg/issues/51447\n\tuseEffect( () => {\n\t\tif ( isFirstRender.current ) {\n\t\t\tisFirstRender.current = false;\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! isModalOpen && shouldHideBlockLockUI ) {\n\t\t\tfocus.focusable\n\t\t\t\t.find( wrapperRef.current, {\n\t\t\t\t\tsequential: false,\n\t\t\t\t} )\n\t\t\t\t.find(\n\t\t\t\t\t( element ) =>\n\t\t\t\t\t\telement.tagName === 'BUTTON' &&\n\t\t\t\t\t\telement !== lockButtonRef.current\n\t\t\t\t)\n\t\t\t\t?.focus();\n\t\t}\n\t\t// wrapperRef is a reference object and should be stable\n\t}, [ isModalOpen, shouldHideBlockLockUI, wrapperRef ] );\n\n\tif ( shouldHideBlockLockUI ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarGroup className=\"block-editor-block-lock-toolbar\">\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tref={ lockButtonRef }\n\t\t\t\t\ticon={ lock }\n\t\t\t\t\tlabel={ __( 'Unlock' ) }\n\t\t\t\t\tonClick={ toggleModal }\n\t\t\t\t\taria-expanded={ isModalOpen }\n\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t/>\n\t\t\t</ToolbarGroup>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<BlockLockModal clientId={ clientId } onClose={ toggleModal } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,IAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AAKA,IAAAK,MAAA,GAAAC,sBAAA,CAAAN,OAAA;AACA,IAAAO,aAAA,GAAAD,sBAAA,CAAAN,OAAA;AAbA;AACA;AACA;;AAOA;AACA;AACA;;AAIe,SAASQ,gBAAgBA,CAAE;EAAEC,QAAQ;EAAEC;AAAW,CAAC,EAAG;EACpE,MAAM;IAAEC,OAAO;IAAEC,OAAO;IAAEC,SAAS;IAAEC;EAAQ,CAAC,GAAG,IAAAC,qBAAY,EAAEN,QAAS,CAAC;EAEzE,MAAM,CAAEO,WAAW,EAAEC,WAAW,CAAE,GAAG,IAAAC,mBAAU,EAC5CC,QAAQ,IAAM,CAAEA,QAAQ,EAC1B,KACD,CAAC;EAED,MAAMC,aAAa,GAAG,IAAAC,eAAM,EAAE,IAAK,CAAC;EACpC,MAAMC,aAAa,GAAG,IAAAD,eAAM,EAAE,IAAK,CAAC;EAEpC,MAAME,qBAAqB,GAC1B,CAAET,OAAO,IAAMH,OAAO,IAAIC,OAAO,IAAIC,SAAW;;EAEjD;EACA;EACA;EACA,IAAAW,kBAAS,EAAE,MAAM;IAChB,IAAKF,aAAa,CAACG,OAAO,EAAG;MAC5BH,aAAa,CAACG,OAAO,GAAG,KAAK;MAC7B;IACD;IAEA,IAAK,CAAET,WAAW,IAAIO,qBAAqB,EAAG;MAC7CG,UAAK,CAACC,SAAS,CACbC,IAAI,CAAElB,UAAU,CAACe,OAAO,EAAE;QAC1BI,UAAU,EAAE;MACb,CAAE,CAAC,CACFD,IAAI,CACFE,OAAO,IACRA,OAAO,CAACC,OAAO,KAAK,QAAQ,IAC5BD,OAAO,KAAKV,aAAa,CAACK,OAC5B,CAAC,EACCC,KAAK,CAAC,CAAC;IACX;IACA;EACD,CAAC,EAAE,CAAEV,WAAW,EAAEO,qBAAqB,EAAEb,UAAU,CAAG,CAAC;EAEvD,IAAKa,qBAAqB,EAAG;IAC5B,OAAO,IAAI;EACZ;EAEA,OACC,IAAAS,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAE,QAAA,QACC,IAAAF,MAAA,CAAAC,aAAA,EAAChC,WAAA,CAAAkC,YAAY;IAACC,SAAS,EAAC;EAAiC,GACxD,IAAAJ,MAAA,CAAAC,aAAA,EAAChC,WAAA,CAAAoC,aAAa;IACbC,GAAG,EAAGlB,aAAe;IACrBmB,IAAI,EAAGC,WAAM;IACbC,KAAK,EAAG,IAAAC,QAAE,EAAE,QAAS,CAAG;IACxBC,OAAO,EAAG1B,WAAa;IACvB,iBAAgBD,WAAa;IAC7B,iBAAc;EAAQ,CACtB,CACY,CAAC,EACbA,WAAW,IACZ,IAAAgB,MAAA,CAAAC,aAAA,EAAC5B,MAAA,CAAAuC,OAAc;IAACnC,QAAQ,EAAGA,QAAU;IAACoC,OAAO,EAAG5B;EAAa,CAAE,CAE/D,CAAC;AAEL"}
1
+ {"version":3,"names":["_i18n","require","_components","_element","_icons","_modal","_interopRequireDefault","_useBlockLock","BlockLockToolbar","clientId","canLock","isLocked","useBlockLock","isModalOpen","toggleModal","useReducer","isActive","hasLockButtonShown","useRef","useEffect","current","label","__","_react","createElement","Fragment","ToolbarGroup","className","ToolbarButton","accessibleWhenDisabled","disabled","icon","lock","unlock","onClick","default","onClose"],"sources":["@wordpress/block-editor/src/components/block-lock/toolbar.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { ToolbarButton, ToolbarGroup } from '@wordpress/components';\nimport { useReducer, useRef, useEffect } from '@wordpress/element';\nimport { lock, unlock } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport BlockLockModal from './modal';\nimport useBlockLock from './use-block-lock';\n\nexport default function BlockLockToolbar( { clientId } ) {\n\tconst { canLock, isLocked } = useBlockLock( clientId );\n\n\tconst [ isModalOpen, toggleModal ] = useReducer(\n\t\t( isActive ) => ! isActive,\n\t\tfalse\n\t);\n\n\tconst hasLockButtonShown = useRef( false );\n\n\t// If the block lock button has been shown, we don't want to remove it\n\t// from the toolbar until the toolbar is rendered again without it.\n\t// Removing it beforehand can cause focus loss issues, such as when\n\t// unlocking the block from the modal. It needs to return focus from\n\t// whence it came, and to do that, we need to leave the button in the toolbar.\n\tuseEffect( () => {\n\t\tif ( isLocked ) {\n\t\t\thasLockButtonShown.current = true;\n\t\t}\n\t}, [ isLocked ] );\n\n\tif ( ! isLocked && ! hasLockButtonShown.current ) {\n\t\treturn null;\n\t}\n\n\tlet label = isLocked ? __( 'Unlock' ) : __( 'Lock' );\n\n\tif ( ! canLock && isLocked ) {\n\t\tlabel = __( 'Locked' );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarGroup className=\"block-editor-block-lock-toolbar\">\n\t\t\t\t<ToolbarButton\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tdisabled={ ! canLock }\n\t\t\t\t\ticon={ isLocked ? lock : unlock }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tonClick={ toggleModal }\n\t\t\t\t\taria-expanded={ isModalOpen }\n\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t/>\n\t\t\t</ToolbarGroup>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<BlockLockModal clientId={ clientId } onClose={ toggleModal } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAKA,IAAAI,MAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,aAAA,GAAAD,sBAAA,CAAAL,OAAA;AAZA;AACA;AACA;;AAMA;AACA;AACA;;AAIe,SAASO,gBAAgBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACxD,MAAM;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAG,IAAAC,qBAAY,EAAEH,QAAS,CAAC;EAEtD,MAAM,CAAEI,WAAW,EAAEC,WAAW,CAAE,GAAG,IAAAC,mBAAU,EAC5CC,QAAQ,IAAM,CAAEA,QAAQ,EAC1B,KACD,CAAC;EAED,MAAMC,kBAAkB,GAAG,IAAAC,eAAM,EAAE,KAAM,CAAC;;EAE1C;EACA;EACA;EACA;EACA;EACA,IAAAC,kBAAS,EAAE,MAAM;IAChB,IAAKR,QAAQ,EAAG;MACfM,kBAAkB,CAACG,OAAO,GAAG,IAAI;IAClC;EACD,CAAC,EAAE,CAAET,QAAQ,CAAG,CAAC;EAEjB,IAAK,CAAEA,QAAQ,IAAI,CAAEM,kBAAkB,CAACG,OAAO,EAAG;IACjD,OAAO,IAAI;EACZ;EAEA,IAAIC,KAAK,GAAGV,QAAQ,GAAG,IAAAW,QAAE,EAAE,QAAS,CAAC,GAAG,IAAAA,QAAE,EAAE,MAAO,CAAC;EAEpD,IAAK,CAAEZ,OAAO,IAAIC,QAAQ,EAAG;IAC5BU,KAAK,GAAG,IAAAC,QAAE,EAAE,QAAS,CAAC;EACvB;EAEA,OACC,IAAAC,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAE,QAAA,QACC,IAAAF,MAAA,CAAAC,aAAA,EAACtB,WAAA,CAAAwB,YAAY;IAACC,SAAS,EAAC;EAAiC,GACxD,IAAAJ,MAAA,CAAAC,aAAA,EAACtB,WAAA,CAAA0B,aAAa;IACbC,sBAAsB;IACtBC,QAAQ,EAAG,CAAEpB,OAAS;IACtBqB,IAAI,EAAGpB,QAAQ,GAAGqB,WAAI,GAAGC,aAAQ;IACjCZ,KAAK,EAAGA,KAAO;IACfa,OAAO,EAAGpB,WAAa;IACvB,iBAAgBD,WAAa;IAC7B,iBAAc;EAAQ,CACtB,CACY,CAAC,EACbA,WAAW,IACZ,IAAAU,MAAA,CAAAC,aAAA,EAACnB,MAAA,CAAA8B,OAAc;IAAC1B,QAAQ,EAAGA,QAAU;IAAC2B,OAAO,EAAGtB;EAAa,CAAE,CAE/D,CAAC;AAEL"}
@@ -67,7 +67,8 @@ function BlockMover({
67
67
  'is-horizontal': orientation === 'horizontal'
68
68
  })
69
69
  }, !hideDragHandle && (0, _react.createElement)(_blockDraggable.default, {
70
- clientIds: clientIds
70
+ clientIds: clientIds,
71
+ fadeWhenDisabled: true
71
72
  }, draggableProps => (0, _react.createElement)(_components.Button, {
72
73
  icon: _icons.dragHandle,
73
74
  className: "block-editor-block-mover__drag-handle",
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_icons","_components","_data","_i18n","_blockDraggable","_button","_store","BlockMover","clientIds","hideDragHandle","canMove","rootClientId","isFirst","isLast","orientation","useSelect","select","getBlockIndex","getBlockListSettings","canMoveBlocks","getBlockOrder","getBlockRootClientId","blockEditorStore","normalizedClientIds","Array","isArray","firstClientId","_rootClientId","firstIndex","lastIndex","length","blockOrder","dragHandleLabel","__","_react","createElement","ToolbarGroup","className","classnames","default","draggableProps","Button","icon","dragHandle","label","tabIndex","ToolbarItem","itemProps","BlockMoverUpButton","BlockMoverDownButton","_default","exports"],"sources":["@wordpress/block-editor/src/components/block-mover/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\n\nimport { dragHandle } from '@wordpress/icons';\nimport { ToolbarGroup, ToolbarItem, Button } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockDraggable from '../block-draggable';\nimport { BlockMoverUpButton, BlockMoverDownButton } from './button';\nimport { store as blockEditorStore } from '../../store';\n\nfunction BlockMover( { clientIds, hideDragHandle } ) {\n\tconst { canMove, rootClientId, isFirst, isLast, orientation } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockIndex,\n\t\t\t\tgetBlockListSettings,\n\t\t\t\tcanMoveBlocks,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst normalizedClientIds = Array.isArray( clientIds )\n\t\t\t\t? clientIds\n\t\t\t\t: [ clientIds ];\n\t\t\tconst firstClientId = normalizedClientIds[ 0 ];\n\t\t\tconst _rootClientId = getBlockRootClientId( firstClientId );\n\t\t\tconst firstIndex = getBlockIndex( firstClientId );\n\t\t\tconst lastIndex = getBlockIndex(\n\t\t\t\tnormalizedClientIds[ normalizedClientIds.length - 1 ]\n\t\t\t);\n\t\t\tconst blockOrder = getBlockOrder( _rootClientId );\n\n\t\t\treturn {\n\t\t\t\tcanMove: canMoveBlocks( clientIds, _rootClientId ),\n\t\t\t\trootClientId: _rootClientId,\n\t\t\t\tisFirst: firstIndex === 0,\n\t\t\t\tisLast: lastIndex === blockOrder.length - 1,\n\t\t\t\torientation: getBlockListSettings( _rootClientId )?.orientation,\n\t\t\t};\n\t\t},\n\t\t[ clientIds ]\n\t);\n\n\tif ( ! canMove || ( isFirst && isLast && ! rootClientId ) ) {\n\t\treturn null;\n\t}\n\n\tconst dragHandleLabel = __( 'Drag' );\n\n\treturn (\n\t\t<ToolbarGroup\n\t\t\tclassName={ classnames( 'block-editor-block-mover', {\n\t\t\t\t'is-horizontal': orientation === 'horizontal',\n\t\t\t} ) }\n\t\t>\n\t\t\t{ ! hideDragHandle && (\n\t\t\t\t<BlockDraggable clientIds={ clientIds }>\n\t\t\t\t\t{ ( draggableProps ) => (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ticon={ dragHandle }\n\t\t\t\t\t\t\tclassName=\"block-editor-block-mover__drag-handle\"\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tlabel={ dragHandleLabel }\n\t\t\t\t\t\t\t// Should not be able to tab to drag handle as this\n\t\t\t\t\t\t\t// button can only be used with a pointer device.\n\t\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t\t\t{ ...draggableProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</BlockDraggable>\n\t\t\t) }\n\t\t\t<div className=\"block-editor-block-mover__move-button-container\">\n\t\t\t\t<ToolbarItem>\n\t\t\t\t\t{ ( itemProps ) => (\n\t\t\t\t\t\t<BlockMoverUpButton\n\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t{ ...itemProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarItem>\n\t\t\t\t<ToolbarItem>\n\t\t\t\t\t{ ( itemProps ) => (\n\t\t\t\t\t\t<BlockMoverDownButton\n\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t{ ...itemProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarItem>\n\t\t\t</div>\n\t\t</ToolbarGroup>\n\t);\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-mover/README.md\n */\nexport default BlockMover;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_icons","_components","_data","_i18n","_blockDraggable","_button","_store","BlockMover","clientIds","hideDragHandle","canMove","rootClientId","isFirst","isLast","orientation","useSelect","select","getBlockIndex","getBlockListSettings","canMoveBlocks","getBlockOrder","getBlockRootClientId","blockEditorStore","normalizedClientIds","Array","isArray","firstClientId","_rootClientId","firstIndex","lastIndex","length","blockOrder","dragHandleLabel","__","_react","createElement","ToolbarGroup","className","classnames","default","fadeWhenDisabled","draggableProps","Button","icon","dragHandle","label","tabIndex","ToolbarItem","itemProps","BlockMoverUpButton","BlockMoverDownButton","_default","exports"],"sources":["@wordpress/block-editor/src/components/block-mover/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\n\nimport { dragHandle } from '@wordpress/icons';\nimport { ToolbarGroup, ToolbarItem, Button } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockDraggable from '../block-draggable';\nimport { BlockMoverUpButton, BlockMoverDownButton } from './button';\nimport { store as blockEditorStore } from '../../store';\n\nfunction BlockMover( { clientIds, hideDragHandle } ) {\n\tconst { canMove, rootClientId, isFirst, isLast, orientation } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockIndex,\n\t\t\t\tgetBlockListSettings,\n\t\t\t\tcanMoveBlocks,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst normalizedClientIds = Array.isArray( clientIds )\n\t\t\t\t? clientIds\n\t\t\t\t: [ clientIds ];\n\t\t\tconst firstClientId = normalizedClientIds[ 0 ];\n\t\t\tconst _rootClientId = getBlockRootClientId( firstClientId );\n\t\t\tconst firstIndex = getBlockIndex( firstClientId );\n\t\t\tconst lastIndex = getBlockIndex(\n\t\t\t\tnormalizedClientIds[ normalizedClientIds.length - 1 ]\n\t\t\t);\n\t\t\tconst blockOrder = getBlockOrder( _rootClientId );\n\n\t\t\treturn {\n\t\t\t\tcanMove: canMoveBlocks( clientIds, _rootClientId ),\n\t\t\t\trootClientId: _rootClientId,\n\t\t\t\tisFirst: firstIndex === 0,\n\t\t\t\tisLast: lastIndex === blockOrder.length - 1,\n\t\t\t\torientation: getBlockListSettings( _rootClientId )?.orientation,\n\t\t\t};\n\t\t},\n\t\t[ clientIds ]\n\t);\n\n\tif ( ! canMove || ( isFirst && isLast && ! rootClientId ) ) {\n\t\treturn null;\n\t}\n\n\tconst dragHandleLabel = __( 'Drag' );\n\n\treturn (\n\t\t<ToolbarGroup\n\t\t\tclassName={ classnames( 'block-editor-block-mover', {\n\t\t\t\t'is-horizontal': orientation === 'horizontal',\n\t\t\t} ) }\n\t\t>\n\t\t\t{ ! hideDragHandle && (\n\t\t\t\t<BlockDraggable clientIds={ clientIds } fadeWhenDisabled>\n\t\t\t\t\t{ ( draggableProps ) => (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ticon={ dragHandle }\n\t\t\t\t\t\t\tclassName=\"block-editor-block-mover__drag-handle\"\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tlabel={ dragHandleLabel }\n\t\t\t\t\t\t\t// Should not be able to tab to drag handle as this\n\t\t\t\t\t\t\t// button can only be used with a pointer device.\n\t\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t\t\t{ ...draggableProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</BlockDraggable>\n\t\t\t) }\n\t\t\t<div className=\"block-editor-block-mover__move-button-container\">\n\t\t\t\t<ToolbarItem>\n\t\t\t\t\t{ ( itemProps ) => (\n\t\t\t\t\t\t<BlockMoverUpButton\n\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t{ ...itemProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarItem>\n\t\t\t\t<ToolbarItem>\n\t\t\t\t\t{ ( itemProps ) => (\n\t\t\t\t\t\t<BlockMoverDownButton\n\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t{ ...itemProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarItem>\n\t\t\t</div>\n\t\t</ToolbarGroup>\n\t);\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-mover/README.md\n */\nexport default BlockMover;\n"],"mappings":"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"}
@@ -86,7 +86,7 @@ function BlockPattern({
86
86
  }
87
87
  }
88
88
  }, (0, _react.createElement)(WithToolTip, {
89
- showTooltip: showTooltip && !pattern.type !== _utils.PATTERN_TYPES.user,
89
+ showTooltip: showTooltip && !pattern.type !== _utils.INSERTER_PATTERN_TYPES.user,
90
90
  title: pattern.title
91
91
  }, (0, _react.createElement)(CompositeItem, {
92
92
  render: (0, _react.createElement)("div", {
@@ -94,7 +94,7 @@ function BlockPattern({
94
94
  "aria-label": pattern.title,
95
95
  "aria-describedby": pattern.description ? descriptionId : undefined,
96
96
  className: (0, _classnames.default)('block-editor-block-patterns-list__item', {
97
- 'block-editor-block-patterns-list__list-item-synced': pattern.type === _utils.PATTERN_TYPES.user && !pattern.syncStatus
97
+ 'block-editor-block-patterns-list__list-item-synced': pattern.type === _utils.INSERTER_PATTERN_TYPES.user && !pattern.syncStatus
98
98
  })
99
99
  }),
100
100
  id: id,
@@ -114,12 +114,12 @@ function BlockPattern({
114
114
  viewportWidth: viewportWidth
115
115
  }), (0, _react.createElement)(_components.__experimentalHStack, {
116
116
  className: "block-editor-patterns__pattern-details"
117
- }, pattern.type === _utils.PATTERN_TYPES.user && !pattern.syncStatus && (0, _react.createElement)("div", {
117
+ }, pattern.type === _utils.INSERTER_PATTERN_TYPES.user && !pattern.syncStatus && (0, _react.createElement)("div", {
118
118
  className: "block-editor-patterns__pattern-icon-wrapper"
119
119
  }, (0, _react.createElement)(_icons.Icon, {
120
120
  className: "block-editor-patterns__pattern-icon",
121
121
  icon: _icons.symbol
122
- })), (!showTooltip || pattern.type === _utils.PATTERN_TYPES.user) && (0, _react.createElement)("div", {
122
+ })), (!showTooltip || pattern.type === _utils.INSERTER_PATTERN_TYPES.user) && (0, _react.createElement)("div", {
123
123
  className: "block-editor-block-patterns-list__item-title"
124
124
  }, pattern.title)), !!pattern.description && (0, _react.createElement)(_components.VisuallyHidden, {
125
125
  id: descriptionId
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_element","_components","_compose","_i18n","_icons","_lockUnlock","_blockPreview","_inserterDraggableBlocks","_blockPatternsPaging","_utils","CompositeV2","Composite","CompositeItemV2","CompositeItem","useCompositeStoreV2","useCompositeStore","unlock","componentsPrivateApis","WithToolTip","showTooltip","title","children","_react","createElement","Tooltip","text","Fragment","BlockPattern","id","isDraggable","pattern","onClick","onHover","isDragging","setIsDragging","useState","blocks","viewportWidth","instanceId","useInstanceId","descriptionId","default","isEnabled","draggable","onDragStart","onDragEnd","className","event","type","PATTERN_TYPES","user","render","role","description","undefined","classnames","syncStatus","onMouseEnter","onMouseLeave","__experimentalHStack","Icon","icon","symbol","VisuallyHidden","BlockPatternPlaceholder","BlockPatternsList","blockPatterns","shownPatterns","onClickPattern","orientation","label","__","showTitlesAsTooltip","pagingProps","ref","compositeStore","setActiveId","useEffect","store","map","isShown","includes","key","name","_default","forwardRef","exports"],"sources":["@wordpress/block-editor/src/components/block-patterns-list/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useEffect, useState, forwardRef } from '@wordpress/element';\nimport {\n\tVisuallyHidden,\n\tTooltip,\n\tprivateApis as componentsPrivateApis,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { Icon, symbol } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport BlockPreview from '../block-preview';\nimport InserterDraggableBlocks from '../inserter-draggable-blocks';\nimport BlockPatternsPaging from '../block-patterns-paging';\nimport { PATTERN_TYPES } from '../inserter/block-patterns-tab/utils';\n\nconst {\n\tCompositeV2: Composite,\n\tCompositeItemV2: CompositeItem,\n\tuseCompositeStoreV2: useCompositeStore,\n} = unlock( componentsPrivateApis );\n\nconst WithToolTip = ( { showTooltip, title, children } ) => {\n\tif ( showTooltip ) {\n\t\treturn <Tooltip text={ title }>{ children }</Tooltip>;\n\t}\n\treturn <>{ children }</>;\n};\n\nfunction BlockPattern( {\n\tid,\n\tisDraggable,\n\tpattern,\n\tonClick,\n\tonHover,\n\tshowTooltip,\n} ) {\n\tconst [ isDragging, setIsDragging ] = useState( false );\n\tconst { blocks, viewportWidth } = pattern;\n\tconst instanceId = useInstanceId( BlockPattern );\n\tconst descriptionId = `block-editor-block-patterns-list__item-description-${ instanceId }`;\n\n\treturn (\n\t\t<InserterDraggableBlocks\n\t\t\tisEnabled={ isDraggable }\n\t\t\tblocks={ blocks }\n\t\t\tpattern={ pattern }\n\t\t>\n\t\t\t{ ( { draggable, onDragStart, onDragEnd } ) => (\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"block-editor-block-patterns-list__list-item\"\n\t\t\t\t\tdraggable={ draggable }\n\t\t\t\t\tonDragStart={ ( event ) => {\n\t\t\t\t\t\tsetIsDragging( true );\n\t\t\t\t\t\tif ( onDragStart ) {\n\t\t\t\t\t\t\tonHover?.( null );\n\t\t\t\t\t\t\tonDragStart( event );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\tonDragEnd={ ( event ) => {\n\t\t\t\t\t\tsetIsDragging( false );\n\t\t\t\t\t\tif ( onDragEnd ) {\n\t\t\t\t\t\t\tonDragEnd( event );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<WithToolTip\n\t\t\t\t\t\tshowTooltip={\n\t\t\t\t\t\t\tshowTooltip && ! pattern.type !== PATTERN_TYPES.user\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttitle={ pattern.title }\n\t\t\t\t\t>\n\t\t\t\t\t\t<CompositeItem\n\t\t\t\t\t\t\trender={\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\trole=\"option\"\n\t\t\t\t\t\t\t\t\taria-label={ pattern.title }\n\t\t\t\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t\t\t\tpattern.description\n\t\t\t\t\t\t\t\t\t\t\t? descriptionId\n\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\t\t'block-editor-block-patterns-list__item',\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t'block-editor-block-patterns-list__list-item-synced':\n\t\t\t\t\t\t\t\t\t\t\t\tpattern.type ===\n\t\t\t\t\t\t\t\t\t\t\t\t\tPATTERN_TYPES.user &&\n\t\t\t\t\t\t\t\t\t\t\t\t! pattern.syncStatus,\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tid={ id }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonClick( pattern, blocks );\n\t\t\t\t\t\t\t\tonHover?.( null );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonMouseEnter={ () => {\n\t\t\t\t\t\t\t\tif ( isDragging ) {\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonHover?.( pattern );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonMouseLeave={ () => onHover?.( null ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\tviewportWidth={ viewportWidth }\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t<HStack className=\"block-editor-patterns__pattern-details\">\n\t\t\t\t\t\t\t\t{ pattern.type === PATTERN_TYPES.user &&\n\t\t\t\t\t\t\t\t\t! pattern.syncStatus && (\n\t\t\t\t\t\t\t\t\t\t<div className=\"block-editor-patterns__pattern-icon-wrapper\">\n\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"block-editor-patterns__pattern-icon\"\n\t\t\t\t\t\t\t\t\t\t\t\ticon={ symbol }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ ( ! showTooltip ||\n\t\t\t\t\t\t\t\t\tpattern.type === PATTERN_TYPES.user ) && (\n\t\t\t\t\t\t\t\t\t<div className=\"block-editor-block-patterns-list__item-title\">\n\t\t\t\t\t\t\t\t\t\t{ pattern.title }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</HStack>\n\n\t\t\t\t\t\t\t{ !! pattern.description && (\n\t\t\t\t\t\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t\t\t\t\t\t{ pattern.description }\n\t\t\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</CompositeItem>\n\t\t\t\t\t</WithToolTip>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</InserterDraggableBlocks>\n\t);\n}\n\nfunction BlockPatternPlaceholder() {\n\treturn (\n\t\t<div className=\"block-editor-block-patterns-list__item is-placeholder\" />\n\t);\n}\n\nfunction BlockPatternsList(\n\t{\n\t\tisDraggable,\n\t\tblockPatterns,\n\t\tshownPatterns,\n\t\tonHover,\n\t\tonClickPattern,\n\t\torientation,\n\t\tlabel = __( 'Block patterns' ),\n\t\tshowTitlesAsTooltip,\n\t\tpagingProps,\n\t},\n\tref\n) {\n\tconst compositeStore = useCompositeStore( { orientation } );\n\tconst { setActiveId } = compositeStore;\n\n\tuseEffect( () => {\n\t\t// We reset the active composite item whenever the\n\t\t// available patterns change, to make sure that\n\t\t// focus is put back to the start.\n\t\tsetActiveId( undefined );\n\t}, [ setActiveId, shownPatterns, blockPatterns ] );\n\n\treturn (\n\t\t<Composite\n\t\t\tstore={ compositeStore }\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"block-editor-block-patterns-list\"\n\t\t\taria-label={ label }\n\t\t\tref={ ref }\n\t\t>\n\t\t\t{ blockPatterns.map( ( pattern ) => {\n\t\t\t\tconst isShown = shownPatterns.includes( pattern );\n\t\t\t\treturn isShown ? (\n\t\t\t\t\t<BlockPattern\n\t\t\t\t\t\tkey={ pattern.name }\n\t\t\t\t\t\tid={ pattern.name }\n\t\t\t\t\t\tpattern={ pattern }\n\t\t\t\t\t\tonClick={ onClickPattern }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\tisDraggable={ isDraggable }\n\t\t\t\t\t\tshowTooltip={ showTitlesAsTooltip }\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<BlockPatternPlaceholder key={ pattern.name } />\n\t\t\t\t);\n\t\t\t} ) }\n\t\t\t{ pagingProps && <BlockPatternsPaging { ...pagingProps } /> }\n\t\t</Composite>\n\t);\n}\n\nexport default forwardRef( BlockPatternsList );\n"],"mappings":"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"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_element","_components","_compose","_i18n","_icons","_lockUnlock","_blockPreview","_inserterDraggableBlocks","_blockPatternsPaging","_utils","CompositeV2","Composite","CompositeItemV2","CompositeItem","useCompositeStoreV2","useCompositeStore","unlock","componentsPrivateApis","WithToolTip","showTooltip","title","children","_react","createElement","Tooltip","text","Fragment","BlockPattern","id","isDraggable","pattern","onClick","onHover","isDragging","setIsDragging","useState","blocks","viewportWidth","instanceId","useInstanceId","descriptionId","default","isEnabled","draggable","onDragStart","onDragEnd","className","event","type","INSERTER_PATTERN_TYPES","user","render","role","description","undefined","classnames","syncStatus","onMouseEnter","onMouseLeave","__experimentalHStack","Icon","icon","symbol","VisuallyHidden","BlockPatternPlaceholder","BlockPatternsList","blockPatterns","shownPatterns","onClickPattern","orientation","label","__","showTitlesAsTooltip","pagingProps","ref","compositeStore","setActiveId","useEffect","store","map","isShown","includes","key","name","_default","forwardRef","exports"],"sources":["@wordpress/block-editor/src/components/block-patterns-list/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useEffect, useState, forwardRef } from '@wordpress/element';\nimport {\n\tVisuallyHidden,\n\tTooltip,\n\tprivateApis as componentsPrivateApis,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { Icon, symbol } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport BlockPreview from '../block-preview';\nimport InserterDraggableBlocks from '../inserter-draggable-blocks';\nimport BlockPatternsPaging from '../block-patterns-paging';\nimport { INSERTER_PATTERN_TYPES } from '../inserter/block-patterns-tab/utils';\n\nconst {\n\tCompositeV2: Composite,\n\tCompositeItemV2: CompositeItem,\n\tuseCompositeStoreV2: useCompositeStore,\n} = unlock( componentsPrivateApis );\n\nconst WithToolTip = ( { showTooltip, title, children } ) => {\n\tif ( showTooltip ) {\n\t\treturn <Tooltip text={ title }>{ children }</Tooltip>;\n\t}\n\treturn <>{ children }</>;\n};\n\nfunction BlockPattern( {\n\tid,\n\tisDraggable,\n\tpattern,\n\tonClick,\n\tonHover,\n\tshowTooltip,\n} ) {\n\tconst [ isDragging, setIsDragging ] = useState( false );\n\tconst { blocks, viewportWidth } = pattern;\n\tconst instanceId = useInstanceId( BlockPattern );\n\tconst descriptionId = `block-editor-block-patterns-list__item-description-${ instanceId }`;\n\n\treturn (\n\t\t<InserterDraggableBlocks\n\t\t\tisEnabled={ isDraggable }\n\t\t\tblocks={ blocks }\n\t\t\tpattern={ pattern }\n\t\t>\n\t\t\t{ ( { draggable, onDragStart, onDragEnd } ) => (\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"block-editor-block-patterns-list__list-item\"\n\t\t\t\t\tdraggable={ draggable }\n\t\t\t\t\tonDragStart={ ( event ) => {\n\t\t\t\t\t\tsetIsDragging( true );\n\t\t\t\t\t\tif ( onDragStart ) {\n\t\t\t\t\t\t\tonHover?.( null );\n\t\t\t\t\t\t\tonDragStart( event );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\tonDragEnd={ ( event ) => {\n\t\t\t\t\t\tsetIsDragging( false );\n\t\t\t\t\t\tif ( onDragEnd ) {\n\t\t\t\t\t\t\tonDragEnd( event );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<WithToolTip\n\t\t\t\t\t\tshowTooltip={\n\t\t\t\t\t\t\tshowTooltip &&\n\t\t\t\t\t\t\t! pattern.type !== INSERTER_PATTERN_TYPES.user\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttitle={ pattern.title }\n\t\t\t\t\t>\n\t\t\t\t\t\t<CompositeItem\n\t\t\t\t\t\t\trender={\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\trole=\"option\"\n\t\t\t\t\t\t\t\t\taria-label={ pattern.title }\n\t\t\t\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t\t\t\tpattern.description\n\t\t\t\t\t\t\t\t\t\t\t? descriptionId\n\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\t\t'block-editor-block-patterns-list__item',\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t'block-editor-block-patterns-list__list-item-synced':\n\t\t\t\t\t\t\t\t\t\t\t\tpattern.type ===\n\t\t\t\t\t\t\t\t\t\t\t\t\tINSERTER_PATTERN_TYPES.user &&\n\t\t\t\t\t\t\t\t\t\t\t\t! pattern.syncStatus,\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tid={ id }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonClick( pattern, blocks );\n\t\t\t\t\t\t\t\tonHover?.( null );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonMouseEnter={ () => {\n\t\t\t\t\t\t\t\tif ( isDragging ) {\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonHover?.( pattern );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonMouseLeave={ () => onHover?.( null ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\tviewportWidth={ viewportWidth }\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t<HStack className=\"block-editor-patterns__pattern-details\">\n\t\t\t\t\t\t\t\t{ pattern.type ===\n\t\t\t\t\t\t\t\t\tINSERTER_PATTERN_TYPES.user &&\n\t\t\t\t\t\t\t\t\t! pattern.syncStatus && (\n\t\t\t\t\t\t\t\t\t\t<div className=\"block-editor-patterns__pattern-icon-wrapper\">\n\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"block-editor-patterns__pattern-icon\"\n\t\t\t\t\t\t\t\t\t\t\t\ticon={ symbol }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ ( ! showTooltip ||\n\t\t\t\t\t\t\t\t\tpattern.type ===\n\t\t\t\t\t\t\t\t\t\tINSERTER_PATTERN_TYPES.user ) && (\n\t\t\t\t\t\t\t\t\t<div className=\"block-editor-block-patterns-list__item-title\">\n\t\t\t\t\t\t\t\t\t\t{ pattern.title }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</HStack>\n\n\t\t\t\t\t\t\t{ !! pattern.description && (\n\t\t\t\t\t\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t\t\t\t\t\t{ pattern.description }\n\t\t\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</CompositeItem>\n\t\t\t\t\t</WithToolTip>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</InserterDraggableBlocks>\n\t);\n}\n\nfunction BlockPatternPlaceholder() {\n\treturn (\n\t\t<div className=\"block-editor-block-patterns-list__item is-placeholder\" />\n\t);\n}\n\nfunction BlockPatternsList(\n\t{\n\t\tisDraggable,\n\t\tblockPatterns,\n\t\tshownPatterns,\n\t\tonHover,\n\t\tonClickPattern,\n\t\torientation,\n\t\tlabel = __( 'Block patterns' ),\n\t\tshowTitlesAsTooltip,\n\t\tpagingProps,\n\t},\n\tref\n) {\n\tconst compositeStore = useCompositeStore( { orientation } );\n\tconst { setActiveId } = compositeStore;\n\n\tuseEffect( () => {\n\t\t// We reset the active composite item whenever the\n\t\t// available patterns change, to make sure that\n\t\t// focus is put back to the start.\n\t\tsetActiveId( undefined );\n\t}, [ setActiveId, shownPatterns, blockPatterns ] );\n\n\treturn (\n\t\t<Composite\n\t\t\tstore={ compositeStore }\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"block-editor-block-patterns-list\"\n\t\t\taria-label={ label }\n\t\t\tref={ ref }\n\t\t>\n\t\t\t{ blockPatterns.map( ( pattern ) => {\n\t\t\t\tconst isShown = shownPatterns.includes( pattern );\n\t\t\t\treturn isShown ? (\n\t\t\t\t\t<BlockPattern\n\t\t\t\t\t\tkey={ pattern.name }\n\t\t\t\t\t\tid={ pattern.name }\n\t\t\t\t\t\tpattern={ pattern }\n\t\t\t\t\t\tonClick={ onClickPattern }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\tisDraggable={ isDraggable }\n\t\t\t\t\t\tshowTooltip={ showTitlesAsTooltip }\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<BlockPatternPlaceholder key={ pattern.name } />\n\t\t\t\t);\n\t\t\t} ) }\n\t\t\t{ pagingProps && <BlockPatternsPaging { ...pagingProps } /> }\n\t\t</Composite>\n\t);\n}\n\nexport default forwardRef( BlockPatternsList );\n"],"mappings":"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"}
@@ -124,7 +124,9 @@ const BlockSwitcherDropdownMenu = ({
124
124
  const hasPossibleBlockTransformations = !!possibleBlockTransformations.length && canRemove && !isTemplate;
125
125
  const hasPossibleBlockVariationTransformations = !!blockVariationTransformations?.length;
126
126
  const hasPatternTransformation = !!patterns?.length && canRemove;
127
- if (!hasBlockStyles && !hasPossibleBlockTransformations && !hasPossibleBlockVariationTransformations) {
127
+ const hasBlockOrBlockVariationTransforms = hasPossibleBlockTransformations || hasPossibleBlockVariationTransformations;
128
+ const showDropdown = hasBlockStyles || hasBlockOrBlockVariationTransforms || hasPatternTransformation;
129
+ if (!showDropdown) {
128
130
  return (0, _react.createElement)(_components.ToolbarGroup, null, (0, _react.createElement)(_components.ToolbarButton, {
129
131
  disabled: true,
130
132
  className: "block-editor-block-switcher__no-switcher-icon",
@@ -140,8 +142,6 @@ const BlockSwitcherDropdownMenu = ({
140
142
  const blockSwitcherLabel = isSingleBlock ? blockTitle : (0, _i18n.__)('Multiple blocks selected');
141
143
  const blockSwitcherDescription = isSingleBlock ? (0, _i18n.__)('Change block type or style') : (0, _i18n.sprintf)( /* translators: %d: number of blocks. */
142
144
  (0, _i18n._n)('Change type of %d block', 'Change type of %d blocks', blocks.length), blocks.length);
143
- const hasBlockOrBlockVariationTransforms = hasPossibleBlockTransformations || hasPossibleBlockVariationTransformations;
144
- const showDropDown = hasBlockStyles || hasBlockOrBlockVariationTransforms || hasPatternTransformation;
145
145
  return (0, _react.createElement)(_components.ToolbarGroup, null, (0, _react.createElement)(_components.ToolbarItem, null, toggleProps => (0, _react.createElement)(_components.DropdownMenu, {
146
146
  className: "block-editor-block-switcher",
147
147
  label: blockSwitcherLabel,
@@ -165,7 +165,7 @@ const BlockSwitcherDropdownMenu = ({
165
165
  }
166
166
  }, ({
167
167
  onClose
168
- }) => showDropDown && (0, _react.createElement)("div", {
168
+ }) => (0, _react.createElement)("div", {
169
169
  className: "block-editor-block-switcher__container"
170
170
  }, hasPatternTransformation && (0, _react.createElement)(_patternTransformationsMenu.default, {
171
171
  blocks: blocks,
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_blocks","_data","_icons","_store","_useBlockDisplayInformation","_interopRequireDefault","_blockIcon","_blockTransformationsMenu","_blockVariationTransformations","_blockStylesMenu","_patternTransformationsMenu","_useBlockDisplayTitle","BlockSwitcherDropdownMenu","clientIds","blocks","replaceBlocks","multiSelect","updateBlockAttributes","useDispatch","blockEditorStore","blockInformation","useBlockDisplayInformation","clientId","possibleBlockTransformations","canRemove","hasBlockStyles","icon","patterns","useSelect","select","getBlockRootClientId","getBlockTransformItems","__experimentalGetPatternTransformItems","canRemoveBlocks","getBlockStyles","getBlockType","blocksStore","rootClientId","Array","isArray","name","firstBlockName","_isSingleBlockSelected","length","styles","_icon","isSelectionOfSameType","Set","map","size","copy","blockVariationTransformations","useBlockVariationTransforms","blockTitle","useBlockDisplayTitle","maximumLength","isSingleBlock","isReusable","isReusableBlock","isTemplate","isTemplatePart","selectForMultipleBlocks","insertedBlocks","onBlockTransform","newBlocks","switchToBlockType","onBlockVariationTransform","find","variationName","attributes","onPatternTransform","transformedBlocks","hasPossibleBlockTransformations","hasPossibleBlockVariationTransformations","hasPatternTransformation","_react","createElement","ToolbarGroup","ToolbarButton","disabled","className","title","Fragment","default","showColors","blockSwitcherLabel","__","blockSwitcherDescription","sprintf","_n","hasBlockOrBlockVariationTransforms","showDropDown","ToolbarItem","toggleProps","DropdownMenu","label","popoverProps","placement","describedBy","menuProps","orientation","onClose","onSelect","possibleBlockVariationTransformations","onSelectVariation","hoveredBlock","onSwitch","exports","BlockSwitcher","getBlocksByClientId","some","block","_default"],"sources":["@wordpress/block-editor/src/components/block-switcher/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport {\n\tDropdownMenu,\n\tToolbarButton,\n\tToolbarGroup,\n\tToolbarItem,\n} from '@wordpress/components';\nimport {\n\tswitchToBlockType,\n\tstore as blocksStore,\n\tisReusableBlock,\n\tisTemplatePart,\n} from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { copy } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport BlockIcon from '../block-icon';\nimport BlockTransformationsMenu from './block-transformations-menu';\nimport { useBlockVariationTransforms } from './block-variation-transformations';\nimport BlockStylesMenu from './block-styles-menu';\nimport PatternTransformationsMenu from './pattern-transformations-menu';\nimport useBlockDisplayTitle from '../block-title/use-block-display-title';\n\nexport const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {\n\tconst { replaceBlocks, multiSelect, updateBlockAttributes } =\n\t\tuseDispatch( blockEditorStore );\n\tconst blockInformation = useBlockDisplayInformation( blocks[ 0 ].clientId );\n\tconst {\n\t\tpossibleBlockTransformations,\n\t\tcanRemove,\n\t\thasBlockStyles,\n\t\ticon,\n\t\tpatterns,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetBlockTransformItems,\n\t\t\t\t__experimentalGetPatternTransformItems,\n\t\t\t\tcanRemoveBlocks,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { getBlockStyles, getBlockType } = select( blocksStore );\n\t\t\tconst rootClientId = getBlockRootClientId(\n\t\t\t\tArray.isArray( clientIds ) ? clientIds[ 0 ] : clientIds\n\t\t\t);\n\t\t\tconst [ { name: firstBlockName } ] = blocks;\n\t\t\tconst _isSingleBlockSelected = blocks.length === 1;\n\t\t\tconst styles =\n\t\t\t\t_isSingleBlockSelected && getBlockStyles( firstBlockName );\n\t\t\tlet _icon;\n\t\t\tif ( _isSingleBlockSelected ) {\n\t\t\t\t_icon = blockInformation?.icon; // Take into account active block variations.\n\t\t\t} else {\n\t\t\t\tconst isSelectionOfSameType =\n\t\t\t\t\tnew Set( blocks.map( ( { name } ) => name ) ).size === 1;\n\t\t\t\t// When selection consists of blocks of multiple types, display an\n\t\t\t\t// appropriate icon to communicate the non-uniformity.\n\t\t\t\t_icon = isSelectionOfSameType\n\t\t\t\t\t? getBlockType( firstBlockName )?.icon\n\t\t\t\t\t: copy;\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tpossibleBlockTransformations: getBlockTransformItems(\n\t\t\t\t\tblocks,\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanRemove: canRemoveBlocks( clientIds, rootClientId ),\n\t\t\t\thasBlockStyles: !! styles?.length,\n\t\t\t\ticon: _icon,\n\t\t\t\tpatterns: __experimentalGetPatternTransformItems(\n\t\t\t\t\tblocks,\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientIds, blocks, blockInformation?.icon ]\n\t);\n\n\tconst blockVariationTransformations = useBlockVariationTransforms( {\n\t\tclientIds,\n\t\tblocks,\n\t} );\n\n\tconst blockTitle = useBlockDisplayTitle( {\n\t\tclientId: Array.isArray( clientIds ) ? clientIds[ 0 ] : clientIds,\n\t\tmaximumLength: 35,\n\t} );\n\n\tconst isSingleBlock = blocks.length === 1;\n\tconst isReusable = isSingleBlock && isReusableBlock( blocks[ 0 ] );\n\tconst isTemplate = isSingleBlock && isTemplatePart( blocks[ 0 ] );\n\n\tfunction selectForMultipleBlocks( insertedBlocks ) {\n\t\tif ( insertedBlocks.length > 1 ) {\n\t\t\tmultiSelect(\n\t\t\t\tinsertedBlocks[ 0 ].clientId,\n\t\t\t\tinsertedBlocks[ insertedBlocks.length - 1 ].clientId\n\t\t\t);\n\t\t}\n\t}\n\n\t// Simple block tranformation based on the `Block Transforms` API.\n\tfunction onBlockTransform( name ) {\n\t\tconst newBlocks = switchToBlockType( blocks, name );\n\t\treplaceBlocks( clientIds, newBlocks );\n\t\tselectForMultipleBlocks( newBlocks );\n\t}\n\n\tfunction onBlockVariationTransform( name ) {\n\t\tupdateBlockAttributes( blocks[ 0 ].clientId, {\n\t\t\t...blockVariationTransformations.find(\n\t\t\t\t( { name: variationName } ) => variationName === name\n\t\t\t).attributes,\n\t\t} );\n\t}\n\n\t// Pattern transformation through the `Patterns` API.\n\tfunction onPatternTransform( transformedBlocks ) {\n\t\treplaceBlocks( clientIds, transformedBlocks );\n\t\tselectForMultipleBlocks( transformedBlocks );\n\t}\n\n\t/**\n\t * The `isTemplate` check is a stopgap solution here.\n\t * Ideally, the Transforms API should handle this\n\t * by allowing to exclude blocks from wildcard transformations.\n\t */\n\tconst hasPossibleBlockTransformations =\n\t\t!! possibleBlockTransformations.length && canRemove && ! isTemplate;\n\tconst hasPossibleBlockVariationTransformations =\n\t\t!! blockVariationTransformations?.length;\n\tconst hasPatternTransformation = !! patterns?.length && canRemove;\n\tif (\n\t\t! hasBlockStyles &&\n\t\t! hasPossibleBlockTransformations &&\n\t\t! hasPossibleBlockVariationTransformations\n\t) {\n\t\treturn (\n\t\t\t<ToolbarGroup>\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tdisabled\n\t\t\t\t\tclassName=\"block-editor-block-switcher__no-switcher-icon\"\n\t\t\t\t\ttitle={ blockTitle }\n\t\t\t\t\ticon={\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<BlockIcon icon={ icon } showColors />\n\t\t\t\t\t\t\t{ ( isReusable || isTemplate ) && (\n\t\t\t\t\t\t\t\t<span className=\"block-editor-block-switcher__toggle-text\">\n\t\t\t\t\t\t\t\t\t{ blockTitle }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolbarGroup>\n\t\t);\n\t}\n\n\tconst blockSwitcherLabel = isSingleBlock\n\t\t? blockTitle\n\t\t: __( 'Multiple blocks selected' );\n\n\tconst blockSwitcherDescription = isSingleBlock\n\t\t? __( 'Change block type or style' )\n\t\t: sprintf(\n\t\t\t\t/* translators: %d: number of blocks. */\n\t\t\t\t_n(\n\t\t\t\t\t'Change type of %d block',\n\t\t\t\t\t'Change type of %d blocks',\n\t\t\t\t\tblocks.length\n\t\t\t\t),\n\t\t\t\tblocks.length\n\t\t );\n\n\tconst hasBlockOrBlockVariationTransforms =\n\t\thasPossibleBlockTransformations ||\n\t\thasPossibleBlockVariationTransformations;\n\tconst showDropDown =\n\t\thasBlockStyles ||\n\t\thasBlockOrBlockVariationTransforms ||\n\t\thasPatternTransformation;\n\treturn (\n\t\t<ToolbarGroup>\n\t\t\t<ToolbarItem>\n\t\t\t\t{ ( toggleProps ) => (\n\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\tclassName=\"block-editor-block-switcher\"\n\t\t\t\t\t\tlabel={ blockSwitcherLabel }\n\t\t\t\t\t\tpopoverProps={ {\n\t\t\t\t\t\t\tplacement: 'bottom-start',\n\t\t\t\t\t\t\tclassName: 'block-editor-block-switcher__popover',\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<BlockIcon\n\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-switcher__toggle\"\n\t\t\t\t\t\t\t\t\tshowColors\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ ( isReusable || isTemplate ) && (\n\t\t\t\t\t\t\t\t\t<span className=\"block-editor-block-switcher__toggle-text\">\n\t\t\t\t\t\t\t\t\t\t{ blockTitle }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\tdescribedBy: blockSwitcherDescription,\n\t\t\t\t\t\t\t...toggleProps,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tmenuProps={ { orientation: 'both' } }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) =>\n\t\t\t\t\t\t\tshowDropDown && (\n\t\t\t\t\t\t\t\t<div className=\"block-editor-block-switcher__container\">\n\t\t\t\t\t\t\t\t\t{ hasPatternTransformation && (\n\t\t\t\t\t\t\t\t\t\t<PatternTransformationsMenu\n\t\t\t\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\t\t\t\tpatterns={ patterns }\n\t\t\t\t\t\t\t\t\t\t\tonSelect={ (\n\t\t\t\t\t\t\t\t\t\t\t\ttransformedBlocks\n\t\t\t\t\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\t\t\t\t\tonPatternTransform(\n\t\t\t\t\t\t\t\t\t\t\t\t\ttransformedBlocks\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ hasBlockOrBlockVariationTransforms && (\n\t\t\t\t\t\t\t\t\t\t<BlockTransformationsMenu\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-switcher__transforms__menugroup\"\n\t\t\t\t\t\t\t\t\t\t\tpossibleBlockTransformations={\n\t\t\t\t\t\t\t\t\t\t\t\tpossibleBlockTransformations\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tpossibleBlockVariationTransformations={\n\t\t\t\t\t\t\t\t\t\t\t\tblockVariationTransformations\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\t\t\t\tonSelect={ ( name ) => {\n\t\t\t\t\t\t\t\t\t\t\t\tonBlockTransform( name );\n\t\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\tonSelectVariation={ ( name ) => {\n\t\t\t\t\t\t\t\t\t\t\t\tonBlockVariationTransform(\n\t\t\t\t\t\t\t\t\t\t\t\t\tname\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ hasBlockStyles && (\n\t\t\t\t\t\t\t\t\t\t<BlockStylesMenu\n\t\t\t\t\t\t\t\t\t\t\thoveredBlock={ blocks[ 0 ] }\n\t\t\t\t\t\t\t\t\t\t\tonSwitch={ onClose }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t</DropdownMenu>\n\t\t\t\t) }\n\t\t\t</ToolbarItem>\n\t\t</ToolbarGroup>\n\t);\n};\n\nexport const BlockSwitcher = ( { clientIds } ) => {\n\tconst blocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlocksByClientId( clientIds ),\n\t\t[ clientIds ]\n\t);\n\n\tif ( ! blocks.length || blocks.some( ( block ) => ! block ) ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<BlockSwitcherDropdownMenu clientIds={ clientIds } blocks={ blocks } />\n\t);\n};\n\nexport default BlockSwitcher;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_i18n","require","_components","_blocks","_data","_icons","_store","_useBlockDisplayInformation","_interopRequireDefault","_blockIcon","_blockTransformationsMenu","_blockVariationTransformations","_blockStylesMenu","_patternTransformationsMenu","_useBlockDisplayTitle","BlockSwitcherDropdownMenu","clientIds","blocks","replaceBlocks","multiSelect","updateBlockAttributes","useDispatch","blockEditorStore","blockInformation","useBlockDisplayInformation","clientId","possibleBlockTransformations","canRemove","hasBlockStyles","icon","patterns","useSelect","select","getBlockRootClientId","getBlockTransformItems","__experimentalGetPatternTransformItems","canRemoveBlocks","getBlockStyles","getBlockType","blocksStore","rootClientId","Array","isArray","name","firstBlockName","_isSingleBlockSelected","length","styles","_icon","isSelectionOfSameType","Set","map","size","copy","blockVariationTransformations","useBlockVariationTransforms","blockTitle","useBlockDisplayTitle","maximumLength","isSingleBlock","isReusable","isReusableBlock","isTemplate","isTemplatePart","selectForMultipleBlocks","insertedBlocks","onBlockTransform","newBlocks","switchToBlockType","onBlockVariationTransform","find","variationName","attributes","onPatternTransform","transformedBlocks","hasPossibleBlockTransformations","hasPossibleBlockVariationTransformations","hasPatternTransformation","hasBlockOrBlockVariationTransforms","showDropdown","_react","createElement","ToolbarGroup","ToolbarButton","disabled","className","title","Fragment","default","showColors","blockSwitcherLabel","__","blockSwitcherDescription","sprintf","_n","ToolbarItem","toggleProps","DropdownMenu","label","popoverProps","placement","describedBy","menuProps","orientation","onClose","onSelect","possibleBlockVariationTransformations","onSelectVariation","hoveredBlock","onSwitch","exports","BlockSwitcher","getBlocksByClientId","some","block","_default"],"sources":["@wordpress/block-editor/src/components/block-switcher/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport {\n\tDropdownMenu,\n\tToolbarButton,\n\tToolbarGroup,\n\tToolbarItem,\n} from '@wordpress/components';\nimport {\n\tswitchToBlockType,\n\tstore as blocksStore,\n\tisReusableBlock,\n\tisTemplatePart,\n} from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { copy } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport BlockIcon from '../block-icon';\nimport BlockTransformationsMenu from './block-transformations-menu';\nimport { useBlockVariationTransforms } from './block-variation-transformations';\nimport BlockStylesMenu from './block-styles-menu';\nimport PatternTransformationsMenu from './pattern-transformations-menu';\nimport useBlockDisplayTitle from '../block-title/use-block-display-title';\n\nexport const BlockSwitcherDropdownMenu = ( { clientIds, blocks } ) => {\n\tconst { replaceBlocks, multiSelect, updateBlockAttributes } =\n\t\tuseDispatch( blockEditorStore );\n\tconst blockInformation = useBlockDisplayInformation( blocks[ 0 ].clientId );\n\tconst {\n\t\tpossibleBlockTransformations,\n\t\tcanRemove,\n\t\thasBlockStyles,\n\t\ticon,\n\t\tpatterns,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetBlockTransformItems,\n\t\t\t\t__experimentalGetPatternTransformItems,\n\t\t\t\tcanRemoveBlocks,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { getBlockStyles, getBlockType } = select( blocksStore );\n\t\t\tconst rootClientId = getBlockRootClientId(\n\t\t\t\tArray.isArray( clientIds ) ? clientIds[ 0 ] : clientIds\n\t\t\t);\n\t\t\tconst [ { name: firstBlockName } ] = blocks;\n\t\t\tconst _isSingleBlockSelected = blocks.length === 1;\n\t\t\tconst styles =\n\t\t\t\t_isSingleBlockSelected && getBlockStyles( firstBlockName );\n\t\t\tlet _icon;\n\t\t\tif ( _isSingleBlockSelected ) {\n\t\t\t\t_icon = blockInformation?.icon; // Take into account active block variations.\n\t\t\t} else {\n\t\t\t\tconst isSelectionOfSameType =\n\t\t\t\t\tnew Set( blocks.map( ( { name } ) => name ) ).size === 1;\n\t\t\t\t// When selection consists of blocks of multiple types, display an\n\t\t\t\t// appropriate icon to communicate the non-uniformity.\n\t\t\t\t_icon = isSelectionOfSameType\n\t\t\t\t\t? getBlockType( firstBlockName )?.icon\n\t\t\t\t\t: copy;\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tpossibleBlockTransformations: getBlockTransformItems(\n\t\t\t\t\tblocks,\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanRemove: canRemoveBlocks( clientIds, rootClientId ),\n\t\t\t\thasBlockStyles: !! styles?.length,\n\t\t\t\ticon: _icon,\n\t\t\t\tpatterns: __experimentalGetPatternTransformItems(\n\t\t\t\t\tblocks,\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientIds, blocks, blockInformation?.icon ]\n\t);\n\n\tconst blockVariationTransformations = useBlockVariationTransforms( {\n\t\tclientIds,\n\t\tblocks,\n\t} );\n\n\tconst blockTitle = useBlockDisplayTitle( {\n\t\tclientId: Array.isArray( clientIds ) ? clientIds[ 0 ] : clientIds,\n\t\tmaximumLength: 35,\n\t} );\n\n\tconst isSingleBlock = blocks.length === 1;\n\tconst isReusable = isSingleBlock && isReusableBlock( blocks[ 0 ] );\n\tconst isTemplate = isSingleBlock && isTemplatePart( blocks[ 0 ] );\n\n\tfunction selectForMultipleBlocks( insertedBlocks ) {\n\t\tif ( insertedBlocks.length > 1 ) {\n\t\t\tmultiSelect(\n\t\t\t\tinsertedBlocks[ 0 ].clientId,\n\t\t\t\tinsertedBlocks[ insertedBlocks.length - 1 ].clientId\n\t\t\t);\n\t\t}\n\t}\n\n\t// Simple block tranformation based on the `Block Transforms` API.\n\tfunction onBlockTransform( name ) {\n\t\tconst newBlocks = switchToBlockType( blocks, name );\n\t\treplaceBlocks( clientIds, newBlocks );\n\t\tselectForMultipleBlocks( newBlocks );\n\t}\n\n\tfunction onBlockVariationTransform( name ) {\n\t\tupdateBlockAttributes( blocks[ 0 ].clientId, {\n\t\t\t...blockVariationTransformations.find(\n\t\t\t\t( { name: variationName } ) => variationName === name\n\t\t\t).attributes,\n\t\t} );\n\t}\n\n\t// Pattern transformation through the `Patterns` API.\n\tfunction onPatternTransform( transformedBlocks ) {\n\t\treplaceBlocks( clientIds, transformedBlocks );\n\t\tselectForMultipleBlocks( transformedBlocks );\n\t}\n\n\t/**\n\t * The `isTemplate` check is a stopgap solution here.\n\t * Ideally, the Transforms API should handle this\n\t * by allowing to exclude blocks from wildcard transformations.\n\t */\n\tconst hasPossibleBlockTransformations =\n\t\t!! possibleBlockTransformations.length && canRemove && ! isTemplate;\n\tconst hasPossibleBlockVariationTransformations =\n\t\t!! blockVariationTransformations?.length;\n\tconst hasPatternTransformation = !! patterns?.length && canRemove;\n\tconst hasBlockOrBlockVariationTransforms =\n\t\thasPossibleBlockTransformations ||\n\t\thasPossibleBlockVariationTransformations;\n\tconst showDropdown =\n\t\thasBlockStyles ||\n\t\thasBlockOrBlockVariationTransforms ||\n\t\thasPatternTransformation;\n\tif ( ! showDropdown ) {\n\t\treturn (\n\t\t\t<ToolbarGroup>\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tdisabled\n\t\t\t\t\tclassName=\"block-editor-block-switcher__no-switcher-icon\"\n\t\t\t\t\ttitle={ blockTitle }\n\t\t\t\t\ticon={\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<BlockIcon icon={ icon } showColors />\n\t\t\t\t\t\t\t{ ( isReusable || isTemplate ) && (\n\t\t\t\t\t\t\t\t<span className=\"block-editor-block-switcher__toggle-text\">\n\t\t\t\t\t\t\t\t\t{ blockTitle }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolbarGroup>\n\t\t);\n\t}\n\n\tconst blockSwitcherLabel = isSingleBlock\n\t\t? blockTitle\n\t\t: __( 'Multiple blocks selected' );\n\n\tconst blockSwitcherDescription = isSingleBlock\n\t\t? __( 'Change block type or style' )\n\t\t: sprintf(\n\t\t\t\t/* translators: %d: number of blocks. */\n\t\t\t\t_n(\n\t\t\t\t\t'Change type of %d block',\n\t\t\t\t\t'Change type of %d blocks',\n\t\t\t\t\tblocks.length\n\t\t\t\t),\n\t\t\t\tblocks.length\n\t\t );\n\n\treturn (\n\t\t<ToolbarGroup>\n\t\t\t<ToolbarItem>\n\t\t\t\t{ ( toggleProps ) => (\n\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\tclassName=\"block-editor-block-switcher\"\n\t\t\t\t\t\tlabel={ blockSwitcherLabel }\n\t\t\t\t\t\tpopoverProps={ {\n\t\t\t\t\t\t\tplacement: 'bottom-start',\n\t\t\t\t\t\t\tclassName: 'block-editor-block-switcher__popover',\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<BlockIcon\n\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-switcher__toggle\"\n\t\t\t\t\t\t\t\t\tshowColors\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ ( isReusable || isTemplate ) && (\n\t\t\t\t\t\t\t\t\t<span className=\"block-editor-block-switcher__toggle-text\">\n\t\t\t\t\t\t\t\t\t\t{ blockTitle }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\tdescribedBy: blockSwitcherDescription,\n\t\t\t\t\t\t\t...toggleProps,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tmenuProps={ { orientation: 'both' } }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t<div className=\"block-editor-block-switcher__container\">\n\t\t\t\t\t\t\t\t{ hasPatternTransformation && (\n\t\t\t\t\t\t\t\t\t<PatternTransformationsMenu\n\t\t\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\t\t\tpatterns={ patterns }\n\t\t\t\t\t\t\t\t\t\tonSelect={ ( transformedBlocks ) => {\n\t\t\t\t\t\t\t\t\t\t\tonPatternTransform(\n\t\t\t\t\t\t\t\t\t\t\t\ttransformedBlocks\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t} }\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\t{ hasBlockOrBlockVariationTransforms && (\n\t\t\t\t\t\t\t\t\t<BlockTransformationsMenu\n\t\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-switcher__transforms__menugroup\"\n\t\t\t\t\t\t\t\t\t\tpossibleBlockTransformations={\n\t\t\t\t\t\t\t\t\t\t\tpossibleBlockTransformations\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tpossibleBlockVariationTransformations={\n\t\t\t\t\t\t\t\t\t\t\tblockVariationTransformations\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\t\t\tonSelect={ ( name ) => {\n\t\t\t\t\t\t\t\t\t\t\tonBlockTransform( name );\n\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tonSelectVariation={ ( name ) => {\n\t\t\t\t\t\t\t\t\t\t\tonBlockVariationTransform( name );\n\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t} }\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\t{ hasBlockStyles && (\n\t\t\t\t\t\t\t\t\t<BlockStylesMenu\n\t\t\t\t\t\t\t\t\t\thoveredBlock={ blocks[ 0 ] }\n\t\t\t\t\t\t\t\t\t\tonSwitch={ onClose }\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</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</DropdownMenu>\n\t\t\t\t) }\n\t\t\t</ToolbarItem>\n\t\t</ToolbarGroup>\n\t);\n};\n\nexport const BlockSwitcher = ( { clientIds } ) => {\n\tconst blocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlocksByClientId( clientIds ),\n\t\t[ clientIds ]\n\t);\n\n\tif ( ! blocks.length || blocks.some( ( block ) => ! block ) ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<BlockSwitcherDropdownMenu clientIds={ clientIds } blocks={ blocks } />\n\t);\n};\n\nexport default BlockSwitcher;\n"],"mappings":"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"}
@@ -146,8 +146,7 @@ function PrivateBlockToolbar({
146
146
  }, (0, _react.createElement)(_blockSwitcher.default, {
147
147
  clientIds: blockClientIds
148
148
  }), !isMultiToolbar && (0, _react.createElement)(_blockLock.BlockLockToolbar, {
149
- clientId: blockClientIds[0],
150
- wrapperRef: toolbarWrapperRef
149
+ clientId: blockClientId
151
150
  }), (0, _react.createElement)(_blockMover.default, {
152
151
  clientIds: blockClientIds,
153
152
  hideDragHandle: hideDragHandle
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_i18n","_data","_element","_compose","_blocks","_components","_blockMover","_blockParentSelector","_blockSwitcher","_blockControls","_blockToolbarLastItem","_blockSettingsMenu","_blockLock","_convertToGroupButtons","_blockEditVisuallyButton","_utils","_store","_blockNameContext","_navigableToolbar","_useHasBlockControls","PrivateBlockToolbar","hideDragHandle","focusOnMount","__experimentalInitialIndex","__experimentalOnIndexChange","variant","blockClientId","blockClientIds","isDefaultEditingMode","blockType","shouldShowVisualToolbar","showParentSelector","useSelect","select","getBlockName","getBlockMode","getBlockParents","getSelectedBlockClientIds","isBlockValid","getBlockRootClientId","getBlockEditingMode","blockEditorStore","selectedBlockClientIds","selectedBlockClientId","blockRootClientId","parents","firstParentClientId","length","parentBlockName","parentBlockType","getBlockType","_isDefaultEditingMode","isValid","every","id","isVisual","rootClientId","hasBlockSupport","toolbarWrapperRef","useRef","nodeRef","showHoveredOrFocusedGestures","useShowHoveredOrFocusedGestures","ref","isLargeViewport","useViewportMatch","isToolbarEnabled","hasAnyBlockControls","useHasAnyBlockControls","isMultiToolbar","isSynced","isReusableBlock","isTemplatePart","classes","classnames","innerClasses","_react","createElement","default","focusEditorOnEscape","className","__","undefined","key","ToolbarGroup","clientIds","BlockLockToolbar","clientId","wrapperRef","BlockGroupToolbar","Fragment","Slot","group","Provider","value","name","BlockToolbar"],"sources":["@wordpress/block-editor/src/components/block-toolbar/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { useRef } from '@wordpress/element';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tgetBlockType,\n\thasBlockSupport,\n\tisReusableBlock,\n\tisTemplatePart,\n} from '@wordpress/blocks';\nimport { ToolbarGroup } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport BlockMover from '../block-mover';\nimport BlockParentSelector from '../block-parent-selector';\nimport BlockSwitcher from '../block-switcher';\nimport BlockControls from '../block-controls';\nimport __unstableBlockToolbarLastItem from './block-toolbar-last-item';\nimport BlockSettingsMenu from '../block-settings-menu';\nimport { BlockLockToolbar } from '../block-lock';\nimport { BlockGroupToolbar } from '../convert-to-group-buttons';\nimport BlockEditVisuallyButton from '../block-edit-visually-button';\nimport { useShowHoveredOrFocusedGestures } from './utils';\nimport { store as blockEditorStore } from '../../store';\nimport __unstableBlockNameContext from './block-name-context';\nimport NavigableToolbar from '../navigable-toolbar';\nimport { useHasAnyBlockControls } from '../block-controls/use-has-block-controls';\n\n/**\n * Renders the block toolbar.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-toolbar/README.md\n *\n * @param {Object} props Components props.\n * @param {boolean} props.hideDragHandle Show or hide the Drag Handle for drag and drop functionality.\n * @param {boolean} props.focusOnMount Focus the toolbar when mounted.\n * @param {number} props.__experimentalInitialIndex The initial index of the toolbar item to focus.\n * @param {Function} props.__experimentalOnIndexChange Callback function to be called when the index of the focused toolbar item changes.\n * @param {string} props.variant Style variant of the toolbar, also passed to the Dropdowns rendered from Block Toolbar Buttons.\n */\nexport function PrivateBlockToolbar( {\n\thideDragHandle,\n\tfocusOnMount,\n\t__experimentalInitialIndex,\n\t__experimentalOnIndexChange,\n\tvariant = 'unstyled',\n} ) {\n\tconst {\n\t\tblockClientId,\n\t\tblockClientIds,\n\t\tisDefaultEditingMode,\n\t\tblockType,\n\t\tshouldShowVisualToolbar,\n\t\tshowParentSelector,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetBlockName,\n\t\t\tgetBlockMode,\n\t\t\tgetBlockParents,\n\t\t\tgetSelectedBlockClientIds,\n\t\t\tisBlockValid,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockEditingMode,\n\t\t} = select( blockEditorStore );\n\t\tconst selectedBlockClientIds = getSelectedBlockClientIds();\n\t\tconst selectedBlockClientId = selectedBlockClientIds[ 0 ];\n\t\tconst blockRootClientId = getBlockRootClientId( selectedBlockClientId );\n\t\tconst parents = getBlockParents( selectedBlockClientId );\n\t\tconst firstParentClientId = parents[ parents.length - 1 ];\n\t\tconst parentBlockName = getBlockName( firstParentClientId );\n\t\tconst parentBlockType = getBlockType( parentBlockName );\n\t\tconst _isDefaultEditingMode =\n\t\t\tgetBlockEditingMode( selectedBlockClientId ) === 'default';\n\t\tconst isValid = selectedBlockClientIds.every( ( id ) =>\n\t\t\tisBlockValid( id )\n\t\t);\n\t\tconst isVisual = selectedBlockClientIds.every(\n\t\t\t( id ) => getBlockMode( id ) === 'visual'\n\t\t);\n\t\treturn {\n\t\t\tblockClientId: selectedBlockClientId,\n\t\t\tblockClientIds: selectedBlockClientIds,\n\t\t\tisDefaultEditingMode: _isDefaultEditingMode,\n\t\t\tblockType:\n\t\t\t\tselectedBlockClientId &&\n\t\t\t\tgetBlockType( getBlockName( selectedBlockClientId ) ),\n\n\t\t\tshouldShowVisualToolbar: isValid && isVisual,\n\t\t\trootClientId: blockRootClientId,\n\t\t\tshowParentSelector:\n\t\t\t\tparentBlockType &&\n\t\t\t\tgetBlockEditingMode( firstParentClientId ) === 'default' &&\n\t\t\t\thasBlockSupport(\n\t\t\t\t\tparentBlockType,\n\t\t\t\t\t'__experimentalParentSelector',\n\t\t\t\t\ttrue\n\t\t\t\t) &&\n\t\t\t\tselectedBlockClientIds.length === 1 &&\n\t\t\t\t_isDefaultEditingMode,\n\t\t};\n\t}, [] );\n\n\tconst toolbarWrapperRef = useRef( null );\n\n\t// Handles highlighting the current block outline on hover or focus of the\n\t// block type toolbar area.\n\tconst nodeRef = useRef();\n\tconst showHoveredOrFocusedGestures = useShowHoveredOrFocusedGestures( {\n\t\tref: nodeRef,\n\t} );\n\n\tconst isLargeViewport = ! useViewportMatch( 'medium', '<' );\n\n\tconst isToolbarEnabled =\n\t\tblockType &&\n\t\thasBlockSupport( blockType, '__experimentalToolbar', true );\n\tconst hasAnyBlockControls = useHasAnyBlockControls();\n\n\tif (\n\t\t! isToolbarEnabled ||\n\t\t( ! isDefaultEditingMode && ! hasAnyBlockControls )\n\t) {\n\t\treturn null;\n\t}\n\n\tconst isMultiToolbar = blockClientIds.length > 1;\n\tconst isSynced =\n\t\tisReusableBlock( blockType ) || isTemplatePart( blockType );\n\n\t// Shifts the toolbar to make room for the parent block selector.\n\tconst classes = classnames( 'block-editor-block-contextual-toolbar', {\n\t\t'has-parent': showParentSelector,\n\t} );\n\n\tconst innerClasses = classnames( 'block-editor-block-toolbar', {\n\t\t'is-synced': isSynced,\n\t} );\n\n\treturn (\n\t\t<NavigableToolbar\n\t\t\tfocusEditorOnEscape\n\t\t\tclassName={ classes }\n\t\t\t/* translators: accessibility text for the block toolbar */\n\t\t\taria-label={ __( 'Block tools' ) }\n\t\t\t// The variant is applied as \"toolbar\" when undefined, which is the black border style of the dropdown from the toolbar popover.\n\t\t\tvariant={ variant === 'toolbar' ? undefined : variant }\n\t\t\tfocusOnMount={ focusOnMount }\n\t\t\t__experimentalInitialIndex={ __experimentalInitialIndex }\n\t\t\t__experimentalOnIndexChange={ __experimentalOnIndexChange }\n\t\t\t// Resets the index whenever the active block changes so\n\t\t\t// this is not persisted. See https://github.com/WordPress/gutenberg/pull/25760#issuecomment-717906169\n\t\t\tkey={ blockClientId }\n\t\t>\n\t\t\t<div ref={ toolbarWrapperRef } className={ innerClasses }>\n\t\t\t\t{ ! isMultiToolbar &&\n\t\t\t\t\tisLargeViewport &&\n\t\t\t\t\tisDefaultEditingMode && <BlockParentSelector /> }\n\t\t\t\t{ ( shouldShowVisualToolbar || isMultiToolbar ) &&\n\t\t\t\t\tisDefaultEditingMode && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ nodeRef }\n\t\t\t\t\t\t\t{ ...showHoveredOrFocusedGestures }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToolbarGroup className=\"block-editor-block-toolbar__block-controls\">\n\t\t\t\t\t\t\t\t<BlockSwitcher clientIds={ blockClientIds } />\n\t\t\t\t\t\t\t\t{ ! isMultiToolbar && (\n\t\t\t\t\t\t\t\t\t<BlockLockToolbar\n\t\t\t\t\t\t\t\t\t\tclientId={ blockClientIds[ 0 ] }\n\t\t\t\t\t\t\t\t\t\twrapperRef={ toolbarWrapperRef }\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\t<BlockMover\n\t\t\t\t\t\t\t\t\tclientIds={ blockClientIds }\n\t\t\t\t\t\t\t\t\thideDragHandle={ hideDragHandle }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t{ shouldShowVisualToolbar && isMultiToolbar && (\n\t\t\t\t\t<BlockGroupToolbar />\n\t\t\t\t) }\n\t\t\t\t{ shouldShowVisualToolbar && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"parent\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"block\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockControls.Slot className=\"block-editor-block-toolbar__slot\" />\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"inline\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"other\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<__unstableBlockNameContext.Provider\n\t\t\t\t\t\t\tvalue={ blockType?.name }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<__unstableBlockToolbarLastItem.Slot />\n\t\t\t\t\t\t</__unstableBlockNameContext.Provider>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t<BlockEditVisuallyButton clientIds={ blockClientIds } />\n\t\t\t\t{ isDefaultEditingMode && (\n\t\t\t\t\t<BlockSettingsMenu clientIds={ blockClientIds } />\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n\n/**\n * Renders the block toolbar.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-toolbar/README.md\n *\n * @param {Object} props Components props.\n * @param {boolean} props.hideDragHandle Show or hide the Drag Handle for drag and drop functionality.\n * @param {string} props.variant Style variant of the toolbar, also passed to the Dropdowns rendered from Block Toolbar Buttons.\n */\nexport default function BlockToolbar( { hideDragHandle, variant } ) {\n\treturn (\n\t\t<PrivateBlockToolbar\n\t\t\thideDragHandle={ hideDragHandle }\n\t\t\tvariant={ variant }\n\t\t\tfocusOnMount={ undefined }\n\t\t\t__experimentalInitialIndex={ undefined }\n\t\t\t__experimentalOnIndexChange={ undefined }\n\t\t/>\n\t);\n}\n"],"mappings":";;;;;;;;;AAGA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AAMA,IAAAM,WAAA,GAAAN,OAAA;AAKA,IAAAO,WAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,oBAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,cAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,cAAA,GAAAX,sBAAA,CAAAC,OAAA;AACA,IAAAW,qBAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,kBAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,UAAA,GAAAb,OAAA;AACA,IAAAc,sBAAA,GAAAd,OAAA;AACA,IAAAe,wBAAA,GAAAhB,sBAAA,CAAAC,OAAA;AACA,IAAAgB,MAAA,GAAAhB,OAAA;AACA,IAAAiB,MAAA,GAAAjB,OAAA;AACA,IAAAkB,iBAAA,GAAAnB,sBAAA,CAAAC,OAAA;AACA,IAAAmB,iBAAA,GAAApB,sBAAA,CAAAC,OAAA;AACA,IAAAoB,oBAAA,GAAApB,OAAA;AApCA;AACA;AACA;;AAGA;AACA;AACA;;AAaA;AACA;AACA;;AAgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASqB,mBAAmBA,CAAE;EACpCC,cAAc;EACdC,YAAY;EACZC,0BAA0B;EAC1BC,2BAA2B;EAC3BC,OAAO,GAAG;AACX,CAAC,EAAG;EACH,MAAM;IACLC,aAAa;IACbC,cAAc;IACdC,oBAAoB;IACpBC,SAAS;IACTC,uBAAuB;IACvBC;EACD,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAC5B,MAAM;MACLC,YAAY;MACZC,YAAY;MACZC,eAAe;MACfC,yBAAyB;MACzBC,YAAY;MACZC,oBAAoB;MACpBC;IACD,CAAC,GAAGP,MAAM,CAAEQ,YAAiB,CAAC;IAC9B,MAAMC,sBAAsB,GAAGL,yBAAyB,CAAC,CAAC;IAC1D,MAAMM,qBAAqB,GAAGD,sBAAsB,CAAE,CAAC,CAAE;IACzD,MAAME,iBAAiB,GAAGL,oBAAoB,CAAEI,qBAAsB,CAAC;IACvE,MAAME,OAAO,GAAGT,eAAe,CAAEO,qBAAsB,CAAC;IACxD,MAAMG,mBAAmB,GAAGD,OAAO,CAAEA,OAAO,CAACE,MAAM,GAAG,CAAC,CAAE;IACzD,MAAMC,eAAe,GAAGd,YAAY,CAAEY,mBAAoB,CAAC;IAC3D,MAAMG,eAAe,GAAG,IAAAC,oBAAY,EAAEF,eAAgB,CAAC;IACvD,MAAMG,qBAAqB,GAC1BX,mBAAmB,CAAEG,qBAAsB,CAAC,KAAK,SAAS;IAC3D,MAAMS,OAAO,GAAGV,sBAAsB,CAACW,KAAK,CAAIC,EAAE,IACjDhB,YAAY,CAAEgB,EAAG,CAClB,CAAC;IACD,MAAMC,QAAQ,GAAGb,sBAAsB,CAACW,KAAK,CAC1CC,EAAE,IAAMnB,YAAY,CAAEmB,EAAG,CAAC,KAAK,QAClC,CAAC;IACD,OAAO;MACN5B,aAAa,EAAEiB,qBAAqB;MACpChB,cAAc,EAAEe,sBAAsB;MACtCd,oBAAoB,EAAEuB,qBAAqB;MAC3CtB,SAAS,EACRc,qBAAqB,IACrB,IAAAO,oBAAY,EAAEhB,YAAY,CAAES,qBAAsB,CAAE,CAAC;MAEtDb,uBAAuB,EAAEsB,OAAO,IAAIG,QAAQ;MAC5CC,YAAY,EAAEZ,iBAAiB;MAC/Bb,kBAAkB,EACjBkB,eAAe,IACfT,mBAAmB,CAAEM,mBAAoB,CAAC,KAAK,SAAS,IACxD,IAAAW,uBAAe,EACdR,eAAe,EACf,8BAA8B,EAC9B,IACD,CAAC,IACDP,sBAAsB,CAACK,MAAM,KAAK,CAAC,IACnCI;IACF,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMO,iBAAiB,GAAG,IAAAC,eAAM,EAAE,IAAK,CAAC;;EAExC;EACA;EACA,MAAMC,OAAO,GAAG,IAAAD,eAAM,EAAC,CAAC;EACxB,MAAME,4BAA4B,GAAG,IAAAC,sCAA+B,EAAE;IACrEC,GAAG,EAAEH;EACN,CAAE,CAAC;EAEH,MAAMI,eAAe,GAAG,CAAE,IAAAC,yBAAgB,EAAE,QAAQ,EAAE,GAAI,CAAC;EAE3D,MAAMC,gBAAgB,GACrBrC,SAAS,IACT,IAAA4B,uBAAe,EAAE5B,SAAS,EAAE,uBAAuB,EAAE,IAAK,CAAC;EAC5D,MAAMsC,mBAAmB,GAAG,IAAAC,2CAAsB,EAAC,CAAC;EAEpD,IACC,CAAEF,gBAAgB,IAChB,CAAEtC,oBAAoB,IAAI,CAAEuC,mBAAqB,EAClD;IACD,OAAO,IAAI;EACZ;EAEA,MAAME,cAAc,GAAG1C,cAAc,CAACoB,MAAM,GAAG,CAAC;EAChD,MAAMuB,QAAQ,GACb,IAAAC,uBAAe,EAAE1C,SAAU,CAAC,IAAI,IAAA2C,sBAAc,EAAE3C,SAAU,CAAC;;EAE5D;EACA,MAAM4C,OAAO,GAAG,IAAAC,mBAAU,EAAE,uCAAuC,EAAE;IACpE,YAAY,EAAE3C;EACf,CAAE,CAAC;EAEH,MAAM4C,YAAY,GAAG,IAAAD,mBAAU,EAAE,4BAA4B,EAAE;IAC9D,WAAW,EAAEJ;EACd,CAAE,CAAC;EAEH,OACC,IAAAM,MAAA,CAAAC,aAAA,EAAC3D,iBAAA,CAAA4D,OAAgB;IAChBC,mBAAmB;IACnBC,SAAS,EAAGP;IACZ;IACA,cAAa,IAAAQ,QAAE,EAAE,aAAc;IAC/B;IAAA;IACAxD,OAAO,EAAGA,OAAO,KAAK,SAAS,GAAGyD,SAAS,GAAGzD,OAAS;IACvDH,YAAY,EAAGA,YAAc;IAC7BC,0BAA0B,EAAGA,0BAA4B;IACzDC,2BAA2B,EAAGA;IAC9B;IACA;IAAA;IACA2D,GAAG,EAAGzD;EAAe,GAErB,IAAAkD,MAAA,CAAAC,aAAA;IAAKd,GAAG,EAAGL,iBAAmB;IAACsB,SAAS,EAAGL;EAAc,GACtD,CAAEN,cAAc,IACjBL,eAAe,IACfpC,oBAAoB,IAAI,IAAAgD,MAAA,CAAAC,aAAA,EAACtE,oBAAA,CAAAuE,OAAmB,MAAE,CAAC,EAC9C,CAAEhD,uBAAuB,IAAIuC,cAAc,KAC5CzC,oBAAoB,IACnB,IAAAgD,MAAA,CAAAC,aAAA;IACCd,GAAG,EAAGH,OAAS;IAAA,GACVC;EAA4B,GAEjC,IAAAe,MAAA,CAAAC,aAAA,EAACxE,WAAA,CAAA+E,YAAY;IAACJ,SAAS,EAAC;EAA4C,GACnE,IAAAJ,MAAA,CAAAC,aAAA,EAACrE,cAAA,CAAAsE,OAAa;IAACO,SAAS,EAAG1D;EAAgB,CAAE,CAAC,EAC5C,CAAE0C,cAAc,IACjB,IAAAO,MAAA,CAAAC,aAAA,EAACjE,UAAA,CAAA0E,gBAAgB;IAChBC,QAAQ,EAAG5D,cAAc,CAAE,CAAC,CAAI;IAChC6D,UAAU,EAAG9B;EAAmB,CAChC,CACD,EACD,IAAAkB,MAAA,CAAAC,aAAA,EAACvE,WAAA,CAAAwE,OAAU;IACVO,SAAS,EAAG1D,cAAgB;IAC5BN,cAAc,EAAGA;EAAgB,CACjC,CACY,CACV,CACL,EACAS,uBAAuB,IAAIuC,cAAc,IAC1C,IAAAO,MAAA,CAAAC,aAAA,EAAChE,sBAAA,CAAA4E,iBAAiB,MAAE,CACpB,EACC3D,uBAAuB,IACxB,IAAA8C,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAc,QAAA,QACC,IAAAd,MAAA,CAAAC,aAAA,EAACpE,cAAA,CAAAqE,OAAa,CAACa,IAAI;IAClBC,KAAK,EAAC,QAAQ;IACdZ,SAAS,EAAC;EAAkC,CAC5C,CAAC,EACF,IAAAJ,MAAA,CAAAC,aAAA,EAACpE,cAAA,CAAAqE,OAAa,CAACa,IAAI;IAClBC,KAAK,EAAC,OAAO;IACbZ,SAAS,EAAC;EAAkC,CAC5C,CAAC,EACF,IAAAJ,MAAA,CAAAC,aAAA,EAACpE,cAAA,CAAAqE,OAAa,CAACa,IAAI;IAACX,SAAS,EAAC;EAAkC,CAAE,CAAC,EACnE,IAAAJ,MAAA,CAAAC,aAAA,EAACpE,cAAA,CAAAqE,OAAa,CAACa,IAAI;IAClBC,KAAK,EAAC,QAAQ;IACdZ,SAAS,EAAC;EAAkC,CAC5C,CAAC,EACF,IAAAJ,MAAA,CAAAC,aAAA,EAACpE,cAAA,CAAAqE,OAAa,CAACa,IAAI;IAClBC,KAAK,EAAC,OAAO;IACbZ,SAAS,EAAC;EAAkC,CAC5C,CAAC,EACF,IAAAJ,MAAA,CAAAC,aAAA,EAAC5D,iBAAA,CAAA6D,OAA0B,CAACe,QAAQ;IACnCC,KAAK,EAAGjE,SAAS,EAAEkE;EAAM,GAEzB,IAAAnB,MAAA,CAAAC,aAAA,EAACnE,qBAAA,CAAAoE,OAA8B,CAACa,IAAI,MAAE,CACF,CACpC,CACF,EACD,IAAAf,MAAA,CAAAC,aAAA,EAAC/D,wBAAA,CAAAgE,OAAuB;IAACO,SAAS,EAAG1D;EAAgB,CAAE,CAAC,EACtDC,oBAAoB,IACrB,IAAAgD,MAAA,CAAAC,aAAA,EAAClE,kBAAA,CAAAmE,OAAiB;IAACO,SAAS,EAAG1D;EAAgB,CAAE,CAE9C,CACY,CAAC;AAErB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASqE,YAAYA,CAAE;EAAE3E,cAAc;EAAEI;AAAQ,CAAC,EAAG;EACnE,OACC,IAAAmD,MAAA,CAAAC,aAAA,EAACzD,mBAAmB;IACnBC,cAAc,EAAGA,cAAgB;IACjCI,OAAO,EAAGA,OAAS;IACnBH,YAAY,EAAG4D,SAAW;IAC1B3D,0BAA0B,EAAG2D,SAAW;IACxC1D,2BAA2B,EAAG0D;EAAW,CACzC,CAAC;AAEJ"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_i18n","_data","_element","_compose","_blocks","_components","_blockMover","_blockParentSelector","_blockSwitcher","_blockControls","_blockToolbarLastItem","_blockSettingsMenu","_blockLock","_convertToGroupButtons","_blockEditVisuallyButton","_utils","_store","_blockNameContext","_navigableToolbar","_useHasBlockControls","PrivateBlockToolbar","hideDragHandle","focusOnMount","__experimentalInitialIndex","__experimentalOnIndexChange","variant","blockClientId","blockClientIds","isDefaultEditingMode","blockType","shouldShowVisualToolbar","showParentSelector","useSelect","select","getBlockName","getBlockMode","getBlockParents","getSelectedBlockClientIds","isBlockValid","getBlockRootClientId","getBlockEditingMode","blockEditorStore","selectedBlockClientIds","selectedBlockClientId","blockRootClientId","parents","firstParentClientId","length","parentBlockName","parentBlockType","getBlockType","_isDefaultEditingMode","isValid","every","id","isVisual","rootClientId","hasBlockSupport","toolbarWrapperRef","useRef","nodeRef","showHoveredOrFocusedGestures","useShowHoveredOrFocusedGestures","ref","isLargeViewport","useViewportMatch","isToolbarEnabled","hasAnyBlockControls","useHasAnyBlockControls","isMultiToolbar","isSynced","isReusableBlock","isTemplatePart","classes","classnames","innerClasses","_react","createElement","default","focusEditorOnEscape","className","__","undefined","key","ToolbarGroup","clientIds","BlockLockToolbar","clientId","BlockGroupToolbar","Fragment","Slot","group","Provider","value","name","BlockToolbar"],"sources":["@wordpress/block-editor/src/components/block-toolbar/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { useRef } from '@wordpress/element';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tgetBlockType,\n\thasBlockSupport,\n\tisReusableBlock,\n\tisTemplatePart,\n} from '@wordpress/blocks';\nimport { ToolbarGroup } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport BlockMover from '../block-mover';\nimport BlockParentSelector from '../block-parent-selector';\nimport BlockSwitcher from '../block-switcher';\nimport BlockControls from '../block-controls';\nimport __unstableBlockToolbarLastItem from './block-toolbar-last-item';\nimport BlockSettingsMenu from '../block-settings-menu';\nimport { BlockLockToolbar } from '../block-lock';\nimport { BlockGroupToolbar } from '../convert-to-group-buttons';\nimport BlockEditVisuallyButton from '../block-edit-visually-button';\nimport { useShowHoveredOrFocusedGestures } from './utils';\nimport { store as blockEditorStore } from '../../store';\nimport __unstableBlockNameContext from './block-name-context';\nimport NavigableToolbar from '../navigable-toolbar';\nimport { useHasAnyBlockControls } from '../block-controls/use-has-block-controls';\n\n/**\n * Renders the block toolbar.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-toolbar/README.md\n *\n * @param {Object} props Components props.\n * @param {boolean} props.hideDragHandle Show or hide the Drag Handle for drag and drop functionality.\n * @param {boolean} props.focusOnMount Focus the toolbar when mounted.\n * @param {number} props.__experimentalInitialIndex The initial index of the toolbar item to focus.\n * @param {Function} props.__experimentalOnIndexChange Callback function to be called when the index of the focused toolbar item changes.\n * @param {string} props.variant Style variant of the toolbar, also passed to the Dropdowns rendered from Block Toolbar Buttons.\n */\nexport function PrivateBlockToolbar( {\n\thideDragHandle,\n\tfocusOnMount,\n\t__experimentalInitialIndex,\n\t__experimentalOnIndexChange,\n\tvariant = 'unstyled',\n} ) {\n\tconst {\n\t\tblockClientId,\n\t\tblockClientIds,\n\t\tisDefaultEditingMode,\n\t\tblockType,\n\t\tshouldShowVisualToolbar,\n\t\tshowParentSelector,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetBlockName,\n\t\t\tgetBlockMode,\n\t\t\tgetBlockParents,\n\t\t\tgetSelectedBlockClientIds,\n\t\t\tisBlockValid,\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockEditingMode,\n\t\t} = select( blockEditorStore );\n\t\tconst selectedBlockClientIds = getSelectedBlockClientIds();\n\t\tconst selectedBlockClientId = selectedBlockClientIds[ 0 ];\n\t\tconst blockRootClientId = getBlockRootClientId( selectedBlockClientId );\n\t\tconst parents = getBlockParents( selectedBlockClientId );\n\t\tconst firstParentClientId = parents[ parents.length - 1 ];\n\t\tconst parentBlockName = getBlockName( firstParentClientId );\n\t\tconst parentBlockType = getBlockType( parentBlockName );\n\t\tconst _isDefaultEditingMode =\n\t\t\tgetBlockEditingMode( selectedBlockClientId ) === 'default';\n\t\tconst isValid = selectedBlockClientIds.every( ( id ) =>\n\t\t\tisBlockValid( id )\n\t\t);\n\t\tconst isVisual = selectedBlockClientIds.every(\n\t\t\t( id ) => getBlockMode( id ) === 'visual'\n\t\t);\n\t\treturn {\n\t\t\tblockClientId: selectedBlockClientId,\n\t\t\tblockClientIds: selectedBlockClientIds,\n\t\t\tisDefaultEditingMode: _isDefaultEditingMode,\n\t\t\tblockType:\n\t\t\t\tselectedBlockClientId &&\n\t\t\t\tgetBlockType( getBlockName( selectedBlockClientId ) ),\n\n\t\t\tshouldShowVisualToolbar: isValid && isVisual,\n\t\t\trootClientId: blockRootClientId,\n\t\t\tshowParentSelector:\n\t\t\t\tparentBlockType &&\n\t\t\t\tgetBlockEditingMode( firstParentClientId ) === 'default' &&\n\t\t\t\thasBlockSupport(\n\t\t\t\t\tparentBlockType,\n\t\t\t\t\t'__experimentalParentSelector',\n\t\t\t\t\ttrue\n\t\t\t\t) &&\n\t\t\t\tselectedBlockClientIds.length === 1 &&\n\t\t\t\t_isDefaultEditingMode,\n\t\t};\n\t}, [] );\n\n\tconst toolbarWrapperRef = useRef( null );\n\n\t// Handles highlighting the current block outline on hover or focus of the\n\t// block type toolbar area.\n\tconst nodeRef = useRef();\n\tconst showHoveredOrFocusedGestures = useShowHoveredOrFocusedGestures( {\n\t\tref: nodeRef,\n\t} );\n\n\tconst isLargeViewport = ! useViewportMatch( 'medium', '<' );\n\n\tconst isToolbarEnabled =\n\t\tblockType &&\n\t\thasBlockSupport( blockType, '__experimentalToolbar', true );\n\tconst hasAnyBlockControls = useHasAnyBlockControls();\n\n\tif (\n\t\t! isToolbarEnabled ||\n\t\t( ! isDefaultEditingMode && ! hasAnyBlockControls )\n\t) {\n\t\treturn null;\n\t}\n\n\tconst isMultiToolbar = blockClientIds.length > 1;\n\tconst isSynced =\n\t\tisReusableBlock( blockType ) || isTemplatePart( blockType );\n\n\t// Shifts the toolbar to make room for the parent block selector.\n\tconst classes = classnames( 'block-editor-block-contextual-toolbar', {\n\t\t'has-parent': showParentSelector,\n\t} );\n\n\tconst innerClasses = classnames( 'block-editor-block-toolbar', {\n\t\t'is-synced': isSynced,\n\t} );\n\n\treturn (\n\t\t<NavigableToolbar\n\t\t\tfocusEditorOnEscape\n\t\t\tclassName={ classes }\n\t\t\t/* translators: accessibility text for the block toolbar */\n\t\t\taria-label={ __( 'Block tools' ) }\n\t\t\t// The variant is applied as \"toolbar\" when undefined, which is the black border style of the dropdown from the toolbar popover.\n\t\t\tvariant={ variant === 'toolbar' ? undefined : variant }\n\t\t\tfocusOnMount={ focusOnMount }\n\t\t\t__experimentalInitialIndex={ __experimentalInitialIndex }\n\t\t\t__experimentalOnIndexChange={ __experimentalOnIndexChange }\n\t\t\t// Resets the index whenever the active block changes so\n\t\t\t// this is not persisted. See https://github.com/WordPress/gutenberg/pull/25760#issuecomment-717906169\n\t\t\tkey={ blockClientId }\n\t\t>\n\t\t\t<div ref={ toolbarWrapperRef } className={ innerClasses }>\n\t\t\t\t{ ! isMultiToolbar &&\n\t\t\t\t\tisLargeViewport &&\n\t\t\t\t\tisDefaultEditingMode && <BlockParentSelector /> }\n\t\t\t\t{ ( shouldShowVisualToolbar || isMultiToolbar ) &&\n\t\t\t\t\tisDefaultEditingMode && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ nodeRef }\n\t\t\t\t\t\t\t{ ...showHoveredOrFocusedGestures }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToolbarGroup className=\"block-editor-block-toolbar__block-controls\">\n\t\t\t\t\t\t\t\t<BlockSwitcher clientIds={ blockClientIds } />\n\t\t\t\t\t\t\t\t{ ! isMultiToolbar && (\n\t\t\t\t\t\t\t\t\t<BlockLockToolbar\n\t\t\t\t\t\t\t\t\t\tclientId={ blockClientId }\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\t<BlockMover\n\t\t\t\t\t\t\t\t\tclientIds={ blockClientIds }\n\t\t\t\t\t\t\t\t\thideDragHandle={ hideDragHandle }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t{ shouldShowVisualToolbar && isMultiToolbar && (\n\t\t\t\t\t<BlockGroupToolbar />\n\t\t\t\t) }\n\t\t\t\t{ shouldShowVisualToolbar && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"parent\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"block\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockControls.Slot className=\"block-editor-block-toolbar__slot\" />\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"inline\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"other\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<__unstableBlockNameContext.Provider\n\t\t\t\t\t\t\tvalue={ blockType?.name }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<__unstableBlockToolbarLastItem.Slot />\n\t\t\t\t\t\t</__unstableBlockNameContext.Provider>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t<BlockEditVisuallyButton clientIds={ blockClientIds } />\n\t\t\t\t{ isDefaultEditingMode && (\n\t\t\t\t\t<BlockSettingsMenu clientIds={ blockClientIds } />\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n\n/**\n * Renders the block toolbar.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-toolbar/README.md\n *\n * @param {Object} props Components props.\n * @param {boolean} props.hideDragHandle Show or hide the Drag Handle for drag and drop functionality.\n * @param {string} props.variant Style variant of the toolbar, also passed to the Dropdowns rendered from Block Toolbar Buttons.\n */\nexport default function BlockToolbar( { hideDragHandle, variant } ) {\n\treturn (\n\t\t<PrivateBlockToolbar\n\t\t\thideDragHandle={ hideDragHandle }\n\t\t\tvariant={ variant }\n\t\t\tfocusOnMount={ undefined }\n\t\t\t__experimentalInitialIndex={ undefined }\n\t\t\t__experimentalOnIndexChange={ undefined }\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
@@ -53,8 +53,6 @@ function BlockToolbarPopover({
53
53
  (0, _keyboardShortcuts.useShortcut)('core/block-editor/focus-toolbar', () => {
54
54
  isToolbarForced.current = true;
55
55
  stopTyping(true);
56
- }, {
57
- isDisabled: false
58
56
  });
59
57
  (0, _element.useEffect)(() => {
60
58
  isToolbarForced.current = false;
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_data","_element","_keyboardShortcuts","_blockPopover","_useBlockToolbarPopoverProps","_useSelectedBlockToolProps","_store","_blockToolbar","BlockToolbarPopover","clientId","isTyping","__unstableContentRef","capturingClientId","isInsertionPointVisible","lastClientId","useSelectedBlockToolProps","initialToolbarItemIndexRef","useRef","useEffect","current","undefined","stopTyping","useDispatch","blockEditorStore","isToolbarForced","useShortcut","isDisabled","popoverProps","useBlockToolbarPopoverProps","contentElement","_react","createElement","default","bottomClientId","className","classnames","resize","PrivateBlockToolbar","focusOnMount","__experimentalInitialIndex","__experimentalOnIndexChange","index","variant"],"sources":["@wordpress/block-editor/src/components/block-tools/block-toolbar-popover.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { useShortcut } from '@wordpress/keyboard-shortcuts';\n/**\n * Internal dependencies\n */\nimport BlockPopover from '../block-popover';\nimport useBlockToolbarPopoverProps from './use-block-toolbar-popover-props';\nimport useSelectedBlockToolProps from './use-selected-block-tool-props';\nimport { store as blockEditorStore } from '../../store';\nimport { PrivateBlockToolbar } from '../block-toolbar';\n\nexport default function BlockToolbarPopover( {\n\tclientId,\n\tisTyping,\n\t__unstableContentRef,\n} ) {\n\tconst { capturingClientId, isInsertionPointVisible, lastClientId } =\n\t\tuseSelectedBlockToolProps( clientId );\n\n\t// Stores the active toolbar item index so the block toolbar can return focus\n\t// to it when re-mounting.\n\tconst initialToolbarItemIndexRef = useRef();\n\n\tuseEffect( () => {\n\t\t// Resets the index whenever the active block changes so this is not\n\t\t// persisted. See https://github.com/WordPress/gutenberg/pull/25760#issuecomment-717906169\n\t\tinitialToolbarItemIndexRef.current = undefined;\n\t}, [ clientId ] );\n\n\tconst { stopTyping } = useDispatch( blockEditorStore );\n\tconst isToolbarForced = useRef( false );\n\n\tuseShortcut(\n\t\t'core/block-editor/focus-toolbar',\n\t\t() => {\n\t\t\tisToolbarForced.current = true;\n\t\t\tstopTyping( true );\n\t\t},\n\t\t{\n\t\t\tisDisabled: false,\n\t\t}\n\t);\n\n\tuseEffect( () => {\n\t\tisToolbarForced.current = false;\n\t} );\n\n\tconst popoverProps = useBlockToolbarPopoverProps( {\n\t\tcontentElement: __unstableContentRef?.current,\n\t\tclientId,\n\t} );\n\n\treturn (\n\t\t! isTyping && (\n\t\t\t<BlockPopover\n\t\t\t\tclientId={ capturingClientId || clientId }\n\t\t\t\tbottomClientId={ lastClientId }\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\t'block-editor-block-list__block-popover',\n\t\t\t\t\t{\n\t\t\t\t\t\t'is-insertion-point-visible': isInsertionPointVisible,\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t\tresize={ false }\n\t\t\t\t{ ...popoverProps }\n\t\t\t>\n\t\t\t\t<PrivateBlockToolbar\n\t\t\t\t\t// If the toolbar is being shown because of being forced\n\t\t\t\t\t// it should focus the toolbar right after the mount.\n\t\t\t\t\tfocusOnMount={ isToolbarForced.current }\n\t\t\t\t\t__experimentalInitialIndex={\n\t\t\t\t\t\tinitialToolbarItemIndexRef.current\n\t\t\t\t\t}\n\t\t\t\t\t__experimentalOnIndexChange={ ( index ) => {\n\t\t\t\t\t\tinitialToolbarItemIndexRef.current = index;\n\t\t\t\t\t} }\n\t\t\t\t\tvariant=\"toolbar\"\n\t\t\t\t/>\n\t\t\t</BlockPopover>\n\t\t)\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAIA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAH,OAAA;AAIA,IAAAI,aAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,4BAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,0BAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,aAAA,GAAAR,OAAA;AAjBA;AACA;AACA;;AAEA;AACA;AACA;;AAIA;AACA;AACA;;AAOe,SAASS,mBAAmBA,CAAE;EAC5CC,QAAQ;EACRC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,iBAAiB;IAAEC,uBAAuB;IAAEC;EAAa,CAAC,GACjE,IAAAC,kCAAyB,EAAEN,QAAS,CAAC;;EAEtC;EACA;EACA,MAAMO,0BAA0B,GAAG,IAAAC,eAAM,EAAC,CAAC;EAE3C,IAAAC,kBAAS,EAAE,MAAM;IAChB;IACA;IACAF,0BAA0B,CAACG,OAAO,GAAGC,SAAS;EAC/C,CAAC,EAAE,CAAEX,QAAQ,CAAG,CAAC;EAEjB,MAAM;IAAEY;EAAW,CAAC,GAAG,IAAAC,iBAAW,EAAEC,YAAiB,CAAC;EACtD,MAAMC,eAAe,GAAG,IAAAP,eAAM,EAAE,KAAM,CAAC;EAEvC,IAAAQ,8BAAW,EACV,iCAAiC,EACjC,MAAM;IACLD,eAAe,CAACL,OAAO,GAAG,IAAI;IAC9BE,UAAU,CAAE,IAAK,CAAC;EACnB,CAAC,EACD;IACCK,UAAU,EAAE;EACb,CACD,CAAC;EAED,IAAAR,kBAAS,EAAE,MAAM;IAChBM,eAAe,CAACL,OAAO,GAAG,KAAK;EAChC,CAAE,CAAC;EAEH,MAAMQ,YAAY,GAAG,IAAAC,oCAA2B,EAAE;IACjDC,cAAc,EAAElB,oBAAoB,EAAEQ,OAAO;IAC7CV;EACD,CAAE,CAAC;EAEH,OACC,CAAEC,QAAQ,IACT,IAAAoB,MAAA,CAAAC,aAAA,EAAC5B,aAAA,CAAA6B,OAAY;IACZvB,QAAQ,EAAGG,iBAAiB,IAAIH,QAAU;IAC1CwB,cAAc,EAAGnB,YAAc;IAC/BoB,SAAS,EAAG,IAAAC,mBAAU,EACrB,wCAAwC,EACxC;MACC,4BAA4B,EAAEtB;IAC/B,CACD,CAAG;IACHuB,MAAM,EAAG,KAAO;IAAA,GACXT;EAAY,GAEjB,IAAAG,MAAA,CAAAC,aAAA,EAACxB,aAAA,CAAA8B;EACA;EACA;EAAA;IACAC,YAAY,EAAGd,eAAe,CAACL,OAAS;IACxCoB,0BAA0B,EACzBvB,0BAA0B,CAACG,OAC3B;IACDqB,2BAA2B,EAAKC,KAAK,IAAM;MAC1CzB,0BAA0B,CAACG,OAAO,GAAGsB,KAAK;IAC3C,CAAG;IACHC,OAAO,EAAC;EAAS,CACjB,CACY,CACd;AAEH"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_data","_element","_keyboardShortcuts","_blockPopover","_useBlockToolbarPopoverProps","_useSelectedBlockToolProps","_store","_blockToolbar","BlockToolbarPopover","clientId","isTyping","__unstableContentRef","capturingClientId","isInsertionPointVisible","lastClientId","useSelectedBlockToolProps","initialToolbarItemIndexRef","useRef","useEffect","current","undefined","stopTyping","useDispatch","blockEditorStore","isToolbarForced","useShortcut","popoverProps","useBlockToolbarPopoverProps","contentElement","_react","createElement","default","bottomClientId","className","classnames","resize","PrivateBlockToolbar","focusOnMount","__experimentalInitialIndex","__experimentalOnIndexChange","index","variant"],"sources":["@wordpress/block-editor/src/components/block-tools/block-toolbar-popover.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { useShortcut } from '@wordpress/keyboard-shortcuts';\n/**\n * Internal dependencies\n */\nimport BlockPopover from '../block-popover';\nimport useBlockToolbarPopoverProps from './use-block-toolbar-popover-props';\nimport useSelectedBlockToolProps from './use-selected-block-tool-props';\nimport { store as blockEditorStore } from '../../store';\nimport { PrivateBlockToolbar } from '../block-toolbar';\n\nexport default function BlockToolbarPopover( {\n\tclientId,\n\tisTyping,\n\t__unstableContentRef,\n} ) {\n\tconst { capturingClientId, isInsertionPointVisible, lastClientId } =\n\t\tuseSelectedBlockToolProps( clientId );\n\n\t// Stores the active toolbar item index so the block toolbar can return focus\n\t// to it when re-mounting.\n\tconst initialToolbarItemIndexRef = useRef();\n\n\tuseEffect( () => {\n\t\t// Resets the index whenever the active block changes so this is not\n\t\t// persisted. See https://github.com/WordPress/gutenberg/pull/25760#issuecomment-717906169\n\t\tinitialToolbarItemIndexRef.current = undefined;\n\t}, [ clientId ] );\n\n\tconst { stopTyping } = useDispatch( blockEditorStore );\n\tconst isToolbarForced = useRef( false );\n\n\tuseShortcut( 'core/block-editor/focus-toolbar', () => {\n\t\tisToolbarForced.current = true;\n\t\tstopTyping( true );\n\t} );\n\n\tuseEffect( () => {\n\t\tisToolbarForced.current = false;\n\t} );\n\n\tconst popoverProps = useBlockToolbarPopoverProps( {\n\t\tcontentElement: __unstableContentRef?.current,\n\t\tclientId,\n\t} );\n\n\treturn (\n\t\t! isTyping && (\n\t\t\t<BlockPopover\n\t\t\t\tclientId={ capturingClientId || clientId }\n\t\t\t\tbottomClientId={ lastClientId }\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\t'block-editor-block-list__block-popover',\n\t\t\t\t\t{\n\t\t\t\t\t\t'is-insertion-point-visible': isInsertionPointVisible,\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t\tresize={ false }\n\t\t\t\t{ ...popoverProps }\n\t\t\t>\n\t\t\t\t<PrivateBlockToolbar\n\t\t\t\t\t// If the toolbar is being shown because of being forced\n\t\t\t\t\t// it should focus the toolbar right after the mount.\n\t\t\t\t\tfocusOnMount={ isToolbarForced.current }\n\t\t\t\t\t__experimentalInitialIndex={\n\t\t\t\t\t\tinitialToolbarItemIndexRef.current\n\t\t\t\t\t}\n\t\t\t\t\t__experimentalOnIndexChange={ ( index ) => {\n\t\t\t\t\t\tinitialToolbarItemIndexRef.current = index;\n\t\t\t\t\t} }\n\t\t\t\t\tvariant=\"toolbar\"\n\t\t\t\t/>\n\t\t\t</BlockPopover>\n\t\t)\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAIA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAH,OAAA;AAIA,IAAAI,aAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,4BAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,0BAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,aAAA,GAAAR,OAAA;AAjBA;AACA;AACA;;AAEA;AACA;AACA;;AAIA;AACA;AACA;;AAOe,SAASS,mBAAmBA,CAAE;EAC5CC,QAAQ;EACRC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,iBAAiB;IAAEC,uBAAuB;IAAEC;EAAa,CAAC,GACjE,IAAAC,kCAAyB,EAAEN,QAAS,CAAC;;EAEtC;EACA;EACA,MAAMO,0BAA0B,GAAG,IAAAC,eAAM,EAAC,CAAC;EAE3C,IAAAC,kBAAS,EAAE,MAAM;IAChB;IACA;IACAF,0BAA0B,CAACG,OAAO,GAAGC,SAAS;EAC/C,CAAC,EAAE,CAAEX,QAAQ,CAAG,CAAC;EAEjB,MAAM;IAAEY;EAAW,CAAC,GAAG,IAAAC,iBAAW,EAAEC,YAAiB,CAAC;EACtD,MAAMC,eAAe,GAAG,IAAAP,eAAM,EAAE,KAAM,CAAC;EAEvC,IAAAQ,8BAAW,EAAE,iCAAiC,EAAE,MAAM;IACrDD,eAAe,CAACL,OAAO,GAAG,IAAI;IAC9BE,UAAU,CAAE,IAAK,CAAC;EACnB,CAAE,CAAC;EAEH,IAAAH,kBAAS,EAAE,MAAM;IAChBM,eAAe,CAACL,OAAO,GAAG,KAAK;EAChC,CAAE,CAAC;EAEH,MAAMO,YAAY,GAAG,IAAAC,oCAA2B,EAAE;IACjDC,cAAc,EAAEjB,oBAAoB,EAAEQ,OAAO;IAC7CV;EACD,CAAE,CAAC;EAEH,OACC,CAAEC,QAAQ,IACT,IAAAmB,MAAA,CAAAC,aAAA,EAAC3B,aAAA,CAAA4B,OAAY;IACZtB,QAAQ,EAAGG,iBAAiB,IAAIH,QAAU;IAC1CuB,cAAc,EAAGlB,YAAc;IAC/BmB,SAAS,EAAG,IAAAC,mBAAU,EACrB,wCAAwC,EACxC;MACC,4BAA4B,EAAErB;IAC/B,CACD,CAAG;IACHsB,MAAM,EAAG,KAAO;IAAA,GACXT;EAAY,GAEjB,IAAAG,MAAA,CAAAC,aAAA,EAACvB,aAAA,CAAA6B;EACA;EACA;EAAA;IACAC,YAAY,EAAGb,eAAe,CAACL,OAAS;IACxCmB,0BAA0B,EACzBtB,0BAA0B,CAACG,OAC3B;IACDoB,2BAA2B,EAAKC,KAAK,IAAM;MAC1CxB,0BAA0B,CAACG,OAAO,GAAGqB,KAAK;IAC3C,CAAG;IACHC,OAAO,EAAC;EAAS,CACjB,CACY,CACd;AAEH"}
@@ -81,6 +81,29 @@ function VariationsDropdown({
81
81
  onSelect: onSelectVariation
82
82
  }))));
83
83
  }
84
+ function VariationsToggleGroupControl({
85
+ className,
86
+ onSelectVariation,
87
+ selectedValue,
88
+ variations
89
+ }) {
90
+ return (0, _react.createElement)("div", {
91
+ className: className
92
+ }, (0, _react.createElement)(_components.__experimentalToggleGroupControl, {
93
+ label: (0, _i18n.__)('Transform to variation'),
94
+ value: selectedValue,
95
+ hideLabelFromVision: true,
96
+ onChange: onSelectVariation,
97
+ __next40pxDefaultSize: true,
98
+ __nextHasNoMarginBottom: true
99
+ }, variations.map(variation => (0, _react.createElement)(_components.__experimentalToggleGroupControlOptionIcon, {
100
+ key: variation.name,
101
+ icon: variation.icon,
102
+ value: variation.name,
103
+ label: selectedValue === variation.name ? variation.title : (0, _i18n.sprintf)( /* translators: %s: Name of the block variation */
104
+ (0, _i18n.__)('Transform to %s'), variation.title)
105
+ }))));
106
+ }
84
107
  function __experimentalBlockVariationTransforms({
85
108
  blockClientId
86
109
  }) {
@@ -127,11 +150,15 @@ function __experimentalBlockVariationTransforms({
127
150
  }) => name === variationName).attributes
128
151
  });
129
152
  };
130
- const baseClass = 'block-editor-block-variation-transforms';
131
153
 
132
154
  // Skip rendering if there are no variations
133
155
  if (!variations?.length) return null;
134
- const Component = hasUniqueIcons ? VariationsButtons : VariationsDropdown;
156
+ const baseClass = 'block-editor-block-variation-transforms';
157
+
158
+ // Show buttons if there are more than 5 variations because the ToggleGroupControl does not wrap
159
+ const showButtons = variations.length > 5;
160
+ const ButtonComponent = showButtons ? VariationsButtons : VariationsToggleGroupControl;
161
+ const Component = hasUniqueIcons ? ButtonComponent : VariationsDropdown;
135
162
  return (0, _react.createElement)(Component, {
136
163
  className: baseClass,
137
164
  onSelectVariation: onSelectVariation,
@@ -1 +1 @@
1
- {"version":3,"names":["_blocks","require","_i18n","_components","_data","_element","_icons","_blockIcon","_interopRequireDefault","_store","VariationsButtons","className","onSelectVariation","selectedValue","variations","_react","createElement","VisuallyHidden","as","__","map","variation","Button","key","name","icon","default","showColors","isPressed","label","title","sprintf","onClick","showTooltip","VariationsDropdown","selectOptions","description","value","info","DropdownMenu","text","popoverProps","position","chevronDown","toggleProps","iconPosition","MenuGroup","MenuItemsChoice","choices","onSelect","__experimentalBlockVariationTransforms","blockClientId","updateBlockAttributes","useDispatch","blockEditorStore","activeBlockVariation","useSelect","select","getActiveBlockVariation","getBlockVariations","blocksStore","getBlockName","getBlockAttributes","hasUniqueIcons","useMemo","variationIcons","Set","forEach","add","src","size","length","variationName","find","attributes","baseClass","Component","_default","exports"],"sources":["@wordpress/block-editor/src/components/block-variation-transforms/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as blocksStore } from '@wordpress/blocks';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tButton,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItemsChoice,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport { chevronDown } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport BlockIcon from '../block-icon';\nimport { store as blockEditorStore } from '../../store';\n\nfunction VariationsButtons( {\n\tclassName,\n\tonSelectVariation,\n\tselectedValue,\n\tvariations,\n} ) {\n\treturn (\n\t\t<fieldset className={ className }>\n\t\t\t<VisuallyHidden as=\"legend\">\n\t\t\t\t{ __( 'Transform to variation' ) }\n\t\t\t</VisuallyHidden>\n\t\t\t{ variations.map( ( variation ) => (\n\t\t\t\t<Button\n\t\t\t\t\tkey={ variation.name }\n\t\t\t\t\ticon={ <BlockIcon icon={ variation.icon } showColors /> }\n\t\t\t\t\tisPressed={ selectedValue === variation.name }\n\t\t\t\t\tlabel={\n\t\t\t\t\t\tselectedValue === variation.name\n\t\t\t\t\t\t\t? variation.title\n\t\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %s: Name of the block variation */\n\t\t\t\t\t\t\t\t\t__( 'Transform to %s' ),\n\t\t\t\t\t\t\t\t\tvariation.title\n\t\t\t\t\t\t\t )\n\t\t\t\t\t}\n\t\t\t\t\tonClick={ () => onSelectVariation( variation.name ) }\n\t\t\t\t\taria-label={ variation.title }\n\t\t\t\t\tshowTooltip\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</fieldset>\n\t);\n}\n\nfunction VariationsDropdown( {\n\tclassName,\n\tonSelectVariation,\n\tselectedValue,\n\tvariations,\n} ) {\n\tconst selectOptions = variations.map(\n\t\t( { name, title, description } ) => ( {\n\t\t\tvalue: name,\n\t\t\tlabel: title,\n\t\t\tinfo: description,\n\t\t} )\n\t);\n\n\treturn (\n\t\t<DropdownMenu\n\t\t\tclassName={ className }\n\t\t\tlabel={ __( 'Transform to variation' ) }\n\t\t\ttext={ __( 'Transform to variation' ) }\n\t\t\tpopoverProps={ {\n\t\t\t\tposition: 'bottom center',\n\t\t\t\tclassName: `${ className }__popover`,\n\t\t\t} }\n\t\t\ticon={ chevronDown }\n\t\t\ttoggleProps={ { iconPosition: 'right' } }\n\t\t>\n\t\t\t{ () => (\n\t\t\t\t<div className={ `${ className }__container` }>\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t<MenuItemsChoice\n\t\t\t\t\t\t\tchoices={ selectOptions }\n\t\t\t\t\t\t\tvalue={ selectedValue }\n\t\t\t\t\t\t\tonSelect={ onSelectVariation }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</MenuGroup>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</DropdownMenu>\n\t);\n}\n\nfunction __experimentalBlockVariationTransforms( { blockClientId } ) {\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\tconst { activeBlockVariation, variations } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveBlockVariation, getBlockVariations } =\n\t\t\t\tselect( blocksStore );\n\t\t\tconst { getBlockName, getBlockAttributes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst name = blockClientId && getBlockName( blockClientId );\n\t\t\treturn {\n\t\t\t\tactiveBlockVariation: getActiveBlockVariation(\n\t\t\t\t\tname,\n\t\t\t\t\tgetBlockAttributes( blockClientId )\n\t\t\t\t),\n\t\t\t\tvariations: name && getBlockVariations( name, 'transform' ),\n\t\t\t};\n\t\t},\n\t\t[ blockClientId ]\n\t);\n\n\tconst selectedValue = activeBlockVariation?.name;\n\n\t// Check if each variation has a unique icon.\n\tconst hasUniqueIcons = useMemo( () => {\n\t\tconst variationIcons = new Set();\n\t\tif ( ! variations ) {\n\t\t\treturn false;\n\t\t}\n\t\tvariations.forEach( ( variation ) => {\n\t\t\tif ( variation.icon ) {\n\t\t\t\tvariationIcons.add( variation.icon?.src || variation.icon );\n\t\t\t}\n\t\t} );\n\t\treturn variationIcons.size === variations.length;\n\t}, [ variations ] );\n\n\tconst onSelectVariation = ( variationName ) => {\n\t\tupdateBlockAttributes( blockClientId, {\n\t\t\t...variations.find( ( { name } ) => name === variationName )\n\t\t\t\t.attributes,\n\t\t} );\n\t};\n\n\tconst baseClass = 'block-editor-block-variation-transforms';\n\n\t// Skip rendering if there are no variations\n\tif ( ! variations?.length ) return null;\n\n\tconst Component = hasUniqueIcons ? VariationsButtons : VariationsDropdown;\n\n\treturn (\n\t\t<Component\n\t\t\tclassName={ baseClass }\n\t\t\tonSelectVariation={ onSelectVariation }\n\t\t\tselectedValue={ selectedValue }\n\t\t\tvariations={ variations }\n\t\t/>\n\t);\n}\n\nexport default __experimentalBlockVariationTransforms;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_blocks","require","_i18n","_components","_data","_element","_icons","_blockIcon","_interopRequireDefault","_store","VariationsButtons","className","onSelectVariation","selectedValue","variations","_react","createElement","VisuallyHidden","as","__","map","variation","Button","key","name","icon","default","showColors","isPressed","label","title","sprintf","onClick","showTooltip","VariationsDropdown","selectOptions","description","value","info","DropdownMenu","text","popoverProps","position","chevronDown","toggleProps","iconPosition","MenuGroup","MenuItemsChoice","choices","onSelect","VariationsToggleGroupControl","__experimentalToggleGroupControl","hideLabelFromVision","onChange","__next40pxDefaultSize","__nextHasNoMarginBottom","__experimentalToggleGroupControlOptionIcon","__experimentalBlockVariationTransforms","blockClientId","updateBlockAttributes","useDispatch","blockEditorStore","activeBlockVariation","useSelect","select","getActiveBlockVariation","getBlockVariations","blocksStore","getBlockName","getBlockAttributes","hasUniqueIcons","useMemo","variationIcons","Set","forEach","add","src","size","length","variationName","find","attributes","baseClass","showButtons","ButtonComponent","Component","_default","exports"],"sources":["@wordpress/block-editor/src/components/block-variation-transforms/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as blocksStore } from '@wordpress/blocks';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tButton,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItemsChoice,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOptionIcon as ToggleGroupControlOptionIcon,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport { chevronDown } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport BlockIcon from '../block-icon';\nimport { store as blockEditorStore } from '../../store';\n\nfunction VariationsButtons( {\n\tclassName,\n\tonSelectVariation,\n\tselectedValue,\n\tvariations,\n} ) {\n\treturn (\n\t\t<fieldset className={ className }>\n\t\t\t<VisuallyHidden as=\"legend\">\n\t\t\t\t{ __( 'Transform to variation' ) }\n\t\t\t</VisuallyHidden>\n\t\t\t{ variations.map( ( variation ) => (\n\t\t\t\t<Button\n\t\t\t\t\tkey={ variation.name }\n\t\t\t\t\ticon={ <BlockIcon icon={ variation.icon } showColors /> }\n\t\t\t\t\tisPressed={ selectedValue === variation.name }\n\t\t\t\t\tlabel={\n\t\t\t\t\t\tselectedValue === variation.name\n\t\t\t\t\t\t\t? variation.title\n\t\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %s: Name of the block variation */\n\t\t\t\t\t\t\t\t\t__( 'Transform to %s' ),\n\t\t\t\t\t\t\t\t\tvariation.title\n\t\t\t\t\t\t\t )\n\t\t\t\t\t}\n\t\t\t\t\tonClick={ () => onSelectVariation( variation.name ) }\n\t\t\t\t\taria-label={ variation.title }\n\t\t\t\t\tshowTooltip\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</fieldset>\n\t);\n}\n\nfunction VariationsDropdown( {\n\tclassName,\n\tonSelectVariation,\n\tselectedValue,\n\tvariations,\n} ) {\n\tconst selectOptions = variations.map(\n\t\t( { name, title, description } ) => ( {\n\t\t\tvalue: name,\n\t\t\tlabel: title,\n\t\t\tinfo: description,\n\t\t} )\n\t);\n\n\treturn (\n\t\t<DropdownMenu\n\t\t\tclassName={ className }\n\t\t\tlabel={ __( 'Transform to variation' ) }\n\t\t\ttext={ __( 'Transform to variation' ) }\n\t\t\tpopoverProps={ {\n\t\t\t\tposition: 'bottom center',\n\t\t\t\tclassName: `${ className }__popover`,\n\t\t\t} }\n\t\t\ticon={ chevronDown }\n\t\t\ttoggleProps={ { iconPosition: 'right' } }\n\t\t>\n\t\t\t{ () => (\n\t\t\t\t<div className={ `${ className }__container` }>\n\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t<MenuItemsChoice\n\t\t\t\t\t\t\tchoices={ selectOptions }\n\t\t\t\t\t\t\tvalue={ selectedValue }\n\t\t\t\t\t\t\tonSelect={ onSelectVariation }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</MenuGroup>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</DropdownMenu>\n\t);\n}\n\nfunction VariationsToggleGroupControl( {\n\tclassName,\n\tonSelectVariation,\n\tselectedValue,\n\tvariations,\n} ) {\n\treturn (\n\t\t<div className={ className }>\n\t\t\t<ToggleGroupControl\n\t\t\t\tlabel={ __( 'Transform to variation' ) }\n\t\t\t\tvalue={ selectedValue }\n\t\t\t\thideLabelFromVision\n\t\t\t\tonChange={ onSelectVariation }\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t>\n\t\t\t\t{ variations.map( ( variation ) => (\n\t\t\t\t\t<ToggleGroupControlOptionIcon\n\t\t\t\t\t\tkey={ variation.name }\n\t\t\t\t\t\ticon={ variation.icon }\n\t\t\t\t\t\tvalue={ variation.name }\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\tselectedValue === variation.name\n\t\t\t\t\t\t\t\t? variation.title\n\t\t\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t\t\t/* translators: %s: Name of the block variation */\n\t\t\t\t\t\t\t\t\t\t__( 'Transform to %s' ),\n\t\t\t\t\t\t\t\t\t\tvariation.title\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ToggleGroupControl>\n\t\t</div>\n\t);\n}\n\nfunction __experimentalBlockVariationTransforms( { blockClientId } ) {\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\tconst { activeBlockVariation, variations } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveBlockVariation, getBlockVariations } =\n\t\t\t\tselect( blocksStore );\n\t\t\tconst { getBlockName, getBlockAttributes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst name = blockClientId && getBlockName( blockClientId );\n\t\t\treturn {\n\t\t\t\tactiveBlockVariation: getActiveBlockVariation(\n\t\t\t\t\tname,\n\t\t\t\t\tgetBlockAttributes( blockClientId )\n\t\t\t\t),\n\t\t\t\tvariations: name && getBlockVariations( name, 'transform' ),\n\t\t\t};\n\t\t},\n\t\t[ blockClientId ]\n\t);\n\n\tconst selectedValue = activeBlockVariation?.name;\n\n\t// Check if each variation has a unique icon.\n\tconst hasUniqueIcons = useMemo( () => {\n\t\tconst variationIcons = new Set();\n\t\tif ( ! variations ) {\n\t\t\treturn false;\n\t\t}\n\t\tvariations.forEach( ( variation ) => {\n\t\t\tif ( variation.icon ) {\n\t\t\t\tvariationIcons.add( variation.icon?.src || variation.icon );\n\t\t\t}\n\t\t} );\n\t\treturn variationIcons.size === variations.length;\n\t}, [ variations ] );\n\n\tconst onSelectVariation = ( variationName ) => {\n\t\tupdateBlockAttributes( blockClientId, {\n\t\t\t...variations.find( ( { name } ) => name === variationName )\n\t\t\t\t.attributes,\n\t\t} );\n\t};\n\n\t// Skip rendering if there are no variations\n\tif ( ! variations?.length ) return null;\n\n\tconst baseClass = 'block-editor-block-variation-transforms';\n\n\t// Show buttons if there are more than 5 variations because the ToggleGroupControl does not wrap\n\tconst showButtons = variations.length > 5;\n\n\tconst ButtonComponent = showButtons\n\t\t? VariationsButtons\n\t\t: VariationsToggleGroupControl;\n\n\tconst Component = hasUniqueIcons ? ButtonComponent : VariationsDropdown;\n\n\treturn (\n\t\t<Component\n\t\t\tclassName={ baseClass }\n\t\t\tonSelectVariation={ onSelectVariation }\n\t\t\tselectedValue={ selectedValue }\n\t\t\tvariations={ variations }\n\t\t/>\n\t);\n}\n\nexport default __experimentalBlockVariationTransforms;\n"],"mappings":"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"}
@@ -22,7 +22,7 @@ function LinkedButton({
22
22
  }, (0, _react.createElement)(_components.Button, {
23
23
  ...props,
24
24
  className: "component-border-radius-control__linked-button",
25
- isSmall: true,
25
+ size: "small",
26
26
  icon: isLinked ? _icons.link : _icons.linkOff,
27
27
  iconSize: 24,
28
28
  "aria-label": label
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_icons","_i18n","LinkedButton","isLinked","props","label","__","_react","createElement","Tooltip","text","Button","className","isSmall","icon","link","linkOff","iconSize"],"sources":["@wordpress/block-editor/src/components/border-radius-control/linked-button.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, Tooltip } from '@wordpress/components';\nimport { link, linkOff } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\nexport default function LinkedButton( { isLinked, ...props } ) {\n\tconst label = isLinked ? __( 'Unlink radii' ) : __( 'Link radii' );\n\n\treturn (\n\t\t<Tooltip text={ label }>\n\t\t\t<Button\n\t\t\t\t{ ...props }\n\t\t\t\tclassName=\"component-border-radius-control__linked-button\"\n\t\t\t\tisSmall\n\t\t\t\ticon={ isLinked ? link : linkOff }\n\t\t\t\ticonSize={ 24 }\n\t\t\t\taria-label={ label }\n\t\t\t/>\n\t\t</Tooltip>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AALA;AACA;AACA;;AAKe,SAASG,YAAYA,CAAE;EAAEC,QAAQ;EAAE,GAAGC;AAAM,CAAC,EAAG;EAC9D,MAAMC,KAAK,GAAGF,QAAQ,GAAG,IAAAG,QAAE,EAAE,cAAe,CAAC,GAAG,IAAAA,QAAE,EAAE,YAAa,CAAC;EAElE,OACC,IAAAC,MAAA,CAAAC,aAAA,EAACV,WAAA,CAAAW,OAAO;IAACC,IAAI,EAAGL;EAAO,GACtB,IAAAE,MAAA,CAAAC,aAAA,EAACV,WAAA,CAAAa,MAAM;IAAA,GACDP,KAAK;IACVQ,SAAS,EAAC,gDAAgD;IAC1DC,OAAO;IACPC,IAAI,EAAGX,QAAQ,GAAGY,WAAI,GAAGC,cAAS;IAClCC,QAAQ,EAAG,EAAI;IACf,cAAaZ;EAAO,CACpB,CACO,CAAC;AAEZ"}
1
+ {"version":3,"names":["_components","require","_icons","_i18n","LinkedButton","isLinked","props","label","__","_react","createElement","Tooltip","text","Button","className","size","icon","link","linkOff","iconSize"],"sources":["@wordpress/block-editor/src/components/border-radius-control/linked-button.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, Tooltip } from '@wordpress/components';\nimport { link, linkOff } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\nexport default function LinkedButton( { isLinked, ...props } ) {\n\tconst label = isLinked ? __( 'Unlink radii' ) : __( 'Link radii' );\n\n\treturn (\n\t\t<Tooltip text={ label }>\n\t\t\t<Button\n\t\t\t\t{ ...props }\n\t\t\t\tclassName=\"component-border-radius-control__linked-button\"\n\t\t\t\tsize=\"small\"\n\t\t\t\ticon={ isLinked ? link : linkOff }\n\t\t\t\ticonSize={ 24 }\n\t\t\t\taria-label={ label }\n\t\t\t/>\n\t\t</Tooltip>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AALA;AACA;AACA;;AAKe,SAASG,YAAYA,CAAE;EAAEC,QAAQ;EAAE,GAAGC;AAAM,CAAC,EAAG;EAC9D,MAAMC,KAAK,GAAGF,QAAQ,GAAG,IAAAG,QAAE,EAAE,cAAe,CAAC,GAAG,IAAAA,QAAE,EAAE,YAAa,CAAC;EAElE,OACC,IAAAC,MAAA,CAAAC,aAAA,EAACV,WAAA,CAAAW,OAAO;IAACC,IAAI,EAAGL;EAAO,GACtB,IAAAE,MAAA,CAAAC,aAAA,EAACV,WAAA,CAAAa,MAAM;IAAA,GACDP,KAAK;IACVQ,SAAS,EAAC,gDAAgD;IAC1DC,IAAI,EAAC,OAAO;IACZC,IAAI,EAAGX,QAAQ,GAAGY,WAAI,GAAGC,cAAS;IAClCC,QAAQ,EAAG,EAAI;IACf,cAAaZ;EAAO,CACpB,CACO,CAAC;AAEZ"}