@wordpress/block-editor 13.4.0 → 14.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (533) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +20 -15
  3. package/build/autocompleters/block.js +1 -1
  4. package/build/autocompleters/block.js.map +1 -1
  5. package/build/components/block-breadcrumb/index.js +3 -1
  6. package/build/components/block-breadcrumb/index.js.map +1 -1
  7. package/build/components/block-draggable/index.js +2 -2
  8. package/build/components/block-draggable/index.js.map +1 -1
  9. package/build/components/block-list/use-block-props/index.js +2 -2
  10. package/build/components/block-list/use-block-props/index.js.map +1 -1
  11. package/build/components/block-list/use-block-props/use-block-refs.js +24 -32
  12. package/build/components/block-list/use-block-props/use-block-refs.js.map +1 -1
  13. package/build/components/block-list/use-in-between-inserter.js +11 -4
  14. package/build/components/block-list/use-in-between-inserter.js.map +1 -1
  15. package/build/components/block-mover/index.js +1 -2
  16. package/build/components/block-mover/index.js.map +1 -1
  17. package/build/components/block-popover/cover.js +1 -1
  18. package/build/components/block-popover/cover.js.map +1 -1
  19. package/build/components/block-popover/inbetween.js +2 -2
  20. package/build/components/block-popover/inbetween.js.map +1 -1
  21. package/build/components/block-popover/index.js +2 -2
  22. package/build/components/block-popover/index.js.map +1 -1
  23. package/build/components/block-settings-menu/block-mode-toggle.js +28 -34
  24. package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  25. package/build/components/block-tools/block-selection-button.js +1 -2
  26. package/build/components/block-tools/block-selection-button.js.map +1 -1
  27. package/build/components/block-tools/index.js +1 -1
  28. package/build/components/block-tools/index.js.map +1 -1
  29. package/build/components/block-tools/insertion-point.js +14 -3
  30. package/build/components/block-tools/insertion-point.js.map +1 -1
  31. package/build/components/block-tools/use-block-toolbar-popover-props.js +1 -1
  32. package/build/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  33. package/build/components/block-tools/use-show-block-tools.js +2 -1
  34. package/build/components/block-tools/use-show-block-tools.js.map +1 -1
  35. package/build/components/block-tools/zoom-out-mode-inserters.js +22 -19
  36. package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  37. package/build/components/block-tools/zoom-out-toolbar.js +0 -1
  38. package/build/components/block-tools/zoom-out-toolbar.js.map +1 -1
  39. package/build/components/border-radius-control/index.js +1 -0
  40. package/build/components/border-radius-control/index.js.map +1 -1
  41. package/build/components/child-layout-control/index.js +3 -1
  42. package/build/components/child-layout-control/index.js.map +1 -1
  43. package/build/components/convert-to-group-buttons/index.js +1 -1
  44. package/build/components/convert-to-group-buttons/index.js.map +1 -1
  45. package/build/components/date-format-picker/index.js +2 -0
  46. package/build/components/date-format-picker/index.js.map +1 -1
  47. package/build/components/dimensions-tool/scale-tool.js +1 -0
  48. package/build/components/dimensions-tool/scale-tool.js.map +1 -1
  49. package/build/components/font-appearance-control/index.js +3 -0
  50. package/build/components/font-appearance-control/index.js.map +1 -1
  51. package/build/components/font-family/index.js +15 -0
  52. package/build/components/font-family/index.js.map +1 -1
  53. package/build/components/global-styles/background-panel.js +153 -77
  54. package/build/components/global-styles/background-panel.js.map +1 -1
  55. package/build/components/global-styles/get-global-styles-changes.js +3 -1
  56. package/build/components/global-styles/get-global-styles-changes.js.map +1 -1
  57. package/build/components/global-styles/hooks.js +0 -7
  58. package/build/components/global-styles/hooks.js.map +1 -1
  59. package/build/components/global-styles/image-settings-panel.js +1 -0
  60. package/build/components/global-styles/image-settings-panel.js.map +1 -1
  61. package/build/components/global-styles/index.js +0 -6
  62. package/build/components/global-styles/index.js.map +1 -1
  63. package/build/components/global-styles/typography-panel.js +0 -1
  64. package/build/components/global-styles/typography-panel.js.map +1 -1
  65. package/build/components/global-styles/use-global-styles-output.js +59 -40
  66. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  67. package/build/components/global-styles/utils.js +80 -0
  68. package/build/components/global-styles/utils.js.map +1 -1
  69. package/build/components/grid/grid-item-movers.js +30 -26
  70. package/build/components/grid/grid-item-movers.js.map +1 -1
  71. package/build/components/grid/grid-item-resizer.js +14 -15
  72. package/build/components/grid/grid-item-resizer.js.map +1 -1
  73. package/build/components/grid/grid-visualizer.js +21 -6
  74. package/build/components/grid/grid-visualizer.js.map +1 -1
  75. package/build/components/grid/use-grid-layout-sync.js +56 -20
  76. package/build/components/grid/use-grid-layout-sync.js.map +1 -1
  77. package/build/components/height-control/index.js +1 -0
  78. package/build/components/height-control/index.js.map +1 -1
  79. package/build/components/iframe/index.js +2 -4
  80. package/build/components/iframe/index.js.map +1 -1
  81. package/build/components/image-editor/zoom-dropdown.js +11 -7
  82. package/build/components/image-editor/zoom-dropdown.js.map +1 -1
  83. package/build/components/inner-blocks/button-block-appender.js +8 -8
  84. package/build/components/inner-blocks/button-block-appender.js.map +1 -1
  85. package/build/components/inner-blocks/default-block-appender.js +7 -25
  86. package/build/components/inner-blocks/default-block-appender.js.map +1 -1
  87. package/build/components/inner-blocks/index.js +9 -11
  88. package/build/components/inner-blocks/index.js.map +1 -1
  89. package/build/components/inserter/category-tabs/index.js +29 -2
  90. package/build/components/inserter/category-tabs/index.js.map +1 -1
  91. package/build/components/inserter/library.js +4 -2
  92. package/build/components/inserter/library.js.map +1 -1
  93. package/build/components/inserter/menu.js +32 -14
  94. package/build/components/inserter/menu.js.map +1 -1
  95. package/build/components/inserter/quick-inserter.js +4 -0
  96. package/build/components/inserter/quick-inserter.js.map +1 -1
  97. package/build/components/line-height-control/index.js +3 -15
  98. package/build/components/line-height-control/index.js.map +1 -1
  99. package/build/components/link-control/search-input.js +0 -1
  100. package/build/components/link-control/search-input.js.map +1 -1
  101. package/build/components/media-placeholder/index.js +9 -4
  102. package/build/components/media-placeholder/index.js.map +1 -1
  103. package/build/components/media-replace-flow/index.js +3 -1
  104. package/build/components/media-replace-flow/index.js.map +1 -1
  105. package/build/components/media-upload/index.native.js +4 -1
  106. package/build/components/media-upload/index.native.js.map +1 -1
  107. package/build/components/multi-selection-inspector/index.js +12 -12
  108. package/build/components/multi-selection-inspector/index.js.map +1 -1
  109. package/build/components/resolution-tool/index.js +1 -0
  110. package/build/components/resolution-tool/index.js.map +1 -1
  111. package/build/components/skip-to-selected-block/index.js +4 -2
  112. package/build/components/skip-to-selected-block/index.js.map +1 -1
  113. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +8 -8
  114. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  115. package/build/components/text-alignment-control/index.js +13 -8
  116. package/build/components/text-alignment-control/index.js.map +1 -1
  117. package/build/components/text-decoration-control/index.js +13 -8
  118. package/build/components/text-decoration-control/index.js.map +1 -1
  119. package/build/components/text-transform-control/index.js +13 -8
  120. package/build/components/text-transform-control/index.js.map +1 -1
  121. package/build/components/url-input/button.js +0 -1
  122. package/build/components/url-input/button.js.map +1 -1
  123. package/build/components/url-input/index.js +1 -11
  124. package/build/components/url-input/index.js.map +1 -1
  125. package/build/components/url-popover/image-url-input-ui.js +2 -0
  126. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  127. package/build/components/url-popover/link-editor.js +0 -1
  128. package/build/components/url-popover/link-editor.js.map +1 -1
  129. package/build/components/use-block-drop-zone/index.js +42 -4
  130. package/build/components/use-block-drop-zone/index.js.map +1 -1
  131. package/build/components/use-on-block-drop/index.js +3 -6
  132. package/build/components/use-on-block-drop/index.js.map +1 -1
  133. package/build/components/use-resize-canvas/index.js +1 -3
  134. package/build/components/use-resize-canvas/index.js.map +1 -1
  135. package/build/components/use-settings/index.js +2 -1
  136. package/build/components/use-settings/index.js.map +1 -1
  137. package/build/components/writing-mode-control/index.js +13 -8
  138. package/build/components/writing-mode-control/index.js.map +1 -1
  139. package/build/hooks/background.js +19 -23
  140. package/build/hooks/background.js.map +1 -1
  141. package/build/hooks/block-bindings.js +209 -39
  142. package/build/hooks/block-bindings.js.map +1 -1
  143. package/build/hooks/block-hooks.js +1 -0
  144. package/build/hooks/block-hooks.js.map +1 -1
  145. package/build/hooks/block-style-variation.js +2 -2
  146. package/build/hooks/block-style-variation.js.map +1 -1
  147. package/build/hooks/contrast-checker.js +6 -6
  148. package/build/hooks/contrast-checker.js.map +1 -1
  149. package/build/hooks/duotone.js +3 -3
  150. package/build/hooks/duotone.js.map +1 -1
  151. package/build/hooks/index.js +7 -1
  152. package/build/hooks/index.js.map +1 -1
  153. package/build/hooks/line-height.js +0 -1
  154. package/build/hooks/line-height.js.map +1 -1
  155. package/build/hooks/spacing-visualizer.js +1 -1
  156. package/build/hooks/spacing-visualizer.js.map +1 -1
  157. package/build/hooks/use-bindings-attributes.js +4 -0
  158. package/build/hooks/use-bindings-attributes.js.map +1 -1
  159. package/build/hooks/use-zoom-out.js +1 -1
  160. package/build/hooks/use-zoom-out.js.map +1 -1
  161. package/build/hooks/utils.js +20 -0
  162. package/build/hooks/utils.js.map +1 -1
  163. package/build/index.js +7 -0
  164. package/build/index.js.map +1 -1
  165. package/build/layouts/constrained.js +1 -0
  166. package/build/layouts/constrained.js.map +1 -1
  167. package/build/layouts/flex.js +2 -0
  168. package/build/layouts/flex.js.map +1 -1
  169. package/build/layouts/grid.js +3 -0
  170. package/build/layouts/grid.js.map +1 -1
  171. package/build/private-apis.js +3 -2
  172. package/build/private-apis.js.map +1 -1
  173. package/build/store/actions.js +9 -1
  174. package/build/store/actions.js.map +1 -1
  175. package/build/store/private-selectors.js +30 -0
  176. package/build/store/private-selectors.js.map +1 -1
  177. package/build/store/reducer.js +10 -1
  178. package/build/store/reducer.js.map +1 -1
  179. package/build/store/selectors.js +4 -4
  180. package/build/store/selectors.js.map +1 -1
  181. package/build/utils/block-bindings.js +112 -0
  182. package/build/utils/block-bindings.js.map +1 -0
  183. package/build/utils/get-editor-region.js +1 -1
  184. package/build/utils/get-editor-region.js.map +1 -1
  185. package/build/utils/get-px-from-css-unit.js +1 -1
  186. package/build/utils/get-px-from-css-unit.js.map +1 -1
  187. package/build-module/autocompleters/block.js +1 -1
  188. package/build-module/autocompleters/block.js.map +1 -1
  189. package/build-module/components/block-breadcrumb/index.js +4 -2
  190. package/build-module/components/block-breadcrumb/index.js.map +1 -1
  191. package/build-module/components/block-draggable/index.js +3 -3
  192. package/build-module/components/block-draggable/index.js.map +1 -1
  193. package/build-module/components/block-list/use-block-props/index.js +2 -2
  194. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  195. package/build-module/components/block-list/use-block-props/use-block-refs.js +24 -34
  196. package/build-module/components/block-list/use-block-props/use-block-refs.js.map +1 -1
  197. package/build-module/components/block-list/use-in-between-inserter.js +11 -4
  198. package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
  199. package/build-module/components/block-mover/index.js +1 -2
  200. package/build-module/components/block-mover/index.js.map +1 -1
  201. package/build-module/components/block-popover/cover.js +1 -1
  202. package/build-module/components/block-popover/cover.js.map +1 -1
  203. package/build-module/components/block-popover/inbetween.js +1 -1
  204. package/build-module/components/block-popover/inbetween.js.map +1 -1
  205. package/build-module/components/block-popover/index.js +1 -1
  206. package/build-module/components/block-popover/index.js.map +1 -1
  207. package/build-module/components/block-settings-menu/block-mode-toggle.js +29 -34
  208. package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
  209. package/build-module/components/block-tools/block-selection-button.js +1 -2
  210. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  211. package/build-module/components/block-tools/index.js +1 -1
  212. package/build-module/components/block-tools/index.js.map +1 -1
  213. package/build-module/components/block-tools/insertion-point.js +14 -3
  214. package/build-module/components/block-tools/insertion-point.js.map +1 -1
  215. package/build-module/components/block-tools/use-block-toolbar-popover-props.js +1 -1
  216. package/build-module/components/block-tools/use-block-toolbar-popover-props.js.map +1 -1
  217. package/build-module/components/block-tools/use-show-block-tools.js +2 -1
  218. package/build-module/components/block-tools/use-show-block-tools.js.map +1 -1
  219. package/build-module/components/block-tools/zoom-out-mode-inserters.js +23 -20
  220. package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
  221. package/build-module/components/block-tools/zoom-out-toolbar.js +0 -1
  222. package/build-module/components/block-tools/zoom-out-toolbar.js.map +1 -1
  223. package/build-module/components/border-radius-control/index.js +1 -0
  224. package/build-module/components/border-radius-control/index.js.map +1 -1
  225. package/build-module/components/child-layout-control/index.js +3 -1
  226. package/build-module/components/child-layout-control/index.js.map +1 -1
  227. package/build-module/components/convert-to-group-buttons/index.js +1 -1
  228. package/build-module/components/convert-to-group-buttons/index.js.map +1 -1
  229. package/build-module/components/date-format-picker/index.js +2 -0
  230. package/build-module/components/date-format-picker/index.js.map +1 -1
  231. package/build-module/components/dimensions-tool/scale-tool.js +1 -0
  232. package/build-module/components/dimensions-tool/scale-tool.js.map +1 -1
  233. package/build-module/components/font-appearance-control/index.js +3 -0
  234. package/build-module/components/font-appearance-control/index.js.map +1 -1
  235. package/build-module/components/font-family/index.js +14 -0
  236. package/build-module/components/font-family/index.js.map +1 -1
  237. package/build-module/components/global-styles/background-panel.js +156 -80
  238. package/build-module/components/global-styles/background-panel.js.map +1 -1
  239. package/build-module/components/global-styles/get-global-styles-changes.js +3 -1
  240. package/build-module/components/global-styles/get-global-styles-changes.js.map +1 -1
  241. package/build-module/components/global-styles/hooks.js +0 -6
  242. package/build-module/components/global-styles/hooks.js.map +1 -1
  243. package/build-module/components/global-styles/image-settings-panel.js +1 -0
  244. package/build-module/components/global-styles/image-settings-panel.js.map +1 -1
  245. package/build-module/components/global-styles/index.js +1 -1
  246. package/build-module/components/global-styles/index.js.map +1 -1
  247. package/build-module/components/global-styles/typography-panel.js +0 -1
  248. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  249. package/build-module/components/global-styles/use-global-styles-output.js +61 -42
  250. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  251. package/build-module/components/global-styles/utils.js +77 -0
  252. package/build-module/components/global-styles/utils.js.map +1 -1
  253. package/build-module/components/grid/grid-item-movers.js +30 -26
  254. package/build-module/components/grid/grid-item-movers.js.map +1 -1
  255. package/build-module/components/grid/grid-item-resizer.js +14 -15
  256. package/build-module/components/grid/grid-item-resizer.js.map +1 -1
  257. package/build-module/components/grid/grid-visualizer.js +21 -6
  258. package/build-module/components/grid/grid-visualizer.js.map +1 -1
  259. package/build-module/components/grid/use-grid-layout-sync.js +56 -20
  260. package/build-module/components/grid/use-grid-layout-sync.js.map +1 -1
  261. package/build-module/components/height-control/index.js +1 -0
  262. package/build-module/components/height-control/index.js.map +1 -1
  263. package/build-module/components/iframe/index.js +2 -4
  264. package/build-module/components/iframe/index.js.map +1 -1
  265. package/build-module/components/image-editor/zoom-dropdown.js +12 -8
  266. package/build-module/components/image-editor/zoom-dropdown.js.map +1 -1
  267. package/build-module/components/inner-blocks/button-block-appender.js +7 -6
  268. package/build-module/components/inner-blocks/button-block-appender.js.map +1 -1
  269. package/build-module/components/inner-blocks/default-block-appender.js +6 -23
  270. package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
  271. package/build-module/components/inner-blocks/index.js +9 -11
  272. package/build-module/components/inner-blocks/index.js.map +1 -1
  273. package/build-module/components/inserter/category-tabs/index.js +30 -3
  274. package/build-module/components/inserter/category-tabs/index.js.map +1 -1
  275. package/build-module/components/inserter/library.js +4 -2
  276. package/build-module/components/inserter/library.js.map +1 -1
  277. package/build-module/components/inserter/menu.js +32 -14
  278. package/build-module/components/inserter/menu.js.map +1 -1
  279. package/build-module/components/inserter/quick-inserter.js +5 -1
  280. package/build-module/components/inserter/quick-inserter.js.map +1 -1
  281. package/build-module/components/line-height-control/index.js +3 -14
  282. package/build-module/components/line-height-control/index.js.map +1 -1
  283. package/build-module/components/link-control/search-input.js +0 -1
  284. package/build-module/components/link-control/search-input.js.map +1 -1
  285. package/build-module/components/media-placeholder/index.js +9 -4
  286. package/build-module/components/media-placeholder/index.js.map +1 -1
  287. package/build-module/components/media-replace-flow/index.js +3 -1
  288. package/build-module/components/media-replace-flow/index.js.map +1 -1
  289. package/build-module/components/media-upload/index.native.js +4 -1
  290. package/build-module/components/media-upload/index.native.js.map +1 -1
  291. package/build-module/components/multi-selection-inspector/index.js +12 -12
  292. package/build-module/components/multi-selection-inspector/index.js.map +1 -1
  293. package/build-module/components/resolution-tool/index.js +1 -0
  294. package/build-module/components/resolution-tool/index.js.map +1 -1
  295. package/build-module/components/skip-to-selected-block/index.js +5 -3
  296. package/build-module/components/skip-to-selected-block/index.js.map +1 -1
  297. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +8 -8
  298. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  299. package/build-module/components/text-alignment-control/index.js +13 -8
  300. package/build-module/components/text-alignment-control/index.js.map +1 -1
  301. package/build-module/components/text-decoration-control/index.js +13 -8
  302. package/build-module/components/text-decoration-control/index.js.map +1 -1
  303. package/build-module/components/text-transform-control/index.js +13 -8
  304. package/build-module/components/text-transform-control/index.js.map +1 -1
  305. package/build-module/components/url-input/button.js +0 -1
  306. package/build-module/components/url-input/button.js.map +1 -1
  307. package/build-module/components/url-input/index.js +1 -11
  308. package/build-module/components/url-input/index.js.map +1 -1
  309. package/build-module/components/url-popover/image-url-input-ui.js +2 -0
  310. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  311. package/build-module/components/url-popover/link-editor.js +0 -1
  312. package/build-module/components/url-popover/link-editor.js.map +1 -1
  313. package/build-module/components/use-block-drop-zone/index.js +42 -4
  314. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  315. package/build-module/components/use-on-block-drop/index.js +3 -6
  316. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  317. package/build-module/components/use-resize-canvas/index.js +1 -3
  318. package/build-module/components/use-resize-canvas/index.js.map +1 -1
  319. package/build-module/components/use-settings/index.js +2 -1
  320. package/build-module/components/use-settings/index.js.map +1 -1
  321. package/build-module/components/writing-mode-control/index.js +13 -8
  322. package/build-module/components/writing-mode-control/index.js.map +1 -1
  323. package/build-module/hooks/background.js +19 -23
  324. package/build-module/hooks/background.js.map +1 -1
  325. package/build-module/hooks/block-bindings.js +214 -43
  326. package/build-module/hooks/block-bindings.js.map +1 -1
  327. package/build-module/hooks/block-hooks.js +1 -0
  328. package/build-module/hooks/block-hooks.js.map +1 -1
  329. package/build-module/hooks/block-style-variation.js +3 -3
  330. package/build-module/hooks/block-style-variation.js.map +1 -1
  331. package/build-module/hooks/contrast-checker.js +7 -7
  332. package/build-module/hooks/contrast-checker.js.map +1 -1
  333. package/build-module/hooks/duotone.js +4 -4
  334. package/build-module/hooks/duotone.js.map +1 -1
  335. package/build-module/hooks/index.js +2 -1
  336. package/build-module/hooks/index.js.map +1 -1
  337. package/build-module/hooks/line-height.js +0 -1
  338. package/build-module/hooks/line-height.js.map +1 -1
  339. package/build-module/hooks/spacing-visualizer.js +1 -1
  340. package/build-module/hooks/spacing-visualizer.js.map +1 -1
  341. package/build-module/hooks/use-bindings-attributes.js +3 -0
  342. package/build-module/hooks/use-bindings-attributes.js.map +1 -1
  343. package/build-module/hooks/use-zoom-out.js +1 -1
  344. package/build-module/hooks/use-zoom-out.js.map +1 -1
  345. package/build-module/hooks/utils.js +19 -0
  346. package/build-module/hooks/utils.js.map +1 -1
  347. package/build-module/index.js +1 -1
  348. package/build-module/index.js.map +1 -1
  349. package/build-module/layouts/constrained.js +1 -0
  350. package/build-module/layouts/constrained.js.map +1 -1
  351. package/build-module/layouts/flex.js +2 -0
  352. package/build-module/layouts/flex.js.map +1 -1
  353. package/build-module/layouts/grid.js +3 -0
  354. package/build-module/layouts/grid.js.map +1 -1
  355. package/build-module/private-apis.js +4 -3
  356. package/build-module/private-apis.js.map +1 -1
  357. package/build-module/store/actions.js +9 -1
  358. package/build-module/store/actions.js.map +1 -1
  359. package/build-module/store/private-selectors.js +27 -0
  360. package/build-module/store/private-selectors.js.map +1 -1
  361. package/build-module/store/reducer.js +9 -1
  362. package/build-module/store/reducer.js.map +1 -1
  363. package/build-module/store/selectors.js +4 -4
  364. package/build-module/store/selectors.js.map +1 -1
  365. package/build-module/utils/block-bindings.js +105 -0
  366. package/build-module/utils/block-bindings.js.map +1 -0
  367. package/build-module/utils/get-editor-region.js +1 -1
  368. package/build-module/utils/get-editor-region.js.map +1 -1
  369. package/build-module/utils/get-px-from-css-unit.js +1 -1
  370. package/build-module/utils/get-px-from-css-unit.js.map +1 -1
  371. package/build-style/content-rtl.css +12 -26
  372. package/build-style/content.css +12 -26
  373. package/build-style/default-editor-styles-rtl.css +5 -2
  374. package/build-style/default-editor-styles.css +5 -2
  375. package/build-style/style-rtl.css +123 -83
  376. package/build-style/style.css +123 -83
  377. package/package.json +32 -32
  378. package/src/autocompleters/block.js +2 -1
  379. package/src/autocompleters/style.scss +4 -0
  380. package/src/components/block-breadcrumb/index.js +4 -2
  381. package/src/components/block-canvas/style.scss +1 -0
  382. package/src/components/block-draggable/index.js +3 -3
  383. package/src/components/block-list/content.scss +5 -13
  384. package/src/components/block-list/use-block-props/index.js +2 -2
  385. package/src/components/block-list/use-block-props/use-block-refs.js +27 -43
  386. package/src/components/block-list/use-in-between-inserter.js +17 -5
  387. package/src/components/block-mover/index.js +5 -2
  388. package/src/components/block-popover/cover.js +1 -1
  389. package/src/components/block-popover/inbetween.js +1 -1
  390. package/src/components/block-popover/index.js +1 -1
  391. package/src/components/block-settings-menu/block-mode-toggle.js +28 -31
  392. package/src/components/block-settings-menu/test/block-mode-toggle.js +26 -23
  393. package/src/components/block-tools/block-selection-button.js +1 -2
  394. package/src/components/block-tools/index.js +5 -6
  395. package/src/components/block-tools/insertion-point.js +11 -0
  396. package/src/components/block-tools/style.scss +1 -1
  397. package/src/components/block-tools/use-block-toolbar-popover-props.js +1 -1
  398. package/src/components/block-tools/use-show-block-tools.js +4 -1
  399. package/src/components/block-tools/zoom-out-mode-inserters.js +21 -19
  400. package/src/components/block-tools/zoom-out-toolbar.js +0 -1
  401. package/src/components/block-variation-transforms/style.scss +1 -1
  402. package/src/components/border-radius-control/index.js +1 -0
  403. package/src/components/border-radius-control/style.scss +0 -10
  404. package/src/components/button-block-appender/content.scss +1 -1
  405. package/src/components/child-layout-control/index.js +2 -0
  406. package/src/components/color-palette/test/__snapshots__/control.js.snap +2 -2
  407. package/src/components/colors-gradients/test/control.js +3 -2
  408. package/src/components/convert-to-group-buttons/index.js +1 -1
  409. package/src/components/date-format-picker/index.js +2 -0
  410. package/src/components/dimensions-tool/scale-tool.js +1 -0
  411. package/src/components/font-appearance-control/index.js +3 -0
  412. package/src/components/font-family/README.md +17 -0
  413. package/src/components/font-family/index.js +19 -0
  414. package/src/components/font-family/stories/index.story.js +54 -0
  415. package/src/components/global-styles/background-panel.js +180 -93
  416. package/src/components/global-styles/get-global-styles-changes.js +4 -1
  417. package/src/components/global-styles/hooks.js +0 -5
  418. package/src/components/global-styles/image-settings-panel.js +1 -0
  419. package/src/components/global-styles/index.js +0 -1
  420. package/src/components/global-styles/style.scss +13 -12
  421. package/src/components/global-styles/test/use-global-styles-output.js +68 -7
  422. package/src/components/global-styles/test/utils.js +120 -0
  423. package/src/components/global-styles/typography-panel.js +0 -1
  424. package/src/components/global-styles/use-global-styles-output.js +71 -53
  425. package/src/components/global-styles/utils.js +90 -0
  426. package/src/components/grid/grid-item-movers.js +46 -44
  427. package/src/components/grid/grid-item-resizer.js +11 -17
  428. package/src/components/grid/grid-visualizer.js +23 -8
  429. package/src/components/grid/style.scss +60 -10
  430. package/src/components/grid/use-grid-layout-sync.js +68 -14
  431. package/src/components/height-control/index.js +1 -0
  432. package/src/components/iframe/content.scss +2 -2
  433. package/src/components/iframe/index.js +1 -3
  434. package/src/components/image-editor/zoom-dropdown.js +17 -9
  435. package/src/components/inner-blocks/button-block-appender.js +5 -7
  436. package/src/components/inner-blocks/default-block-appender.js +4 -23
  437. package/src/components/inner-blocks/index.js +10 -9
  438. package/src/components/inserter/category-tabs/index.js +35 -2
  439. package/src/components/inserter/library.js +2 -0
  440. package/src/components/inserter/menu.js +34 -29
  441. package/src/components/inserter/quick-inserter.js +4 -1
  442. package/src/components/inserter/style.scss +17 -12
  443. package/src/components/inserter-list-item/style.scss +1 -0
  444. package/src/components/inspector-controls/README.md +5 -0
  445. package/src/components/line-height-control/README.md +4 -5
  446. package/src/components/line-height-control/index.js +4 -21
  447. package/src/components/line-height-control/stories/index.story.js +0 -1
  448. package/src/components/line-height-control/test/index.js +1 -7
  449. package/src/components/link-control/search-input.js +0 -1
  450. package/src/components/link-control/style.scss +1 -1
  451. package/src/components/media-placeholder/index.js +12 -7
  452. package/src/components/media-replace-flow/README.md +7 -0
  453. package/src/components/media-replace-flow/index.js +3 -1
  454. package/src/components/media-upload/README.md +2 -0
  455. package/src/components/media-upload/index.native.js +2 -0
  456. package/src/components/multi-selection-inspector/index.js +8 -9
  457. package/src/components/resolution-tool/index.js +1 -0
  458. package/src/components/responsive-block-control/README.md +1 -0
  459. package/src/components/responsive-block-control/test/index.js +6 -1
  460. package/src/components/skip-to-selected-block/index.js +5 -3
  461. package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +11 -10
  462. package/src/components/spacing-sizes-control/style.scss +16 -16
  463. package/src/components/tabbed-sidebar/style.scss +1 -19
  464. package/src/components/text-alignment-control/index.js +20 -8
  465. package/src/components/text-decoration-control/index.js +20 -8
  466. package/src/components/text-decoration-control/stories/index.story.js +0 -4
  467. package/src/components/text-transform-control/index.js +20 -8
  468. package/src/components/text-transform-control/stories/index.story.js +0 -4
  469. package/src/components/url-input/README.md +0 -5
  470. package/src/components/url-input/button.js +0 -1
  471. package/src/components/url-input/index.js +1 -15
  472. package/src/components/url-input/style.scss +2 -2
  473. package/src/components/url-popover/image-url-input-ui.js +2 -0
  474. package/src/components/url-popover/link-editor.js +0 -1
  475. package/src/components/use-block-drop-zone/index.js +86 -16
  476. package/src/components/use-on-block-drop/index.js +1 -9
  477. package/src/components/use-resize-canvas/index.js +1 -3
  478. package/src/components/use-settings/index.js +2 -1
  479. package/src/components/writing-mode-control/index.js +20 -8
  480. package/src/hooks/background.js +21 -27
  481. package/src/hooks/block-bindings.js +248 -54
  482. package/src/hooks/block-bindings.scss +13 -2
  483. package/src/hooks/block-hooks.js +1 -0
  484. package/src/hooks/block-hooks.scss +1 -0
  485. package/src/hooks/block-style-variation.js +3 -3
  486. package/src/hooks/contrast-checker.js +7 -7
  487. package/src/hooks/duotone.js +4 -4
  488. package/src/hooks/index.js +2 -1
  489. package/src/hooks/line-height.js +0 -1
  490. package/src/hooks/spacing-visualizer.js +1 -1
  491. package/src/hooks/test/background.js +60 -0
  492. package/src/hooks/use-bindings-attributes.js +4 -0
  493. package/src/hooks/use-editor-wrapper-styles.native.scss +1 -0
  494. package/src/hooks/use-zoom-out.js +1 -1
  495. package/src/hooks/utils.js +14 -1
  496. package/src/index.js +1 -0
  497. package/src/layouts/constrained.js +1 -0
  498. package/src/layouts/flex.js +2 -0
  499. package/src/layouts/grid.js +3 -0
  500. package/src/private-apis.js +3 -2
  501. package/src/store/actions.js +13 -5
  502. package/src/store/private-selectors.js +36 -0
  503. package/src/store/reducer.js +7 -0
  504. package/src/store/selectors.js +4 -4
  505. package/src/store/test/private-selectors.js +89 -0
  506. package/src/style.scss +1 -2
  507. package/src/utils/block-bindings.js +98 -0
  508. package/src/utils/get-editor-region.js +1 -1
  509. package/src/utils/get-px-from-css-unit.js +1 -1
  510. package/src/utils/test/transform-styles.js +49 -0
  511. package/tsconfig.tsbuildinfo +1 -1
  512. package/build/components/global-styles/theme-file-uri-utils.js +0 -80
  513. package/build/components/global-styles/theme-file-uri-utils.js.map +0 -1
  514. package/build/components/inner-blocks/with-client-id.js +0 -28
  515. package/build/components/inner-blocks/with-client-id.js.map +0 -1
  516. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +0 -30
  517. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +0 -1
  518. package/build/components/segmented-text-control/index.js +0 -63
  519. package/build/components/segmented-text-control/index.js.map +0 -1
  520. package/build-module/components/global-styles/theme-file-uri-utils.js +0 -73
  521. package/build-module/components/global-styles/theme-file-uri-utils.js.map +0 -1
  522. package/build-module/components/inner-blocks/with-client-id.js +0 -21
  523. package/build-module/components/inner-blocks/with-client-id.js.map +0 -1
  524. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +0 -23
  525. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +0 -1
  526. package/build-module/components/segmented-text-control/index.js +0 -58
  527. package/build-module/components/segmented-text-control/index.js.map +0 -1
  528. package/src/components/global-styles/test/theme-file-uri-utils.js +0 -66
  529. package/src/components/global-styles/theme-file-uri-utils.js +0 -77
  530. package/src/components/inner-blocks/with-client-id.js +0 -19
  531. package/src/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +0 -25
  532. package/src/components/segmented-text-control/index.js +0 -63
  533. package/src/components/segmented-text-control/style.scss +0 -15
@@ -4,10 +4,10 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.default = exports.ButtonBlockAppender = void 0;
7
+ exports.default = ButtonBlockAppender;
8
8
  var _clsx = _interopRequireDefault(require("clsx"));
9
9
  var _buttonBlockAppender = _interopRequireDefault(require("../button-block-appender"));
10
- var _withClientId = _interopRequireDefault(require("./with-client-id"));
10
+ var _context = require("../block-edit/context");
11
11
  var _jsxRuntime = require("react/jsx-runtime");
12
12
  /**
13
13
  * External dependencies
@@ -17,13 +17,15 @@ var _jsxRuntime = require("react/jsx-runtime");
17
17
  * Internal dependencies
18
18
  */
19
19
 
20
- const ButtonBlockAppender = ({
21
- clientId,
20
+ function ButtonBlockAppender({
22
21
  showSeparator,
23
22
  isFloating,
24
23
  onAddBlock,
25
24
  isToggle
26
- }) => {
25
+ }) {
26
+ const {
27
+ clientId
28
+ } = (0, _context.useBlockEditContext)();
27
29
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_buttonBlockAppender.default, {
28
30
  className: (0, _clsx.default)({
29
31
  'block-list-appender__toggle': isToggle
@@ -33,7 +35,5 @@ const ButtonBlockAppender = ({
33
35
  isFloating: isFloating,
34
36
  onAddBlock: onAddBlock
35
37
  });
36
- };
37
- exports.ButtonBlockAppender = ButtonBlockAppender;
38
- var _default = exports.default = (0, _withClientId.default)(ButtonBlockAppender);
38
+ }
39
39
  //# sourceMappingURL=button-block-appender.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_buttonBlockAppender","_withClientId","_jsxRuntime","ButtonBlockAppender","clientId","showSeparator","isFloating","onAddBlock","isToggle","jsx","default","className","clsx","rootClientId","exports","_default","withClientId"],"sources":["@wordpress/block-editor/src/components/inner-blocks/button-block-appender.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * Internal dependencies\n */\nimport BaseButtonBlockAppender from '../button-block-appender';\nimport withClientId from './with-client-id';\n\nexport const ButtonBlockAppender = ( {\n\tclientId,\n\tshowSeparator,\n\tisFloating,\n\tonAddBlock,\n\tisToggle,\n} ) => {\n\treturn (\n\t\t<BaseButtonBlockAppender\n\t\t\tclassName={ clsx( {\n\t\t\t\t'block-list-appender__toggle': isToggle,\n\t\t\t} ) }\n\t\t\trootClientId={ clientId }\n\t\t\tshowSeparator={ showSeparator }\n\t\t\tisFloating={ isFloating }\n\t\t\tonAddBlock={ onAddBlock }\n\t\t/>\n\t);\n};\n\nexport default withClientId( ButtonBlockAppender );\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,oBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,aAAA,GAAAH,sBAAA,CAAAC,OAAA;AAA4C,IAAAG,WAAA,GAAAH,OAAA;AAT5C;AACA;AACA;;AAGA;AACA;AACA;;AAIO,MAAMI,mBAAmB,GAAGA,CAAE;EACpCC,QAAQ;EACRC,aAAa;EACbC,UAAU;EACVC,UAAU;EACVC;AACD,CAAC,KAAM;EACN,oBACC,IAAAN,WAAA,CAAAO,GAAA,EAACT,oBAAA,CAAAU,OAAuB;IACvBC,SAAS,EAAG,IAAAC,aAAI,EAAE;MACjB,6BAA6B,EAAEJ;IAChC,CAAE,CAAG;IACLK,YAAY,EAAGT,QAAU;IACzBC,aAAa,EAAGA,aAAe;IAC/BC,UAAU,EAAGA,UAAY;IACzBC,UAAU,EAAGA;EAAY,CACzB,CAAC;AAEJ,CAAC;AAACO,OAAA,CAAAX,mBAAA,GAAAA,mBAAA;AAAA,IAAAY,QAAA,GAAAD,OAAA,CAAAJ,OAAA,GAEa,IAAAM,qBAAY,EAAEb,mBAAoB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_buttonBlockAppender","_context","_jsxRuntime","ButtonBlockAppender","showSeparator","isFloating","onAddBlock","isToggle","clientId","useBlockEditContext","jsx","default","className","clsx","rootClientId"],"sources":["@wordpress/block-editor/src/components/inner-blocks/button-block-appender.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * Internal dependencies\n */\nimport BaseButtonBlockAppender from '../button-block-appender';\nimport { useBlockEditContext } from '../block-edit/context';\n\nexport default function ButtonBlockAppender( {\n\tshowSeparator,\n\tisFloating,\n\tonAddBlock,\n\tisToggle,\n} ) {\n\tconst { clientId } = useBlockEditContext();\n\treturn (\n\t\t<BaseButtonBlockAppender\n\t\t\tclassName={ clsx( {\n\t\t\t\t'block-list-appender__toggle': isToggle,\n\t\t\t} ) }\n\t\t\trootClientId={ clientId }\n\t\t\tshowSeparator={ showSeparator }\n\t\t\tisFloating={ isFloating }\n\t\t\tonAddBlock={ onAddBlock }\n\t\t/>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,oBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAA4D,IAAAG,WAAA,GAAAH,OAAA;AAT5D;AACA;AACA;;AAGA;AACA;AACA;;AAIe,SAASI,mBAAmBA,CAAE;EAC5CC,aAAa;EACbC,UAAU;EACVC,UAAU;EACVC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC;EAAS,CAAC,GAAG,IAAAC,4BAAmB,EAAC,CAAC;EAC1C,oBACC,IAAAP,WAAA,CAAAQ,GAAA,EAACV,oBAAA,CAAAW,OAAuB;IACvBC,SAAS,EAAG,IAAAC,aAAI,EAAE;MACjB,6BAA6B,EAAEN;IAChC,CAAE,CAAG;IACLO,YAAY,EAAGN,QAAU;IACzBJ,aAAa,EAAGA,aAAe;IAC/BC,UAAU,EAAGA,UAAY;IACzBC,UAAU,EAAGA;EAAY,CACzB,CAAC;AAEJ","ignoreList":[]}
@@ -4,38 +4,20 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.default = exports.DefaultBlockAppender = void 0;
8
- var _compose = require("@wordpress/compose");
9
- var _data = require("@wordpress/data");
7
+ exports.default = DefaultBlockAppender;
10
8
  var _defaultBlockAppender = _interopRequireDefault(require("../default-block-appender"));
11
- var _withClientId = _interopRequireDefault(require("./with-client-id"));
12
- var _store = require("../../store");
9
+ var _context = require("../block-edit/context");
13
10
  var _jsxRuntime = require("react/jsx-runtime");
14
- /**
15
- * WordPress dependencies
16
- */
17
-
18
11
  /**
19
12
  * Internal dependencies
20
13
  */
21
14
 
22
- const DefaultBlockAppender = ({
23
- clientId
24
- }) => {
15
+ function DefaultBlockAppender() {
16
+ const {
17
+ clientId
18
+ } = (0, _context.useBlockEditContext)();
25
19
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_defaultBlockAppender.default, {
26
20
  rootClientId: clientId
27
21
  });
28
- };
29
- exports.DefaultBlockAppender = DefaultBlockAppender;
30
- var _default = exports.default = (0, _compose.compose)([_withClientId.default, (0, _data.withSelect)((select, {
31
- clientId
32
- }) => {
33
- const {
34
- getBlockOrder
35
- } = select(_store.store);
36
- const blockClientIds = getBlockOrder(clientId);
37
- return {
38
- lastBlockClientId: blockClientIds[blockClientIds.length - 1]
39
- };
40
- })])(DefaultBlockAppender);
22
+ }
41
23
  //# sourceMappingURL=default-block-appender.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_compose","require","_data","_defaultBlockAppender","_interopRequireDefault","_withClientId","_store","_jsxRuntime","DefaultBlockAppender","clientId","jsx","default","rootClientId","exports","_default","compose","withClientId","withSelect","select","getBlockOrder","blockEditorStore","blockClientIds","lastBlockClientId","length"],"sources":["@wordpress/block-editor/src/components/inner-blocks/default-block-appender.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { compose } from '@wordpress/compose';\nimport { withSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport BaseDefaultBlockAppender from '../default-block-appender';\nimport withClientId from './with-client-id';\nimport { store as blockEditorStore } from '../../store';\n\nexport const DefaultBlockAppender = ( { clientId } ) => {\n\treturn <BaseDefaultBlockAppender rootClientId={ clientId } />;\n};\n\nexport default compose( [\n\twithClientId,\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getBlockOrder } = select( blockEditorStore );\n\n\t\tconst blockClientIds = getBlockOrder( clientId );\n\n\t\treturn {\n\t\t\tlastBlockClientId: blockClientIds[ blockClientIds.length - 1 ],\n\t\t};\n\t} ),\n] )( DefaultBlockAppender );\n"],"mappings":";;;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAKA,IAAAE,qBAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,aAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAAwD,IAAAM,WAAA,GAAAN,OAAA;AAXxD;AACA;AACA;;AAIA;AACA;AACA;;AAKO,MAAMO,oBAAoB,GAAGA,CAAE;EAAEC;AAAS,CAAC,KAAM;EACvD,oBAAO,IAAAF,WAAA,CAAAG,GAAA,EAACP,qBAAA,CAAAQ,OAAwB;IAACC,YAAY,EAAGH;EAAU,CAAE,CAAC;AAC9D,CAAC;AAACI,OAAA,CAAAL,oBAAA,GAAAA,oBAAA;AAAA,IAAAM,QAAA,GAAAD,OAAA,CAAAF,OAAA,GAEa,IAAAI,gBAAO,EAAE,CACvBC,qBAAY,EACZ,IAAAC,gBAAU,EAAE,CAAEC,MAAM,EAAE;EAAET;AAAS,CAAC,KAAM;EACvC,MAAM;IAAEU;EAAc,CAAC,GAAGD,MAAM,CAAEE,YAAiB,CAAC;EAEpD,MAAMC,cAAc,GAAGF,aAAa,CAAEV,QAAS,CAAC;EAEhD,OAAO;IACNa,iBAAiB,EAAED,cAAc,CAAEA,cAAc,CAACE,MAAM,GAAG,CAAC;EAC7D,CAAC;AACF,CAAE,CAAC,CACF,CAAC,CAAEf,oBAAqB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_defaultBlockAppender","_interopRequireDefault","require","_context","_jsxRuntime","DefaultBlockAppender","clientId","useBlockEditContext","jsx","default","rootClientId"],"sources":["@wordpress/block-editor/src/components/inner-blocks/default-block-appender.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport BaseDefaultBlockAppender from '../default-block-appender';\nimport { useBlockEditContext } from '../block-edit/context';\n\nexport default function DefaultBlockAppender() {\n\tconst { clientId } = useBlockEditContext();\n\treturn <BaseDefaultBlockAppender rootClientId={ clientId } />;\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,qBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAA4D,IAAAE,WAAA,GAAAF,OAAA;AAJ5D;AACA;AACA;;AAIe,SAASG,oBAAoBA,CAAA,EAAG;EAC9C,MAAM;IAAEC;EAAS,CAAC,GAAG,IAAAC,4BAAmB,EAAC,CAAC;EAC1C,oBAAO,IAAAH,WAAA,CAAAI,GAAA,EAACR,qBAAA,CAAAS,OAAwB;IAACC,YAAY,EAAGJ;EAAU,CAAE,CAAC;AAC9D","ignoreList":[]}
@@ -183,15 +183,6 @@ function useInnerBlocksProps(props = {}, options = {}) {
183
183
  getSettings
184
184
  } = (0, _lockUnlock.unlock)(select(_store.store));
185
185
  let _isDropZoneDisabled;
186
- // In zoom out mode, we want to disable the drop zone for the sections.
187
- // The inner blocks belonging to the section drop zone is
188
- // already disabled by the blocks themselves being disabled.
189
- if (__unstableGetEditorMode() === 'zoom-out') {
190
- const {
191
- sectionRootClientId
192
- } = (0, _lockUnlock.unlock)(getSettings());
193
- _isDropZoneDisabled = clientId !== sectionRootClientId;
194
- }
195
186
  if (!clientId) {
196
187
  return {
197
188
  isDropZoneDisabled: _isDropZoneDisabled
@@ -206,8 +197,15 @@ function useInnerBlocksProps(props = {}, options = {}) {
206
197
  const blockEditingMode = getBlockEditingMode(clientId);
207
198
  const parentClientId = getBlockRootClientId(clientId);
208
199
  const [defaultLayout] = getBlockSettings(clientId, 'layout');
209
- if (_isDropZoneDisabled !== undefined) {
210
- _isDropZoneDisabled = blockEditingMode === 'disabled';
200
+ _isDropZoneDisabled = blockEditingMode === 'disabled';
201
+ if (__unstableGetEditorMode() === 'zoom-out') {
202
+ // In zoom out mode, we want to disable the drop zone for the sections.
203
+ // The inner blocks belonging to the section drop zone is
204
+ // already disabled by the blocks themselves being disabled.
205
+ const {
206
+ sectionRootClientId
207
+ } = (0, _lockUnlock.unlock)(getSettings());
208
+ _isDropZoneDisabled = clientId !== sectionRootClientId;
211
209
  }
212
210
  return {
213
211
  __experimentalCaptureToolbars: hasBlockSupport(blockName, '__experimentalExposeControlsToChildren', false),
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_compose","_element","_data","_blocks","_buttonBlockAppender","_defaultBlockAppender","_useNestedSettingsUpdate","_useInnerBlockTemplateSync","_useBlockContext","_blockList","_blockContext","_context","_useBlockSync","_store","_useBlockDropZone","_lockUnlock","_jsxRuntime","EMPTY_OBJECT","BlockContext","children","clientId","context","useBlockContext","jsx","BlockContextProvider","value","BlockListItemsMemo","memo","BlockListItems","UncontrolledInnerBlocks","props","allowedBlocks","prioritizedInserterBlocks","defaultBlock","directInsert","__experimentalDefaultBlock","__experimentalDirectInsert","template","templateLock","wrapperRef","templateInsertUpdatesSelection","__experimentalCaptureToolbars","captureToolbars","__experimentalAppenderTagName","renderAppender","orientation","placeholder","layout","name","blockType","parentLock","defaultLayout","useNestedSettingsUpdate","useInnerBlockTemplateSync","defaultLayoutBlockSupport","getBlockSupport","allowSizingOnChildren","usedLayout","memoedLayout","useMemo","items","rootClientId","providesContext","Object","keys","length","ControlledInnerBlocks","useBlockSync","ForwardedInnerBlocks","forwardRef","ref","innerBlocksProps","useInnerBlocksProps","className","options","__unstableDisableLayoutClassNames","__unstableDisableDropZone","dropZoneElement","__unstableLayoutClassNames","layoutClassNames","useBlockEditContext","selected","useSelect","select","getBlockName","isBlockSelected","hasSelectedInnerBlock","__unstableGetEditorMode","getTemplateLock","getBlockRootClientId","getBlockEditingMode","getBlockSettings","isDragging","getSettings","unlock","blockEditorStore","_isDropZoneDisabled","sectionRootClientId","isDropZoneDisabled","hasBlockSupport","getBlockType","blocksStore","blockName","enableClickThrough","blockEditingMode","parentClientId","undefined","hasOverlay","blockDropZoneRef","useBlockDropZone","useMergeRefs","isManualPlacement","window","__experimentalEnableGridInteractivity","InnerBlocks","onChange","clsx","save","getInnerBlocksProps","DefaultBlockAppender","ButtonBlockAppender","Content","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/inner-blocks/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useMergeRefs } from '@wordpress/compose';\nimport { forwardRef, useMemo, memo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport {\n\tgetBlockSupport,\n\tstore as blocksStore,\n\t__unstableGetInnerBlocksProps as getInnerBlocksProps,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport ButtonBlockAppender from './button-block-appender';\nimport DefaultBlockAppender from './default-block-appender';\nimport useNestedSettingsUpdate from './use-nested-settings-update';\nimport useInnerBlockTemplateSync from './use-inner-block-template-sync';\nimport useBlockContext from './use-block-context';\nimport { BlockListItems } from '../block-list';\nimport { BlockContextProvider } from '../block-context';\nimport { useBlockEditContext } from '../block-edit/context';\nimport useBlockSync from '../provider/use-block-sync';\nimport { store as blockEditorStore } from '../../store';\nimport useBlockDropZone from '../use-block-drop-zone';\nimport { unlock } from '../../lock-unlock';\n\nconst EMPTY_OBJECT = {};\n\nfunction BlockContext( { children, clientId } ) {\n\tconst context = useBlockContext( clientId );\n\treturn (\n\t\t<BlockContextProvider value={ context }>\n\t\t\t{ children }\n\t\t</BlockContextProvider>\n\t);\n}\n\nconst BlockListItemsMemo = memo( BlockListItems );\n\n/**\n * InnerBlocks is a component which allows a single block to have multiple blocks\n * as children. The UncontrolledInnerBlocks component is used whenever the inner\n * blocks are not controlled by another entity. In other words, it is normally\n * used for inner blocks in the post editor\n *\n * @param {Object} props The component props.\n */\nfunction UncontrolledInnerBlocks( props ) {\n\tconst {\n\t\tclientId,\n\t\tallowedBlocks,\n\t\tprioritizedInserterBlocks,\n\t\tdefaultBlock,\n\t\tdirectInsert,\n\t\t__experimentalDefaultBlock,\n\t\t__experimentalDirectInsert,\n\t\ttemplate,\n\t\ttemplateLock,\n\t\twrapperRef,\n\t\ttemplateInsertUpdatesSelection,\n\t\t__experimentalCaptureToolbars: captureToolbars,\n\t\t__experimentalAppenderTagName,\n\t\trenderAppender,\n\t\torientation,\n\t\tplaceholder,\n\t\tlayout,\n\t\tname,\n\t\tblockType,\n\t\tparentLock,\n\t\tdefaultLayout,\n\t} = props;\n\n\tuseNestedSettingsUpdate(\n\t\tclientId,\n\t\tparentLock,\n\t\tallowedBlocks,\n\t\tprioritizedInserterBlocks,\n\t\tdefaultBlock,\n\t\tdirectInsert,\n\t\t__experimentalDefaultBlock,\n\t\t__experimentalDirectInsert,\n\t\ttemplateLock,\n\t\tcaptureToolbars,\n\t\torientation,\n\t\tlayout\n\t);\n\n\tuseInnerBlockTemplateSync(\n\t\tclientId,\n\t\ttemplate,\n\t\ttemplateLock,\n\t\ttemplateInsertUpdatesSelection\n\t);\n\n\tconst defaultLayoutBlockSupport =\n\t\tgetBlockSupport( name, 'layout' ) ||\n\t\tgetBlockSupport( name, '__experimentalLayout' ) ||\n\t\tEMPTY_OBJECT;\n\n\tconst { allowSizingOnChildren = false } = defaultLayoutBlockSupport;\n\tconst usedLayout = layout || defaultLayoutBlockSupport;\n\n\tconst memoedLayout = useMemo(\n\t\t() => ( {\n\t\t\t// Default layout will know about any content/wide size defined by the theme.\n\t\t\t...defaultLayout,\n\t\t\t...usedLayout,\n\t\t\t...( allowSizingOnChildren && {\n\t\t\t\tallowSizingOnChildren: true,\n\t\t\t} ),\n\t\t} ),\n\t\t[ defaultLayout, usedLayout, allowSizingOnChildren ]\n\t);\n\n\t// For controlled inner blocks, we don't want a change in blocks to\n\t// re-render the blocks list.\n\tconst items = (\n\t\t<BlockListItemsMemo\n\t\t\trootClientId={ clientId }\n\t\t\trenderAppender={ renderAppender }\n\t\t\t__experimentalAppenderTagName={ __experimentalAppenderTagName }\n\t\t\tlayout={ memoedLayout }\n\t\t\twrapperRef={ wrapperRef }\n\t\t\tplaceholder={ placeholder }\n\t\t/>\n\t);\n\n\tif (\n\t\t! blockType?.providesContext ||\n\t\tObject.keys( blockType.providesContext ).length === 0\n\t) {\n\t\treturn items;\n\t}\n\n\treturn <BlockContext clientId={ clientId }>{ items }</BlockContext>;\n}\n\n/**\n * The controlled inner blocks component wraps the uncontrolled inner blocks\n * component with the blockSync hook. This keeps the innerBlocks of the block in\n * the block-editor store in sync with the blocks of the controlling entity. An\n * example of an inner block controller is a template part block, which provides\n * its own blocks from the template part entity data source.\n *\n * @param {Object} props The component props.\n */\nfunction ControlledInnerBlocks( props ) {\n\tuseBlockSync( props );\n\treturn <UncontrolledInnerBlocks { ...props } />;\n}\n\nconst ForwardedInnerBlocks = forwardRef( ( props, ref ) => {\n\tconst innerBlocksProps = useInnerBlocksProps( { ref }, props );\n\treturn (\n\t\t<div className=\"block-editor-inner-blocks\">\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</div>\n\t);\n} );\n\n/**\n * This hook is used to lightly mark an element as an inner blocks wrapper\n * element. Call this hook and pass the returned props to the element to mark as\n * an inner blocks wrapper, automatically rendering inner blocks as children. If\n * you define a ref for the element, it is important to pass the ref to this\n * hook, which the hook in turn will pass to the component through the props it\n * returns. Optionally, you can also pass any other props through this hook, and\n * they will be merged and returned.\n *\n * @param {Object} props Optional. Props to pass to the element. Must contain\n * the ref if one is defined.\n * @param {Object} options Optional. Inner blocks options.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/inner-blocks/README.md\n */\nexport function useInnerBlocksProps( props = {}, options = {} ) {\n\tconst {\n\t\t__unstableDisableLayoutClassNames,\n\t\t__unstableDisableDropZone,\n\t\tdropZoneElement,\n\t} = options;\n\tconst {\n\t\tclientId,\n\t\tlayout = null,\n\t\t__unstableLayoutClassNames: layoutClassNames = '',\n\t} = useBlockEditContext();\n\tconst selected = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockName,\n\t\t\t\tisBlockSelected,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\t__unstableGetEditorMode,\n\t\t\t\tgetTemplateLock,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetBlockEditingMode,\n\t\t\t\tgetBlockSettings,\n\t\t\t\tisDragging,\n\t\t\t\tgetSettings,\n\t\t\t} = unlock( select( blockEditorStore ) );\n\t\t\tlet _isDropZoneDisabled;\n\t\t\t// In zoom out mode, we want to disable the drop zone for the sections.\n\t\t\t// The inner blocks belonging to the section drop zone is\n\t\t\t// already disabled by the blocks themselves being disabled.\n\t\t\tif ( __unstableGetEditorMode() === 'zoom-out' ) {\n\t\t\t\tconst { sectionRootClientId } = unlock( getSettings() );\n\t\t\t\t_isDropZoneDisabled = clientId !== sectionRootClientId;\n\t\t\t}\n\t\t\tif ( ! clientId ) {\n\t\t\t\treturn { isDropZoneDisabled: _isDropZoneDisabled };\n\t\t\t}\n\n\t\t\tconst { hasBlockSupport, getBlockType } = select( blocksStore );\n\t\t\tconst blockName = getBlockName( clientId );\n\t\t\tconst enableClickThrough =\n\t\t\t\t__unstableGetEditorMode() === 'navigation';\n\t\t\tconst blockEditingMode = getBlockEditingMode( clientId );\n\t\t\tconst parentClientId = getBlockRootClientId( clientId );\n\t\t\tconst [ defaultLayout ] = getBlockSettings( clientId, 'layout' );\n\n\t\t\tif ( _isDropZoneDisabled !== undefined ) {\n\t\t\t\t_isDropZoneDisabled = blockEditingMode === 'disabled';\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\t__experimentalCaptureToolbars: hasBlockSupport(\n\t\t\t\t\tblockName,\n\t\t\t\t\t'__experimentalExposeControlsToChildren',\n\t\t\t\t\tfalse\n\t\t\t\t),\n\t\t\t\thasOverlay:\n\t\t\t\t\tblockName !== 'core/template' &&\n\t\t\t\t\t! isBlockSelected( clientId ) &&\n\t\t\t\t\t! hasSelectedInnerBlock( clientId, true ) &&\n\t\t\t\t\tenableClickThrough &&\n\t\t\t\t\t! isDragging(),\n\t\t\t\tname: blockName,\n\t\t\t\tblockType: getBlockType( blockName ),\n\t\t\t\tparentLock: getTemplateLock( parentClientId ),\n\t\t\t\tparentClientId,\n\t\t\t\tisDropZoneDisabled: _isDropZoneDisabled,\n\t\t\t\tdefaultLayout,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst {\n\t\t__experimentalCaptureToolbars,\n\t\thasOverlay,\n\t\tname,\n\t\tblockType,\n\t\tparentLock,\n\t\tparentClientId,\n\t\tisDropZoneDisabled,\n\t\tdefaultLayout,\n\t} = selected;\n\n\tconst blockDropZoneRef = useBlockDropZone( {\n\t\tdropZoneElement,\n\t\trootClientId: clientId,\n\t\tparentClientId,\n\t} );\n\n\tconst ref = useMergeRefs( [\n\t\tprops.ref,\n\t\t__unstableDisableDropZone ||\n\t\tisDropZoneDisabled ||\n\t\t( layout?.isManualPlacement &&\n\t\t\twindow.__experimentalEnableGridInteractivity )\n\t\t\t? null\n\t\t\t: blockDropZoneRef,\n\t] );\n\n\tconst innerBlocksProps = {\n\t\t__experimentalCaptureToolbars,\n\t\tlayout,\n\t\tname,\n\t\tblockType,\n\t\tparentLock,\n\t\tdefaultLayout,\n\t\t...options,\n\t};\n\tconst InnerBlocks =\n\t\tinnerBlocksProps.value && innerBlocksProps.onChange\n\t\t\t? ControlledInnerBlocks\n\t\t\t: UncontrolledInnerBlocks;\n\n\treturn {\n\t\t...props,\n\t\tref,\n\t\tclassName: clsx(\n\t\t\tprops.className,\n\t\t\t'block-editor-block-list__layout',\n\t\t\t__unstableDisableLayoutClassNames ? '' : layoutClassNames,\n\t\t\t{\n\t\t\t\t'has-overlay': hasOverlay,\n\t\t\t}\n\t\t),\n\t\tchildren: clientId ? (\n\t\t\t<InnerBlocks { ...innerBlocksProps } clientId={ clientId } />\n\t\t) : (\n\t\t\t<BlockListItems { ...options } />\n\t\t),\n\t};\n}\n\nuseInnerBlocksProps.save = getInnerBlocksProps;\n\n// Expose default appender placeholders as components.\nForwardedInnerBlocks.DefaultBlockAppender = DefaultBlockAppender;\nForwardedInnerBlocks.ButtonBlockAppender = ButtonBlockAppender;\n\nForwardedInnerBlocks.Content = () => useInnerBlocksProps.save().children;\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/inner-blocks/README.md\n */\nexport default ForwardedInnerBlocks;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_compose","_element","_data","_blocks","_buttonBlockAppender","_defaultBlockAppender","_useNestedSettingsUpdate","_useInnerBlockTemplateSync","_useBlockContext","_blockList","_blockContext","_context","_useBlockSync","_store","_useBlockDropZone","_lockUnlock","_jsxRuntime","EMPTY_OBJECT","BlockContext","children","clientId","context","useBlockContext","jsx","BlockContextProvider","value","BlockListItemsMemo","memo","BlockListItems","UncontrolledInnerBlocks","props","allowedBlocks","prioritizedInserterBlocks","defaultBlock","directInsert","__experimentalDefaultBlock","__experimentalDirectInsert","template","templateLock","wrapperRef","templateInsertUpdatesSelection","__experimentalCaptureToolbars","captureToolbars","__experimentalAppenderTagName","renderAppender","orientation","placeholder","layout","name","blockType","parentLock","defaultLayout","useNestedSettingsUpdate","useInnerBlockTemplateSync","defaultLayoutBlockSupport","getBlockSupport","allowSizingOnChildren","usedLayout","memoedLayout","useMemo","items","rootClientId","providesContext","Object","keys","length","ControlledInnerBlocks","useBlockSync","ForwardedInnerBlocks","forwardRef","ref","innerBlocksProps","useInnerBlocksProps","className","options","__unstableDisableLayoutClassNames","__unstableDisableDropZone","dropZoneElement","__unstableLayoutClassNames","layoutClassNames","useBlockEditContext","selected","useSelect","select","getBlockName","isBlockSelected","hasSelectedInnerBlock","__unstableGetEditorMode","getTemplateLock","getBlockRootClientId","getBlockEditingMode","getBlockSettings","isDragging","getSettings","unlock","blockEditorStore","_isDropZoneDisabled","isDropZoneDisabled","hasBlockSupport","getBlockType","blocksStore","blockName","enableClickThrough","blockEditingMode","parentClientId","sectionRootClientId","hasOverlay","blockDropZoneRef","useBlockDropZone","useMergeRefs","isManualPlacement","window","__experimentalEnableGridInteractivity","InnerBlocks","onChange","clsx","save","getInnerBlocksProps","DefaultBlockAppender","ButtonBlockAppender","Content","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/inner-blocks/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useMergeRefs } from '@wordpress/compose';\nimport { forwardRef, useMemo, memo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport {\n\tgetBlockSupport,\n\tstore as blocksStore,\n\t__unstableGetInnerBlocksProps as getInnerBlocksProps,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport ButtonBlockAppender from './button-block-appender';\nimport DefaultBlockAppender from './default-block-appender';\nimport useNestedSettingsUpdate from './use-nested-settings-update';\nimport useInnerBlockTemplateSync from './use-inner-block-template-sync';\nimport useBlockContext from './use-block-context';\nimport { BlockListItems } from '../block-list';\nimport { BlockContextProvider } from '../block-context';\nimport { useBlockEditContext } from '../block-edit/context';\nimport useBlockSync from '../provider/use-block-sync';\nimport { store as blockEditorStore } from '../../store';\nimport useBlockDropZone from '../use-block-drop-zone';\nimport { unlock } from '../../lock-unlock';\n\nconst EMPTY_OBJECT = {};\n\nfunction BlockContext( { children, clientId } ) {\n\tconst context = useBlockContext( clientId );\n\treturn (\n\t\t<BlockContextProvider value={ context }>\n\t\t\t{ children }\n\t\t</BlockContextProvider>\n\t);\n}\n\nconst BlockListItemsMemo = memo( BlockListItems );\n\n/**\n * InnerBlocks is a component which allows a single block to have multiple blocks\n * as children. The UncontrolledInnerBlocks component is used whenever the inner\n * blocks are not controlled by another entity. In other words, it is normally\n * used for inner blocks in the post editor\n *\n * @param {Object} props The component props.\n */\nfunction UncontrolledInnerBlocks( props ) {\n\tconst {\n\t\tclientId,\n\t\tallowedBlocks,\n\t\tprioritizedInserterBlocks,\n\t\tdefaultBlock,\n\t\tdirectInsert,\n\t\t__experimentalDefaultBlock,\n\t\t__experimentalDirectInsert,\n\t\ttemplate,\n\t\ttemplateLock,\n\t\twrapperRef,\n\t\ttemplateInsertUpdatesSelection,\n\t\t__experimentalCaptureToolbars: captureToolbars,\n\t\t__experimentalAppenderTagName,\n\t\trenderAppender,\n\t\torientation,\n\t\tplaceholder,\n\t\tlayout,\n\t\tname,\n\t\tblockType,\n\t\tparentLock,\n\t\tdefaultLayout,\n\t} = props;\n\n\tuseNestedSettingsUpdate(\n\t\tclientId,\n\t\tparentLock,\n\t\tallowedBlocks,\n\t\tprioritizedInserterBlocks,\n\t\tdefaultBlock,\n\t\tdirectInsert,\n\t\t__experimentalDefaultBlock,\n\t\t__experimentalDirectInsert,\n\t\ttemplateLock,\n\t\tcaptureToolbars,\n\t\torientation,\n\t\tlayout\n\t);\n\n\tuseInnerBlockTemplateSync(\n\t\tclientId,\n\t\ttemplate,\n\t\ttemplateLock,\n\t\ttemplateInsertUpdatesSelection\n\t);\n\n\tconst defaultLayoutBlockSupport =\n\t\tgetBlockSupport( name, 'layout' ) ||\n\t\tgetBlockSupport( name, '__experimentalLayout' ) ||\n\t\tEMPTY_OBJECT;\n\n\tconst { allowSizingOnChildren = false } = defaultLayoutBlockSupport;\n\tconst usedLayout = layout || defaultLayoutBlockSupport;\n\n\tconst memoedLayout = useMemo(\n\t\t() => ( {\n\t\t\t// Default layout will know about any content/wide size defined by the theme.\n\t\t\t...defaultLayout,\n\t\t\t...usedLayout,\n\t\t\t...( allowSizingOnChildren && {\n\t\t\t\tallowSizingOnChildren: true,\n\t\t\t} ),\n\t\t} ),\n\t\t[ defaultLayout, usedLayout, allowSizingOnChildren ]\n\t);\n\n\t// For controlled inner blocks, we don't want a change in blocks to\n\t// re-render the blocks list.\n\tconst items = (\n\t\t<BlockListItemsMemo\n\t\t\trootClientId={ clientId }\n\t\t\trenderAppender={ renderAppender }\n\t\t\t__experimentalAppenderTagName={ __experimentalAppenderTagName }\n\t\t\tlayout={ memoedLayout }\n\t\t\twrapperRef={ wrapperRef }\n\t\t\tplaceholder={ placeholder }\n\t\t/>\n\t);\n\n\tif (\n\t\t! blockType?.providesContext ||\n\t\tObject.keys( blockType.providesContext ).length === 0\n\t) {\n\t\treturn items;\n\t}\n\n\treturn <BlockContext clientId={ clientId }>{ items }</BlockContext>;\n}\n\n/**\n * The controlled inner blocks component wraps the uncontrolled inner blocks\n * component with the blockSync hook. This keeps the innerBlocks of the block in\n * the block-editor store in sync with the blocks of the controlling entity. An\n * example of an inner block controller is a template part block, which provides\n * its own blocks from the template part entity data source.\n *\n * @param {Object} props The component props.\n */\nfunction ControlledInnerBlocks( props ) {\n\tuseBlockSync( props );\n\treturn <UncontrolledInnerBlocks { ...props } />;\n}\n\nconst ForwardedInnerBlocks = forwardRef( ( props, ref ) => {\n\tconst innerBlocksProps = useInnerBlocksProps( { ref }, props );\n\treturn (\n\t\t<div className=\"block-editor-inner-blocks\">\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</div>\n\t);\n} );\n\n/**\n * This hook is used to lightly mark an element as an inner blocks wrapper\n * element. Call this hook and pass the returned props to the element to mark as\n * an inner blocks wrapper, automatically rendering inner blocks as children. If\n * you define a ref for the element, it is important to pass the ref to this\n * hook, which the hook in turn will pass to the component through the props it\n * returns. Optionally, you can also pass any other props through this hook, and\n * they will be merged and returned.\n *\n * @param {Object} props Optional. Props to pass to the element. Must contain\n * the ref if one is defined.\n * @param {Object} options Optional. Inner blocks options.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/inner-blocks/README.md\n */\nexport function useInnerBlocksProps( props = {}, options = {} ) {\n\tconst {\n\t\t__unstableDisableLayoutClassNames,\n\t\t__unstableDisableDropZone,\n\t\tdropZoneElement,\n\t} = options;\n\tconst {\n\t\tclientId,\n\t\tlayout = null,\n\t\t__unstableLayoutClassNames: layoutClassNames = '',\n\t} = useBlockEditContext();\n\tconst selected = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockName,\n\t\t\t\tisBlockSelected,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\t__unstableGetEditorMode,\n\t\t\t\tgetTemplateLock,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetBlockEditingMode,\n\t\t\t\tgetBlockSettings,\n\t\t\t\tisDragging,\n\t\t\t\tgetSettings,\n\t\t\t} = unlock( select( blockEditorStore ) );\n\t\t\tlet _isDropZoneDisabled;\n\n\t\t\tif ( ! clientId ) {\n\t\t\t\treturn { isDropZoneDisabled: _isDropZoneDisabled };\n\t\t\t}\n\n\t\t\tconst { hasBlockSupport, getBlockType } = select( blocksStore );\n\t\t\tconst blockName = getBlockName( clientId );\n\t\t\tconst enableClickThrough =\n\t\t\t\t__unstableGetEditorMode() === 'navigation';\n\t\t\tconst blockEditingMode = getBlockEditingMode( clientId );\n\t\t\tconst parentClientId = getBlockRootClientId( clientId );\n\t\t\tconst [ defaultLayout ] = getBlockSettings( clientId, 'layout' );\n\n\t\t\t_isDropZoneDisabled = blockEditingMode === 'disabled';\n\n\t\t\tif ( __unstableGetEditorMode() === 'zoom-out' ) {\n\t\t\t\t// In zoom out mode, we want to disable the drop zone for the sections.\n\t\t\t\t// The inner blocks belonging to the section drop zone is\n\t\t\t\t// already disabled by the blocks themselves being disabled.\n\t\t\t\tconst { sectionRootClientId } = unlock( getSettings() );\n\n\t\t\t\t_isDropZoneDisabled = clientId !== sectionRootClientId;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\t__experimentalCaptureToolbars: hasBlockSupport(\n\t\t\t\t\tblockName,\n\t\t\t\t\t'__experimentalExposeControlsToChildren',\n\t\t\t\t\tfalse\n\t\t\t\t),\n\t\t\t\thasOverlay:\n\t\t\t\t\tblockName !== 'core/template' &&\n\t\t\t\t\t! isBlockSelected( clientId ) &&\n\t\t\t\t\t! hasSelectedInnerBlock( clientId, true ) &&\n\t\t\t\t\tenableClickThrough &&\n\t\t\t\t\t! isDragging(),\n\t\t\t\tname: blockName,\n\t\t\t\tblockType: getBlockType( blockName ),\n\t\t\t\tparentLock: getTemplateLock( parentClientId ),\n\t\t\t\tparentClientId,\n\t\t\t\tisDropZoneDisabled: _isDropZoneDisabled,\n\t\t\t\tdefaultLayout,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst {\n\t\t__experimentalCaptureToolbars,\n\t\thasOverlay,\n\t\tname,\n\t\tblockType,\n\t\tparentLock,\n\t\tparentClientId,\n\t\tisDropZoneDisabled,\n\t\tdefaultLayout,\n\t} = selected;\n\n\tconst blockDropZoneRef = useBlockDropZone( {\n\t\tdropZoneElement,\n\t\trootClientId: clientId,\n\t\tparentClientId,\n\t} );\n\n\tconst ref = useMergeRefs( [\n\t\tprops.ref,\n\t\t__unstableDisableDropZone ||\n\t\tisDropZoneDisabled ||\n\t\t( layout?.isManualPlacement &&\n\t\t\twindow.__experimentalEnableGridInteractivity )\n\t\t\t? null\n\t\t\t: blockDropZoneRef,\n\t] );\n\n\tconst innerBlocksProps = {\n\t\t__experimentalCaptureToolbars,\n\t\tlayout,\n\t\tname,\n\t\tblockType,\n\t\tparentLock,\n\t\tdefaultLayout,\n\t\t...options,\n\t};\n\tconst InnerBlocks =\n\t\tinnerBlocksProps.value && innerBlocksProps.onChange\n\t\t\t? ControlledInnerBlocks\n\t\t\t: UncontrolledInnerBlocks;\n\n\treturn {\n\t\t...props,\n\t\tref,\n\t\tclassName: clsx(\n\t\t\tprops.className,\n\t\t\t'block-editor-block-list__layout',\n\t\t\t__unstableDisableLayoutClassNames ? '' : layoutClassNames,\n\t\t\t{\n\t\t\t\t'has-overlay': hasOverlay,\n\t\t\t}\n\t\t),\n\t\tchildren: clientId ? (\n\t\t\t<InnerBlocks { ...innerBlocksProps } clientId={ clientId } />\n\t\t) : (\n\t\t\t<BlockListItems { ...options } />\n\t\t),\n\t};\n}\n\nuseInnerBlocksProps.save = getInnerBlocksProps;\n\n// Expose default appender placeholders as components.\nForwardedInnerBlocks.DefaultBlockAppender = DefaultBlockAppender;\nForwardedInnerBlocks.ButtonBlockAppender = ButtonBlockAppender;\n\nForwardedInnerBlocks.Content = () => useInnerBlocksProps.save().children;\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/inner-blocks/README.md\n */\nexport default ForwardedInnerBlocks;\n"],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
+ var _compose = require("@wordpress/compose");
7
8
  var _i18n = require("@wordpress/i18n");
8
9
  var _components = require("@wordpress/components");
9
10
  var _icons = require("@wordpress/icons");
@@ -26,6 +27,15 @@ function CategoryTabs({
26
27
  onSelectCategory,
27
28
  children
28
29
  }) {
30
+ // Copied from InterfaceSkeleton.
31
+ const ANIMATION_DURATION = 0.25;
32
+ const disableMotion = (0, _compose.useReducedMotion)();
33
+ const defaultTransition = {
34
+ type: 'tween',
35
+ duration: disableMotion ? 0 : ANIMATION_DURATION,
36
+ ease: [0.6, 0, 0.4, 1]
37
+ };
38
+ const previousSelectedCategory = (0, _compose.usePrevious)(selectedCategory);
29
39
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Tabs, {
30
40
  className: "block-editor-inserter__category-tabs",
31
41
  selectOnMove: false,
@@ -53,8 +63,25 @@ function CategoryTabs({
53
63
  }), categories.map(category => /*#__PURE__*/(0, _jsxRuntime.jsx)(Tabs.TabPanel, {
54
64
  tabId: category.name,
55
65
  focusable: false,
56
- className: "block-editor-inserter__category-panel",
57
- children: children
66
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__unstableMotion.div, {
67
+ className: "block-editor-inserter__category-panel",
68
+ initial: !previousSelectedCategory ? 'closed' : 'open',
69
+ animate: "open",
70
+ variants: {
71
+ open: {
72
+ transform: 'translateX( 0 )',
73
+ transitionEnd: {
74
+ zIndex: '1'
75
+ }
76
+ },
77
+ closed: {
78
+ transform: 'translateX( -100% )',
79
+ zIndex: '-1'
80
+ }
81
+ },
82
+ transition: defaultTransition,
83
+ children: children
84
+ })
58
85
  }, category.name))]
59
86
  });
60
87
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_icons","_lockUnlock","_jsxRuntime","Tabs","unlock","componentsPrivateApis","CategoryTabs","categories","selectedCategory","onSelectCategory","children","jsxs","className","selectOnMove","selectedTabId","name","orientation","onSelect","categoryId","find","category","jsx","TabList","map","Tab","tabId","label","undefined","__experimentalHStack","FlexBlock","Icon","icon","isRTL","chevronLeft","chevronRight","TabPanel","focusable","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/inserter/category-tabs/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isRTL } from '@wordpress/i18n';\nimport {\n\t__experimentalHStack as HStack,\n\tFlexBlock,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { Icon, chevronRight, chevronLeft } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nfunction CategoryTabs( {\n\tcategories,\n\tselectedCategory,\n\tonSelectCategory,\n\tchildren,\n} ) {\n\treturn (\n\t\t<Tabs\n\t\t\tclassName=\"block-editor-inserter__category-tabs\"\n\t\t\tselectOnMove={ false }\n\t\t\tselectedTabId={ selectedCategory ? selectedCategory.name : null }\n\t\t\torientation=\"vertical\"\n\t\t\tonSelect={ ( categoryId ) => {\n\t\t\t\t// Pass the full category object\n\t\t\t\tonSelectCategory(\n\t\t\t\t\tcategories.find(\n\t\t\t\t\t\t( category ) => category.name === categoryId\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} }\n\t\t>\n\t\t\t<Tabs.TabList className=\"block-editor-inserter__category-tablist\">\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<Tabs.Tab\n\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\ttabId={ category.name }\n\t\t\t\t\t\tclassName=\"block-editor-inserter__category-tab\"\n\t\t\t\t\t\taria-label={ category.label }\n\t\t\t\t\t\taria-current={\n\t\t\t\t\t\t\tcategory === selectedCategory ? 'true' : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<HStack>\n\t\t\t\t\t\t\t<FlexBlock>{ category.label }</FlexBlock>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ticon={ isRTL() ? chevronLeft : chevronRight }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t</Tabs.Tab>\n\t\t\t\t) ) }\n\t\t\t</Tabs.TabList>\n\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\tkey={ category.name }\n\t\t\t\t\ttabId={ category.name }\n\t\t\t\t\tfocusable={ false }\n\t\t\t\t\tclassName=\"block-editor-inserter__category-panel\"\n\t\t\t\t>\n\t\t\t\t\t{ children }\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t) ) }\n\t\t</Tabs>\n\t);\n}\n\nexport default CategoryTabs;\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAKA,IAAAE,MAAA,GAAAF,OAAA;AAKA,IAAAG,WAAA,GAAAH,OAAA;AAA8C,IAAAI,WAAA,GAAAJ,OAAA;AAd9C;AACA;AACA;;AASA;AACA;AACA;;AAGA,MAAM;EAAEK;AAAK,CAAC,GAAG,IAAAC,kBAAM,EAAEC,uBAAsB,CAAC;AAEhD,SAASC,YAAYA,CAAE;EACtBC,UAAU;EACVC,gBAAgB;EAChBC,gBAAgB;EAChBC;AACD,CAAC,EAAG;EACH,oBACC,IAAAR,WAAA,CAAAS,IAAA,EAACR,IAAI;IACJS,SAAS,EAAC,sCAAsC;IAChDC,YAAY,EAAG,KAAO;IACtBC,aAAa,EAAGN,gBAAgB,GAAGA,gBAAgB,CAACO,IAAI,GAAG,IAAM;IACjEC,WAAW,EAAC,UAAU;IACtBC,QAAQ,EAAKC,UAAU,IAAM;MAC5B;MACAT,gBAAgB,CACfF,UAAU,CAACY,IAAI,CACZC,QAAQ,IAAMA,QAAQ,CAACL,IAAI,KAAKG,UACnC,CACD,CAAC;IACF,CAAG;IAAAR,QAAA,gBAEH,IAAAR,WAAA,CAAAmB,GAAA,EAAClB,IAAI,CAACmB,OAAO;MAACV,SAAS,EAAC,yCAAyC;MAAAF,QAAA,EAC9DH,UAAU,CAACgB,GAAG,CAAIH,QAAQ,iBAC3B,IAAAlB,WAAA,CAAAmB,GAAA,EAAClB,IAAI,CAACqB,GAAG;QAERC,KAAK,EAAGL,QAAQ,CAACL,IAAM;QACvBH,SAAS,EAAC,qCAAqC;QAC/C,cAAaQ,QAAQ,CAACM,KAAO;QAC7B,gBACCN,QAAQ,KAAKZ,gBAAgB,GAAG,MAAM,GAAGmB,SACzC;QAAAjB,QAAA,eAED,IAAAR,WAAA,CAAAS,IAAA,EAACZ,WAAA,CAAA6B,oBAAM;UAAAlB,QAAA,gBACN,IAAAR,WAAA,CAAAmB,GAAA,EAACtB,WAAA,CAAA8B,SAAS;YAAAnB,QAAA,EAAGU,QAAQ,CAACM;UAAK,CAAa,CAAC,eACzC,IAAAxB,WAAA,CAAAmB,GAAA,EAACrB,MAAA,CAAA8B,IAAI;YACJC,IAAI,EAAG,IAAAC,WAAK,EAAC,CAAC,GAAGC,kBAAW,GAAGC;UAAc,CAC7C,CAAC;QAAA,CACK;MAAC,GAbHd,QAAQ,CAACL,IAcN,CACT;IAAC,CACU,CAAC,EACbR,UAAU,CAACgB,GAAG,CAAIH,QAAQ,iBAC3B,IAAAlB,WAAA,CAAAmB,GAAA,EAAClB,IAAI,CAACgC,QAAQ;MAEbV,KAAK,EAAGL,QAAQ,CAACL,IAAM;MACvBqB,SAAS,EAAG,KAAO;MACnBxB,SAAS,EAAC,uCAAuC;MAAAF,QAAA,EAE/CA;IAAQ,GALJU,QAAQ,CAACL,IAMD,CACd,CAAC;EAAA,CACE,CAAC;AAET;AAAC,IAAAsB,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEcjC,YAAY","ignoreList":[]}
1
+ {"version":3,"names":["_compose","require","_i18n","_components","_icons","_lockUnlock","_jsxRuntime","Tabs","unlock","componentsPrivateApis","CategoryTabs","categories","selectedCategory","onSelectCategory","children","ANIMATION_DURATION","disableMotion","useReducedMotion","defaultTransition","type","duration","ease","previousSelectedCategory","usePrevious","jsxs","className","selectOnMove","selectedTabId","name","orientation","onSelect","categoryId","find","category","jsx","TabList","map","Tab","tabId","label","undefined","__experimentalHStack","FlexBlock","Icon","icon","isRTL","chevronLeft","chevronRight","TabPanel","focusable","__unstableMotion","div","initial","animate","variants","open","transform","transitionEnd","zIndex","closed","transition","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/inserter/category-tabs/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { usePrevious, useReducedMotion } from '@wordpress/compose';\nimport { isRTL } from '@wordpress/i18n';\nimport {\n\t__experimentalHStack as HStack,\n\tFlexBlock,\n\tprivateApis as componentsPrivateApis,\n\t__unstableMotion as motion,\n} from '@wordpress/components';\nimport { Icon, chevronRight, chevronLeft } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nfunction CategoryTabs( {\n\tcategories,\n\tselectedCategory,\n\tonSelectCategory,\n\tchildren,\n} ) {\n\t// Copied from InterfaceSkeleton.\n\tconst ANIMATION_DURATION = 0.25;\n\tconst disableMotion = useReducedMotion();\n\tconst defaultTransition = {\n\t\ttype: 'tween',\n\t\tduration: disableMotion ? 0 : ANIMATION_DURATION,\n\t\tease: [ 0.6, 0, 0.4, 1 ],\n\t};\n\n\tconst previousSelectedCategory = usePrevious( selectedCategory );\n\n\treturn (\n\t\t<Tabs\n\t\t\tclassName=\"block-editor-inserter__category-tabs\"\n\t\t\tselectOnMove={ false }\n\t\t\tselectedTabId={ selectedCategory ? selectedCategory.name : null }\n\t\t\torientation=\"vertical\"\n\t\t\tonSelect={ ( categoryId ) => {\n\t\t\t\t// Pass the full category object\n\t\t\t\tonSelectCategory(\n\t\t\t\t\tcategories.find(\n\t\t\t\t\t\t( category ) => category.name === categoryId\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} }\n\t\t>\n\t\t\t<Tabs.TabList className=\"block-editor-inserter__category-tablist\">\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<Tabs.Tab\n\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\ttabId={ category.name }\n\t\t\t\t\t\tclassName=\"block-editor-inserter__category-tab\"\n\t\t\t\t\t\taria-label={ category.label }\n\t\t\t\t\t\taria-current={\n\t\t\t\t\t\t\tcategory === selectedCategory ? 'true' : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<HStack>\n\t\t\t\t\t\t\t<FlexBlock>{ category.label }</FlexBlock>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ticon={ isRTL() ? chevronLeft : chevronRight }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t</Tabs.Tab>\n\t\t\t\t) ) }\n\t\t\t</Tabs.TabList>\n\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\tkey={ category.name }\n\t\t\t\t\ttabId={ category.name }\n\t\t\t\t\tfocusable={ false }\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName=\"block-editor-inserter__category-panel\"\n\t\t\t\t\t\tinitial={\n\t\t\t\t\t\t\t! previousSelectedCategory ? 'closed' : 'open'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tanimate=\"open\"\n\t\t\t\t\t\tvariants={ {\n\t\t\t\t\t\t\topen: {\n\t\t\t\t\t\t\t\ttransform: 'translateX( 0 )',\n\t\t\t\t\t\t\t\ttransitionEnd: {\n\t\t\t\t\t\t\t\t\tzIndex: '1',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tclosed: {\n\t\t\t\t\t\t\t\ttransform: 'translateX( -100% )',\n\t\t\t\t\t\t\t\tzIndex: '-1',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ttransition={ defaultTransition }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</motion.div>\n\t\t\t\t</Tabs.TabPanel>\n\t\t\t) ) }\n\t\t</Tabs>\n\t);\n}\n\nexport default CategoryTabs;\n"],"mappings":"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","ignoreList":[]}
@@ -31,7 +31,8 @@ function InserterLibrary({
31
31
  onPatternCategorySelection,
32
32
  onSelect = noop,
33
33
  shouldFocusBlock = false,
34
- onClose
34
+ onClose,
35
+ __experimentalSearchInputRef
35
36
  }, ref) {
36
37
  const {
37
38
  destinationRootClientId
@@ -58,7 +59,8 @@ function InserterLibrary({
58
59
  __experimentalInitialCategory: __experimentalInitialCategory,
59
60
  shouldFocusBlock: shouldFocusBlock,
60
61
  ref: ref,
61
- onClose: onClose
62
+ onClose: onClose,
63
+ __experimentalSearchInputRef: __experimentalSearchInputRef
62
64
  });
63
65
  }
64
66
  const PrivateInserterLibrary = exports.PrivateInserterLibrary = (0, _element.forwardRef)(InserterLibrary);
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_element","_menu","_store","_jsxRuntime","noop","InserterLibrary","rootClientId","clientId","isAppender","showInserterHelpPanel","showMostUsedBlocks","__experimentalInsertionIndex","__experimentalInitialTab","__experimentalInitialCategory","__experimentalFilterValue","onPatternCategorySelection","onSelect","shouldFocusBlock","onClose","ref","destinationRootClientId","useSelect","select","getBlockRootClientId","blockEditorStore","_rootClientId","undefined","jsx","PrivateInserterMenu","PrivateInserterLibrary","exports","forwardRef","PublicInserterLibrary","props","_default","default"],"sources":["@wordpress/block-editor/src/components/inserter/library.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { PrivateInserterMenu } from './menu';\nimport { store as blockEditorStore } from '../../store';\n\nconst noop = () => {};\n\nfunction InserterLibrary(\n\t{\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\tshowInserterHelpPanel,\n\t\tshowMostUsedBlocks = false,\n\t\t__experimentalInsertionIndex,\n\t\t__experimentalInitialTab,\n\t\t__experimentalInitialCategory,\n\t\t__experimentalFilterValue,\n\t\tonPatternCategorySelection,\n\t\tonSelect = noop,\n\t\tshouldFocusBlock = false,\n\t\tonClose,\n\t},\n\tref\n) {\n\tconst { destinationRootClientId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId } = select( blockEditorStore );\n\t\t\tconst _rootClientId =\n\t\t\t\trootClientId || getBlockRootClientId( clientId ) || undefined;\n\t\t\treturn {\n\t\t\t\tdestinationRootClientId: _rootClientId,\n\t\t\t};\n\t\t},\n\t\t[ clientId, rootClientId ]\n\t);\n\n\treturn (\n\t\t<PrivateInserterMenu\n\t\t\tonSelect={ onSelect }\n\t\t\trootClientId={ destinationRootClientId }\n\t\t\tclientId={ clientId }\n\t\t\tisAppender={ isAppender }\n\t\t\tshowInserterHelpPanel={ showInserterHelpPanel }\n\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t__experimentalInsertionIndex={ __experimentalInsertionIndex }\n\t\t\t__experimentalFilterValue={ __experimentalFilterValue }\n\t\t\tonPatternCategorySelection={ onPatternCategorySelection }\n\t\t\t__experimentalInitialTab={ __experimentalInitialTab }\n\t\t\t__experimentalInitialCategory={ __experimentalInitialCategory }\n\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\tref={ ref }\n\t\t\tonClose={ onClose }\n\t\t/>\n\t);\n}\n\nexport const PrivateInserterLibrary = forwardRef( InserterLibrary );\n\nfunction PublicInserterLibrary( props, ref ) {\n\treturn (\n\t\t<PrivateInserterLibrary\n\t\t\t{ ...props }\n\t\t\tonPatternCategorySelection={ undefined }\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( PublicInserterLibrary );\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAKA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAAwD,IAAAI,WAAA,GAAAJ,OAAA;AAVxD;AACA;AACA;;AAIA;AACA;AACA;;AAIA,MAAMK,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;AAErB,SAASC,eAAeA,CACvB;EACCC,YAAY;EACZC,QAAQ;EACRC,UAAU;EACVC,qBAAqB;EACrBC,kBAAkB,GAAG,KAAK;EAC1BC,4BAA4B;EAC5BC,wBAAwB;EACxBC,6BAA6B;EAC7BC,yBAAyB;EACzBC,0BAA0B;EAC1BC,QAAQ,GAAGZ,IAAI;EACfa,gBAAgB,GAAG,KAAK;EACxBC;AACD,CAAC,EACDC,GAAG,EACF;EACD,MAAM;IAAEC;EAAwB,CAAC,GAAG,IAAAC,eAAS,EAC1CC,MAAM,IAAM;IACb,MAAM;MAAEC;IAAqB,CAAC,GAAGD,MAAM,CAAEE,YAAiB,CAAC;IAC3D,MAAMC,aAAa,GAClBnB,YAAY,IAAIiB,oBAAoB,CAAEhB,QAAS,CAAC,IAAImB,SAAS;IAC9D,OAAO;MACNN,uBAAuB,EAAEK;IAC1B,CAAC;EACF,CAAC,EACD,CAAElB,QAAQ,EAAED,YAAY,CACzB,CAAC;EAED,oBACC,IAAAH,WAAA,CAAAwB,GAAA,EAAC1B,KAAA,CAAA2B,mBAAmB;IACnBZ,QAAQ,EAAGA,QAAU;IACrBV,YAAY,EAAGc,uBAAyB;IACxCb,QAAQ,EAAGA,QAAU;IACrBC,UAAU,EAAGA,UAAY;IACzBC,qBAAqB,EAAGA,qBAAuB;IAC/CC,kBAAkB,EAAGA,kBAAoB;IACzCC,4BAA4B,EAAGA,4BAA8B;IAC7DG,yBAAyB,EAAGA,yBAA2B;IACvDC,0BAA0B,EAAGA,0BAA4B;IACzDH,wBAAwB,EAAGA,wBAA0B;IACrDC,6BAA6B,EAAGA,6BAA+B;IAC/DI,gBAAgB,EAAGA,gBAAkB;IACrCE,GAAG,EAAGA,GAAK;IACXD,OAAO,EAAGA;EAAS,CACnB,CAAC;AAEJ;AAEO,MAAMW,sBAAsB,GAAAC,OAAA,CAAAD,sBAAA,GAAG,IAAAE,mBAAU,EAAE1B,eAAgB,CAAC;AAEnE,SAAS2B,qBAAqBA,CAAEC,KAAK,EAAEd,GAAG,EAAG;EAC5C,oBACC,IAAAhB,WAAA,CAAAwB,GAAA,EAACE,sBAAsB;IAAA,GACjBI,KAAK;IACVlB,0BAA0B,EAAGW,SAAW;IACxCP,GAAG,EAAGA;EAAK,CACX,CAAC;AAEJ;AAAC,IAAAe,QAAA,GAAAJ,OAAA,CAAAK,OAAA,GAEc,IAAAJ,mBAAU,EAAEC,qBAAsB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_data","require","_element","_menu","_store","_jsxRuntime","noop","InserterLibrary","rootClientId","clientId","isAppender","showInserterHelpPanel","showMostUsedBlocks","__experimentalInsertionIndex","__experimentalInitialTab","__experimentalInitialCategory","__experimentalFilterValue","onPatternCategorySelection","onSelect","shouldFocusBlock","onClose","__experimentalSearchInputRef","ref","destinationRootClientId","useSelect","select","getBlockRootClientId","blockEditorStore","_rootClientId","undefined","jsx","PrivateInserterMenu","PrivateInserterLibrary","exports","forwardRef","PublicInserterLibrary","props","_default","default"],"sources":["@wordpress/block-editor/src/components/inserter/library.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { PrivateInserterMenu } from './menu';\nimport { store as blockEditorStore } from '../../store';\n\nconst noop = () => {};\n\nfunction InserterLibrary(\n\t{\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\tshowInserterHelpPanel,\n\t\tshowMostUsedBlocks = false,\n\t\t__experimentalInsertionIndex,\n\t\t__experimentalInitialTab,\n\t\t__experimentalInitialCategory,\n\t\t__experimentalFilterValue,\n\t\tonPatternCategorySelection,\n\t\tonSelect = noop,\n\t\tshouldFocusBlock = false,\n\t\tonClose,\n\t\t__experimentalSearchInputRef,\n\t},\n\tref\n) {\n\tconst { destinationRootClientId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId } = select( blockEditorStore );\n\t\t\tconst _rootClientId =\n\t\t\t\trootClientId || getBlockRootClientId( clientId ) || undefined;\n\t\t\treturn {\n\t\t\t\tdestinationRootClientId: _rootClientId,\n\t\t\t};\n\t\t},\n\t\t[ clientId, rootClientId ]\n\t);\n\n\treturn (\n\t\t<PrivateInserterMenu\n\t\t\tonSelect={ onSelect }\n\t\t\trootClientId={ destinationRootClientId }\n\t\t\tclientId={ clientId }\n\t\t\tisAppender={ isAppender }\n\t\t\tshowInserterHelpPanel={ showInserterHelpPanel }\n\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t__experimentalInsertionIndex={ __experimentalInsertionIndex }\n\t\t\t__experimentalFilterValue={ __experimentalFilterValue }\n\t\t\tonPatternCategorySelection={ onPatternCategorySelection }\n\t\t\t__experimentalInitialTab={ __experimentalInitialTab }\n\t\t\t__experimentalInitialCategory={ __experimentalInitialCategory }\n\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\tref={ ref }\n\t\t\tonClose={ onClose }\n\t\t\t__experimentalSearchInputRef={ __experimentalSearchInputRef }\n\t\t/>\n\t);\n}\n\nexport const PrivateInserterLibrary = forwardRef( InserterLibrary );\n\nfunction PublicInserterLibrary( props, ref ) {\n\treturn (\n\t\t<PrivateInserterLibrary\n\t\t\t{ ...props }\n\t\t\tonPatternCategorySelection={ undefined }\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( PublicInserterLibrary );\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAKA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAAwD,IAAAI,WAAA,GAAAJ,OAAA;AAVxD;AACA;AACA;;AAIA;AACA;AACA;;AAIA,MAAMK,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;AAErB,SAASC,eAAeA,CACvB;EACCC,YAAY;EACZC,QAAQ;EACRC,UAAU;EACVC,qBAAqB;EACrBC,kBAAkB,GAAG,KAAK;EAC1BC,4BAA4B;EAC5BC,wBAAwB;EACxBC,6BAA6B;EAC7BC,yBAAyB;EACzBC,0BAA0B;EAC1BC,QAAQ,GAAGZ,IAAI;EACfa,gBAAgB,GAAG,KAAK;EACxBC,OAAO;EACPC;AACD,CAAC,EACDC,GAAG,EACF;EACD,MAAM;IAAEC;EAAwB,CAAC,GAAG,IAAAC,eAAS,EAC1CC,MAAM,IAAM;IACb,MAAM;MAAEC;IAAqB,CAAC,GAAGD,MAAM,CAAEE,YAAiB,CAAC;IAC3D,MAAMC,aAAa,GAClBpB,YAAY,IAAIkB,oBAAoB,CAAEjB,QAAS,CAAC,IAAIoB,SAAS;IAC9D,OAAO;MACNN,uBAAuB,EAAEK;IAC1B,CAAC;EACF,CAAC,EACD,CAAEnB,QAAQ,EAAED,YAAY,CACzB,CAAC;EAED,oBACC,IAAAH,WAAA,CAAAyB,GAAA,EAAC3B,KAAA,CAAA4B,mBAAmB;IACnBb,QAAQ,EAAGA,QAAU;IACrBV,YAAY,EAAGe,uBAAyB;IACxCd,QAAQ,EAAGA,QAAU;IACrBC,UAAU,EAAGA,UAAY;IACzBC,qBAAqB,EAAGA,qBAAuB;IAC/CC,kBAAkB,EAAGA,kBAAoB;IACzCC,4BAA4B,EAAGA,4BAA8B;IAC7DG,yBAAyB,EAAGA,yBAA2B;IACvDC,0BAA0B,EAAGA,0BAA4B;IACzDH,wBAAwB,EAAGA,wBAA0B;IACrDC,6BAA6B,EAAGA,6BAA+B;IAC/DI,gBAAgB,EAAGA,gBAAkB;IACrCG,GAAG,EAAGA,GAAK;IACXF,OAAO,EAAGA,OAAS;IACnBC,4BAA4B,EAAGA;EAA8B,CAC7D,CAAC;AAEJ;AAEO,MAAMW,sBAAsB,GAAAC,OAAA,CAAAD,sBAAA,GAAG,IAAAE,mBAAU,EAAE3B,eAAgB,CAAC;AAEnE,SAAS4B,qBAAqBA,CAAEC,KAAK,EAAEd,GAAG,EAAG;EAC5C,oBACC,IAAAjB,WAAA,CAAAyB,GAAA,EAACE,sBAAsB;IAAA,GACjBI,KAAK;IACVnB,0BAA0B,EAAGY,SAAW;IACxCP,GAAG,EAAGA;EAAK,CACX,CAAC;AAEJ;AAAC,IAAAe,QAAA,GAAAJ,OAAA,CAAAK,OAAA,GAEc,IAAAJ,mBAAU,EAAEC,qBAAsB,CAAC","ignoreList":[]}
@@ -15,13 +15,14 @@ var _tips = _interopRequireDefault(require("./tips"));
15
15
  var _previewPanel = _interopRequireDefault(require("./preview-panel"));
16
16
  var _blockTypesTab = _interopRequireDefault(require("./block-types-tab"));
17
17
  var _blockPatternsTab = _interopRequireDefault(require("./block-patterns-tab"));
18
- var _patternCategoryPreviewPanel = require("./block-patterns-tab/pattern-category-preview-panel");
18
+ var _patternCategoryPreviews = require("./block-patterns-tab/pattern-category-previews");
19
19
  var _mediaTab = require("./media-tab");
20
20
  var _searchResults = _interopRequireDefault(require("./search-results"));
21
21
  var _useInsertionPoint = _interopRequireDefault(require("./hooks/use-insertion-point"));
22
22
  var _store = require("../../store");
23
23
  var _tabbedSidebar = _interopRequireDefault(require("../tabbed-sidebar"));
24
24
  var _useZoomOut = require("../../hooks/use-zoom-out");
25
+ var _lockUnlock = require("../../lock-unlock");
25
26
  var _jsxRuntime = require("react/jsx-runtime");
26
27
  /**
27
28
  * External dependencies
@@ -51,13 +52,33 @@ function InserterMenu({
51
52
  __experimentalInitialTab,
52
53
  __experimentalInitialCategory
53
54
  }, ref) {
54
- const isZoomOutMode = (0, _data.useSelect)(select => select(_store.store).__unstableGetEditorMode() === 'zoom-out', []);
55
+ const {
56
+ isZoomOutMode,
57
+ inserterSearchInputRef
58
+ } = (0, _data.useSelect)(select => {
59
+ const {
60
+ __unstableGetEditorMode,
61
+ getInserterSearchInputRef
62
+ } = (0, _lockUnlock.unlock)(select(_store.store));
63
+ return {
64
+ isZoomOutMode: __unstableGetEditorMode() === 'zoom-out',
65
+ inserterSearchInputRef: getInserterSearchInputRef()
66
+ };
67
+ }, []);
55
68
  const [filterValue, setFilterValue, delayedFilterValue] = (0, _compose.useDebouncedInput)(__experimentalFilterValue);
56
69
  const [hoveredItem, setHoveredItem] = (0, _element.useState)(null);
57
70
  const [selectedPatternCategory, setSelectedPatternCategory] = (0, _element.useState)(__experimentalInitialCategory);
58
71
  const [patternFilter, setPatternFilter] = (0, _element.useState)('all');
59
72
  const [selectedMediaCategory, setSelectedMediaCategory] = (0, _element.useState)(null);
60
- const [selectedTab, setSelectedTab] = (0, _element.useState)(__experimentalInitialTab);
73
+ function getInitialTab() {
74
+ if (__experimentalInitialTab) {
75
+ return __experimentalInitialTab;
76
+ }
77
+ if (isZoomOutMode) {
78
+ return 'patterns';
79
+ }
80
+ }
81
+ const [selectedTab, setSelectedTab] = (0, _element.useState)(getInitialTab());
61
82
  const [destinationRootClientId, onInsertBlocks, onToggleInsertionPoint] = (0, _useInsertionPoint.default)({
62
83
  rootClientId,
63
84
  clientId,
@@ -77,20 +98,18 @@ function InserterMenu({
77
98
  blockTypesTabRef?.current.querySelector('button').focus();
78
99
  }
79
100
  });
80
- }, [onInsertBlocks, onSelect, shouldFocusBlock]);
101
+ }, [onInsertBlocks, onSelect, ref, shouldFocusBlock]);
81
102
  const onInsertPattern = (0, _element.useCallback)((blocks, patternName) => {
103
+ onToggleInsertionPoint(false);
82
104
  onInsertBlocks(blocks, {
83
105
  patternName
84
106
  });
85
107
  onSelect();
86
- }, [onInsertBlocks, onSelect]);
108
+ }, [onInsertBlocks, onSelect, onToggleInsertionPoint]);
87
109
  const onHover = (0, _element.useCallback)(item => {
88
110
  onToggleInsertionPoint(item);
89
111
  setHoveredItem(item);
90
112
  }, [onToggleInsertionPoint, setHoveredItem]);
91
- const onHoverPattern = (0, _element.useCallback)(item => {
92
- onToggleInsertionPoint(!!item);
93
- }, [onToggleInsertionPoint]);
94
113
  const onClickPatternCategory = (0, _element.useCallback)((patternCategory, filter) => {
95
114
  setSelectedPatternCategory(patternCategory);
96
115
  setPatternFilter(filter);
@@ -116,12 +135,12 @@ function InserterMenu({
116
135
  },
117
136
  value: filterValue,
118
137
  label: (0, _i18n.__)('Search for blocks and patterns'),
119
- placeholder: (0, _i18n.__)('Search')
138
+ placeholder: (0, _i18n.__)('Search'),
139
+ ref: inserterSearchInputRef
120
140
  }), !!delayedFilterValue && /*#__PURE__*/(0, _jsxRuntime.jsx)(_searchResults.default, {
121
141
  filterValue: delayedFilterValue,
122
142
  onSelect: onSelect,
123
143
  onHover: onHover,
124
- onHoverPattern: onHoverPattern,
125
144
  rootClientId: rootClientId,
126
145
  clientId: clientId,
127
146
  isAppender: isAppender,
@@ -131,7 +150,7 @@ function InserterMenu({
131
150
  prioritizePatterns: selectedTab === 'patterns'
132
151
  })]
133
152
  });
134
- }, [selectedTab, hoveredItem, setHoveredItem, setFilterValue, filterValue, delayedFilterValue, onSelect, onHover, onHoverPattern, shouldFocusBlock, clientId, rootClientId, __experimentalInsertionIndex, isAppender]);
153
+ }, [selectedTab, filterValue, inserterSearchInputRef, delayedFilterValue, onSelect, onHover, rootClientId, clientId, isAppender, __experimentalInsertionIndex, shouldFocusBlock, hoveredItem, setFilterValue]);
135
154
  const blocksTab = (0, _element.useMemo)(() => {
136
155
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
137
156
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
@@ -158,16 +177,15 @@ function InserterMenu({
158
177
  onInsert: onInsertPattern,
159
178
  onSelectCategory: onClickPatternCategory,
160
179
  selectedCategory: selectedPatternCategory,
161
- children: showPatternPanel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_patternCategoryPreviewPanel.PatternCategoryPreviewPanel, {
180
+ children: showPatternPanel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_patternCategoryPreviews.PatternCategoryPreviews, {
162
181
  rootClientId: destinationRootClientId,
163
182
  onInsert: onInsertPattern,
164
- onHover: onHoverPattern,
165
183
  category: selectedPatternCategory,
166
184
  patternFilter: patternFilter,
167
185
  showTitlesAsTooltip: true
168
186
  })
169
187
  });
170
- }, [destinationRootClientId, onHoverPattern, onInsertPattern, onClickPatternCategory, patternFilter, selectedPatternCategory, showPatternPanel]);
188
+ }, [destinationRootClientId, onInsertPattern, onClickPatternCategory, patternFilter, selectedPatternCategory, showPatternPanel]);
171
189
  const mediaTab = (0, _element.useMemo)(() => {
172
190
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_mediaTab.MediaTab, {
173
191
  rootClientId: destinationRootClientId,
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_element","_components","_i18n","_compose","_data","_tips","_previewPanel","_blockTypesTab","_blockPatternsTab","_patternCategoryPreviewPanel","_mediaTab","_searchResults","_useInsertionPoint","_store","_tabbedSidebar","_useZoomOut","_jsxRuntime","NOOP","InserterMenu","rootClientId","clientId","isAppender","__experimentalInsertionIndex","onSelect","showInserterHelpPanel","showMostUsedBlocks","__experimentalFilterValue","shouldFocusBlock","onPatternCategorySelection","onClose","__experimentalInitialTab","__experimentalInitialCategory","ref","isZoomOutMode","useSelect","select","blockEditorStore","__unstableGetEditorMode","filterValue","setFilterValue","delayedFilterValue","useDebouncedInput","hoveredItem","setHoveredItem","useState","selectedPatternCategory","setSelectedPatternCategory","patternFilter","setPatternFilter","selectedMediaCategory","setSelectedMediaCategory","selectedTab","setSelectedTab","destinationRootClientId","onInsertBlocks","onToggleInsertionPoint","useInsertionPoint","insertionIndex","blockTypesTabRef","useRef","onInsert","useCallback","blocks","meta","shouldForceFocusBlock","_rootClientId","window","requestAnimationFrame","current","contains","ownerDocument","activeElement","querySelector","focus","onInsertPattern","patternName","onHover","item","onHoverPattern","onClickPatternCategory","patternCategory","filter","showPatternPanel","showMediaPanel","showZoomOut","__experimentalEnableZoomedOutPatternsTab","useZoomOut","inserterSearch","useMemo","jsxs","Fragment","children","jsx","SearchControl","__nextHasNoMarginBottom","className","onChange","value","label","__","placeholder","default","showBlockDirectory","prioritizePatterns","blocksTab","VisuallyHidden","as","patternsTab","onSelectCategory","selectedCategory","PatternCategoryPreviewPanel","category","showTitlesAsTooltip","mediaTab","MediaTab","MediaCategoryPanel","handleSetSelectedTab","tabsRef","useLayoutEffect","clsx","closeButtonLabel","tabs","name","title","panel","Popover","placement","offset","focusOnMount","animate","PrivateInserterMenu","exports","forwardRef","PublicInserterMenu","props","_default"],"sources":["@wordpress/block-editor/src/components/inserter/menu.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tforwardRef,\n\tuseState,\n\tuseCallback,\n\tuseMemo,\n\tuseRef,\n\tuseLayoutEffect,\n} from '@wordpress/element';\nimport { VisuallyHidden, SearchControl, Popover } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDebouncedInput } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport Tips from './tips';\nimport InserterPreviewPanel from './preview-panel';\nimport BlockTypesTab from './block-types-tab';\nimport BlockPatternsTab from './block-patterns-tab';\nimport { PatternCategoryPreviewPanel } from './block-patterns-tab/pattern-category-preview-panel';\nimport { MediaTab, MediaCategoryPanel } from './media-tab';\nimport InserterSearchResults from './search-results';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport { store as blockEditorStore } from '../../store';\nimport TabbedSidebar from '../tabbed-sidebar';\nimport { useZoomOut } from '../../hooks/use-zoom-out';\n\nconst NOOP = () => {};\nfunction InserterMenu(\n\t{\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\t__experimentalInsertionIndex,\n\t\tonSelect,\n\t\tshowInserterHelpPanel,\n\t\tshowMostUsedBlocks,\n\t\t__experimentalFilterValue = '',\n\t\tshouldFocusBlock = true,\n\t\tonPatternCategorySelection,\n\t\tonClose,\n\t\t__experimentalInitialTab,\n\t\t__experimentalInitialCategory,\n\t},\n\tref\n) {\n\tconst isZoomOutMode = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).__unstableGetEditorMode() === 'zoom-out',\n\t\t[]\n\t);\n\tconst [ filterValue, setFilterValue, delayedFilterValue ] =\n\t\tuseDebouncedInput( __experimentalFilterValue );\n\tconst [ hoveredItem, setHoveredItem ] = useState( null );\n\tconst [ selectedPatternCategory, setSelectedPatternCategory ] = useState(\n\t\t__experimentalInitialCategory\n\t);\n\tconst [ patternFilter, setPatternFilter ] = useState( 'all' );\n\tconst [ selectedMediaCategory, setSelectedMediaCategory ] =\n\t\tuseState( null );\n\tconst [ selectedTab, setSelectedTab ] = useState(\n\t\t__experimentalInitialTab\n\t);\n\n\tconst [ destinationRootClientId, onInsertBlocks, onToggleInsertionPoint ] =\n\t\tuseInsertionPoint( {\n\t\t\trootClientId,\n\t\t\tclientId,\n\t\t\tisAppender,\n\t\t\tinsertionIndex: __experimentalInsertionIndex,\n\t\t\tshouldFocusBlock,\n\t\t} );\n\tconst blockTypesTabRef = useRef();\n\n\tconst onInsert = useCallback(\n\t\t( blocks, meta, shouldForceFocusBlock, _rootClientId ) => {\n\t\t\tonInsertBlocks(\n\t\t\t\tblocks,\n\t\t\t\tmeta,\n\t\t\t\tshouldForceFocusBlock,\n\t\t\t\t_rootClientId\n\t\t\t);\n\t\t\tonSelect( blocks );\n\n\t\t\t// Check for focus loss due to filtering blocks by selected block type\n\t\t\twindow.requestAnimationFrame( () => {\n\t\t\t\tif (\n\t\t\t\t\t! shouldFocusBlock &&\n\t\t\t\t\t! blockTypesTabRef?.current.contains(\n\t\t\t\t\t\tref.current.ownerDocument.activeElement\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\t// There has been a focus loss, so focus the first button in the block types tab\n\t\t\t\t\tblockTypesTabRef?.current.querySelector( 'button' ).focus();\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\t\t[ onInsertBlocks, onSelect, shouldFocusBlock ]\n\t);\n\n\tconst onInsertPattern = useCallback(\n\t\t( blocks, patternName ) => {\n\t\t\tonInsertBlocks( blocks, { patternName } );\n\t\t\tonSelect();\n\t\t},\n\t\t[ onInsertBlocks, onSelect ]\n\t);\n\n\tconst onHover = useCallback(\n\t\t( item ) => {\n\t\t\tonToggleInsertionPoint( item );\n\t\t\tsetHoveredItem( item );\n\t\t},\n\t\t[ onToggleInsertionPoint, setHoveredItem ]\n\t);\n\n\tconst onHoverPattern = useCallback(\n\t\t( item ) => {\n\t\t\tonToggleInsertionPoint( !! item );\n\t\t},\n\t\t[ onToggleInsertionPoint ]\n\t);\n\n\tconst onClickPatternCategory = useCallback(\n\t\t( patternCategory, filter ) => {\n\t\t\tsetSelectedPatternCategory( patternCategory );\n\t\t\tsetPatternFilter( filter );\n\t\t\tonPatternCategorySelection?.();\n\t\t},\n\t\t[ setSelectedPatternCategory, onPatternCategorySelection ]\n\t);\n\n\tconst showPatternPanel =\n\t\tselectedTab === 'patterns' &&\n\t\t! delayedFilterValue &&\n\t\t!! selectedPatternCategory;\n\n\tconst showMediaPanel = selectedTab === 'media' && !! selectedMediaCategory;\n\n\tconst showZoomOut =\n\t\tshowPatternPanel && !! window.__experimentalEnableZoomedOutPatternsTab;\n\n\tuseZoomOut( showZoomOut );\n\n\tconst inserterSearch = useMemo( () => {\n\t\tif ( selectedTab === 'media' ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<SearchControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tclassName=\"block-editor-inserter__search\"\n\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\tif ( hoveredItem ) {\n\t\t\t\t\t\t\tsetHoveredItem( null );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetFilterValue( value );\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ filterValue }\n\t\t\t\t\tlabel={ __( 'Search for blocks and patterns' ) }\n\t\t\t\t\tplaceholder={ __( 'Search' ) }\n\t\t\t\t/>\n\t\t\t\t{ !! delayedFilterValue && (\n\t\t\t\t\t<InserterSearchResults\n\t\t\t\t\t\tfilterValue={ delayedFilterValue }\n\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\tonHoverPattern={ onHoverPattern }\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\t\t__experimentalInsertionIndex\n\t\t\t\t\t\t}\n\t\t\t\t\t\tshowBlockDirectory\n\t\t\t\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\t\t\t\tprioritizePatterns={ selectedTab === 'patterns' }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}, [\n\t\tselectedTab,\n\t\thoveredItem,\n\t\tsetHoveredItem,\n\t\tsetFilterValue,\n\t\tfilterValue,\n\t\tdelayedFilterValue,\n\t\tonSelect,\n\t\tonHover,\n\t\tonHoverPattern,\n\t\tshouldFocusBlock,\n\t\tclientId,\n\t\trootClientId,\n\t\t__experimentalInsertionIndex,\n\t\tisAppender,\n\t] );\n\n\tconst blocksTab = useMemo( () => {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div className=\"block-editor-inserter__block-list\">\n\t\t\t\t\t<BlockTypesTab\n\t\t\t\t\t\tref={ blockTypesTabRef }\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t{ showInserterHelpPanel && (\n\t\t\t\t\t<div className=\"block-editor-inserter__tips\">\n\t\t\t\t\t\t<VisuallyHidden as=\"h2\">\n\t\t\t\t\t\t\t{ __( 'A tip for using the block editor' ) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t<Tips />\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsert,\n\t\tonHover,\n\t\tshowMostUsedBlocks,\n\t\tshowInserterHelpPanel,\n\t] );\n\n\tconst patternsTab = useMemo( () => {\n\t\treturn (\n\t\t\t<BlockPatternsTab\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\tonSelectCategory={ onClickPatternCategory }\n\t\t\t\tselectedCategory={ selectedPatternCategory }\n\t\t\t>\n\t\t\t\t{ showPatternPanel && (\n\t\t\t\t\t<PatternCategoryPreviewPanel\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\t\t\tonHover={ onHoverPattern }\n\t\t\t\t\t\tcategory={ selectedPatternCategory }\n\t\t\t\t\t\tpatternFilter={ patternFilter }\n\t\t\t\t\t\tshowTitlesAsTooltip\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockPatternsTab>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonHoverPattern,\n\t\tonInsertPattern,\n\t\tonClickPatternCategory,\n\t\tpatternFilter,\n\t\tselectedPatternCategory,\n\t\tshowPatternPanel,\n\t] );\n\n\tconst mediaTab = useMemo( () => {\n\t\treturn (\n\t\t\t<MediaTab\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tselectedCategory={ selectedMediaCategory }\n\t\t\t\tonSelectCategory={ setSelectedMediaCategory }\n\t\t\t\tonInsert={ onInsert }\n\t\t\t>\n\t\t\t\t{ showMediaPanel && (\n\t\t\t\t\t<MediaCategoryPanel\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\tcategory={ selectedMediaCategory }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</MediaTab>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsert,\n\t\tselectedMediaCategory,\n\t\tsetSelectedMediaCategory,\n\t\tshowMediaPanel,\n\t] );\n\n\tconst handleSetSelectedTab = ( value ) => {\n\t\t// If no longer on patterns tab remove the category setting.\n\t\tif ( value !== 'patterns' ) {\n\t\t\tsetSelectedPatternCategory( null );\n\t\t}\n\t\tsetSelectedTab( value );\n\t};\n\n\t// Focus first active tab, if any\n\tconst tabsRef = useRef();\n\tuseLayoutEffect( () => {\n\t\tif ( tabsRef.current ) {\n\t\t\twindow.requestAnimationFrame( () => {\n\t\t\t\ttabsRef.current\n\t\t\t\t\t.querySelector( '[role=\"tab\"][aria-selected=\"true\"]' )\n\t\t\t\t\t?.focus();\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx( 'block-editor-inserter__menu', {\n\t\t\t\t'show-panel': showPatternPanel || showMediaPanel,\n\t\t\t\t'is-zoom-out': isZoomOutMode,\n\t\t\t} ) }\n\t\t\tref={ ref }\n\t\t>\n\t\t\t<div className=\"block-editor-inserter__main-area\">\n\t\t\t\t<TabbedSidebar\n\t\t\t\t\tref={ tabsRef }\n\t\t\t\t\tonSelect={ handleSetSelectedTab }\n\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\tselectedTab={ selectedTab }\n\t\t\t\t\tcloseButtonLabel={ __( 'Close block inserter' ) }\n\t\t\t\t\ttabs={ [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'blocks',\n\t\t\t\t\t\t\ttitle: __( 'Blocks' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ selectedTab === 'blocks' &&\n\t\t\t\t\t\t\t\t\t\t! delayedFilterValue &&\n\t\t\t\t\t\t\t\t\t\tblocksTab }\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\t{\n\t\t\t\t\t\t\tname: 'patterns',\n\t\t\t\t\t\t\ttitle: __( 'Patterns' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ selectedTab === 'patterns' &&\n\t\t\t\t\t\t\t\t\t\t! delayedFilterValue &&\n\t\t\t\t\t\t\t\t\t\tpatternsTab }\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\t{\n\t\t\t\t\t\t\tname: 'media',\n\t\t\t\t\t\t\ttitle: __( 'Media' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ mediaTab }\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] }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ showInserterHelpPanel && hoveredItem && (\n\t\t\t\t<Popover\n\t\t\t\t\tclassName=\"block-editor-inserter__preview-container__popover\"\n\t\t\t\t\tplacement=\"right-start\"\n\t\t\t\t\toffset={ 16 }\n\t\t\t\t\tfocusOnMount={ false }\n\t\t\t\t\tanimate={ false }\n\t\t\t\t>\n\t\t\t\t\t<InserterPreviewPanel item={ hoveredItem } />\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport const PrivateInserterMenu = forwardRef( InserterMenu );\n\nfunction PublicInserterMenu( props, ref ) {\n\treturn (\n\t\t<PrivateInserterMenu\n\t\t\t{ ...props }\n\t\t\tonPatternCategorySelection={ NOOP }\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( PublicInserterMenu );\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,QAAA,GAAAD,OAAA;AAQA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AAKA,IAAAM,KAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,aAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,cAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,iBAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,4BAAA,GAAAV,OAAA;AACA,IAAAW,SAAA,GAAAX,OAAA;AACA,IAAAY,cAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,kBAAA,GAAAd,sBAAA,CAAAC,OAAA;AACA,IAAAc,MAAA,GAAAd,OAAA;AACA,IAAAe,cAAA,GAAAhB,sBAAA,CAAAC,OAAA;AACA,IAAAgB,WAAA,GAAAhB,OAAA;AAAsD,IAAAiB,WAAA,GAAAjB,OAAA;AAlCtD;AACA;AACA;;AAGA;AACA;AACA;;AAcA;AACA;AACA;;AAaA,MAAMkB,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;AACrB,SAASC,YAAYA,CACpB;EACCC,YAAY;EACZC,QAAQ;EACRC,UAAU;EACVC,4BAA4B;EAC5BC,QAAQ;EACRC,qBAAqB;EACrBC,kBAAkB;EAClBC,yBAAyB,GAAG,EAAE;EAC9BC,gBAAgB,GAAG,IAAI;EACvBC,0BAA0B;EAC1BC,OAAO;EACPC,wBAAwB;EACxBC;AACD,CAAC,EACDC,GAAG,EACF;EACD,MAAMC,aAAa,GAAG,IAAAC,eAAS,EAC5BC,MAAM,IACPA,MAAM,CAAEC,YAAiB,CAAC,CAACC,uBAAuB,CAAC,CAAC,KAAK,UAAU,EACpE,EACD,CAAC;EACD,MAAM,CAAEC,WAAW,EAAEC,cAAc,EAAEC,kBAAkB,CAAE,GACxD,IAAAC,0BAAiB,EAAEf,yBAA0B,CAAC;EAC/C,MAAM,CAAEgB,WAAW,EAAEC,cAAc,CAAE,GAAG,IAAAC,iBAAQ,EAAE,IAAK,CAAC;EACxD,MAAM,CAAEC,uBAAuB,EAAEC,0BAA0B,CAAE,GAAG,IAAAF,iBAAQ,EACvEb,6BACD,CAAC;EACD,MAAM,CAAEgB,aAAa,EAAEC,gBAAgB,CAAE,GAAG,IAAAJ,iBAAQ,EAAE,KAAM,CAAC;EAC7D,MAAM,CAAEK,qBAAqB,EAAEC,wBAAwB,CAAE,GACxD,IAAAN,iBAAQ,EAAE,IAAK,CAAC;EACjB,MAAM,CAAEO,WAAW,EAAEC,cAAc,CAAE,GAAG,IAAAR,iBAAQ,EAC/Cd,wBACD,CAAC;EAED,MAAM,CAAEuB,uBAAuB,EAAEC,cAAc,EAAEC,sBAAsB,CAAE,GACxE,IAAAC,0BAAiB,EAAE;IAClBrC,YAAY;IACZC,QAAQ;IACRC,UAAU;IACVoC,cAAc,EAAEnC,4BAA4B;IAC5CK;EACD,CAAE,CAAC;EACJ,MAAM+B,gBAAgB,GAAG,IAAAC,eAAM,EAAC,CAAC;EAEjC,MAAMC,QAAQ,GAAG,IAAAC,oBAAW,EAC3B,CAAEC,MAAM,EAAEC,IAAI,EAAEC,qBAAqB,EAAEC,aAAa,KAAM;IACzDX,cAAc,CACbQ,MAAM,EACNC,IAAI,EACJC,qBAAqB,EACrBC,aACD,CAAC;IACD1C,QAAQ,CAAEuC,MAAO,CAAC;;IAElB;IACAI,MAAM,CAACC,qBAAqB,CAAE,MAAM;MACnC,IACC,CAAExC,gBAAgB,IAClB,CAAE+B,gBAAgB,EAAEU,OAAO,CAACC,QAAQ,CACnCrC,GAAG,CAACoC,OAAO,CAACE,aAAa,CAACC,aAC3B,CAAC,EACA;QACD;QACAb,gBAAgB,EAAEU,OAAO,CAACI,aAAa,CAAE,QAAS,CAAC,CAACC,KAAK,CAAC,CAAC;MAC5D;IACD,CAAE,CAAC;EACJ,CAAC,EACD,CAAEnB,cAAc,EAAE/B,QAAQ,EAAEI,gBAAgB,CAC7C,CAAC;EAED,MAAM+C,eAAe,GAAG,IAAAb,oBAAW,EAClC,CAAEC,MAAM,EAAEa,WAAW,KAAM;IAC1BrB,cAAc,CAAEQ,MAAM,EAAE;MAAEa;IAAY,CAAE,CAAC;IACzCpD,QAAQ,CAAC,CAAC;EACX,CAAC,EACD,CAAE+B,cAAc,EAAE/B,QAAQ,CAC3B,CAAC;EAED,MAAMqD,OAAO,GAAG,IAAAf,oBAAW,EACxBgB,IAAI,IAAM;IACXtB,sBAAsB,CAAEsB,IAAK,CAAC;IAC9BlC,cAAc,CAAEkC,IAAK,CAAC;EACvB,CAAC,EACD,CAAEtB,sBAAsB,EAAEZ,cAAc,CACzC,CAAC;EAED,MAAMmC,cAAc,GAAG,IAAAjB,oBAAW,EAC/BgB,IAAI,IAAM;IACXtB,sBAAsB,CAAE,CAAC,CAAEsB,IAAK,CAAC;EAClC,CAAC,EACD,CAAEtB,sBAAsB,CACzB,CAAC;EAED,MAAMwB,sBAAsB,GAAG,IAAAlB,oBAAW,EACzC,CAAEmB,eAAe,EAAEC,MAAM,KAAM;IAC9BnC,0BAA0B,CAAEkC,eAAgB,CAAC;IAC7ChC,gBAAgB,CAAEiC,MAAO,CAAC;IAC1BrD,0BAA0B,GAAG,CAAC;EAC/B,CAAC,EACD,CAAEkB,0BAA0B,EAAElB,0BAA0B,CACzD,CAAC;EAED,MAAMsD,gBAAgB,GACrB/B,WAAW,KAAK,UAAU,IAC1B,CAAEX,kBAAkB,IACpB,CAAC,CAAEK,uBAAuB;EAE3B,MAAMsC,cAAc,GAAGhC,WAAW,KAAK,OAAO,IAAI,CAAC,CAAEF,qBAAqB;EAE1E,MAAMmC,WAAW,GAChBF,gBAAgB,IAAI,CAAC,CAAEhB,MAAM,CAACmB,wCAAwC;EAEvE,IAAAC,sBAAU,EAAEF,WAAY,CAAC;EAEzB,MAAMG,cAAc,GAAG,IAAAC,gBAAO,EAAE,MAAM;IACrC,IAAKrC,WAAW,KAAK,OAAO,EAAG;MAC9B,OAAO,IAAI;IACZ;IAEA,oBACC,IAAAnC,WAAA,CAAAyE,IAAA,EAAAzE,WAAA,CAAA0E,QAAA;MAAAC,QAAA,gBACC,IAAA3E,WAAA,CAAA4E,GAAA,EAAC3F,WAAA,CAAA4F,aAAa;QACbC,uBAAuB;QACvBC,SAAS,EAAC,+BAA+B;QACzCC,QAAQ,EAAKC,KAAK,IAAM;UACvB,IAAKvD,WAAW,EAAG;YAClBC,cAAc,CAAE,IAAK,CAAC;UACvB;UACAJ,cAAc,CAAE0D,KAAM,CAAC;QACxB,CAAG;QACHA,KAAK,EAAG3D,WAAa;QACrB4D,KAAK,EAAG,IAAAC,QAAE,EAAE,gCAAiC,CAAG;QAChDC,WAAW,EAAG,IAAAD,QAAE,EAAE,QAAS;MAAG,CAC9B,CAAC,EACA,CAAC,CAAE3D,kBAAkB,iBACtB,IAAAxB,WAAA,CAAA4E,GAAA,EAACjF,cAAA,CAAA0F,OAAqB;QACrB/D,WAAW,EAAGE,kBAAoB;QAClCjB,QAAQ,EAAGA,QAAU;QACrBqD,OAAO,EAAGA,OAAS;QACnBE,cAAc,EAAGA,cAAgB;QACjC3D,YAAY,EAAGA,YAAc;QAC7BC,QAAQ,EAAGA,QAAU;QACrBC,UAAU,EAAGA,UAAY;QACzBC,4BAA4B,EAC3BA,4BACA;QACDgF,kBAAkB;QAClB3E,gBAAgB,EAAGA,gBAAkB;QACrC4E,kBAAkB,EAAGpD,WAAW,KAAK;MAAY,CACjD,CACD;IAAA,CACA,CAAC;EAEL,CAAC,EAAE,CACFA,WAAW,EACXT,WAAW,EACXC,cAAc,EACdJ,cAAc,EACdD,WAAW,EACXE,kBAAkB,EAClBjB,QAAQ,EACRqD,OAAO,EACPE,cAAc,EACdnD,gBAAgB,EAChBP,QAAQ,EACRD,YAAY,EACZG,4BAA4B,EAC5BD,UAAU,CACT,CAAC;EAEH,MAAMmF,SAAS,GAAG,IAAAhB,gBAAO,EAAE,MAAM;IAChC,oBACC,IAAAxE,WAAA,CAAAyE,IAAA,EAAAzE,WAAA,CAAA0E,QAAA;MAAAC,QAAA,gBACC,IAAA3E,WAAA,CAAA4E,GAAA;QAAKG,SAAS,EAAC,mCAAmC;QAAAJ,QAAA,eACjD,IAAA3E,WAAA,CAAA4E,GAAA,EAACrF,cAAA,CAAA8F,OAAa;UACbrE,GAAG,EAAG0B,gBAAkB;UACxBvC,YAAY,EAAGkC,uBAAyB;UACxCO,QAAQ,EAAGA,QAAU;UACrBgB,OAAO,EAAGA,OAAS;UACnBnD,kBAAkB,EAAGA;QAAoB,CACzC;MAAC,CACE,CAAC,EACJD,qBAAqB,iBACtB,IAAAR,WAAA,CAAAyE,IAAA;QAAKM,SAAS,EAAC,6BAA6B;QAAAJ,QAAA,gBAC3C,IAAA3E,WAAA,CAAA4E,GAAA,EAAC3F,WAAA,CAAAwG,cAAc;UAACC,EAAE,EAAC,IAAI;UAAAf,QAAA,EACpB,IAAAQ,QAAE,EAAE,kCAAmC;QAAC,CAC3B,CAAC,eACjB,IAAAnF,WAAA,CAAA4E,GAAA,EAACvF,KAAA,CAAAgG,OAAI,IAAE,CAAC;MAAA,CACJ,CACL;IAAA,CACA,CAAC;EAEL,CAAC,EAAE,CACFhD,uBAAuB,EACvBO,QAAQ,EACRgB,OAAO,EACPnD,kBAAkB,EAClBD,qBAAqB,CACpB,CAAC;EAEH,MAAMmF,WAAW,GAAG,IAAAnB,gBAAO,EAAE,MAAM;IAClC,oBACC,IAAAxE,WAAA,CAAA4E,GAAA,EAACpF,iBAAA,CAAA6F,OAAgB;MAChBlF,YAAY,EAAGkC,uBAAyB;MACxCO,QAAQ,EAAGc,eAAiB;MAC5BkC,gBAAgB,EAAG7B,sBAAwB;MAC3C8B,gBAAgB,EAAGhE,uBAAyB;MAAA8C,QAAA,EAE1CT,gBAAgB,iBACjB,IAAAlE,WAAA,CAAA4E,GAAA,EAACnF,4BAAA,CAAAqG,2BAA2B;QAC3B3F,YAAY,EAAGkC,uBAAyB;QACxCO,QAAQ,EAAGc,eAAiB;QAC5BE,OAAO,EAAGE,cAAgB;QAC1BiC,QAAQ,EAAGlE,uBAAyB;QACpCE,aAAa,EAAGA,aAAe;QAC/BiE,mBAAmB;MAAA,CACnB;IACD,CACgB,CAAC;EAErB,CAAC,EAAE,CACF3D,uBAAuB,EACvByB,cAAc,EACdJ,eAAe,EACfK,sBAAsB,EACtBhC,aAAa,EACbF,uBAAuB,EACvBqC,gBAAgB,CACf,CAAC;EAEH,MAAM+B,QAAQ,GAAG,IAAAzB,gBAAO,EAAE,MAAM;IAC/B,oBACC,IAAAxE,WAAA,CAAA4E,GAAA,EAAClF,SAAA,CAAAwG,QAAQ;MACR/F,YAAY,EAAGkC,uBAAyB;MACxCwD,gBAAgB,EAAG5D,qBAAuB;MAC1C2D,gBAAgB,EAAG1D,wBAA0B;MAC7CU,QAAQ,EAAGA,QAAU;MAAA+B,QAAA,EAEnBR,cAAc,iBACf,IAAAnE,WAAA,CAAA4E,GAAA,EAAClF,SAAA,CAAAyG,kBAAkB;QAClBhG,YAAY,EAAGkC,uBAAyB;QACxCO,QAAQ,EAAGA,QAAU;QACrBmD,QAAQ,EAAG9D;MAAuB,CAClC;IACD,CACQ,CAAC;EAEb,CAAC,EAAE,CACFI,uBAAuB,EACvBO,QAAQ,EACRX,qBAAqB,EACrBC,wBAAwB,EACxBiC,cAAc,CACb,CAAC;EAEH,MAAMiC,oBAAoB,GAAKnB,KAAK,IAAM;IACzC;IACA,IAAKA,KAAK,KAAK,UAAU,EAAG;MAC3BnD,0BAA0B,CAAE,IAAK,CAAC;IACnC;IACAM,cAAc,CAAE6C,KAAM,CAAC;EACxB,CAAC;;EAED;EACA,MAAMoB,OAAO,GAAG,IAAA1D,eAAM,EAAC,CAAC;EACxB,IAAA2D,wBAAe,EAAE,MAAM;IACtB,IAAKD,OAAO,CAACjD,OAAO,EAAG;MACtBF,MAAM,CAACC,qBAAqB,CAAE,MAAM;QACnCkD,OAAO,CAACjD,OAAO,CACbI,aAAa,CAAE,oCAAqC,CAAC,EACpDC,KAAK,CAAC,CAAC;MACX,CAAE,CAAC;IACJ;EACD,CAAC,EAAE,EAAG,CAAC;EAEP,oBACC,IAAAzD,WAAA,CAAAyE,IAAA;IACCM,SAAS,EAAG,IAAAwB,aAAI,EAAE,6BAA6B,EAAE;MAChD,YAAY,EAAErC,gBAAgB,IAAIC,cAAc;MAChD,aAAa,EAAElD;IAChB,CAAE,CAAG;IACLD,GAAG,EAAGA,GAAK;IAAA2D,QAAA,gBAEX,IAAA3E,WAAA,CAAA4E,GAAA;MAAKG,SAAS,EAAC,kCAAkC;MAAAJ,QAAA,eAChD,IAAA3E,WAAA,CAAA4E,GAAA,EAAC9E,cAAA,CAAAuF,OAAa;QACbrE,GAAG,EAAGqF,OAAS;QACf9F,QAAQ,EAAG6F,oBAAsB;QACjCvF,OAAO,EAAGA,OAAS;QACnBsB,WAAW,EAAGA,WAAa;QAC3BqE,gBAAgB,EAAG,IAAArB,QAAE,EAAE,sBAAuB,CAAG;QACjDsB,IAAI,EAAG,CACN;UACCC,IAAI,EAAE,QAAQ;UACdC,KAAK,EAAE,IAAAxB,QAAE,EAAE,QAAS,CAAC;UACrByB,KAAK,eACJ,IAAA5G,WAAA,CAAAyE,IAAA,EAAAzE,WAAA,CAAA0E,QAAA;YAAAC,QAAA,GACGJ,cAAc,EACdpC,WAAW,KAAK,QAAQ,IACzB,CAAEX,kBAAkB,IACpBgE,SAAS;UAAA,CACT;QAEJ,CAAC,EACD;UACCkB,IAAI,EAAE,UAAU;UAChBC,KAAK,EAAE,IAAAxB,QAAE,EAAE,UAAW,CAAC;UACvByB,KAAK,eACJ,IAAA5G,WAAA,CAAAyE,IAAA,EAAAzE,WAAA,CAAA0E,QAAA;YAAAC,QAAA,GACGJ,cAAc,EACdpC,WAAW,KAAK,UAAU,IAC3B,CAAEX,kBAAkB,IACpBmE,WAAW;UAAA,CACX;QAEJ,CAAC,EACD;UACCe,IAAI,EAAE,OAAO;UACbC,KAAK,EAAE,IAAAxB,QAAE,EAAE,OAAQ,CAAC;UACpByB,KAAK,eACJ,IAAA5G,WAAA,CAAAyE,IAAA,EAAAzE,WAAA,CAAA0E,QAAA;YAAAC,QAAA,GACGJ,cAAc,EACd0B,QAAQ;UAAA,CACT;QAEJ,CAAC;MACC,CACH;IAAC,CACE,CAAC,EACJzF,qBAAqB,IAAIkB,WAAW,iBACrC,IAAA1B,WAAA,CAAA4E,GAAA,EAAC3F,WAAA,CAAA4H,OAAO;MACP9B,SAAS,EAAC,mDAAmD;MAC7D+B,SAAS,EAAC,aAAa;MACvBC,MAAM,EAAG,EAAI;MACbC,YAAY,EAAG,KAAO;MACtBC,OAAO,EAAG,KAAO;MAAAtC,QAAA,eAEjB,IAAA3E,WAAA,CAAA4E,GAAA,EAACtF,aAAA,CAAA+F,OAAoB;QAACxB,IAAI,EAAGnC;MAAa,CAAE;IAAC,CACrC,CACT;EAAA,CACG,CAAC;AAER;AAEO,MAAMwF,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,IAAAE,mBAAU,EAAElH,YAAa,CAAC;AAE7D,SAASmH,kBAAkBA,CAAEC,KAAK,EAAEtG,GAAG,EAAG;EACzC,oBACC,IAAAhB,WAAA,CAAA4E,GAAA,EAACsC,mBAAmB;IAAA,GACdI,KAAK;IACV1G,0BAA0B,EAAGX,IAAM;IACnCe,GAAG,EAAGA;EAAK,CACX,CAAC;AAEJ;AAAC,IAAAuG,QAAA,GAAAJ,OAAA,CAAA9B,OAAA,GAEc,IAAA+B,mBAAU,EAAEC,kBAAmB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_element","_components","_i18n","_compose","_data","_tips","_previewPanel","_blockTypesTab","_blockPatternsTab","_patternCategoryPreviews","_mediaTab","_searchResults","_useInsertionPoint","_store","_tabbedSidebar","_useZoomOut","_lockUnlock","_jsxRuntime","NOOP","InserterMenu","rootClientId","clientId","isAppender","__experimentalInsertionIndex","onSelect","showInserterHelpPanel","showMostUsedBlocks","__experimentalFilterValue","shouldFocusBlock","onPatternCategorySelection","onClose","__experimentalInitialTab","__experimentalInitialCategory","ref","isZoomOutMode","inserterSearchInputRef","useSelect","select","__unstableGetEditorMode","getInserterSearchInputRef","unlock","blockEditorStore","filterValue","setFilterValue","delayedFilterValue","useDebouncedInput","hoveredItem","setHoveredItem","useState","selectedPatternCategory","setSelectedPatternCategory","patternFilter","setPatternFilter","selectedMediaCategory","setSelectedMediaCategory","getInitialTab","selectedTab","setSelectedTab","destinationRootClientId","onInsertBlocks","onToggleInsertionPoint","useInsertionPoint","insertionIndex","blockTypesTabRef","useRef","onInsert","useCallback","blocks","meta","shouldForceFocusBlock","_rootClientId","window","requestAnimationFrame","current","contains","ownerDocument","activeElement","querySelector","focus","onInsertPattern","patternName","onHover","item","onClickPatternCategory","patternCategory","filter","showPatternPanel","showMediaPanel","showZoomOut","__experimentalEnableZoomedOutPatternsTab","useZoomOut","inserterSearch","useMemo","jsxs","Fragment","children","jsx","SearchControl","__nextHasNoMarginBottom","className","onChange","value","label","__","placeholder","default","showBlockDirectory","prioritizePatterns","blocksTab","VisuallyHidden","as","patternsTab","onSelectCategory","selectedCategory","PatternCategoryPreviews","category","showTitlesAsTooltip","mediaTab","MediaTab","MediaCategoryPanel","handleSetSelectedTab","tabsRef","useLayoutEffect","clsx","closeButtonLabel","tabs","name","title","panel","Popover","placement","offset","focusOnMount","animate","PrivateInserterMenu","exports","forwardRef","PublicInserterMenu","props","_default"],"sources":["@wordpress/block-editor/src/components/inserter/menu.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tforwardRef,\n\tuseState,\n\tuseCallback,\n\tuseMemo,\n\tuseRef,\n\tuseLayoutEffect,\n} from '@wordpress/element';\nimport { VisuallyHidden, SearchControl, Popover } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDebouncedInput } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport Tips from './tips';\nimport InserterPreviewPanel from './preview-panel';\nimport BlockTypesTab from './block-types-tab';\nimport BlockPatternsTab from './block-patterns-tab';\nimport { PatternCategoryPreviews } from './block-patterns-tab/pattern-category-previews';\nimport { MediaTab, MediaCategoryPanel } from './media-tab';\nimport InserterSearchResults from './search-results';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport { store as blockEditorStore } from '../../store';\nimport TabbedSidebar from '../tabbed-sidebar';\nimport { useZoomOut } from '../../hooks/use-zoom-out';\nimport { unlock } from '../../lock-unlock';\n\nconst NOOP = () => {};\nfunction InserterMenu(\n\t{\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\t__experimentalInsertionIndex,\n\t\tonSelect,\n\t\tshowInserterHelpPanel,\n\t\tshowMostUsedBlocks,\n\t\t__experimentalFilterValue = '',\n\t\tshouldFocusBlock = true,\n\t\tonPatternCategorySelection,\n\t\tonClose,\n\t\t__experimentalInitialTab,\n\t\t__experimentalInitialCategory,\n\t},\n\tref\n) {\n\tconst { isZoomOutMode, inserterSearchInputRef } = useSelect( ( select ) => {\n\t\tconst { __unstableGetEditorMode, getInserterSearchInputRef } = unlock(\n\t\t\tselect( blockEditorStore )\n\t\t);\n\t\treturn {\n\t\t\tisZoomOutMode: __unstableGetEditorMode() === 'zoom-out',\n\t\t\tinserterSearchInputRef: getInserterSearchInputRef(),\n\t\t};\n\t}, [] );\n\n\tconst [ filterValue, setFilterValue, delayedFilterValue ] =\n\t\tuseDebouncedInput( __experimentalFilterValue );\n\tconst [ hoveredItem, setHoveredItem ] = useState( null );\n\tconst [ selectedPatternCategory, setSelectedPatternCategory ] = useState(\n\t\t__experimentalInitialCategory\n\t);\n\tconst [ patternFilter, setPatternFilter ] = useState( 'all' );\n\tconst [ selectedMediaCategory, setSelectedMediaCategory ] =\n\t\tuseState( null );\n\tfunction getInitialTab() {\n\t\tif ( __experimentalInitialTab ) {\n\t\t\treturn __experimentalInitialTab;\n\t\t}\n\n\t\tif ( isZoomOutMode ) {\n\t\t\treturn 'patterns';\n\t\t}\n\t}\n\tconst [ selectedTab, setSelectedTab ] = useState( getInitialTab() );\n\n\tconst [ destinationRootClientId, onInsertBlocks, onToggleInsertionPoint ] =\n\t\tuseInsertionPoint( {\n\t\t\trootClientId,\n\t\t\tclientId,\n\t\t\tisAppender,\n\t\t\tinsertionIndex: __experimentalInsertionIndex,\n\t\t\tshouldFocusBlock,\n\t\t} );\n\tconst blockTypesTabRef = useRef();\n\n\tconst onInsert = useCallback(\n\t\t( blocks, meta, shouldForceFocusBlock, _rootClientId ) => {\n\t\t\tonInsertBlocks(\n\t\t\t\tblocks,\n\t\t\t\tmeta,\n\t\t\t\tshouldForceFocusBlock,\n\t\t\t\t_rootClientId\n\t\t\t);\n\t\t\tonSelect( blocks );\n\n\t\t\t// Check for focus loss due to filtering blocks by selected block type\n\t\t\twindow.requestAnimationFrame( () => {\n\t\t\t\tif (\n\t\t\t\t\t! shouldFocusBlock &&\n\t\t\t\t\t! blockTypesTabRef?.current.contains(\n\t\t\t\t\t\tref.current.ownerDocument.activeElement\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\t// There has been a focus loss, so focus the first button in the block types tab\n\t\t\t\t\tblockTypesTabRef?.current.querySelector( 'button' ).focus();\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\t\t[ onInsertBlocks, onSelect, ref, shouldFocusBlock ]\n\t);\n\n\tconst onInsertPattern = useCallback(\n\t\t( blocks, patternName ) => {\n\t\t\tonToggleInsertionPoint( false );\n\t\t\tonInsertBlocks( blocks, { patternName } );\n\t\t\tonSelect();\n\t\t},\n\t\t[ onInsertBlocks, onSelect, onToggleInsertionPoint ]\n\t);\n\n\tconst onHover = useCallback(\n\t\t( item ) => {\n\t\t\tonToggleInsertionPoint( item );\n\t\t\tsetHoveredItem( item );\n\t\t},\n\t\t[ onToggleInsertionPoint, setHoveredItem ]\n\t);\n\n\tconst onClickPatternCategory = useCallback(\n\t\t( patternCategory, filter ) => {\n\t\t\tsetSelectedPatternCategory( patternCategory );\n\t\t\tsetPatternFilter( filter );\n\t\t\tonPatternCategorySelection?.();\n\t\t},\n\t\t[ setSelectedPatternCategory, onPatternCategorySelection ]\n\t);\n\n\tconst showPatternPanel =\n\t\tselectedTab === 'patterns' &&\n\t\t! delayedFilterValue &&\n\t\t!! selectedPatternCategory;\n\n\tconst showMediaPanel = selectedTab === 'media' && !! selectedMediaCategory;\n\n\tconst showZoomOut =\n\t\tshowPatternPanel && !! window.__experimentalEnableZoomedOutPatternsTab;\n\n\tuseZoomOut( showZoomOut );\n\n\tconst inserterSearch = useMemo( () => {\n\t\tif ( selectedTab === 'media' ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<SearchControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tclassName=\"block-editor-inserter__search\"\n\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\tif ( hoveredItem ) {\n\t\t\t\t\t\t\tsetHoveredItem( null );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetFilterValue( value );\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ filterValue }\n\t\t\t\t\tlabel={ __( 'Search for blocks and patterns' ) }\n\t\t\t\t\tplaceholder={ __( 'Search' ) }\n\t\t\t\t\tref={ inserterSearchInputRef }\n\t\t\t\t/>\n\n\t\t\t\t{ !! delayedFilterValue && (\n\t\t\t\t\t<InserterSearchResults\n\t\t\t\t\t\tfilterValue={ delayedFilterValue }\n\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\t\t__experimentalInsertionIndex\n\t\t\t\t\t\t}\n\t\t\t\t\t\tshowBlockDirectory\n\t\t\t\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\t\t\t\tprioritizePatterns={ selectedTab === 'patterns' }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}, [\n\t\tselectedTab,\n\t\tfilterValue,\n\t\tinserterSearchInputRef,\n\t\tdelayedFilterValue,\n\t\tonSelect,\n\t\tonHover,\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\t__experimentalInsertionIndex,\n\t\tshouldFocusBlock,\n\t\thoveredItem,\n\t\tsetFilterValue,\n\t] );\n\n\tconst blocksTab = useMemo( () => {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div className=\"block-editor-inserter__block-list\">\n\t\t\t\t\t<BlockTypesTab\n\t\t\t\t\t\tref={ blockTypesTabRef }\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t{ showInserterHelpPanel && (\n\t\t\t\t\t<div className=\"block-editor-inserter__tips\">\n\t\t\t\t\t\t<VisuallyHidden as=\"h2\">\n\t\t\t\t\t\t\t{ __( 'A tip for using the block editor' ) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t<Tips />\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsert,\n\t\tonHover,\n\t\tshowMostUsedBlocks,\n\t\tshowInserterHelpPanel,\n\t] );\n\n\tconst patternsTab = useMemo( () => {\n\t\treturn (\n\t\t\t<BlockPatternsTab\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\tonSelectCategory={ onClickPatternCategory }\n\t\t\t\tselectedCategory={ selectedPatternCategory }\n\t\t\t>\n\t\t\t\t{ showPatternPanel && (\n\t\t\t\t\t<PatternCategoryPreviews\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\t\t\tcategory={ selectedPatternCategory }\n\t\t\t\t\t\tpatternFilter={ patternFilter }\n\t\t\t\t\t\tshowTitlesAsTooltip\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockPatternsTab>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsertPattern,\n\t\tonClickPatternCategory,\n\t\tpatternFilter,\n\t\tselectedPatternCategory,\n\t\tshowPatternPanel,\n\t] );\n\n\tconst mediaTab = useMemo( () => {\n\t\treturn (\n\t\t\t<MediaTab\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tselectedCategory={ selectedMediaCategory }\n\t\t\t\tonSelectCategory={ setSelectedMediaCategory }\n\t\t\t\tonInsert={ onInsert }\n\t\t\t>\n\t\t\t\t{ showMediaPanel && (\n\t\t\t\t\t<MediaCategoryPanel\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\tcategory={ selectedMediaCategory }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</MediaTab>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsert,\n\t\tselectedMediaCategory,\n\t\tsetSelectedMediaCategory,\n\t\tshowMediaPanel,\n\t] );\n\n\tconst handleSetSelectedTab = ( value ) => {\n\t\t// If no longer on patterns tab remove the category setting.\n\t\tif ( value !== 'patterns' ) {\n\t\t\tsetSelectedPatternCategory( null );\n\t\t}\n\t\tsetSelectedTab( value );\n\t};\n\n\t// Focus first active tab, if any\n\tconst tabsRef = useRef();\n\tuseLayoutEffect( () => {\n\t\tif ( tabsRef.current ) {\n\t\t\twindow.requestAnimationFrame( () => {\n\t\t\t\ttabsRef.current\n\t\t\t\t\t.querySelector( '[role=\"tab\"][aria-selected=\"true\"]' )\n\t\t\t\t\t?.focus();\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx( 'block-editor-inserter__menu', {\n\t\t\t\t'show-panel': showPatternPanel || showMediaPanel,\n\t\t\t\t'is-zoom-out': isZoomOutMode,\n\t\t\t} ) }\n\t\t\tref={ ref }\n\t\t>\n\t\t\t<div className=\"block-editor-inserter__main-area\">\n\t\t\t\t<TabbedSidebar\n\t\t\t\t\tref={ tabsRef }\n\t\t\t\t\tonSelect={ handleSetSelectedTab }\n\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\tselectedTab={ selectedTab }\n\t\t\t\t\tcloseButtonLabel={ __( 'Close block inserter' ) }\n\t\t\t\t\ttabs={ [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'blocks',\n\t\t\t\t\t\t\ttitle: __( 'Blocks' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ selectedTab === 'blocks' &&\n\t\t\t\t\t\t\t\t\t\t! delayedFilterValue &&\n\t\t\t\t\t\t\t\t\t\tblocksTab }\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\t{\n\t\t\t\t\t\t\tname: 'patterns',\n\t\t\t\t\t\t\ttitle: __( 'Patterns' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ selectedTab === 'patterns' &&\n\t\t\t\t\t\t\t\t\t\t! delayedFilterValue &&\n\t\t\t\t\t\t\t\t\t\tpatternsTab }\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\t{\n\t\t\t\t\t\t\tname: 'media',\n\t\t\t\t\t\t\ttitle: __( 'Media' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ mediaTab }\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] }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ showInserterHelpPanel && hoveredItem && (\n\t\t\t\t<Popover\n\t\t\t\t\tclassName=\"block-editor-inserter__preview-container__popover\"\n\t\t\t\t\tplacement=\"right-start\"\n\t\t\t\t\toffset={ 16 }\n\t\t\t\t\tfocusOnMount={ false }\n\t\t\t\t\tanimate={ false }\n\t\t\t\t>\n\t\t\t\t\t<InserterPreviewPanel item={ hoveredItem } />\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport const PrivateInserterMenu = forwardRef( InserterMenu );\n\nfunction PublicInserterMenu( props, ref ) {\n\treturn (\n\t\t<PrivateInserterMenu\n\t\t\t{ ...props }\n\t\t\tonPatternCategorySelection={ NOOP }\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( PublicInserterMenu );\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,QAAA,GAAAD,OAAA;AAQA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AAKA,IAAAM,KAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,aAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,cAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,iBAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,wBAAA,GAAAV,OAAA;AACA,IAAAW,SAAA,GAAAX,OAAA;AACA,IAAAY,cAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,kBAAA,GAAAd,sBAAA,CAAAC,OAAA;AACA,IAAAc,MAAA,GAAAd,OAAA;AACA,IAAAe,cAAA,GAAAhB,sBAAA,CAAAC,OAAA;AACA,IAAAgB,WAAA,GAAAhB,OAAA;AACA,IAAAiB,WAAA,GAAAjB,OAAA;AAA2C,IAAAkB,WAAA,GAAAlB,OAAA;AAnC3C;AACA;AACA;;AAGA;AACA;AACA;;AAcA;AACA;AACA;;AAcA,MAAMmB,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;AACrB,SAASC,YAAYA,CACpB;EACCC,YAAY;EACZC,QAAQ;EACRC,UAAU;EACVC,4BAA4B;EAC5BC,QAAQ;EACRC,qBAAqB;EACrBC,kBAAkB;EAClBC,yBAAyB,GAAG,EAAE;EAC9BC,gBAAgB,GAAG,IAAI;EACvBC,0BAA0B;EAC1BC,OAAO;EACPC,wBAAwB;EACxBC;AACD,CAAC,EACDC,GAAG,EACF;EACD,MAAM;IAAEC,aAAa;IAAEC;EAAuB,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAC1E,MAAM;MAAEC,uBAAuB;MAAEC;IAA0B,CAAC,GAAG,IAAAC,kBAAM,EACpEH,MAAM,CAAEI,YAAiB,CAC1B,CAAC;IACD,OAAO;MACNP,aAAa,EAAEI,uBAAuB,CAAC,CAAC,KAAK,UAAU;MACvDH,sBAAsB,EAAEI,yBAAyB,CAAC;IACnD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAM,CAAEG,WAAW,EAAEC,cAAc,EAAEC,kBAAkB,CAAE,GACxD,IAAAC,0BAAiB,EAAElB,yBAA0B,CAAC;EAC/C,MAAM,CAAEmB,WAAW,EAAEC,cAAc,CAAE,GAAG,IAAAC,iBAAQ,EAAE,IAAK,CAAC;EACxD,MAAM,CAAEC,uBAAuB,EAAEC,0BAA0B,CAAE,GAAG,IAAAF,iBAAQ,EACvEhB,6BACD,CAAC;EACD,MAAM,CAAEmB,aAAa,EAAEC,gBAAgB,CAAE,GAAG,IAAAJ,iBAAQ,EAAE,KAAM,CAAC;EAC7D,MAAM,CAAEK,qBAAqB,EAAEC,wBAAwB,CAAE,GACxD,IAAAN,iBAAQ,EAAE,IAAK,CAAC;EACjB,SAASO,aAAaA,CAAA,EAAG;IACxB,IAAKxB,wBAAwB,EAAG;MAC/B,OAAOA,wBAAwB;IAChC;IAEA,IAAKG,aAAa,EAAG;MACpB,OAAO,UAAU;IAClB;EACD;EACA,MAAM,CAAEsB,WAAW,EAAEC,cAAc,CAAE,GAAG,IAAAT,iBAAQ,EAAEO,aAAa,CAAC,CAAE,CAAC;EAEnE,MAAM,CAAEG,uBAAuB,EAAEC,cAAc,EAAEC,sBAAsB,CAAE,GACxE,IAAAC,0BAAiB,EAAE;IAClBzC,YAAY;IACZC,QAAQ;IACRC,UAAU;IACVwC,cAAc,EAAEvC,4BAA4B;IAC5CK;EACD,CAAE,CAAC;EACJ,MAAMmC,gBAAgB,GAAG,IAAAC,eAAM,EAAC,CAAC;EAEjC,MAAMC,QAAQ,GAAG,IAAAC,oBAAW,EAC3B,CAAEC,MAAM,EAAEC,IAAI,EAAEC,qBAAqB,EAAEC,aAAa,KAAM;IACzDX,cAAc,CACbQ,MAAM,EACNC,IAAI,EACJC,qBAAqB,EACrBC,aACD,CAAC;IACD9C,QAAQ,CAAE2C,MAAO,CAAC;;IAElB;IACAI,MAAM,CAACC,qBAAqB,CAAE,MAAM;MACnC,IACC,CAAE5C,gBAAgB,IAClB,CAAEmC,gBAAgB,EAAEU,OAAO,CAACC,QAAQ,CACnCzC,GAAG,CAACwC,OAAO,CAACE,aAAa,CAACC,aAC3B,CAAC,EACA;QACD;QACAb,gBAAgB,EAAEU,OAAO,CAACI,aAAa,CAAE,QAAS,CAAC,CAACC,KAAK,CAAC,CAAC;MAC5D;IACD,CAAE,CAAC;EACJ,CAAC,EACD,CAAEnB,cAAc,EAAEnC,QAAQ,EAAES,GAAG,EAAEL,gBAAgB,CAClD,CAAC;EAED,MAAMmD,eAAe,GAAG,IAAAb,oBAAW,EAClC,CAAEC,MAAM,EAAEa,WAAW,KAAM;IAC1BpB,sBAAsB,CAAE,KAAM,CAAC;IAC/BD,cAAc,CAAEQ,MAAM,EAAE;MAAEa;IAAY,CAAE,CAAC;IACzCxD,QAAQ,CAAC,CAAC;EACX,CAAC,EACD,CAAEmC,cAAc,EAAEnC,QAAQ,EAAEoC,sBAAsB,CACnD,CAAC;EAED,MAAMqB,OAAO,GAAG,IAAAf,oBAAW,EACxBgB,IAAI,IAAM;IACXtB,sBAAsB,CAAEsB,IAAK,CAAC;IAC9BnC,cAAc,CAAEmC,IAAK,CAAC;EACvB,CAAC,EACD,CAAEtB,sBAAsB,EAAEb,cAAc,CACzC,CAAC;EAED,MAAMoC,sBAAsB,GAAG,IAAAjB,oBAAW,EACzC,CAAEkB,eAAe,EAAEC,MAAM,KAAM;IAC9BnC,0BAA0B,CAAEkC,eAAgB,CAAC;IAC7ChC,gBAAgB,CAAEiC,MAAO,CAAC;IAC1BxD,0BAA0B,GAAG,CAAC;EAC/B,CAAC,EACD,CAAEqB,0BAA0B,EAAErB,0BAA0B,CACzD,CAAC;EAED,MAAMyD,gBAAgB,GACrB9B,WAAW,KAAK,UAAU,IAC1B,CAAEZ,kBAAkB,IACpB,CAAC,CAAEK,uBAAuB;EAE3B,MAAMsC,cAAc,GAAG/B,WAAW,KAAK,OAAO,IAAI,CAAC,CAAEH,qBAAqB;EAE1E,MAAMmC,WAAW,GAChBF,gBAAgB,IAAI,CAAC,CAAEf,MAAM,CAACkB,wCAAwC;EAEvE,IAAAC,sBAAU,EAAEF,WAAY,CAAC;EAEzB,MAAMG,cAAc,GAAG,IAAAC,gBAAO,EAAE,MAAM;IACrC,IAAKpC,WAAW,KAAK,OAAO,EAAG;MAC9B,OAAO,IAAI;IACZ;IAEA,oBACC,IAAAvC,WAAA,CAAA4E,IAAA,EAAA5E,WAAA,CAAA6E,QAAA;MAAAC,QAAA,gBACC,IAAA9E,WAAA,CAAA+E,GAAA,EAAC/F,WAAA,CAAAgG,aAAa;QACbC,uBAAuB;QACvBC,SAAS,EAAC,+BAA+B;QACzCC,QAAQ,EAAKC,KAAK,IAAM;UACvB,IAAKvD,WAAW,EAAG;YAClBC,cAAc,CAAE,IAAK,CAAC;UACvB;UACAJ,cAAc,CAAE0D,KAAM,CAAC;QACxB,CAAG;QACHA,KAAK,EAAG3D,WAAa;QACrB4D,KAAK,EAAG,IAAAC,QAAE,EAAE,gCAAiC,CAAG;QAChDC,WAAW,EAAG,IAAAD,QAAE,EAAE,QAAS,CAAG;QAC9BtE,GAAG,EAAGE;MAAwB,CAC9B,CAAC,EAEA,CAAC,CAAES,kBAAkB,iBACtB,IAAA3B,WAAA,CAAA+E,GAAA,EAACrF,cAAA,CAAA8F,OAAqB;QACrB/D,WAAW,EAAGE,kBAAoB;QAClCpB,QAAQ,EAAGA,QAAU;QACrByD,OAAO,EAAGA,OAAS;QACnB7D,YAAY,EAAGA,YAAc;QAC7BC,QAAQ,EAAGA,QAAU;QACrBC,UAAU,EAAGA,UAAY;QACzBC,4BAA4B,EAC3BA,4BACA;QACDmF,kBAAkB;QAClB9E,gBAAgB,EAAGA,gBAAkB;QACrC+E,kBAAkB,EAAGnD,WAAW,KAAK;MAAY,CACjD,CACD;IAAA,CACA,CAAC;EAEL,CAAC,EAAE,CACFA,WAAW,EACXd,WAAW,EACXP,sBAAsB,EACtBS,kBAAkB,EAClBpB,QAAQ,EACRyD,OAAO,EACP7D,YAAY,EACZC,QAAQ,EACRC,UAAU,EACVC,4BAA4B,EAC5BK,gBAAgB,EAChBkB,WAAW,EACXH,cAAc,CACb,CAAC;EAEH,MAAMiE,SAAS,GAAG,IAAAhB,gBAAO,EAAE,MAAM;IAChC,oBACC,IAAA3E,WAAA,CAAA4E,IAAA,EAAA5E,WAAA,CAAA6E,QAAA;MAAAC,QAAA,gBACC,IAAA9E,WAAA,CAAA+E,GAAA;QAAKG,SAAS,EAAC,mCAAmC;QAAAJ,QAAA,eACjD,IAAA9E,WAAA,CAAA+E,GAAA,EAACzF,cAAA,CAAAkG,OAAa;UACbxE,GAAG,EAAG8B,gBAAkB;UACxB3C,YAAY,EAAGsC,uBAAyB;UACxCO,QAAQ,EAAGA,QAAU;UACrBgB,OAAO,EAAGA,OAAS;UACnBvD,kBAAkB,EAAGA;QAAoB,CACzC;MAAC,CACE,CAAC,EACJD,qBAAqB,iBACtB,IAAAR,WAAA,CAAA4E,IAAA;QAAKM,SAAS,EAAC,6BAA6B;QAAAJ,QAAA,gBAC3C,IAAA9E,WAAA,CAAA+E,GAAA,EAAC/F,WAAA,CAAA4G,cAAc;UAACC,EAAE,EAAC,IAAI;UAAAf,QAAA,EACpB,IAAAQ,QAAE,EAAE,kCAAmC;QAAC,CAC3B,CAAC,eACjB,IAAAtF,WAAA,CAAA+E,GAAA,EAAC3F,KAAA,CAAAoG,OAAI,IAAE,CAAC;MAAA,CACJ,CACL;IAAA,CACA,CAAC;EAEL,CAAC,EAAE,CACF/C,uBAAuB,EACvBO,QAAQ,EACRgB,OAAO,EACPvD,kBAAkB,EAClBD,qBAAqB,CACpB,CAAC;EAEH,MAAMsF,WAAW,GAAG,IAAAnB,gBAAO,EAAE,MAAM;IAClC,oBACC,IAAA3E,WAAA,CAAA+E,GAAA,EAACxF,iBAAA,CAAAiG,OAAgB;MAChBrF,YAAY,EAAGsC,uBAAyB;MACxCO,QAAQ,EAAGc,eAAiB;MAC5BiC,gBAAgB,EAAG7B,sBAAwB;MAC3C8B,gBAAgB,EAAGhE,uBAAyB;MAAA8C,QAAA,EAE1CT,gBAAgB,iBACjB,IAAArE,WAAA,CAAA+E,GAAA,EAACvF,wBAAA,CAAAyG,uBAAuB;QACvB9F,YAAY,EAAGsC,uBAAyB;QACxCO,QAAQ,EAAGc,eAAiB;QAC5BoC,QAAQ,EAAGlE,uBAAyB;QACpCE,aAAa,EAAGA,aAAe;QAC/BiE,mBAAmB;MAAA,CACnB;IACD,CACgB,CAAC;EAErB,CAAC,EAAE,CACF1D,uBAAuB,EACvBqB,eAAe,EACfI,sBAAsB,EACtBhC,aAAa,EACbF,uBAAuB,EACvBqC,gBAAgB,CACf,CAAC;EAEH,MAAM+B,QAAQ,GAAG,IAAAzB,gBAAO,EAAE,MAAM;IAC/B,oBACC,IAAA3E,WAAA,CAAA+E,GAAA,EAACtF,SAAA,CAAA4G,QAAQ;MACRlG,YAAY,EAAGsC,uBAAyB;MACxCuD,gBAAgB,EAAG5D,qBAAuB;MAC1C2D,gBAAgB,EAAG1D,wBAA0B;MAC7CW,QAAQ,EAAGA,QAAU;MAAA8B,QAAA,EAEnBR,cAAc,iBACf,IAAAtE,WAAA,CAAA+E,GAAA,EAACtF,SAAA,CAAA6G,kBAAkB;QAClBnG,YAAY,EAAGsC,uBAAyB;QACxCO,QAAQ,EAAGA,QAAU;QACrBkD,QAAQ,EAAG9D;MAAuB,CAClC;IACD,CACQ,CAAC;EAEb,CAAC,EAAE,CACFK,uBAAuB,EACvBO,QAAQ,EACRZ,qBAAqB,EACrBC,wBAAwB,EACxBiC,cAAc,CACb,CAAC;EAEH,MAAMiC,oBAAoB,GAAKnB,KAAK,IAAM;IACzC;IACA,IAAKA,KAAK,KAAK,UAAU,EAAG;MAC3BnD,0BAA0B,CAAE,IAAK,CAAC;IACnC;IACAO,cAAc,CAAE4C,KAAM,CAAC;EACxB,CAAC;;EAED;EACA,MAAMoB,OAAO,GAAG,IAAAzD,eAAM,EAAC,CAAC;EACxB,IAAA0D,wBAAe,EAAE,MAAM;IACtB,IAAKD,OAAO,CAAChD,OAAO,EAAG;MACtBF,MAAM,CAACC,qBAAqB,CAAE,MAAM;QACnCiD,OAAO,CAAChD,OAAO,CACbI,aAAa,CAAE,oCAAqC,CAAC,EACpDC,KAAK,CAAC,CAAC;MACX,CAAE,CAAC;IACJ;EACD,CAAC,EAAE,EAAG,CAAC;EAEP,oBACC,IAAA7D,WAAA,CAAA4E,IAAA;IACCM,SAAS,EAAG,IAAAwB,aAAI,EAAE,6BAA6B,EAAE;MAChD,YAAY,EAAErC,gBAAgB,IAAIC,cAAc;MAChD,aAAa,EAAErD;IAChB,CAAE,CAAG;IACLD,GAAG,EAAGA,GAAK;IAAA8D,QAAA,gBAEX,IAAA9E,WAAA,CAAA+E,GAAA;MAAKG,SAAS,EAAC,kCAAkC;MAAAJ,QAAA,eAChD,IAAA9E,WAAA,CAAA+E,GAAA,EAAClF,cAAA,CAAA2F,OAAa;QACbxE,GAAG,EAAGwF,OAAS;QACfjG,QAAQ,EAAGgG,oBAAsB;QACjC1F,OAAO,EAAGA,OAAS;QACnB0B,WAAW,EAAGA,WAAa;QAC3BoE,gBAAgB,EAAG,IAAArB,QAAE,EAAE,sBAAuB,CAAG;QACjDsB,IAAI,EAAG,CACN;UACCC,IAAI,EAAE,QAAQ;UACdC,KAAK,EAAE,IAAAxB,QAAE,EAAE,QAAS,CAAC;UACrByB,KAAK,eACJ,IAAA/G,WAAA,CAAA4E,IAAA,EAAA5E,WAAA,CAAA6E,QAAA;YAAAC,QAAA,GACGJ,cAAc,EACdnC,WAAW,KAAK,QAAQ,IACzB,CAAEZ,kBAAkB,IACpBgE,SAAS;UAAA,CACT;QAEJ,CAAC,EACD;UACCkB,IAAI,EAAE,UAAU;UAChBC,KAAK,EAAE,IAAAxB,QAAE,EAAE,UAAW,CAAC;UACvByB,KAAK,eACJ,IAAA/G,WAAA,CAAA4E,IAAA,EAAA5E,WAAA,CAAA6E,QAAA;YAAAC,QAAA,GACGJ,cAAc,EACdnC,WAAW,KAAK,UAAU,IAC3B,CAAEZ,kBAAkB,IACpBmE,WAAW;UAAA,CACX;QAEJ,CAAC,EACD;UACCe,IAAI,EAAE,OAAO;UACbC,KAAK,EAAE,IAAAxB,QAAE,EAAE,OAAQ,CAAC;UACpByB,KAAK,eACJ,IAAA/G,WAAA,CAAA4E,IAAA,EAAA5E,WAAA,CAAA6E,QAAA;YAAAC,QAAA,GACGJ,cAAc,EACd0B,QAAQ;UAAA,CACT;QAEJ,CAAC;MACC,CACH;IAAC,CACE,CAAC,EACJ5F,qBAAqB,IAAIqB,WAAW,iBACrC,IAAA7B,WAAA,CAAA+E,GAAA,EAAC/F,WAAA,CAAAgI,OAAO;MACP9B,SAAS,EAAC,mDAAmD;MAC7D+B,SAAS,EAAC,aAAa;MACvBC,MAAM,EAAG,EAAI;MACbC,YAAY,EAAG,KAAO;MACtBC,OAAO,EAAG,KAAO;MAAAtC,QAAA,eAEjB,IAAA9E,WAAA,CAAA+E,GAAA,EAAC1F,aAAA,CAAAmG,OAAoB;QAACvB,IAAI,EAAGpC;MAAa,CAAE;IAAC,CACrC,CACT;EAAA,CACG,CAAC;AAER;AAEO,MAAMwF,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,IAAAE,mBAAU,EAAErH,YAAa,CAAC;AAE7D,SAASsH,kBAAkBA,CAAEC,KAAK,EAAEzG,GAAG,EAAG;EACzC,oBACC,IAAAhB,WAAA,CAAA+E,GAAA,EAACsC,mBAAmB;IAAA,GACdI,KAAK;IACV7G,0BAA0B,EAAGX,IAAM;IACnCe,GAAG,EAAGA;EAAK,CACX,CAAC;AAEJ;AAAC,IAAA0G,QAAA,GAAAJ,OAAA,CAAA9B,OAAA,GAEc,IAAA+B,mBAAU,EAAEC,kBAAmB,CAAC","ignoreList":[]}