@wordpress/block-editor 12.9.0 → 12.10.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 (463) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +33 -3
  3. package/build/components/block-canvas/index.js +107 -0
  4. package/build/components/block-canvas/index.js.map +1 -0
  5. package/build/components/block-inspector/index.js +4 -1
  6. package/build/components/block-inspector/index.js.map +1 -1
  7. package/build/components/block-patterns-list/index.js +19 -4
  8. package/build/components/block-patterns-list/index.js.map +1 -1
  9. package/build/components/block-patterns-paging/index.js +66 -0
  10. package/build/components/block-patterns-paging/index.js.map +1 -0
  11. package/build/components/block-settings-menu/block-settings-dropdown.js +28 -0
  12. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  13. package/build/components/block-settings-menu-controls/index.js +4 -7
  14. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  15. package/build/components/block-styles/index.js +1 -0
  16. package/build/components/block-styles/index.js.map +1 -1
  17. package/build/components/block-toolbar/block-toolbar-menu.native.js +3 -7
  18. package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  19. package/build/components/block-tools/block-contextual-toolbar.js +18 -7
  20. package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
  21. package/build/components/block-tools/block-selection-button.js +5 -1
  22. package/build/components/block-tools/block-selection-button.js.map +1 -1
  23. package/build/components/border-radius-control/input-controls.js +1 -1
  24. package/build/components/border-radius-control/input-controls.js.map +1 -1
  25. package/build/components/border-radius-control/linked-button.js +2 -4
  26. package/build/components/border-radius-control/linked-button.js.map +1 -1
  27. package/build/components/colors/with-colors.js.map +1 -1
  28. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js +8 -21
  29. package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  30. package/build/components/default-block-appender/index.native.js +20 -1
  31. package/build/components/default-block-appender/index.native.js.map +1 -1
  32. package/build/components/duotone/utils.js +68 -0
  33. package/build/components/duotone/utils.js.map +1 -1
  34. package/build/components/editor-styles/index.js +28 -9
  35. package/build/components/editor-styles/index.js.map +1 -1
  36. package/build/components/global-styles/hooks.js +2 -101
  37. package/build/components/global-styles/hooks.js.map +1 -1
  38. package/build/components/global-styles/image-settings-panel.js +61 -0
  39. package/build/components/global-styles/image-settings-panel.js.map +1 -0
  40. package/build/components/global-styles/index.js +11 -17
  41. package/build/components/global-styles/index.js.map +1 -1
  42. package/build/components/global-styles/use-global-styles-output.js +19 -15
  43. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  44. package/build/components/global-styles/utils.js +1 -1
  45. package/build/components/global-styles/utils.js.map +1 -1
  46. package/build/components/iframe/index.js +67 -33
  47. package/build/components/iframe/index.js.map +1 -1
  48. package/build/components/image-editor/use-save-image.js +2 -5
  49. package/build/components/image-editor/use-save-image.js.map +1 -1
  50. package/build/components/image-editor/use-transform-image.js +9 -9
  51. package/build/components/image-editor/use-transform-image.js.map +1 -1
  52. package/build/components/index.js +8 -12
  53. package/build/components/index.js.map +1 -1
  54. package/build/components/index.native.js +6 -5
  55. package/build/components/index.native.js.map +1 -1
  56. package/build/components/inner-blocks/use-nested-settings-update.js +13 -7
  57. package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  58. package/build/components/inserter/block-patterns-explorer/explorer.js +12 -6
  59. package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  60. package/build/components/inserter/block-patterns-explorer/patterns-list.js +57 -23
  61. package/build/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  62. package/build/components/inserter/block-patterns-explorer/sidebar.js +24 -9
  63. package/build/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  64. package/build/components/inserter/block-patterns-source-filter.js +54 -0
  65. package/build/components/inserter/block-patterns-source-filter.js.map +1 -0
  66. package/build/components/inserter/block-patterns-sync-filter.js +46 -0
  67. package/build/components/inserter/block-patterns-sync-filter.js.map +1 -0
  68. package/build/components/inserter/block-patterns-tab.js +91 -45
  69. package/build/components/inserter/block-patterns-tab.js.map +1 -1
  70. package/build/components/inserter/hooks/use-patterns-paging.js +57 -0
  71. package/build/components/inserter/hooks/use-patterns-paging.js.map +1 -0
  72. package/build/components/inserter/hooks/use-patterns-state.js +21 -10
  73. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  74. package/build/components/inserter/menu.js +13 -11
  75. package/build/components/inserter/menu.js.map +1 -1
  76. package/build/components/inserter/search-results.js +4 -3
  77. package/build/components/inserter/search-results.js.map +1 -1
  78. package/build/components/inserter/tabs.js +1 -12
  79. package/build/components/inserter/tabs.js.map +1 -1
  80. package/build/components/inspector-controls/block-support-slot-container.js +12 -1
  81. package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
  82. package/build/components/inspector-controls/fill.js +24 -13
  83. package/build/components/inspector-controls/fill.js.map +1 -1
  84. package/build/components/inspector-controls/groups.js +5 -3
  85. package/build/components/inspector-controls/groups.js.map +1 -1
  86. package/build/components/inspector-controls/slot.js +13 -0
  87. package/build/components/inspector-controls/slot.js.map +1 -1
  88. package/build/components/inspector-controls-tabs/styles-tab.js +3 -0
  89. package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  90. package/build/components/link-control/index.js +13 -2
  91. package/build/components/link-control/index.js.map +1 -1
  92. package/build/components/link-control/settings.js +2 -1
  93. package/build/components/link-control/settings.js.map +1 -1
  94. package/build/components/list-view/block-select-button.js +1 -3
  95. package/build/components/list-view/block-select-button.js.map +1 -1
  96. package/build/components/list-view/block.js +13 -1
  97. package/build/components/list-view/block.js.map +1 -1
  98. package/build/components/list-view/use-block-selection.js +29 -24
  99. package/build/components/list-view/use-block-selection.js.map +1 -1
  100. package/build/components/media-placeholder/index.js +2 -2
  101. package/build/components/media-placeholder/index.js.map +1 -1
  102. package/build/components/media-placeholder/index.native.js +11 -11
  103. package/build/components/media-placeholder/index.native.js.map +1 -1
  104. package/build/components/media-replace-flow/index.js +2 -3
  105. package/build/components/media-replace-flow/index.js.map +1 -1
  106. package/build/components/media-upload/constants.js +30 -0
  107. package/build/components/media-upload/constants.js.map +1 -0
  108. package/build/components/media-upload/index.native.js +63 -53
  109. package/build/components/media-upload/index.native.js.map +1 -1
  110. package/build/components/preview-options/index.js +1 -1
  111. package/build/components/preview-options/index.js.map +1 -1
  112. package/build/components/rich-text/index.js +34 -35
  113. package/build/components/rich-text/index.js.map +1 -1
  114. package/build/components/rich-text/index.native.js +14 -32
  115. package/build/components/rich-text/index.native.js.map +1 -1
  116. package/build/components/rich-text/multiline.js +95 -0
  117. package/build/components/rich-text/multiline.js.map +1 -0
  118. package/build/components/rich-text/split-value.js +10 -16
  119. package/build/components/rich-text/split-value.js.map +1 -1
  120. package/build/components/rich-text/use-enter.js +31 -40
  121. package/build/components/rich-text/use-enter.js.map +1 -1
  122. package/build/components/rich-text/use-paste-handler.js +18 -33
  123. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  124. package/build/components/spacing-sizes-control/utils.js +1 -1
  125. package/build/components/spacing-sizes-control/utils.js.map +1 -1
  126. package/build/components/use-block-commands/index.js +30 -18
  127. package/build/components/use-block-commands/index.js.map +1 -1
  128. package/build/components/use-block-display-information/index.js +5 -2
  129. package/build/components/use-block-display-information/index.js.map +1 -1
  130. package/build/hooks/background.js +258 -0
  131. package/build/hooks/background.js.map +1 -0
  132. package/build/hooks/block-hooks.js +188 -0
  133. package/build/hooks/block-hooks.js.map +1 -0
  134. package/build/hooks/block-rename-ui.js +160 -0
  135. package/build/hooks/block-rename-ui.js.map +1 -0
  136. package/build/hooks/duotone.js +29 -42
  137. package/build/hooks/duotone.js.map +1 -1
  138. package/build/hooks/index.js +2 -2
  139. package/build/hooks/index.js.map +1 -1
  140. package/build/hooks/layout.js +31 -14
  141. package/build/hooks/layout.js.map +1 -1
  142. package/build/hooks/position.js +4 -2
  143. package/build/hooks/position.js.map +1 -1
  144. package/build/hooks/style.js +74 -25
  145. package/build/hooks/style.js.map +1 -1
  146. package/build/hooks/utils.js +4 -0
  147. package/build/hooks/utils.js.map +1 -1
  148. package/build/private-apis.js +2 -0
  149. package/build/private-apis.js.map +1 -1
  150. package/build/store/actions.js +33 -10
  151. package/build/store/actions.js.map +1 -1
  152. package/build/store/private-actions.js +42 -8
  153. package/build/store/private-actions.js.map +1 -1
  154. package/build/store/private-selectors.js +23 -0
  155. package/build/store/private-selectors.js.map +1 -1
  156. package/build/store/reducer.js +43 -1
  157. package/build/store/reducer.js.map +1 -1
  158. package/build/store/selectors.js +84 -23
  159. package/build/store/selectors.js.map +1 -1
  160. package/build/store/utils.js +0 -4
  161. package/build/store/utils.js.map +1 -1
  162. package/build-module/components/block-canvas/index.js +97 -0
  163. package/build-module/components/block-canvas/index.js.map +1 -0
  164. package/build-module/components/block-inspector/index.js +4 -1
  165. package/build-module/components/block-inspector/index.js.map +1 -1
  166. package/build-module/components/block-patterns-list/index.js +20 -5
  167. package/build-module/components/block-patterns-list/index.js.map +1 -1
  168. package/build-module/components/block-patterns-paging/index.js +59 -0
  169. package/build-module/components/block-patterns-paging/index.js.map +1 -0
  170. package/build-module/components/block-settings-menu/block-settings-dropdown.js +28 -0
  171. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  172. package/build-module/components/block-settings-menu-controls/index.js +4 -7
  173. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  174. package/build-module/components/block-styles/index.js +1 -0
  175. package/build-module/components/block-styles/index.js.map +1 -1
  176. package/build-module/components/block-toolbar/block-toolbar-menu.native.js +3 -7
  177. package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  178. package/build-module/components/block-tools/block-contextual-toolbar.js +18 -7
  179. package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
  180. package/build-module/components/block-tools/block-selection-button.js +5 -1
  181. package/build-module/components/block-tools/block-selection-button.js.map +1 -1
  182. package/build-module/components/border-radius-control/input-controls.js +1 -1
  183. package/build-module/components/border-radius-control/input-controls.js.map +1 -1
  184. package/build-module/components/border-radius-control/linked-button.js +2 -4
  185. package/build-module/components/border-radius-control/linked-button.js.map +1 -1
  186. package/build-module/components/colors/with-colors.js.map +1 -1
  187. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js +8 -21
  188. package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
  189. package/build-module/components/default-block-appender/index.native.js +20 -1
  190. package/build-module/components/default-block-appender/index.native.js.map +1 -1
  191. package/build-module/components/duotone/utils.js +65 -0
  192. package/build-module/components/duotone/utils.js.map +1 -1
  193. package/build-module/components/editor-styles/index.js +28 -9
  194. package/build-module/components/editor-styles/index.js.map +1 -1
  195. package/build-module/components/global-styles/hooks.js +3 -100
  196. package/build-module/components/global-styles/hooks.js.map +1 -1
  197. package/build-module/components/global-styles/image-settings-panel.js +53 -0
  198. package/build-module/components/global-styles/image-settings-panel.js.map +1 -0
  199. package/build-module/components/global-styles/index.js +2 -2
  200. package/build-module/components/global-styles/index.js.map +1 -1
  201. package/build-module/components/global-styles/use-global-styles-output.js +18 -16
  202. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  203. package/build-module/components/global-styles/utils.js +1 -1
  204. package/build-module/components/global-styles/utils.js.map +1 -1
  205. package/build-module/components/iframe/index.js +66 -33
  206. package/build-module/components/iframe/index.js.map +1 -1
  207. package/build-module/components/image-editor/use-save-image.js +2 -5
  208. package/build-module/components/image-editor/use-save-image.js.map +1 -1
  209. package/build-module/components/image-editor/use-transform-image.js +9 -9
  210. package/build-module/components/image-editor/use-transform-image.js.map +1 -1
  211. package/build-module/components/index.js +1 -1
  212. package/build-module/components/index.js.map +1 -1
  213. package/build-module/components/index.native.js +2 -1
  214. package/build-module/components/index.native.js.map +1 -1
  215. package/build-module/components/inner-blocks/use-nested-settings-update.js +14 -8
  216. package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
  217. package/build-module/components/inserter/block-patterns-explorer/explorer.js +12 -6
  218. package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
  219. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js +59 -25
  220. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
  221. package/build-module/components/inserter/block-patterns-explorer/sidebar.js +23 -9
  222. package/build-module/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
  223. package/build-module/components/inserter/block-patterns-source-filter.js +44 -0
  224. package/build-module/components/inserter/block-patterns-source-filter.js.map +1 -0
  225. package/build-module/components/inserter/block-patterns-sync-filter.js +38 -0
  226. package/build-module/components/inserter/block-patterns-sync-filter.js.map +1 -0
  227. package/build-module/components/inserter/block-patterns-tab.js +87 -46
  228. package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
  229. package/build-module/components/inserter/hooks/use-patterns-paging.js +50 -0
  230. package/build-module/components/inserter/hooks/use-patterns-paging.js.map +1 -0
  231. package/build-module/components/inserter/hooks/use-patterns-state.js +22 -10
  232. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  233. package/build-module/components/inserter/menu.js +13 -11
  234. package/build-module/components/inserter/menu.js.map +1 -1
  235. package/build-module/components/inserter/search-results.js +4 -3
  236. package/build-module/components/inserter/search-results.js.map +1 -1
  237. package/build-module/components/inserter/tabs.js +1 -12
  238. package/build-module/components/inserter/tabs.js.map +1 -1
  239. package/build-module/components/inspector-controls/block-support-slot-container.js +13 -2
  240. package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
  241. package/build-module/components/inspector-controls/fill.js +25 -14
  242. package/build-module/components/inspector-controls/fill.js.map +1 -1
  243. package/build-module/components/inspector-controls/groups.js +5 -3
  244. package/build-module/components/inspector-controls/groups.js.map +1 -1
  245. package/build-module/components/inspector-controls/slot.js +15 -1
  246. package/build-module/components/inspector-controls/slot.js.map +1 -1
  247. package/build-module/components/inspector-controls-tabs/styles-tab.js +3 -0
  248. package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
  249. package/build-module/components/link-control/index.js +13 -2
  250. package/build-module/components/link-control/index.js.map +1 -1
  251. package/build-module/components/link-control/settings.js +2 -1
  252. package/build-module/components/link-control/settings.js.map +1 -1
  253. package/build-module/components/list-view/block-select-button.js +1 -3
  254. package/build-module/components/list-view/block-select-button.js.map +1 -1
  255. package/build-module/components/list-view/block.js +13 -1
  256. package/build-module/components/list-view/block.js.map +1 -1
  257. package/build-module/components/list-view/use-block-selection.js +30 -25
  258. package/build-module/components/list-view/use-block-selection.js.map +1 -1
  259. package/build-module/components/media-placeholder/index.js +2 -2
  260. package/build-module/components/media-placeholder/index.js.map +1 -1
  261. package/build-module/components/media-placeholder/index.native.js +7 -7
  262. package/build-module/components/media-placeholder/index.native.js.map +1 -1
  263. package/build-module/components/media-replace-flow/index.js +2 -3
  264. package/build-module/components/media-replace-flow/index.js.map +1 -1
  265. package/build-module/components/media-upload/constants.js +14 -0
  266. package/build-module/components/media-upload/constants.js.map +1 -0
  267. package/build-module/components/media-upload/index.native.js +53 -34
  268. package/build-module/components/media-upload/index.native.js.map +1 -1
  269. package/build-module/components/preview-options/index.js +1 -1
  270. package/build-module/components/preview-options/index.js.map +1 -1
  271. package/build-module/components/rich-text/index.js +35 -37
  272. package/build-module/components/rich-text/index.js.map +1 -1
  273. package/build-module/components/rich-text/index.native.js +15 -33
  274. package/build-module/components/rich-text/index.native.js.map +1 -1
  275. package/build-module/components/rich-text/multiline.js +87 -0
  276. package/build-module/components/rich-text/multiline.js.map +1 -0
  277. package/build-module/components/rich-text/split-value.js +10 -16
  278. package/build-module/components/rich-text/split-value.js.map +1 -1
  279. package/build-module/components/rich-text/use-enter.js +33 -42
  280. package/build-module/components/rich-text/use-enter.js.map +1 -1
  281. package/build-module/components/rich-text/use-paste-handler.js +19 -34
  282. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  283. package/build-module/components/spacing-sizes-control/utils.js +2 -2
  284. package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
  285. package/build-module/components/use-block-commands/index.js +28 -16
  286. package/build-module/components/use-block-commands/index.js.map +1 -1
  287. package/build-module/components/use-block-display-information/index.js +5 -2
  288. package/build-module/components/use-block-display-information/index.js.map +1 -1
  289. package/build-module/hooks/background.js +244 -0
  290. package/build-module/hooks/background.js.map +1 -0
  291. package/build-module/hooks/block-hooks.js +181 -0
  292. package/build-module/hooks/block-hooks.js.map +1 -0
  293. package/build-module/hooks/block-rename-ui.js +153 -0
  294. package/build-module/hooks/block-rename-ui.js.map +1 -0
  295. package/build-module/hooks/duotone.js +26 -39
  296. package/build-module/hooks/duotone.js.map +1 -1
  297. package/build-module/hooks/index.js +2 -2
  298. package/build-module/hooks/index.js.map +1 -1
  299. package/build-module/hooks/layout.js +33 -16
  300. package/build-module/hooks/layout.js.map +1 -1
  301. package/build-module/hooks/position.js +4 -2
  302. package/build-module/hooks/position.js.map +1 -1
  303. package/build-module/hooks/style.js +73 -24
  304. package/build-module/hooks/style.js.map +1 -1
  305. package/build-module/hooks/utils.js +4 -0
  306. package/build-module/hooks/utils.js.map +1 -1
  307. package/build-module/private-apis.js +2 -0
  308. package/build-module/private-apis.js.map +1 -1
  309. package/build-module/store/actions.js +33 -10
  310. package/build-module/store/actions.js.map +1 -1
  311. package/build-module/store/private-actions.js +39 -8
  312. package/build-module/store/private-actions.js.map +1 -1
  313. package/build-module/store/private-selectors.js +21 -0
  314. package/build-module/store/private-selectors.js.map +1 -1
  315. package/build-module/store/reducer.js +41 -1
  316. package/build-module/store/reducer.js.map +1 -1
  317. package/build-module/store/selectors.js +78 -22
  318. package/build-module/store/selectors.js.map +1 -1
  319. package/build-module/store/utils.js +0 -4
  320. package/build-module/store/utils.js.map +1 -1
  321. package/build-style/content-rtl.css +0 -1
  322. package/build-style/content.css +0 -1
  323. package/build-style/style-rtl.css +174 -131
  324. package/build-style/style.css +174 -131
  325. package/package.json +32 -32
  326. package/src/components/block-canvas/index.js +108 -0
  327. package/src/components/block-inspector/index.js +5 -1
  328. package/src/components/block-list/content.scss +0 -1
  329. package/src/components/block-patterns-list/index.js +32 -7
  330. package/src/components/block-patterns-list/style.scss +26 -9
  331. package/src/components/block-patterns-paging/index.js +92 -0
  332. package/src/components/block-patterns-paging/style.scss +42 -0
  333. package/src/components/block-settings-menu/block-settings-dropdown.js +44 -0
  334. package/src/components/block-settings-menu-controls/index.js +4 -9
  335. package/src/components/block-styles/index.js +1 -0
  336. package/src/components/block-styles/style.scss +3 -3
  337. package/src/components/block-toolbar/block-toolbar-menu.native.js +1 -6
  338. package/src/components/block-tools/block-contextual-toolbar.js +16 -5
  339. package/src/components/block-tools/block-selection-button.js +9 -1
  340. package/src/components/block-tools/style.scss +0 -98
  341. package/src/components/border-radius-control/input-controls.js +1 -1
  342. package/src/components/border-radius-control/linked-button.js +8 -11
  343. package/src/components/color-palette/test/__snapshots__/control.js.snap +34 -21
  344. package/src/components/colors/with-colors.js +3 -2
  345. package/src/components/convert-to-group-buttons/use-convert-to-group-button-props.js +8 -35
  346. package/src/components/default-block-appender/index.native.js +26 -3
  347. package/src/components/duotone/utils.js +65 -0
  348. package/src/components/editor-styles/index.js +32 -23
  349. package/src/components/global-styles/hooks.js +4 -112
  350. package/src/components/global-styles/image-settings-panel.js +71 -0
  351. package/src/components/global-styles/index.js +4 -3
  352. package/src/components/global-styles/use-global-styles-output.js +25 -16
  353. package/src/components/global-styles/utils.js +1 -2
  354. package/src/components/iframe/index.js +72 -33
  355. package/src/components/image-editor/use-save-image.js +2 -9
  356. package/src/components/image-editor/use-transform-image.js +9 -9
  357. package/src/components/index.js +1 -1
  358. package/src/components/index.native.js +2 -2
  359. package/src/components/inner-blocks/use-nested-settings-update.js +15 -10
  360. package/src/components/inserter/block-patterns-explorer/explorer.js +17 -5
  361. package/src/components/inserter/block-patterns-explorer/patterns-list.js +109 -40
  362. package/src/components/inserter/block-patterns-explorer/sidebar.js +23 -8
  363. package/src/components/inserter/block-patterns-source-filter.js +40 -0
  364. package/src/components/inserter/block-patterns-sync-filter.js +35 -0
  365. package/src/components/inserter/block-patterns-tab.js +168 -57
  366. package/src/components/inserter/hooks/use-patterns-paging.js +65 -0
  367. package/src/components/inserter/hooks/use-patterns-state.js +27 -16
  368. package/src/components/inserter/menu.js +15 -17
  369. package/src/components/inserter/search-results.js +6 -4
  370. package/src/components/inserter/style.scss +23 -2
  371. package/src/components/inserter/tabs.js +2 -12
  372. package/src/components/inserter/test/index.native.js +8 -12
  373. package/src/components/inspector-controls/block-support-slot-container.js +19 -3
  374. package/src/components/inspector-controls/fill.js +28 -14
  375. package/src/components/inspector-controls/groups.js +6 -2
  376. package/src/components/inspector-controls/slot.js +28 -3
  377. package/src/components/inspector-controls-tabs/styles-tab.js +4 -0
  378. package/src/components/link-control/index.js +14 -0
  379. package/src/components/link-control/settings.js +1 -0
  380. package/src/components/link-control/style.scss +28 -7
  381. package/src/components/link-control/test/index.js +88 -6
  382. package/src/components/list-view/block-select-button.js +1 -3
  383. package/src/components/list-view/block.js +19 -1
  384. package/src/components/list-view/style.scss +1 -2
  385. package/src/components/list-view/use-block-selection.js +38 -32
  386. package/src/components/media-placeholder/README.md +2 -2
  387. package/src/components/media-placeholder/index.js +2 -2
  388. package/src/components/media-placeholder/index.native.js +11 -12
  389. package/src/components/media-replace-flow/index.js +2 -2
  390. package/src/components/media-replace-flow/test/index.js +5 -23
  391. package/src/components/media-upload/README.md +3 -2
  392. package/src/components/media-upload/constants.js +15 -0
  393. package/src/components/media-upload/index.native.js +66 -40
  394. package/src/components/media-upload/style.native.scss +4 -0
  395. package/src/components/media-upload/test/index.native.js +2 -2
  396. package/src/components/preview-options/README.md +7 -0
  397. package/src/components/preview-options/index.js +1 -1
  398. package/src/components/rich-text/index.js +48 -44
  399. package/src/components/rich-text/index.native.js +14 -42
  400. package/src/components/rich-text/multiline.js +121 -0
  401. package/src/components/rich-text/split-value.js +10 -35
  402. package/src/components/rich-text/use-enter.js +32 -42
  403. package/src/components/rich-text/use-paste-handler.js +16 -40
  404. package/src/components/spacing-sizes-control/style.scss +5 -7
  405. package/src/components/spacing-sizes-control/utils.js +1 -2
  406. package/src/components/use-block-commands/index.js +28 -20
  407. package/src/components/use-block-display-information/index.js +3 -0
  408. package/src/hooks/background.js +288 -0
  409. package/src/hooks/background.scss +57 -0
  410. package/src/hooks/block-hooks.js +257 -0
  411. package/src/hooks/block-hooks.scss +16 -0
  412. package/src/hooks/block-rename-ui.js +230 -0
  413. package/src/hooks/block-rename-ui.scss +3 -0
  414. package/src/hooks/duotone.js +42 -43
  415. package/src/hooks/index.js +2 -2
  416. package/src/hooks/layout.js +31 -33
  417. package/src/hooks/position.js +4 -3
  418. package/src/hooks/style.js +96 -37
  419. package/src/hooks/test/align.native.js +4 -3
  420. package/src/hooks/utils.js +4 -0
  421. package/src/private-apis.js +2 -0
  422. package/src/store/actions.js +52 -10
  423. package/src/store/private-actions.js +37 -6
  424. package/src/store/private-selectors.js +21 -0
  425. package/src/store/reducer.js +38 -0
  426. package/src/store/selectors.js +107 -26
  427. package/src/store/test/actions.js +19 -8
  428. package/src/store/test/private-actions.js +17 -0
  429. package/src/store/test/reducer.js +25 -0
  430. package/src/store/test/selectors.js +130 -123
  431. package/src/store/utils.js +3 -10
  432. package/src/style.scss +4 -0
  433. package/build/components/duotone/components.js +0 -135
  434. package/build/components/duotone/components.js.map +0 -1
  435. package/build/components/duotone/index.js +0 -38
  436. package/build/components/duotone/index.js.map +0 -1
  437. package/build/components/global-styles/behaviors-panel.js +0 -64
  438. package/build/components/global-styles/behaviors-panel.js.map +0 -1
  439. package/build/components/inserter/reusable-blocks-tab.js +0 -85
  440. package/build/components/inserter/reusable-blocks-tab.js.map +0 -1
  441. package/build/hooks/auto-inserting-blocks.js +0 -174
  442. package/build/hooks/auto-inserting-blocks.js.map +0 -1
  443. package/build/hooks/behaviors.js +0 -173
  444. package/build/hooks/behaviors.js.map +0 -1
  445. package/build-module/components/duotone/components.js +0 -126
  446. package/build-module/components/duotone/components.js.map +0 -1
  447. package/build-module/components/duotone/index.js +0 -3
  448. package/build-module/components/duotone/index.js.map +0 -1
  449. package/build-module/components/global-styles/behaviors-panel.js +0 -57
  450. package/build-module/components/global-styles/behaviors-panel.js.map +0 -1
  451. package/build-module/components/inserter/reusable-blocks-tab.js +0 -76
  452. package/build-module/components/inserter/reusable-blocks-tab.js.map +0 -1
  453. package/build-module/hooks/auto-inserting-blocks.js +0 -167
  454. package/build-module/hooks/auto-inserting-blocks.js.map +0 -1
  455. package/build-module/hooks/behaviors.js +0 -166
  456. package/build-module/hooks/behaviors.js.map +0 -1
  457. package/src/components/duotone/components.js +0 -133
  458. package/src/components/duotone/index.js +0 -7
  459. package/src/components/global-styles/behaviors-panel.js +0 -71
  460. package/src/components/inserter/reusable-blocks-tab.js +0 -84
  461. package/src/components/inserter/test/reusable-blocks-tab.js +0 -73
  462. package/src/hooks/auto-inserting-blocks.js +0 -232
  463. package/src/hooks/behaviors.js +0 -206
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","forwardRef","useState","useCallback","useMemo","useImperativeHandle","useRef","VisuallyHidden","SearchControl","__","useSelect","Tips","InserterPreviewPanel","BlockTypesTab","BlockPatternsTabs","BlockPatternsCategoryDialog","ReusableBlocksTab","MediaTab","MediaCategoryDialog","useMediaCategories","InserterSearchResults","useDebouncedInput","useInsertionPoint","InserterTabs","store","blockEditorStore","InserterMenu","rootClientId","clientId","isAppender","__experimentalInsertionIndex","onSelect","showInserterHelpPanel","showMostUsedBlocks","__experimentalFilterValue","shouldFocusBlock","prioritizePatterns","ref","filterValue","setFilterValue","delayedFilterValue","hoveredItem","setHoveredItem","selectedPatternCategory","setSelectedPatternCategory","selectedMediaCategory","setSelectedMediaCategory","selectedTab","setSelectedTab","destinationRootClientId","onInsertBlocks","onToggleInsertionPoint","insertionIndex","showPatterns","inserterItems","select","__experimentalGetAllowedPatterns","getInserterItems","length","hasReusableBlocks","some","category","mediaCategories","showMedia","onInsert","blocks","meta","shouldForceFocusBlock","onInsertPattern","patternName","onHover","item","onHoverPattern","onClickPatternCategory","patternCategory","blocksTab","createElement","Fragment","className","as","patternsTab","onSelectCategory","selectedCategory","reusableBlocksTab","mediaTab","getCurrentTab","tab","name","searchRef","focusSearch","current","focus","showPatternPanel","showAsTabs","showMediaPanel","__nextHasNoMarginBottom","onChange","value","label","placeholder","showBlockDirectory","showReusableBlocks","showTitlesAsTooltip"],"sources":["@wordpress/block-editor/src/components/inserter/menu.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tforwardRef,\n\tuseState,\n\tuseCallback,\n\tuseMemo,\n\tuseImperativeHandle,\n\tuseRef,\n} from '@wordpress/element';\nimport { VisuallyHidden, SearchControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\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 BlockPatternsTabs, {\n\tBlockPatternsCategoryDialog,\n} from './block-patterns-tab';\nimport ReusableBlocksTab from './reusable-blocks-tab';\nimport { MediaTab, MediaCategoryDialog, useMediaCategories } from './media-tab';\nimport InserterSearchResults from './search-results';\nimport useDebouncedInput from './hooks/use-debounced-input';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport InserterTabs from './tabs';\nimport { store as blockEditorStore } from '../../store';\n\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\tprioritizePatterns,\n\t},\n\tref\n) {\n\tconst [ filterValue, setFilterValue, delayedFilterValue ] =\n\t\tuseDebouncedInput( __experimentalFilterValue );\n\tconst [ hoveredItem, setHoveredItem ] = useState( null );\n\tconst [ selectedPatternCategory, setSelectedPatternCategory ] =\n\t\tuseState( null );\n\tconst [ selectedMediaCategory, setSelectedMediaCategory ] =\n\t\tuseState( null );\n\tconst [ selectedTab, setSelectedTab ] = useState( null );\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 { showPatterns, inserterItems } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { __experimentalGetAllowedPatterns, getInserterItems } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn {\n\t\t\t\tshowPatterns: !! __experimentalGetAllowedPatterns(\n\t\t\t\t\tdestinationRootClientId\n\t\t\t\t).length,\n\t\t\t\tinserterItems: getInserterItems( destinationRootClientId ),\n\t\t\t};\n\t\t},\n\t\t[ destinationRootClientId ]\n\t);\n\tconst hasReusableBlocks = useMemo( () => {\n\t\treturn inserterItems.some(\n\t\t\t( { category } ) => category === 'reusable'\n\t\t);\n\t}, [ inserterItems ] );\n\n\tconst mediaCategories = useMediaCategories( destinationRootClientId );\n\tconst showMedia = !! mediaCategories.length;\n\n\tconst onInsert = useCallback(\n\t\t( blocks, meta, shouldForceFocusBlock ) => {\n\t\t\tonInsertBlocks( blocks, meta, shouldForceFocusBlock );\n\t\t\tonSelect();\n\t\t},\n\t\t[ onInsertBlocks, onSelect ]\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 ) => {\n\t\t\tsetSelectedPatternCategory( patternCategory );\n\t\t},\n\t\t[ setSelectedPatternCategory ]\n\t);\n\n\tconst blocksTab = useMemo(\n\t\t() => (\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\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\t[\n\t\t\tdestinationRootClientId,\n\t\t\tonInsert,\n\t\t\tonHover,\n\t\t\tshowMostUsedBlocks,\n\t\t\tshowInserterHelpPanel,\n\t\t]\n\t);\n\n\tconst patternsTab = useMemo(\n\t\t() => (\n\t\t\t<BlockPatternsTabs\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),\n\t\t[\n\t\t\tdestinationRootClientId,\n\t\t\tonInsertPattern,\n\t\t\tonClickPatternCategory,\n\t\t\tselectedPatternCategory,\n\t\t]\n\t);\n\n\tconst reusableBlocksTab = useMemo(\n\t\t() => (\n\t\t\t<ReusableBlocksTab\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tonInsert={ onInsert }\n\t\t\t\tonHover={ onHover }\n\t\t\t/>\n\t\t),\n\t\t[ destinationRootClientId, onInsert, onHover ]\n\t);\n\n\tconst mediaTab = useMemo(\n\t\t() => (\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),\n\t\t[\n\t\t\tdestinationRootClientId,\n\t\t\tonInsert,\n\t\t\tselectedMediaCategory,\n\t\t\tsetSelectedMediaCategory,\n\t\t]\n\t);\n\n\tconst getCurrentTab = useCallback(\n\t\t( tab ) => {\n\t\t\tif ( tab.name === 'blocks' ) {\n\t\t\t\treturn blocksTab;\n\t\t\t} else if ( tab.name === 'patterns' ) {\n\t\t\t\treturn patternsTab;\n\t\t\t} else if ( tab.name === 'reusable' ) {\n\t\t\t\treturn reusableBlocksTab;\n\t\t\t} else if ( tab.name === 'media' ) {\n\t\t\t\treturn mediaTab;\n\t\t\t}\n\t\t},\n\t\t[ blocksTab, patternsTab, reusableBlocksTab, mediaTab ]\n\t);\n\n\tconst searchRef = useRef();\n\tuseImperativeHandle( ref, () => ( {\n\t\tfocusSearch: () => {\n\t\t\tsearchRef.current.focus();\n\t\t},\n\t} ) );\n\n\tconst showPatternPanel =\n\t\tselectedTab === 'patterns' &&\n\t\t! delayedFilterValue &&\n\t\tselectedPatternCategory;\n\tconst showAsTabs =\n\t\t! delayedFilterValue &&\n\t\t( showPatterns || hasReusableBlocks || showMedia );\n\tconst showMediaPanel =\n\t\tselectedTab === 'media' &&\n\t\t! delayedFilterValue &&\n\t\tselectedMediaCategory;\n\treturn (\n\t\t<div className=\"block-editor-inserter__menu\">\n\t\t\t<div\n\t\t\t\tclassName={ classnames( 'block-editor-inserter__main-area', {\n\t\t\t\t\t'show-as-tabs': showAsTabs,\n\t\t\t\t} ) }\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 ) setHoveredItem( null );\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={ searchRef }\n\t\t\t\t/>\n\t\t\t\t{ !! delayedFilterValue && (\n\t\t\t\t\t<div className=\"block-editor-inserter__no-tab-container\">\n\t\t\t\t\t\t<InserterSearchResults\n\t\t\t\t\t\t\tfilterValue={ delayedFilterValue }\n\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\tonHoverPattern={ onHoverPattern }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\t\t\t__experimentalInsertionIndex\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tshowBlockDirectory\n\t\t\t\t\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t\t{ showAsTabs && (\n\t\t\t\t\t<InserterTabs\n\t\t\t\t\t\tshowPatterns={ showPatterns }\n\t\t\t\t\t\tshowReusableBlocks={ hasReusableBlocks }\n\t\t\t\t\t\tshowMedia={ showMedia }\n\t\t\t\t\t\tprioritizePatterns={ prioritizePatterns }\n\t\t\t\t\t\tonSelect={ setSelectedTab }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ getCurrentTab }\n\t\t\t\t\t</InserterTabs>\n\t\t\t\t) }\n\t\t\t\t{ ! delayedFilterValue && ! showAsTabs && (\n\t\t\t\t\t<div className=\"block-editor-inserter__no-tab-container\">\n\t\t\t\t\t\t{ blocksTab }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t\t{ showMediaPanel && (\n\t\t\t\t<MediaCategoryDialog\n\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\tcategory={ selectedMediaCategory }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ showInserterHelpPanel && hoveredItem && (\n\t\t\t\t<InserterPreviewPanel item={ hoveredItem } />\n\t\t\t) }\n\t\t\t{ showPatternPanel && (\n\t\t\t\t<BlockPatternsCategoryDialog\n\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\t\tonHover={ onHoverPattern }\n\t\t\t\t\tcategory={ selectedPatternCategory }\n\t\t\t\t\tshowTitlesAsTooltip\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default forwardRef( InserterMenu );\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","forwardRef","useState","useCallback","useMemo","useImperativeHandle","useRef","VisuallyHidden","SearchControl","__","useSelect","Tips","InserterPreviewPanel","BlockTypesTab","BlockPatternsTabs","BlockPatternsCategoryDialog","MediaTab","MediaCategoryDialog","useMediaCategories","InserterSearchResults","useDebouncedInput","useInsertionPoint","InserterTabs","store","blockEditorStore","InserterMenu","rootClientId","clientId","isAppender","__experimentalInsertionIndex","onSelect","showInserterHelpPanel","showMostUsedBlocks","__experimentalFilterValue","shouldFocusBlock","prioritizePatterns","ref","filterValue","setFilterValue","delayedFilterValue","hoveredItem","setHoveredItem","selectedPatternCategory","setSelectedPatternCategory","patternFilter","setPatternFilter","selectedMediaCategory","setSelectedMediaCategory","selectedTab","setSelectedTab","destinationRootClientId","onInsertBlocks","onToggleInsertionPoint","insertionIndex","showPatterns","inserterItems","select","__experimentalGetAllowedPatterns","getInserterItems","length","hasReusableBlocks","some","category","mediaCategories","showMedia","onInsert","blocks","meta","shouldForceFocusBlock","onInsertPattern","patternName","onHover","item","onHoverPattern","onClickPatternCategory","patternCategory","filter","blocksTab","createElement","Fragment","className","as","patternsTab","onSelectCategory","selectedCategory","mediaTab","getCurrentTab","tab","name","searchRef","focusSearch","current","focus","showPatternPanel","showAsTabs","showMediaPanel","handleSetSelectedTab","value","__nextHasNoMarginBottom","onChange","label","placeholder","showBlockDirectory","showReusableBlocks","showTitlesAsTooltip"],"sources":["@wordpress/block-editor/src/components/inserter/menu.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tforwardRef,\n\tuseState,\n\tuseCallback,\n\tuseMemo,\n\tuseImperativeHandle,\n\tuseRef,\n} from '@wordpress/element';\nimport { VisuallyHidden, SearchControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\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 BlockPatternsTabs, {\n\tBlockPatternsCategoryDialog,\n} from './block-patterns-tab';\nimport { MediaTab, MediaCategoryDialog, useMediaCategories } from './media-tab';\nimport InserterSearchResults from './search-results';\nimport useDebouncedInput from './hooks/use-debounced-input';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport InserterTabs from './tabs';\nimport { store as blockEditorStore } from '../../store';\n\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\tprioritizePatterns,\n\t},\n\tref\n) {\n\tconst [ filterValue, setFilterValue, delayedFilterValue ] =\n\t\tuseDebouncedInput( __experimentalFilterValue );\n\tconst [ hoveredItem, setHoveredItem ] = useState( null );\n\tconst [ selectedPatternCategory, setSelectedPatternCategory ] =\n\t\tuseState( null );\n\tconst [ patternFilter, setPatternFilter ] = useState( 'all' );\n\tconst [ selectedMediaCategory, setSelectedMediaCategory ] =\n\t\tuseState( null );\n\tconst [ selectedTab, setSelectedTab ] = useState( null );\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 { showPatterns, inserterItems } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { __experimentalGetAllowedPatterns, getInserterItems } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn {\n\t\t\t\tshowPatterns: !! __experimentalGetAllowedPatterns(\n\t\t\t\t\tdestinationRootClientId\n\t\t\t\t).length,\n\t\t\t\tinserterItems: getInserterItems( destinationRootClientId ),\n\t\t\t};\n\t\t},\n\t\t[ destinationRootClientId ]\n\t);\n\tconst hasReusableBlocks = useMemo( () => {\n\t\treturn inserterItems.some(\n\t\t\t( { category } ) => category === 'reusable'\n\t\t);\n\t}, [ inserterItems ] );\n\n\tconst mediaCategories = useMediaCategories( destinationRootClientId );\n\tconst showMedia = !! mediaCategories.length;\n\n\tconst onInsert = useCallback(\n\t\t( blocks, meta, shouldForceFocusBlock ) => {\n\t\t\tonInsertBlocks( blocks, meta, shouldForceFocusBlock );\n\t\t\tonSelect();\n\t\t},\n\t\t[ onInsertBlocks, onSelect ]\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},\n\t\t[ setSelectedPatternCategory ]\n\t);\n\n\tconst blocksTab = useMemo(\n\t\t() => (\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\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\t[\n\t\t\tdestinationRootClientId,\n\t\t\tonInsert,\n\t\t\tonHover,\n\t\t\tshowMostUsedBlocks,\n\t\t\tshowInserterHelpPanel,\n\t\t]\n\t);\n\n\tconst patternsTab = useMemo(\n\t\t() => (\n\t\t\t<BlockPatternsTabs\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),\n\t\t[\n\t\t\tdestinationRootClientId,\n\t\t\tonInsertPattern,\n\t\t\tonClickPatternCategory,\n\t\t\tselectedPatternCategory,\n\t\t]\n\t);\n\n\tconst mediaTab = useMemo(\n\t\t() => (\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),\n\t\t[\n\t\t\tdestinationRootClientId,\n\t\t\tonInsert,\n\t\t\tselectedMediaCategory,\n\t\t\tsetSelectedMediaCategory,\n\t\t]\n\t);\n\n\tconst getCurrentTab = useCallback(\n\t\t( tab ) => {\n\t\t\tif ( tab.name === 'blocks' ) {\n\t\t\t\treturn blocksTab;\n\t\t\t} else if ( tab.name === 'patterns' ) {\n\t\t\t\treturn patternsTab;\n\t\t\t} else if ( tab.name === 'media' ) {\n\t\t\t\treturn mediaTab;\n\t\t\t}\n\t\t},\n\t\t[ blocksTab, patternsTab, mediaTab ]\n\t);\n\n\tconst searchRef = useRef();\n\tuseImperativeHandle( ref, () => ( {\n\t\tfocusSearch: () => {\n\t\t\tsearchRef.current.focus();\n\t\t},\n\t} ) );\n\n\tconst showPatternPanel =\n\t\tselectedTab === 'patterns' &&\n\t\t! delayedFilterValue &&\n\t\tselectedPatternCategory;\n\tconst showAsTabs =\n\t\t! delayedFilterValue &&\n\t\t( showPatterns || hasReusableBlocks || showMedia );\n\tconst showMediaPanel =\n\t\tselectedTab === 'media' &&\n\t\t! delayedFilterValue &&\n\t\tselectedMediaCategory;\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\treturn (\n\t\t<div className=\"block-editor-inserter__menu\">\n\t\t\t<div\n\t\t\t\tclassName={ classnames( 'block-editor-inserter__main-area', {\n\t\t\t\t\t'show-as-tabs': showAsTabs,\n\t\t\t\t} ) }\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 ) setHoveredItem( null );\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={ searchRef }\n\t\t\t\t/>\n\t\t\t\t{ !! delayedFilterValue && (\n\t\t\t\t\t<div className=\"block-editor-inserter__no-tab-container\">\n\t\t\t\t\t\t<InserterSearchResults\n\t\t\t\t\t\t\tfilterValue={ delayedFilterValue }\n\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\tonHoverPattern={ onHoverPattern }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\t\t\t__experimentalInsertionIndex\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tshowBlockDirectory\n\t\t\t\t\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t\t{ showAsTabs && (\n\t\t\t\t\t<InserterTabs\n\t\t\t\t\t\tshowPatterns={ showPatterns }\n\t\t\t\t\t\tshowReusableBlocks={ hasReusableBlocks }\n\t\t\t\t\t\tshowMedia={ showMedia }\n\t\t\t\t\t\tprioritizePatterns={ prioritizePatterns }\n\t\t\t\t\t\tonSelect={ handleSetSelectedTab }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ getCurrentTab }\n\t\t\t\t\t</InserterTabs>\n\t\t\t\t) }\n\t\t\t\t{ ! delayedFilterValue && ! showAsTabs && (\n\t\t\t\t\t<div className=\"block-editor-inserter__no-tab-container\">\n\t\t\t\t\t\t{ blocksTab }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t\t{ showMediaPanel && (\n\t\t\t\t<MediaCategoryDialog\n\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\tcategory={ selectedMediaCategory }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ showInserterHelpPanel && hoveredItem && (\n\t\t\t\t<InserterPreviewPanel item={ hoveredItem } />\n\t\t\t) }\n\t\t\t{ showPatternPanel && (\n\t\t\t\t<BlockPatternsCategoryDialog\n\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\t\tonHover={ onHoverPattern }\n\t\t\t\t\tcategory={ selectedPatternCategory }\n\t\t\t\t\tpatternFilter={ patternFilter }\n\t\t\t\t\tshowTitlesAsTooltip\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default forwardRef( InserterMenu );\n"],"mappings":"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"}
@@ -69,7 +69,7 @@ function InserterSearchResults({
69
69
  selectBlockOnInsert
70
70
  });
71
71
  const [blockTypes, blockTypeCategories, blockTypeCollections, onSelectBlockType] = useBlockTypesState(destinationRootClientId, onInsertBlocks);
72
- const [patterns,, onSelectBlockPattern] = usePatternsState(onInsertBlocks, destinationRootClientId);
72
+ const [patterns,, onClickPattern] = usePatternsState(onInsertBlocks, destinationRootClientId);
73
73
  const filteredBlockPatterns = useMemo(() => {
74
74
  if (maxBlockPatterns === 0) {
75
75
  return [];
@@ -85,7 +85,8 @@ function InserterSearchResults({
85
85
  if (maxBlockTypesToShow === 0) {
86
86
  return [];
87
87
  }
88
- let orderedItems = orderBy(blockTypes, 'frecency', 'desc');
88
+ const nonPatternBlockTypes = blockTypes.filter(blockType => blockType.name !== 'core/block');
89
+ let orderedItems = orderBy(nonPatternBlockTypes, 'frecency', 'desc');
89
90
  if (!filterValue && prioritizedBlocks.length) {
90
91
  orderedItems = orderInserterBlockItems(orderedItems, prioritizedBlocks);
91
92
  }
@@ -124,7 +125,7 @@ function InserterSearchResults({
124
125
  }, createElement(BlockPatternsList, {
125
126
  shownPatterns: currentShownPatterns,
126
127
  blockPatterns: filteredBlockPatterns,
127
- onClickPattern: onSelectBlockPattern,
128
+ onClickPattern: onClickPattern,
128
129
  onHover: onHoverPattern,
129
130
  isDraggable: isDraggable
130
131
  })));
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","useEffect","__","_n","sprintf","VisuallyHidden","useDebounce","useAsyncList","speak","useSelect","BlockTypesList","BlockPatternsList","__unstableInserterMenuExtension","InserterPanel","InserterNoResults","useInsertionPoint","usePatternsState","useBlockTypesState","searchBlockItems","searchItems","InserterListbox","orderBy","orderInserterBlockItems","store","blockEditorStore","INITIAL_INSERTER_RESULTS","EMPTY_ARRAY","InserterSearchResults","filterValue","onSelect","onHover","onHoverPattern","rootClientId","clientId","isAppender","__experimentalInsertionIndex","maxBlockPatterns","maxBlockTypes","showBlockDirectory","isDraggable","shouldFocusBlock","prioritizePatterns","selectBlockOnInsert","debouncedSpeak","prioritizedBlocks","select","blockListSettings","getBlockListSettings","prioritizedInserterBlocks","destinationRootClientId","onInsertBlocks","insertionIndex","blockTypes","blockTypeCategories","blockTypeCollections","onSelectBlockType","patterns","onSelectBlockPattern","filteredBlockPatterns","results","undefined","slice","maxBlockTypesToShow","length","filteredBlockTypes","orderedItems","count","resultsFoundMessage","currentShownBlockTypes","step","currentShownPatterns","hasItems","blocksUI","createElement","title","items","label","patternsUI","className","shownPatterns","blockPatterns","onClickPattern","Slot","fillProps","fills"],"sources":["@wordpress/block-editor/src/components/inserter/search-results.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo, useEffect } from '@wordpress/element';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport { VisuallyHidden } from '@wordpress/components';\nimport { useDebounce, useAsyncList } from '@wordpress/compose';\nimport { speak } from '@wordpress/a11y';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport BlockTypesList from '../block-types-list';\nimport BlockPatternsList from '../block-patterns-list';\nimport __unstableInserterMenuExtension from '../inserter-menu-extension';\nimport InserterPanel from './panel';\nimport InserterNoResults from './no-results';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport usePatternsState from './hooks/use-patterns-state';\nimport useBlockTypesState from './hooks/use-block-types-state';\nimport { searchBlockItems, searchItems } from './search-items';\nimport InserterListbox from '../inserter-listbox';\nimport { orderBy } from '../../utils/sorting';\nimport { orderInserterBlockItems } from '../../utils/order-inserter-block-items';\nimport { store as blockEditorStore } from '../../store';\n\nconst INITIAL_INSERTER_RESULTS = 9;\n/**\n * Shared reference to an empty array for cases where it is important to avoid\n * returning a new array reference on every invocation and rerendering the component.\n *\n * @type {Array}\n */\nconst EMPTY_ARRAY = [];\n\nfunction InserterSearchResults( {\n\tfilterValue,\n\tonSelect,\n\tonHover,\n\tonHoverPattern,\n\trootClientId,\n\tclientId,\n\tisAppender,\n\t__experimentalInsertionIndex,\n\tmaxBlockPatterns,\n\tmaxBlockTypes,\n\tshowBlockDirectory = false,\n\tisDraggable = true,\n\tshouldFocusBlock = true,\n\tprioritizePatterns,\n\tselectBlockOnInsert,\n} ) {\n\tconst debouncedSpeak = useDebounce( speak, 500 );\n\n\tconst { prioritizedBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst blockListSettings =\n\t\t\t\tselect( blockEditorStore ).getBlockListSettings( rootClientId );\n\n\t\t\treturn {\n\t\t\t\tprioritizedBlocks:\n\t\t\t\t\tblockListSettings?.prioritizedInserterBlocks || EMPTY_ARRAY,\n\t\t\t};\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\n\tconst [ destinationRootClientId, onInsertBlocks ] = useInsertionPoint( {\n\t\tonSelect,\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\tinsertionIndex: __experimentalInsertionIndex,\n\t\tshouldFocusBlock,\n\t\tselectBlockOnInsert,\n\t} );\n\tconst [\n\t\tblockTypes,\n\t\tblockTypeCategories,\n\t\tblockTypeCollections,\n\t\tonSelectBlockType,\n\t] = useBlockTypesState( destinationRootClientId, onInsertBlocks );\n\tconst [ patterns, , onSelectBlockPattern ] = usePatternsState(\n\t\tonInsertBlocks,\n\t\tdestinationRootClientId\n\t);\n\n\tconst filteredBlockPatterns = useMemo( () => {\n\t\tif ( maxBlockPatterns === 0 ) {\n\t\t\treturn [];\n\t\t}\n\t\tconst results = searchItems( patterns, filterValue );\n\t\treturn maxBlockPatterns !== undefined\n\t\t\t? results.slice( 0, maxBlockPatterns )\n\t\t\t: results;\n\t}, [ filterValue, patterns, maxBlockPatterns ] );\n\n\tlet maxBlockTypesToShow = maxBlockTypes;\n\tif ( prioritizePatterns && filteredBlockPatterns.length > 2 ) {\n\t\tmaxBlockTypesToShow = 0;\n\t}\n\n\tconst filteredBlockTypes = useMemo( () => {\n\t\tif ( maxBlockTypesToShow === 0 ) {\n\t\t\treturn [];\n\t\t}\n\n\t\tlet orderedItems = orderBy( blockTypes, 'frecency', 'desc' );\n\n\t\tif ( ! filterValue && prioritizedBlocks.length ) {\n\t\t\torderedItems = orderInserterBlockItems(\n\t\t\t\torderedItems,\n\t\t\t\tprioritizedBlocks\n\t\t\t);\n\t\t}\n\n\t\tconst results = searchBlockItems(\n\t\t\torderedItems,\n\t\t\tblockTypeCategories,\n\t\t\tblockTypeCollections,\n\t\t\tfilterValue\n\t\t);\n\n\t\treturn maxBlockTypesToShow !== undefined\n\t\t\t? results.slice( 0, maxBlockTypesToShow )\n\t\t\t: results;\n\t}, [\n\t\tfilterValue,\n\t\tblockTypes,\n\t\tblockTypeCategories,\n\t\tblockTypeCollections,\n\t\tmaxBlockTypesToShow,\n\t\tprioritizedBlocks,\n\t] );\n\n\t// Announce search results on change.\n\tuseEffect( () => {\n\t\tif ( ! filterValue ) {\n\t\t\treturn;\n\t\t}\n\t\tconst count = filteredBlockTypes.length + filteredBlockPatterns.length;\n\t\tconst resultsFoundMessage = sprintf(\n\t\t\t/* translators: %d: number of results. */\n\t\t\t_n( '%d result found.', '%d results found.', count ),\n\t\t\tcount\n\t\t);\n\t\tdebouncedSpeak( resultsFoundMessage );\n\t}, [\n\t\tfilterValue,\n\t\tdebouncedSpeak,\n\t\tfilteredBlockTypes,\n\t\tfilteredBlockPatterns,\n\t] );\n\n\tconst currentShownBlockTypes = useAsyncList( filteredBlockTypes, {\n\t\tstep: INITIAL_INSERTER_RESULTS,\n\t} );\n\tconst currentShownPatterns = useAsyncList(\n\t\tcurrentShownBlockTypes.length === filteredBlockTypes.length\n\t\t\t? filteredBlockPatterns\n\t\t\t: EMPTY_ARRAY\n\t);\n\n\tconst hasItems =\n\t\tfilteredBlockTypes.length > 0 || filteredBlockPatterns.length > 0;\n\n\tconst blocksUI = !! filteredBlockTypes.length && (\n\t\t<InserterPanel\n\t\t\ttitle={ <VisuallyHidden>{ __( 'Blocks' ) }</VisuallyHidden> }\n\t\t>\n\t\t\t<BlockTypesList\n\t\t\t\titems={ currentShownBlockTypes }\n\t\t\t\tonSelect={ onSelectBlockType }\n\t\t\t\tonHover={ onHover }\n\t\t\t\tlabel={ __( 'Blocks' ) }\n\t\t\t\tisDraggable={ isDraggable }\n\t\t\t/>\n\t\t</InserterPanel>\n\t);\n\n\tconst patternsUI = !! filteredBlockPatterns.length && (\n\t\t<InserterPanel\n\t\t\ttitle={\n\t\t\t\t<VisuallyHidden>{ __( 'Block Patterns' ) }</VisuallyHidden>\n\t\t\t}\n\t\t>\n\t\t\t<div className=\"block-editor-inserter__quick-inserter-patterns\">\n\t\t\t\t<BlockPatternsList\n\t\t\t\t\tshownPatterns={ currentShownPatterns }\n\t\t\t\t\tblockPatterns={ filteredBlockPatterns }\n\t\t\t\t\tonClickPattern={ onSelectBlockPattern }\n\t\t\t\t\tonHover={ onHoverPattern }\n\t\t\t\t\tisDraggable={ isDraggable }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</InserterPanel>\n\t);\n\n\treturn (\n\t\t<InserterListbox>\n\t\t\t{ ! showBlockDirectory && ! hasItems && <InserterNoResults /> }\n\n\t\t\t{ prioritizePatterns ? patternsUI : blocksUI }\n\n\t\t\t{ !! filteredBlockTypes.length &&\n\t\t\t\t!! filteredBlockPatterns.length && (\n\t\t\t\t\t<div className=\"block-editor-inserter__quick-inserter-separator\" />\n\t\t\t\t) }\n\n\t\t\t{ prioritizePatterns ? blocksUI : patternsUI }\n\n\t\t\t{ showBlockDirectory && (\n\t\t\t\t<__unstableInserterMenuExtension.Slot\n\t\t\t\t\tfillProps={ {\n\t\t\t\t\t\tonSelect: onSelectBlockType,\n\t\t\t\t\t\tonHover,\n\t\t\t\t\t\tfilterValue,\n\t\t\t\t\t\thasItems,\n\t\t\t\t\t\trootClientId: destinationRootClientId,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ ( fills ) => {\n\t\t\t\t\t\tif ( fills.length ) {\n\t\t\t\t\t\t\treturn fills;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ( ! hasItems ) {\n\t\t\t\t\t\t\treturn <InserterNoResults />;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t} }\n\t\t\t\t</__unstableInserterMenuExtension.Slot>\n\t\t\t) }\n\t\t</InserterListbox>\n\t);\n}\n\nexport default InserterSearchResults;\n"],"mappings":"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"}
1
+ {"version":3,"names":["useMemo","useEffect","__","_n","sprintf","VisuallyHidden","useDebounce","useAsyncList","speak","useSelect","BlockTypesList","BlockPatternsList","__unstableInserterMenuExtension","InserterPanel","InserterNoResults","useInsertionPoint","usePatternsState","useBlockTypesState","searchBlockItems","searchItems","InserterListbox","orderBy","orderInserterBlockItems","store","blockEditorStore","INITIAL_INSERTER_RESULTS","EMPTY_ARRAY","InserterSearchResults","filterValue","onSelect","onHover","onHoverPattern","rootClientId","clientId","isAppender","__experimentalInsertionIndex","maxBlockPatterns","maxBlockTypes","showBlockDirectory","isDraggable","shouldFocusBlock","prioritizePatterns","selectBlockOnInsert","debouncedSpeak","prioritizedBlocks","select","blockListSettings","getBlockListSettings","prioritizedInserterBlocks","destinationRootClientId","onInsertBlocks","insertionIndex","blockTypes","blockTypeCategories","blockTypeCollections","onSelectBlockType","patterns","onClickPattern","filteredBlockPatterns","results","undefined","slice","maxBlockTypesToShow","length","filteredBlockTypes","nonPatternBlockTypes","filter","blockType","name","orderedItems","count","resultsFoundMessage","currentShownBlockTypes","step","currentShownPatterns","hasItems","blocksUI","createElement","title","items","label","patternsUI","className","shownPatterns","blockPatterns","Slot","fillProps","fills"],"sources":["@wordpress/block-editor/src/components/inserter/search-results.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo, useEffect } from '@wordpress/element';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport { VisuallyHidden } from '@wordpress/components';\nimport { useDebounce, useAsyncList } from '@wordpress/compose';\nimport { speak } from '@wordpress/a11y';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport BlockTypesList from '../block-types-list';\nimport BlockPatternsList from '../block-patterns-list';\nimport __unstableInserterMenuExtension from '../inserter-menu-extension';\nimport InserterPanel from './panel';\nimport InserterNoResults from './no-results';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport usePatternsState from './hooks/use-patterns-state';\nimport useBlockTypesState from './hooks/use-block-types-state';\nimport { searchBlockItems, searchItems } from './search-items';\nimport InserterListbox from '../inserter-listbox';\nimport { orderBy } from '../../utils/sorting';\nimport { orderInserterBlockItems } from '../../utils/order-inserter-block-items';\nimport { store as blockEditorStore } from '../../store';\n\nconst INITIAL_INSERTER_RESULTS = 9;\n/**\n * Shared reference to an empty array for cases where it is important to avoid\n * returning a new array reference on every invocation and rerendering the component.\n *\n * @type {Array}\n */\nconst EMPTY_ARRAY = [];\n\nfunction InserterSearchResults( {\n\tfilterValue,\n\tonSelect,\n\tonHover,\n\tonHoverPattern,\n\trootClientId,\n\tclientId,\n\tisAppender,\n\t__experimentalInsertionIndex,\n\tmaxBlockPatterns,\n\tmaxBlockTypes,\n\tshowBlockDirectory = false,\n\tisDraggable = true,\n\tshouldFocusBlock = true,\n\tprioritizePatterns,\n\tselectBlockOnInsert,\n} ) {\n\tconst debouncedSpeak = useDebounce( speak, 500 );\n\n\tconst { prioritizedBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst blockListSettings =\n\t\t\t\tselect( blockEditorStore ).getBlockListSettings( rootClientId );\n\n\t\t\treturn {\n\t\t\t\tprioritizedBlocks:\n\t\t\t\t\tblockListSettings?.prioritizedInserterBlocks || EMPTY_ARRAY,\n\t\t\t};\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\n\tconst [ destinationRootClientId, onInsertBlocks ] = useInsertionPoint( {\n\t\tonSelect,\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\tinsertionIndex: __experimentalInsertionIndex,\n\t\tshouldFocusBlock,\n\t\tselectBlockOnInsert,\n\t} );\n\tconst [\n\t\tblockTypes,\n\t\tblockTypeCategories,\n\t\tblockTypeCollections,\n\t\tonSelectBlockType,\n\t] = useBlockTypesState( destinationRootClientId, onInsertBlocks );\n\tconst [ patterns, , onClickPattern ] = usePatternsState(\n\t\tonInsertBlocks,\n\t\tdestinationRootClientId\n\t);\n\n\tconst filteredBlockPatterns = useMemo( () => {\n\t\tif ( maxBlockPatterns === 0 ) {\n\t\t\treturn [];\n\t\t}\n\t\tconst results = searchItems( patterns, filterValue );\n\t\treturn maxBlockPatterns !== undefined\n\t\t\t? results.slice( 0, maxBlockPatterns )\n\t\t\t: results;\n\t}, [ filterValue, patterns, maxBlockPatterns ] );\n\n\tlet maxBlockTypesToShow = maxBlockTypes;\n\tif ( prioritizePatterns && filteredBlockPatterns.length > 2 ) {\n\t\tmaxBlockTypesToShow = 0;\n\t}\n\n\tconst filteredBlockTypes = useMemo( () => {\n\t\tif ( maxBlockTypesToShow === 0 ) {\n\t\t\treturn [];\n\t\t}\n\t\tconst nonPatternBlockTypes = blockTypes.filter(\n\t\t\t( blockType ) => blockType.name !== 'core/block'\n\t\t);\n\t\tlet orderedItems = orderBy( nonPatternBlockTypes, 'frecency', 'desc' );\n\n\t\tif ( ! filterValue && prioritizedBlocks.length ) {\n\t\t\torderedItems = orderInserterBlockItems(\n\t\t\t\torderedItems,\n\t\t\t\tprioritizedBlocks\n\t\t\t);\n\t\t}\n\n\t\tconst results = searchBlockItems(\n\t\t\torderedItems,\n\t\t\tblockTypeCategories,\n\t\t\tblockTypeCollections,\n\t\t\tfilterValue\n\t\t);\n\n\t\treturn maxBlockTypesToShow !== undefined\n\t\t\t? results.slice( 0, maxBlockTypesToShow )\n\t\t\t: results;\n\t}, [\n\t\tfilterValue,\n\t\tblockTypes,\n\t\tblockTypeCategories,\n\t\tblockTypeCollections,\n\t\tmaxBlockTypesToShow,\n\t\tprioritizedBlocks,\n\t] );\n\n\t// Announce search results on change.\n\tuseEffect( () => {\n\t\tif ( ! filterValue ) {\n\t\t\treturn;\n\t\t}\n\t\tconst count = filteredBlockTypes.length + filteredBlockPatterns.length;\n\t\tconst resultsFoundMessage = sprintf(\n\t\t\t/* translators: %d: number of results. */\n\t\t\t_n( '%d result found.', '%d results found.', count ),\n\t\t\tcount\n\t\t);\n\t\tdebouncedSpeak( resultsFoundMessage );\n\t}, [\n\t\tfilterValue,\n\t\tdebouncedSpeak,\n\t\tfilteredBlockTypes,\n\t\tfilteredBlockPatterns,\n\t] );\n\n\tconst currentShownBlockTypes = useAsyncList( filteredBlockTypes, {\n\t\tstep: INITIAL_INSERTER_RESULTS,\n\t} );\n\tconst currentShownPatterns = useAsyncList(\n\t\tcurrentShownBlockTypes.length === filteredBlockTypes.length\n\t\t\t? filteredBlockPatterns\n\t\t\t: EMPTY_ARRAY\n\t);\n\n\tconst hasItems =\n\t\tfilteredBlockTypes.length > 0 || filteredBlockPatterns.length > 0;\n\n\tconst blocksUI = !! filteredBlockTypes.length && (\n\t\t<InserterPanel\n\t\t\ttitle={ <VisuallyHidden>{ __( 'Blocks' ) }</VisuallyHidden> }\n\t\t>\n\t\t\t<BlockTypesList\n\t\t\t\titems={ currentShownBlockTypes }\n\t\t\t\tonSelect={ onSelectBlockType }\n\t\t\t\tonHover={ onHover }\n\t\t\t\tlabel={ __( 'Blocks' ) }\n\t\t\t\tisDraggable={ isDraggable }\n\t\t\t/>\n\t\t</InserterPanel>\n\t);\n\n\tconst patternsUI = !! filteredBlockPatterns.length && (\n\t\t<InserterPanel\n\t\t\ttitle={\n\t\t\t\t<VisuallyHidden>{ __( 'Block Patterns' ) }</VisuallyHidden>\n\t\t\t}\n\t\t>\n\t\t\t<div className=\"block-editor-inserter__quick-inserter-patterns\">\n\t\t\t\t<BlockPatternsList\n\t\t\t\t\tshownPatterns={ currentShownPatterns }\n\t\t\t\t\tblockPatterns={ filteredBlockPatterns }\n\t\t\t\t\tonClickPattern={ onClickPattern }\n\t\t\t\t\tonHover={ onHoverPattern }\n\t\t\t\t\tisDraggable={ isDraggable }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</InserterPanel>\n\t);\n\n\treturn (\n\t\t<InserterListbox>\n\t\t\t{ ! showBlockDirectory && ! hasItems && <InserterNoResults /> }\n\n\t\t\t{ prioritizePatterns ? patternsUI : blocksUI }\n\n\t\t\t{ !! filteredBlockTypes.length &&\n\t\t\t\t!! filteredBlockPatterns.length && (\n\t\t\t\t\t<div className=\"block-editor-inserter__quick-inserter-separator\" />\n\t\t\t\t) }\n\n\t\t\t{ prioritizePatterns ? blocksUI : patternsUI }\n\n\t\t\t{ showBlockDirectory && (\n\t\t\t\t<__unstableInserterMenuExtension.Slot\n\t\t\t\t\tfillProps={ {\n\t\t\t\t\t\tonSelect: onSelectBlockType,\n\t\t\t\t\t\tonHover,\n\t\t\t\t\t\tfilterValue,\n\t\t\t\t\t\thasItems,\n\t\t\t\t\t\trootClientId: destinationRootClientId,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ ( fills ) => {\n\t\t\t\t\t\tif ( fills.length ) {\n\t\t\t\t\t\t\treturn fills;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ( ! hasItems ) {\n\t\t\t\t\t\t\treturn <InserterNoResults />;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t} }\n\t\t\t\t</__unstableInserterMenuExtension.Slot>\n\t\t\t) }\n\t\t</InserterListbox>\n\t);\n}\n\nexport default InserterSearchResults;\n"],"mappings":"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"}
@@ -2,7 +2,6 @@ import { createElement } from "@wordpress/element";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
5
- import { symbol as reusableBlockIcon } from '@wordpress/icons';
6
5
  import { useMemo } from '@wordpress/element';
7
6
  import { TabPanel } from '@wordpress/components';
8
7
  import { __ } from '@wordpress/i18n';
@@ -16,12 +15,6 @@ const patternsTab = {
16
15
  /* translators: Theme and Directory Patterns tab title in the block inserter. */
17
16
  title: __('Patterns')
18
17
  };
19
- const reusableBlocksTab = {
20
- name: 'reusable',
21
- /* translators: Locally created Patterns tab title in the block inserter. */
22
- title: __('Synced patterns'),
23
- icon: reusableBlockIcon
24
- };
25
18
  const mediaTab = {
26
19
  name: 'media',
27
20
  /* translators: Media tab title in the block inserter. */
@@ -30,7 +23,6 @@ const mediaTab = {
30
23
  function InserterTabs({
31
24
  children,
32
25
  showPatterns = false,
33
- showReusableBlocks = false,
34
26
  showMedia = false,
35
27
  onSelect,
36
28
  prioritizePatterns
@@ -47,11 +39,8 @@ function InserterTabs({
47
39
  if (showMedia) {
48
40
  tempTabs.push(mediaTab);
49
41
  }
50
- if (showReusableBlocks) {
51
- tempTabs.push(reusableBlocksTab);
52
- }
53
42
  return tempTabs;
54
- }, [prioritizePatterns, showPatterns, showReusableBlocks, showMedia]);
43
+ }, [prioritizePatterns, showPatterns, showMedia]);
55
44
  return createElement(TabPanel, {
56
45
  className: "block-editor-inserter__tabs",
57
46
  tabs: tabs,
@@ -1 +1 @@
1
- {"version":3,"names":["symbol","reusableBlockIcon","useMemo","TabPanel","__","blocksTab","name","title","patternsTab","reusableBlocksTab","icon","mediaTab","InserterTabs","children","showPatterns","showReusableBlocks","showMedia","onSelect","prioritizePatterns","tabs","tempTabs","push","createElement","className"],"sources":["@wordpress/block-editor/src/components/inserter/tabs.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { symbol as reusableBlockIcon } from '@wordpress/icons';\nimport { useMemo } from '@wordpress/element';\nimport { TabPanel } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nconst blocksTab = {\n\tname: 'blocks',\n\t/* translators: Blocks tab title in the block inserter. */\n\ttitle: __( 'Blocks' ),\n};\nconst patternsTab = {\n\tname: 'patterns',\n\t/* translators: Theme and Directory Patterns tab title in the block inserter. */\n\ttitle: __( 'Patterns' ),\n};\nconst reusableBlocksTab = {\n\tname: 'reusable',\n\t/* translators: Locally created Patterns tab title in the block inserter. */\n\ttitle: __( 'Synced patterns' ),\n\ticon: reusableBlockIcon,\n};\nconst mediaTab = {\n\tname: 'media',\n\t/* translators: Media tab title in the block inserter. */\n\ttitle: __( 'Media' ),\n};\n\nfunction InserterTabs( {\n\tchildren,\n\tshowPatterns = false,\n\tshowReusableBlocks = false,\n\tshowMedia = false,\n\tonSelect,\n\tprioritizePatterns,\n} ) {\n\tconst tabs = useMemo( () => {\n\t\tconst tempTabs = [];\n\t\tif ( prioritizePatterns && showPatterns ) {\n\t\t\ttempTabs.push( patternsTab );\n\t\t}\n\t\ttempTabs.push( blocksTab );\n\t\tif ( ! prioritizePatterns && showPatterns ) {\n\t\t\ttempTabs.push( patternsTab );\n\t\t}\n\t\tif ( showMedia ) {\n\t\t\ttempTabs.push( mediaTab );\n\t\t}\n\t\tif ( showReusableBlocks ) {\n\t\t\ttempTabs.push( reusableBlocksTab );\n\t\t}\n\t\treturn tempTabs;\n\t}, [ prioritizePatterns, showPatterns, showReusableBlocks, showMedia ] );\n\n\treturn (\n\t\t<TabPanel\n\t\t\tclassName=\"block-editor-inserter__tabs\"\n\t\t\ttabs={ tabs }\n\t\t\tonSelect={ onSelect }\n\t\t>\n\t\t\t{ children }\n\t\t</TabPanel>\n\t);\n}\n\nexport default InserterTabs;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,MAAM,IAAIC,iBAAiB,QAAQ,kBAAkB;AAC9D,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,EAAE,QAAQ,iBAAiB;AAEpC,MAAMC,SAAS,GAAG;EACjBC,IAAI,EAAE,QAAQ;EACd;EACAC,KAAK,EAAEH,EAAE,CAAE,QAAS;AACrB,CAAC;AACD,MAAMI,WAAW,GAAG;EACnBF,IAAI,EAAE,UAAU;EAChB;EACAC,KAAK,EAAEH,EAAE,CAAE,UAAW;AACvB,CAAC;AACD,MAAMK,iBAAiB,GAAG;EACzBH,IAAI,EAAE,UAAU;EAChB;EACAC,KAAK,EAAEH,EAAE,CAAE,iBAAkB,CAAC;EAC9BM,IAAI,EAAET;AACP,CAAC;AACD,MAAMU,QAAQ,GAAG;EAChBL,IAAI,EAAE,OAAO;EACb;EACAC,KAAK,EAAEH,EAAE,CAAE,OAAQ;AACpB,CAAC;AAED,SAASQ,YAAYA,CAAE;EACtBC,QAAQ;EACRC,YAAY,GAAG,KAAK;EACpBC,kBAAkB,GAAG,KAAK;EAC1BC,SAAS,GAAG,KAAK;EACjBC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAMC,IAAI,GAAGjB,OAAO,CAAE,MAAM;IAC3B,MAAMkB,QAAQ,GAAG,EAAE;IACnB,IAAKF,kBAAkB,IAAIJ,YAAY,EAAG;MACzCM,QAAQ,CAACC,IAAI,CAAEb,WAAY,CAAC;IAC7B;IACAY,QAAQ,CAACC,IAAI,CAAEhB,SAAU,CAAC;IAC1B,IAAK,CAAEa,kBAAkB,IAAIJ,YAAY,EAAG;MAC3CM,QAAQ,CAACC,IAAI,CAAEb,WAAY,CAAC;IAC7B;IACA,IAAKQ,SAAS,EAAG;MAChBI,QAAQ,CAACC,IAAI,CAAEV,QAAS,CAAC;IAC1B;IACA,IAAKI,kBAAkB,EAAG;MACzBK,QAAQ,CAACC,IAAI,CAAEZ,iBAAkB,CAAC;IACnC;IACA,OAAOW,QAAQ;EAChB,CAAC,EAAE,CAAEF,kBAAkB,EAAEJ,YAAY,EAAEC,kBAAkB,EAAEC,SAAS,CAAG,CAAC;EAExE,OACCM,aAAA,CAACnB,QAAQ;IACRoB,SAAS,EAAC,6BAA6B;IACvCJ,IAAI,EAAGA,IAAM;IACbF,QAAQ,EAAGA;EAAU,GAEnBJ,QACO,CAAC;AAEb;AAEA,eAAeD,YAAY"}
1
+ {"version":3,"names":["useMemo","TabPanel","__","blocksTab","name","title","patternsTab","mediaTab","InserterTabs","children","showPatterns","showMedia","onSelect","prioritizePatterns","tabs","tempTabs","push","createElement","className"],"sources":["@wordpress/block-editor/src/components/inserter/tabs.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { TabPanel } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nconst blocksTab = {\n\tname: 'blocks',\n\t/* translators: Blocks tab title in the block inserter. */\n\ttitle: __( 'Blocks' ),\n};\nconst patternsTab = {\n\tname: 'patterns',\n\t/* translators: Theme and Directory Patterns tab title in the block inserter. */\n\ttitle: __( 'Patterns' ),\n};\n\nconst mediaTab = {\n\tname: 'media',\n\t/* translators: Media tab title in the block inserter. */\n\ttitle: __( 'Media' ),\n};\n\nfunction InserterTabs( {\n\tchildren,\n\tshowPatterns = false,\n\tshowMedia = false,\n\tonSelect,\n\tprioritizePatterns,\n} ) {\n\tconst tabs = useMemo( () => {\n\t\tconst tempTabs = [];\n\t\tif ( prioritizePatterns && showPatterns ) {\n\t\t\ttempTabs.push( patternsTab );\n\t\t}\n\t\ttempTabs.push( blocksTab );\n\t\tif ( ! prioritizePatterns && showPatterns ) {\n\t\t\ttempTabs.push( patternsTab );\n\t\t}\n\t\tif ( showMedia ) {\n\t\t\ttempTabs.push( mediaTab );\n\t\t}\n\t\treturn tempTabs;\n\t}, [ prioritizePatterns, showPatterns, showMedia ] );\n\n\treturn (\n\t\t<TabPanel\n\t\t\tclassName=\"block-editor-inserter__tabs\"\n\t\t\ttabs={ tabs }\n\t\t\tonSelect={ onSelect }\n\t\t>\n\t\t\t{ children }\n\t\t</TabPanel>\n\t);\n}\n\nexport default InserterTabs;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,EAAE,QAAQ,iBAAiB;AAEpC,MAAMC,SAAS,GAAG;EACjBC,IAAI,EAAE,QAAQ;EACd;EACAC,KAAK,EAAEH,EAAE,CAAE,QAAS;AACrB,CAAC;AACD,MAAMI,WAAW,GAAG;EACnBF,IAAI,EAAE,UAAU;EAChB;EACAC,KAAK,EAAEH,EAAE,CAAE,UAAW;AACvB,CAAC;AAED,MAAMK,QAAQ,GAAG;EAChBH,IAAI,EAAE,OAAO;EACb;EACAC,KAAK,EAAEH,EAAE,CAAE,OAAQ;AACpB,CAAC;AAED,SAASM,YAAYA,CAAE;EACtBC,QAAQ;EACRC,YAAY,GAAG,KAAK;EACpBC,SAAS,GAAG,KAAK;EACjBC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAMC,IAAI,GAAGd,OAAO,CAAE,MAAM;IAC3B,MAAMe,QAAQ,GAAG,EAAE;IACnB,IAAKF,kBAAkB,IAAIH,YAAY,EAAG;MACzCK,QAAQ,CAACC,IAAI,CAAEV,WAAY,CAAC;IAC7B;IACAS,QAAQ,CAACC,IAAI,CAAEb,SAAU,CAAC;IAC1B,IAAK,CAAEU,kBAAkB,IAAIH,YAAY,EAAG;MAC3CK,QAAQ,CAACC,IAAI,CAAEV,WAAY,CAAC;IAC7B;IACA,IAAKK,SAAS,EAAG;MAChBI,QAAQ,CAACC,IAAI,CAAET,QAAS,CAAC;IAC1B;IACA,OAAOQ,QAAQ;EAChB,CAAC,EAAE,CAAEF,kBAAkB,EAAEH,YAAY,EAAEC,SAAS,CAAG,CAAC;EAEpD,OACCM,aAAA,CAAChB,QAAQ;IACRiB,SAAS,EAAC,6BAA6B;IACvCJ,IAAI,EAAGA,IAAM;IACbF,QAAQ,EAAGA;EAAU,GAEnBH,QACO,CAAC;AAEb;AAEA,eAAeD,YAAY"}
@@ -3,15 +3,26 @@ import { createElement } from "@wordpress/element";
3
3
  * WordPress dependencies
4
4
  */
5
5
  import { __experimentalToolsPanelContext as ToolsPanelContext } from '@wordpress/components';
6
- import { useContext } from '@wordpress/element';
6
+ import { useContext, useMemo } from '@wordpress/element';
7
7
  export default function BlockSupportSlotContainer({
8
8
  Slot,
9
+ fillProps,
9
10
  ...props
10
11
  }) {
12
+ // Add the toolspanel context provider and value to existing fill props
11
13
  const toolsPanelContext = useContext(ToolsPanelContext);
14
+ const computedFillProps = useMemo(() => {
15
+ var _fillProps$forwardedC;
16
+ return {
17
+ ...(fillProps !== null && fillProps !== void 0 ? fillProps : {}),
18
+ forwardedContext: [...((_fillProps$forwardedC = fillProps?.forwardedContext) !== null && _fillProps$forwardedC !== void 0 ? _fillProps$forwardedC : []), [ToolsPanelContext.Provider, {
19
+ value: toolsPanelContext
20
+ }]]
21
+ };
22
+ }, [toolsPanelContext, fillProps]);
12
23
  return createElement(Slot, {
13
24
  ...props,
14
- fillProps: toolsPanelContext,
25
+ fillProps: computedFillProps,
15
26
  bubblesVirtually: true
16
27
  });
17
28
  }
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalToolsPanelContext","ToolsPanelContext","useContext","BlockSupportSlotContainer","Slot","props","toolsPanelContext","createElement","fillProps","bubblesVirtually"],"sources":["@wordpress/block-editor/src/components/inspector-controls/block-support-slot-container.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalToolsPanelContext as ToolsPanelContext } from '@wordpress/components';\nimport { useContext } from '@wordpress/element';\n\nexport default function BlockSupportSlotContainer( { Slot, ...props } ) {\n\tconst toolsPanelContext = useContext( ToolsPanelContext );\n\treturn (\n\t\t<Slot { ...props } fillProps={ toolsPanelContext } bubblesVirtually />\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,+BAA+B,IAAIC,iBAAiB,QAAQ,uBAAuB;AAC5F,SAASC,UAAU,QAAQ,oBAAoB;AAE/C,eAAe,SAASC,yBAAyBA,CAAE;EAAEC,IAAI;EAAE,GAAGC;AAAM,CAAC,EAAG;EACvE,MAAMC,iBAAiB,GAAGJ,UAAU,CAAED,iBAAkB,CAAC;EACzD,OACCM,aAAA,CAACH,IAAI;IAAA,GAAMC,KAAK;IAAGG,SAAS,EAAGF,iBAAmB;IAACG,gBAAgB;EAAA,CAAE,CAAC;AAExE"}
1
+ {"version":3,"names":["__experimentalToolsPanelContext","ToolsPanelContext","useContext","useMemo","BlockSupportSlotContainer","Slot","fillProps","props","toolsPanelContext","computedFillProps","_fillProps$forwardedC","forwardedContext","Provider","value","createElement","bubblesVirtually"],"sources":["@wordpress/block-editor/src/components/inspector-controls/block-support-slot-container.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalToolsPanelContext as ToolsPanelContext } from '@wordpress/components';\nimport { useContext, useMemo } from '@wordpress/element';\n\nexport default function BlockSupportSlotContainer( {\n\tSlot,\n\tfillProps,\n\t...props\n} ) {\n\t// Add the toolspanel context provider and value to existing fill props\n\tconst toolsPanelContext = useContext( ToolsPanelContext );\n\tconst computedFillProps = useMemo(\n\t\t() => ( {\n\t\t\t...( fillProps ?? {} ),\n\t\t\tforwardedContext: [\n\t\t\t\t...( fillProps?.forwardedContext ?? [] ),\n\t\t\t\t[ ToolsPanelContext.Provider, { value: toolsPanelContext } ],\n\t\t\t],\n\t\t} ),\n\t\t[ toolsPanelContext, fillProps ]\n\t);\n\n\treturn (\n\t\t<Slot { ...props } fillProps={ computedFillProps } bubblesVirtually />\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,+BAA+B,IAAIC,iBAAiB,QAAQ,uBAAuB;AAC5F,SAASC,UAAU,EAAEC,OAAO,QAAQ,oBAAoB;AAExD,eAAe,SAASC,yBAAyBA,CAAE;EAClDC,IAAI;EACJC,SAAS;EACT,GAAGC;AACJ,CAAC,EAAG;EACH;EACA,MAAMC,iBAAiB,GAAGN,UAAU,CAAED,iBAAkB,CAAC;EACzD,MAAMQ,iBAAiB,GAAGN,OAAO,CAChC;IAAA,IAAAO,qBAAA;IAAA,OAAQ;MACP,IAAKJ,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,CAAC,CAAC,CAAE;MACtBK,gBAAgB,EAAE,CACjB,KAAAD,qBAAA,GAAKJ,SAAS,EAAEK,gBAAgB,cAAAD,qBAAA,cAAAA,qBAAA,GAAI,EAAE,CAAE,EACxC,CAAET,iBAAiB,CAACW,QAAQ,EAAE;QAAEC,KAAK,EAAEL;MAAkB,CAAC,CAAE;IAE9D,CAAC;EAAA,CAAE,EACH,CAAEA,iBAAiB,EAAEF,SAAS,CAC/B,CAAC;EAED,OACCQ,aAAA,CAACT,IAAI;IAAA,GAAME,KAAK;IAAGD,SAAS,EAAGG,iBAAmB;IAACM,gBAAgB;EAAA,CAAE,CAAC;AAExE"}
@@ -5,7 +5,7 @@ import { createElement } from "@wordpress/element";
5
5
  import { __experimentalStyleProvider as StyleProvider, __experimentalToolsPanelContext as ToolsPanelContext } from '@wordpress/components';
6
6
  import warning from '@wordpress/warning';
7
7
  import deprecated from '@wordpress/deprecated';
8
- import { useEffect } from '@wordpress/element';
8
+ import { useEffect, useContext } from '@wordpress/element';
9
9
 
10
10
  /**
11
11
  * Internal dependencies
@@ -45,33 +45,44 @@ export default function InspectorControlsFill({
45
45
  });
46
46
  }));
47
47
  }
48
- function ToolsPanelInspectorControl({
49
- children,
48
+ function RegisterResetAll({
50
49
  resetAllFilter,
51
- fillProps
50
+ children
52
51
  }) {
53
52
  const {
54
53
  registerResetAllFilter,
55
54
  deregisterResetAllFilter
56
- } = fillProps;
55
+ } = useContext(ToolsPanelContext);
57
56
  useEffect(() => {
58
- if (resetAllFilter && registerResetAllFilter) {
57
+ if (resetAllFilter && registerResetAllFilter && deregisterResetAllFilter) {
59
58
  registerResetAllFilter(resetAllFilter);
60
- }
61
- return () => {
62
- if (resetAllFilter && deregisterResetAllFilter) {
59
+ return () => {
63
60
  deregisterResetAllFilter(resetAllFilter);
64
- }
65
- };
61
+ };
62
+ }
66
63
  }, [resetAllFilter, registerResetAllFilter, deregisterResetAllFilter]);
64
+ return children;
65
+ }
66
+ function ToolsPanelInspectorControl({
67
+ children,
68
+ resetAllFilter,
69
+ fillProps
70
+ }) {
71
+ // `fillProps.forwardedContext` is an array of context provider entries, provided by slot,
72
+ // that should wrap the fill markup.
73
+ const {
74
+ forwardedContext = []
75
+ } = fillProps;
67
76
 
68
77
  // Children passed to InspectorControlsFill will not have
69
78
  // access to any React Context whose Provider is part of
70
79
  // the InspectorControlsSlot tree. So we re-create the
71
80
  // Provider in this subtree.
72
- const value = fillProps && Object.keys(fillProps).length > 0 ? fillProps : null;
73
- return createElement(ToolsPanelContext.Provider, {
74
- value: value
81
+ const innerMarkup = createElement(RegisterResetAll, {
82
+ resetAllFilter: resetAllFilter
75
83
  }, children);
84
+ return forwardedContext.reduce((inner, [Provider, props]) => createElement(Provider, {
85
+ ...props
86
+ }, inner), innerMarkup);
76
87
  }
77
88
  //# sourceMappingURL=fill.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalStyleProvider","StyleProvider","__experimentalToolsPanelContext","ToolsPanelContext","warning","deprecated","useEffect","useDisplayBlockControls","groups","InspectorControlsFill","children","group","__experimentalGroup","resetAllFilter","since","version","alternative","isDisplayed","Fill","SCRIPT_DEBUG","createElement","document","fillProps","ToolsPanelInspectorControl","registerResetAllFilter","deregisterResetAllFilter","value","Object","keys","length","Provider"],"sources":["@wordpress/block-editor/src/components/inspector-controls/fill.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalStyleProvider as StyleProvider,\n\t__experimentalToolsPanelContext as ToolsPanelContext,\n} from '@wordpress/components';\nimport warning from '@wordpress/warning';\nimport deprecated from '@wordpress/deprecated';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useDisplayBlockControls from '../use-display-block-controls';\nimport groups from './groups';\n\nexport default function InspectorControlsFill( {\n\tchildren,\n\tgroup = 'default',\n\t__experimentalGroup,\n\tresetAllFilter,\n} ) {\n\tif ( __experimentalGroup ) {\n\t\tdeprecated(\n\t\t\t'`__experimentalGroup` property in `InspectorControlsFill`',\n\t\t\t{\n\t\t\t\tsince: '6.2',\n\t\t\t\tversion: '6.4',\n\t\t\t\talternative: '`group`',\n\t\t\t}\n\t\t);\n\t\tgroup = __experimentalGroup;\n\t}\n\n\tconst isDisplayed = useDisplayBlockControls();\n\tconst Fill = groups[ group ]?.Fill;\n\tif ( ! Fill ) {\n\t\twarning( `Unknown InspectorControls group \"${ group }\" provided.` );\n\t\treturn null;\n\t}\n\tif ( ! isDisplayed ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<StyleProvider document={ document }>\n\t\t\t<Fill>\n\t\t\t\t{ ( fillProps ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<ToolsPanelInspectorControl\n\t\t\t\t\t\t\tfillProps={ fillProps }\n\t\t\t\t\t\t\tchildren={ children }\n\t\t\t\t\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t</Fill>\n\t\t</StyleProvider>\n\t);\n}\n\nfunction ToolsPanelInspectorControl( { children, resetAllFilter, fillProps } ) {\n\tconst { registerResetAllFilter, deregisterResetAllFilter } = fillProps;\n\tuseEffect( () => {\n\t\tif ( resetAllFilter && registerResetAllFilter ) {\n\t\t\tregisterResetAllFilter( resetAllFilter );\n\t\t}\n\t\treturn () => {\n\t\t\tif ( resetAllFilter && deregisterResetAllFilter ) {\n\t\t\t\tderegisterResetAllFilter( resetAllFilter );\n\t\t\t}\n\t\t};\n\t}, [ resetAllFilter, registerResetAllFilter, deregisterResetAllFilter ] );\n\n\t// Children passed to InspectorControlsFill will not have\n\t// access to any React Context whose Provider is part of\n\t// the InspectorControlsSlot tree. So we re-create the\n\t// Provider in this subtree.\n\tconst value =\n\t\tfillProps && Object.keys( fillProps ).length > 0 ? fillProps : null;\n\treturn (\n\t\t<ToolsPanelContext.Provider value={ value }>\n\t\t\t{ children }\n\t\t</ToolsPanelContext.Provider>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,2BAA2B,IAAIC,aAAa,EAC5CC,+BAA+B,IAAIC,iBAAiB,QAC9C,uBAAuB;AAC9B,OAAOC,OAAO,MAAM,oBAAoB;AACxC,OAAOC,UAAU,MAAM,uBAAuB;AAC9C,SAASC,SAAS,QAAQ,oBAAoB;;AAE9C;AACA;AACA;AACA,OAAOC,uBAAuB,MAAM,+BAA+B;AACnE,OAAOC,MAAM,MAAM,UAAU;AAE7B,eAAe,SAASC,qBAAqBA,CAAE;EAC9CC,QAAQ;EACRC,KAAK,GAAG,SAAS;EACjBC,mBAAmB;EACnBC;AACD,CAAC,EAAG;EACH,IAAKD,mBAAmB,EAAG;IAC1BP,UAAU,CACT,2DAA2D,EAC3D;MACCS,KAAK,EAAE,KAAK;MACZC,OAAO,EAAE,KAAK;MACdC,WAAW,EAAE;IACd,CACD,CAAC;IACDL,KAAK,GAAGC,mBAAmB;EAC5B;EAEA,MAAMK,WAAW,GAAGV,uBAAuB,CAAC,CAAC;EAC7C,MAAMW,IAAI,GAAGV,MAAM,CAAEG,KAAK,CAAE,EAAEO,IAAI;EAClC,IAAK,CAAEA,IAAI,EAAG;IACb,OAAAC,YAAA,oBAAAA,YAAA,YAAAf,OAAO,CAAG,oCAAoCO,KAAO,aAAa,CAAC;IACnE,OAAO,IAAI;EACZ;EACA,IAAK,CAAEM,WAAW,EAAG;IACpB,OAAO,IAAI;EACZ;EAEA,OACCG,aAAA,CAACnB,aAAa;IAACoB,QAAQ,EAAGA;EAAU,GACnCD,aAAA,CAACF,IAAI,QACAI,SAAS,IAAM;IAClB,OACCF,aAAA,CAACG,0BAA0B;MAC1BD,SAAS,EAAGA,SAAW;MACvBZ,QAAQ,EAAGA,QAAU;MACrBG,cAAc,EAAGA;IAAgB,CACjC,CAAC;EAEJ,CACK,CACQ,CAAC;AAElB;AAEA,SAASU,0BAA0BA,CAAE;EAAEb,QAAQ;EAAEG,cAAc;EAAES;AAAU,CAAC,EAAG;EAC9E,MAAM;IAAEE,sBAAsB;IAAEC;EAAyB,CAAC,GAAGH,SAAS;EACtEhB,SAAS,CAAE,MAAM;IAChB,IAAKO,cAAc,IAAIW,sBAAsB,EAAG;MAC/CA,sBAAsB,CAAEX,cAAe,CAAC;IACzC;IACA,OAAO,MAAM;MACZ,IAAKA,cAAc,IAAIY,wBAAwB,EAAG;QACjDA,wBAAwB,CAAEZ,cAAe,CAAC;MAC3C;IACD,CAAC;EACF,CAAC,EAAE,CAAEA,cAAc,EAAEW,sBAAsB,EAAEC,wBAAwB,CAAG,CAAC;;EAEzE;EACA;EACA;EACA;EACA,MAAMC,KAAK,GACVJ,SAAS,IAAIK,MAAM,CAACC,IAAI,CAAEN,SAAU,CAAC,CAACO,MAAM,GAAG,CAAC,GAAGP,SAAS,GAAG,IAAI;EACpE,OACCF,aAAA,CAACjB,iBAAiB,CAAC2B,QAAQ;IAACJ,KAAK,EAAGA;EAAO,GACxChB,QACyB,CAAC;AAE/B"}
1
+ {"version":3,"names":["__experimentalStyleProvider","StyleProvider","__experimentalToolsPanelContext","ToolsPanelContext","warning","deprecated","useEffect","useContext","useDisplayBlockControls","groups","InspectorControlsFill","children","group","__experimentalGroup","resetAllFilter","since","version","alternative","isDisplayed","Fill","SCRIPT_DEBUG","createElement","document","fillProps","ToolsPanelInspectorControl","RegisterResetAll","registerResetAllFilter","deregisterResetAllFilter","forwardedContext","innerMarkup","reduce","inner","Provider","props"],"sources":["@wordpress/block-editor/src/components/inspector-controls/fill.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalStyleProvider as StyleProvider,\n\t__experimentalToolsPanelContext as ToolsPanelContext,\n} from '@wordpress/components';\nimport warning from '@wordpress/warning';\nimport deprecated from '@wordpress/deprecated';\nimport { useEffect, useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useDisplayBlockControls from '../use-display-block-controls';\nimport groups from './groups';\n\nexport default function InspectorControlsFill( {\n\tchildren,\n\tgroup = 'default',\n\t__experimentalGroup,\n\tresetAllFilter,\n} ) {\n\tif ( __experimentalGroup ) {\n\t\tdeprecated(\n\t\t\t'`__experimentalGroup` property in `InspectorControlsFill`',\n\t\t\t{\n\t\t\t\tsince: '6.2',\n\t\t\t\tversion: '6.4',\n\t\t\t\talternative: '`group`',\n\t\t\t}\n\t\t);\n\t\tgroup = __experimentalGroup;\n\t}\n\n\tconst isDisplayed = useDisplayBlockControls();\n\tconst Fill = groups[ group ]?.Fill;\n\tif ( ! Fill ) {\n\t\twarning( `Unknown InspectorControls group \"${ group }\" provided.` );\n\t\treturn null;\n\t}\n\tif ( ! isDisplayed ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<StyleProvider document={ document }>\n\t\t\t<Fill>\n\t\t\t\t{ ( fillProps ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<ToolsPanelInspectorControl\n\t\t\t\t\t\t\tfillProps={ fillProps }\n\t\t\t\t\t\t\tchildren={ children }\n\t\t\t\t\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t</Fill>\n\t\t</StyleProvider>\n\t);\n}\n\nfunction RegisterResetAll( { resetAllFilter, children } ) {\n\tconst { registerResetAllFilter, deregisterResetAllFilter } =\n\t\tuseContext( ToolsPanelContext );\n\tuseEffect( () => {\n\t\tif (\n\t\t\tresetAllFilter &&\n\t\t\tregisterResetAllFilter &&\n\t\t\tderegisterResetAllFilter\n\t\t) {\n\t\t\tregisterResetAllFilter( resetAllFilter );\n\t\t\treturn () => {\n\t\t\t\tderegisterResetAllFilter( resetAllFilter );\n\t\t\t};\n\t\t}\n\t}, [ resetAllFilter, registerResetAllFilter, deregisterResetAllFilter ] );\n\treturn children;\n}\n\nfunction ToolsPanelInspectorControl( { children, resetAllFilter, fillProps } ) {\n\t// `fillProps.forwardedContext` is an array of context provider entries, provided by slot,\n\t// that should wrap the fill markup.\n\tconst { forwardedContext = [] } = fillProps;\n\n\t// Children passed to InspectorControlsFill will not have\n\t// access to any React Context whose Provider is part of\n\t// the InspectorControlsSlot tree. So we re-create the\n\t// Provider in this subtree.\n\tconst innerMarkup = (\n\t\t<RegisterResetAll resetAllFilter={ resetAllFilter }>\n\t\t\t{ children }\n\t\t</RegisterResetAll>\n\t);\n\treturn forwardedContext.reduce(\n\t\t( inner, [ Provider, props ] ) => (\n\t\t\t<Provider { ...props }>{ inner }</Provider>\n\t\t),\n\t\tinnerMarkup\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,2BAA2B,IAAIC,aAAa,EAC5CC,+BAA+B,IAAIC,iBAAiB,QAC9C,uBAAuB;AAC9B,OAAOC,OAAO,MAAM,oBAAoB;AACxC,OAAOC,UAAU,MAAM,uBAAuB;AAC9C,SAASC,SAAS,EAAEC,UAAU,QAAQ,oBAAoB;;AAE1D;AACA;AACA;AACA,OAAOC,uBAAuB,MAAM,+BAA+B;AACnE,OAAOC,MAAM,MAAM,UAAU;AAE7B,eAAe,SAASC,qBAAqBA,CAAE;EAC9CC,QAAQ;EACRC,KAAK,GAAG,SAAS;EACjBC,mBAAmB;EACnBC;AACD,CAAC,EAAG;EACH,IAAKD,mBAAmB,EAAG;IAC1BR,UAAU,CACT,2DAA2D,EAC3D;MACCU,KAAK,EAAE,KAAK;MACZC,OAAO,EAAE,KAAK;MACdC,WAAW,EAAE;IACd,CACD,CAAC;IACDL,KAAK,GAAGC,mBAAmB;EAC5B;EAEA,MAAMK,WAAW,GAAGV,uBAAuB,CAAC,CAAC;EAC7C,MAAMW,IAAI,GAAGV,MAAM,CAAEG,KAAK,CAAE,EAAEO,IAAI;EAClC,IAAK,CAAEA,IAAI,EAAG;IACb,OAAAC,YAAA,oBAAAA,YAAA,YAAAhB,OAAO,CAAG,oCAAoCQ,KAAO,aAAa,CAAC;IACnE,OAAO,IAAI;EACZ;EACA,IAAK,CAAEM,WAAW,EAAG;IACpB,OAAO,IAAI;EACZ;EAEA,OACCG,aAAA,CAACpB,aAAa;IAACqB,QAAQ,EAAGA;EAAU,GACnCD,aAAA,CAACF,IAAI,QACAI,SAAS,IAAM;IAClB,OACCF,aAAA,CAACG,0BAA0B;MAC1BD,SAAS,EAAGA,SAAW;MACvBZ,QAAQ,EAAGA,QAAU;MACrBG,cAAc,EAAGA;IAAgB,CACjC,CAAC;EAEJ,CACK,CACQ,CAAC;AAElB;AAEA,SAASW,gBAAgBA,CAAE;EAAEX,cAAc;EAAEH;AAAS,CAAC,EAAG;EACzD,MAAM;IAAEe,sBAAsB;IAAEC;EAAyB,CAAC,GACzDpB,UAAU,CAAEJ,iBAAkB,CAAC;EAChCG,SAAS,CAAE,MAAM;IAChB,IACCQ,cAAc,IACdY,sBAAsB,IACtBC,wBAAwB,EACvB;MACDD,sBAAsB,CAAEZ,cAAe,CAAC;MACxC,OAAO,MAAM;QACZa,wBAAwB,CAAEb,cAAe,CAAC;MAC3C,CAAC;IACF;EACD,CAAC,EAAE,CAAEA,cAAc,EAAEY,sBAAsB,EAAEC,wBAAwB,CAAG,CAAC;EACzE,OAAOhB,QAAQ;AAChB;AAEA,SAASa,0BAA0BA,CAAE;EAAEb,QAAQ;EAAEG,cAAc;EAAES;AAAU,CAAC,EAAG;EAC9E;EACA;EACA,MAAM;IAAEK,gBAAgB,GAAG;EAAG,CAAC,GAAGL,SAAS;;EAE3C;EACA;EACA;EACA;EACA,MAAMM,WAAW,GAChBR,aAAA,CAACI,gBAAgB;IAACX,cAAc,EAAGA;EAAgB,GAChDH,QACe,CAClB;EACD,OAAOiB,gBAAgB,CAACE,MAAM,CAC7B,CAAEC,KAAK,EAAE,CAAEC,QAAQ,EAAEC,KAAK,CAAE,KAC3BZ,aAAA,CAACW,QAAQ;IAAA,GAAMC;EAAK,GAAKF,KAAiB,CAC1C,EACDF,WACD,CAAC;AACF"}
@@ -4,6 +4,7 @@
4
4
  import { createSlotFill } from '@wordpress/components';
5
5
  const InspectorControlsDefault = createSlotFill('InspectorControls');
6
6
  const InspectorControlsAdvanced = createSlotFill('InspectorAdvancedControls');
7
+ const InspectorControlsBackground = createSlotFill('InspectorControlsBackground');
7
8
  const InspectorControlsBorder = createSlotFill('InspectorControlsBorder');
8
9
  const InspectorControlsColor = createSlotFill('InspectorControlsColor');
9
10
  const InspectorControlsFilter = createSlotFill('InspectorControlsFilter');
@@ -15,16 +16,17 @@ const InspectorControlsStyles = createSlotFill('InspectorControlsStyles');
15
16
  const groups = {
16
17
  default: InspectorControlsDefault,
17
18
  advanced: InspectorControlsAdvanced,
19
+ background: InspectorControlsBackground,
18
20
  border: InspectorControlsBorder,
19
21
  color: InspectorControlsColor,
20
- filter: InspectorControlsFilter,
21
22
  dimensions: InspectorControlsDimensions,
23
+ filter: InspectorControlsFilter,
22
24
  list: InspectorControlsListView,
25
+ position: InspectorControlsPosition,
23
26
  settings: InspectorControlsDefault,
24
27
  // Alias for default.
25
28
  styles: InspectorControlsStyles,
26
- typography: InspectorControlsTypography,
27
- position: InspectorControlsPosition
29
+ typography: InspectorControlsTypography
28
30
  };
29
31
  export default groups;
30
32
  //# sourceMappingURL=groups.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createSlotFill","InspectorControlsDefault","InspectorControlsAdvanced","InspectorControlsBorder","InspectorControlsColor","InspectorControlsFilter","InspectorControlsDimensions","InspectorControlsPosition","InspectorControlsTypography","InspectorControlsListView","InspectorControlsStyles","groups","default","advanced","border","color","filter","dimensions","list","settings","styles","typography","position"],"sources":["@wordpress/block-editor/src/components/inspector-controls/groups.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill } from '@wordpress/components';\n\nconst InspectorControlsDefault = createSlotFill( 'InspectorControls' );\nconst InspectorControlsAdvanced = createSlotFill( 'InspectorAdvancedControls' );\nconst InspectorControlsBorder = createSlotFill( 'InspectorControlsBorder' );\nconst InspectorControlsColor = createSlotFill( 'InspectorControlsColor' );\nconst InspectorControlsFilter = createSlotFill( 'InspectorControlsFilter' );\nconst InspectorControlsDimensions = createSlotFill(\n\t'InspectorControlsDimensions'\n);\nconst InspectorControlsPosition = createSlotFill( 'InspectorControlsPosition' );\nconst InspectorControlsTypography = createSlotFill(\n\t'InspectorControlsTypography'\n);\nconst InspectorControlsListView = createSlotFill( 'InspectorControlsListView' );\nconst InspectorControlsStyles = createSlotFill( 'InspectorControlsStyles' );\n\nconst groups = {\n\tdefault: InspectorControlsDefault,\n\tadvanced: InspectorControlsAdvanced,\n\tborder: InspectorControlsBorder,\n\tcolor: InspectorControlsColor,\n\tfilter: InspectorControlsFilter,\n\tdimensions: InspectorControlsDimensions,\n\tlist: InspectorControlsListView,\n\tsettings: InspectorControlsDefault, // Alias for default.\n\tstyles: InspectorControlsStyles,\n\ttypography: InspectorControlsTypography,\n\tposition: InspectorControlsPosition,\n};\n\nexport default groups;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,cAAc,QAAQ,uBAAuB;AAEtD,MAAMC,wBAAwB,GAAGD,cAAc,CAAE,mBAAoB,CAAC;AACtE,MAAME,yBAAyB,GAAGF,cAAc,CAAE,2BAA4B,CAAC;AAC/E,MAAMG,uBAAuB,GAAGH,cAAc,CAAE,yBAA0B,CAAC;AAC3E,MAAMI,sBAAsB,GAAGJ,cAAc,CAAE,wBAAyB,CAAC;AACzE,MAAMK,uBAAuB,GAAGL,cAAc,CAAE,yBAA0B,CAAC;AAC3E,MAAMM,2BAA2B,GAAGN,cAAc,CACjD,6BACD,CAAC;AACD,MAAMO,yBAAyB,GAAGP,cAAc,CAAE,2BAA4B,CAAC;AAC/E,MAAMQ,2BAA2B,GAAGR,cAAc,CACjD,6BACD,CAAC;AACD,MAAMS,yBAAyB,GAAGT,cAAc,CAAE,2BAA4B,CAAC;AAC/E,MAAMU,uBAAuB,GAAGV,cAAc,CAAE,yBAA0B,CAAC;AAE3E,MAAMW,MAAM,GAAG;EACdC,OAAO,EAAEX,wBAAwB;EACjCY,QAAQ,EAAEX,yBAAyB;EACnCY,MAAM,EAAEX,uBAAuB;EAC/BY,KAAK,EAAEX,sBAAsB;EAC7BY,MAAM,EAAEX,uBAAuB;EAC/BY,UAAU,EAAEX,2BAA2B;EACvCY,IAAI,EAAET,yBAAyB;EAC/BU,QAAQ,EAAElB,wBAAwB;EAAE;EACpCmB,MAAM,EAAEV,uBAAuB;EAC/BW,UAAU,EAAEb,2BAA2B;EACvCc,QAAQ,EAAEf;AACX,CAAC;AAED,eAAeI,MAAM"}
1
+ {"version":3,"names":["createSlotFill","InspectorControlsDefault","InspectorControlsAdvanced","InspectorControlsBackground","InspectorControlsBorder","InspectorControlsColor","InspectorControlsFilter","InspectorControlsDimensions","InspectorControlsPosition","InspectorControlsTypography","InspectorControlsListView","InspectorControlsStyles","groups","default","advanced","background","border","color","dimensions","filter","list","position","settings","styles","typography"],"sources":["@wordpress/block-editor/src/components/inspector-controls/groups.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill } from '@wordpress/components';\n\nconst InspectorControlsDefault = createSlotFill( 'InspectorControls' );\nconst InspectorControlsAdvanced = createSlotFill( 'InspectorAdvancedControls' );\nconst InspectorControlsBackground = createSlotFill(\n\t'InspectorControlsBackground'\n);\nconst InspectorControlsBorder = createSlotFill( 'InspectorControlsBorder' );\nconst InspectorControlsColor = createSlotFill( 'InspectorControlsColor' );\nconst InspectorControlsFilter = createSlotFill( 'InspectorControlsFilter' );\nconst InspectorControlsDimensions = createSlotFill(\n\t'InspectorControlsDimensions'\n);\nconst InspectorControlsPosition = createSlotFill( 'InspectorControlsPosition' );\nconst InspectorControlsTypography = createSlotFill(\n\t'InspectorControlsTypography'\n);\nconst InspectorControlsListView = createSlotFill( 'InspectorControlsListView' );\nconst InspectorControlsStyles = createSlotFill( 'InspectorControlsStyles' );\n\nconst groups = {\n\tdefault: InspectorControlsDefault,\n\tadvanced: InspectorControlsAdvanced,\n\tbackground: InspectorControlsBackground,\n\tborder: InspectorControlsBorder,\n\tcolor: InspectorControlsColor,\n\tdimensions: InspectorControlsDimensions,\n\tfilter: InspectorControlsFilter,\n\tlist: InspectorControlsListView,\n\tposition: InspectorControlsPosition,\n\tsettings: InspectorControlsDefault, // Alias for default.\n\tstyles: InspectorControlsStyles,\n\ttypography: InspectorControlsTypography,\n};\n\nexport default groups;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,cAAc,QAAQ,uBAAuB;AAEtD,MAAMC,wBAAwB,GAAGD,cAAc,CAAE,mBAAoB,CAAC;AACtE,MAAME,yBAAyB,GAAGF,cAAc,CAAE,2BAA4B,CAAC;AAC/E,MAAMG,2BAA2B,GAAGH,cAAc,CACjD,6BACD,CAAC;AACD,MAAMI,uBAAuB,GAAGJ,cAAc,CAAE,yBAA0B,CAAC;AAC3E,MAAMK,sBAAsB,GAAGL,cAAc,CAAE,wBAAyB,CAAC;AACzE,MAAMM,uBAAuB,GAAGN,cAAc,CAAE,yBAA0B,CAAC;AAC3E,MAAMO,2BAA2B,GAAGP,cAAc,CACjD,6BACD,CAAC;AACD,MAAMQ,yBAAyB,GAAGR,cAAc,CAAE,2BAA4B,CAAC;AAC/E,MAAMS,2BAA2B,GAAGT,cAAc,CACjD,6BACD,CAAC;AACD,MAAMU,yBAAyB,GAAGV,cAAc,CAAE,2BAA4B,CAAC;AAC/E,MAAMW,uBAAuB,GAAGX,cAAc,CAAE,yBAA0B,CAAC;AAE3E,MAAMY,MAAM,GAAG;EACdC,OAAO,EAAEZ,wBAAwB;EACjCa,QAAQ,EAAEZ,yBAAyB;EACnCa,UAAU,EAAEZ,2BAA2B;EACvCa,MAAM,EAAEZ,uBAAuB;EAC/Ba,KAAK,EAAEZ,sBAAsB;EAC7Ba,UAAU,EAAEX,2BAA2B;EACvCY,MAAM,EAAEb,uBAAuB;EAC/Bc,IAAI,EAAEV,yBAAyB;EAC/BW,QAAQ,EAAEb,yBAAyB;EACnCc,QAAQ,EAAErB,wBAAwB;EAAE;EACpCsB,MAAM,EAAEZ,uBAAuB;EAC/Ba,UAAU,EAAEf;AACb,CAAC;AAED,eAAeG,MAAM"}
@@ -2,7 +2,8 @@ import { createElement } from "@wordpress/element";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
5
- import { __experimentalUseSlotFills as useSlotFills } from '@wordpress/components';
5
+ import { __experimentalUseSlotFills as useSlotFills, __unstableMotionContext as MotionContext } from '@wordpress/components';
6
+ import { useContext, useMemo } from '@wordpress/element';
6
7
  import warning from '@wordpress/warning';
7
8
  import deprecated from '@wordpress/deprecated';
8
9
 
@@ -16,6 +17,7 @@ export default function InspectorControlsSlot({
16
17
  __experimentalGroup,
17
18
  group = 'default',
18
19
  label,
20
+ fillProps,
19
21
  ...props
20
22
  }) {
21
23
  if (__experimentalGroup) {
@@ -28,6 +30,16 @@ export default function InspectorControlsSlot({
28
30
  }
29
31
  const Slot = groups[group]?.Slot;
30
32
  const fills = useSlotFills(Slot?.__unstableName);
33
+ const motionContextValue = useContext(MotionContext);
34
+ const computedFillProps = useMemo(() => {
35
+ var _fillProps$forwardedC;
36
+ return {
37
+ ...(fillProps !== null && fillProps !== void 0 ? fillProps : {}),
38
+ forwardedContext: [...((_fillProps$forwardedC = fillProps?.forwardedContext) !== null && _fillProps$forwardedC !== void 0 ? _fillProps$forwardedC : []), [MotionContext.Provider, {
39
+ value: motionContextValue
40
+ }]]
41
+ };
42
+ }, [motionContextValue, fillProps]);
31
43
  if (!Slot) {
32
44
  typeof SCRIPT_DEBUG !== "undefined" && SCRIPT_DEBUG === true ? warning(`Unknown InspectorControls group "${group}" provided.`) : void 0;
33
45
  return null;
@@ -41,11 +53,13 @@ export default function InspectorControlsSlot({
41
53
  label: label
42
54
  }, createElement(BlockSupportSlotContainer, {
43
55
  ...props,
56
+ fillProps: computedFillProps,
44
57
  Slot: Slot
45
58
  }));
46
59
  }
47
60
  return createElement(Slot, {
48
61
  ...props,
62
+ fillProps: computedFillProps,
49
63
  bubblesVirtually: true
50
64
  });
51
65
  }
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalUseSlotFills","useSlotFills","warning","deprecated","BlockSupportToolsPanel","BlockSupportSlotContainer","groups","InspectorControlsSlot","__experimentalGroup","group","label","props","since","version","alternative","Slot","fills","__unstableName","SCRIPT_DEBUG","length","createElement","bubblesVirtually"],"sources":["@wordpress/block-editor/src/components/inspector-controls/slot.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalUseSlotFills as useSlotFills } from '@wordpress/components';\nimport warning from '@wordpress/warning';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport BlockSupportToolsPanel from './block-support-tools-panel';\nimport BlockSupportSlotContainer from './block-support-slot-container';\nimport groups from './groups';\n\nexport default function InspectorControlsSlot( {\n\t__experimentalGroup,\n\tgroup = 'default',\n\tlabel,\n\t...props\n} ) {\n\tif ( __experimentalGroup ) {\n\t\tdeprecated(\n\t\t\t'`__experimentalGroup` property in `InspectorControlsSlot`',\n\t\t\t{\n\t\t\t\tsince: '6.2',\n\t\t\t\tversion: '6.4',\n\t\t\t\talternative: '`group`',\n\t\t\t}\n\t\t);\n\t\tgroup = __experimentalGroup;\n\t}\n\tconst Slot = groups[ group ]?.Slot;\n\tconst fills = useSlotFills( Slot?.__unstableName );\n\tif ( ! Slot ) {\n\t\twarning( `Unknown InspectorControls group \"${ group }\" provided.` );\n\t\treturn null;\n\t}\n\n\tif ( ! fills?.length ) {\n\t\treturn null;\n\t}\n\n\tif ( label ) {\n\t\treturn (\n\t\t\t<BlockSupportToolsPanel group={ group } label={ label }>\n\t\t\t\t<BlockSupportSlotContainer { ...props } Slot={ Slot } />\n\t\t\t</BlockSupportToolsPanel>\n\t\t);\n\t}\n\n\treturn <Slot { ...props } bubblesVirtually />;\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,0BAA0B,IAAIC,YAAY,QAAQ,uBAAuB;AAClF,OAAOC,OAAO,MAAM,oBAAoB;AACxC,OAAOC,UAAU,MAAM,uBAAuB;;AAE9C;AACA;AACA;AACA,OAAOC,sBAAsB,MAAM,6BAA6B;AAChE,OAAOC,yBAAyB,MAAM,gCAAgC;AACtE,OAAOC,MAAM,MAAM,UAAU;AAE7B,eAAe,SAASC,qBAAqBA,CAAE;EAC9CC,mBAAmB;EACnBC,KAAK,GAAG,SAAS;EACjBC,KAAK;EACL,GAAGC;AACJ,CAAC,EAAG;EACH,IAAKH,mBAAmB,EAAG;IAC1BL,UAAU,CACT,2DAA2D,EAC3D;MACCS,KAAK,EAAE,KAAK;MACZC,OAAO,EAAE,KAAK;MACdC,WAAW,EAAE;IACd,CACD,CAAC;IACDL,KAAK,GAAGD,mBAAmB;EAC5B;EACA,MAAMO,IAAI,GAAGT,MAAM,CAAEG,KAAK,CAAE,EAAEM,IAAI;EAClC,MAAMC,KAAK,GAAGf,YAAY,CAAEc,IAAI,EAAEE,cAAe,CAAC;EAClD,IAAK,CAAEF,IAAI,EAAG;IACb,OAAAG,YAAA,oBAAAA,YAAA,YAAAhB,OAAO,CAAG,oCAAoCO,KAAO,aAAa,CAAC;IACnE,OAAO,IAAI;EACZ;EAEA,IAAK,CAAEO,KAAK,EAAEG,MAAM,EAAG;IACtB,OAAO,IAAI;EACZ;EAEA,IAAKT,KAAK,EAAG;IACZ,OACCU,aAAA,CAAChB,sBAAsB;MAACK,KAAK,EAAGA,KAAO;MAACC,KAAK,EAAGA;IAAO,GACtDU,aAAA,CAACf,yBAAyB;MAAA,GAAMM,KAAK;MAAGI,IAAI,EAAGA;IAAM,CAAE,CAChC,CAAC;EAE3B;EAEA,OAAOK,aAAA,CAACL,IAAI;IAAA,GAAMJ,KAAK;IAAGU,gBAAgB;EAAA,CAAE,CAAC;AAC9C"}
1
+ {"version":3,"names":["__experimentalUseSlotFills","useSlotFills","__unstableMotionContext","MotionContext","useContext","useMemo","warning","deprecated","BlockSupportToolsPanel","BlockSupportSlotContainer","groups","InspectorControlsSlot","__experimentalGroup","group","label","fillProps","props","since","version","alternative","Slot","fills","__unstableName","motionContextValue","computedFillProps","_fillProps$forwardedC","forwardedContext","Provider","value","SCRIPT_DEBUG","length","createElement","bubblesVirtually"],"sources":["@wordpress/block-editor/src/components/inspector-controls/slot.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalUseSlotFills as useSlotFills,\n\t__unstableMotionContext as MotionContext,\n} from '@wordpress/components';\nimport { useContext, useMemo } from '@wordpress/element';\nimport warning from '@wordpress/warning';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport BlockSupportToolsPanel from './block-support-tools-panel';\nimport BlockSupportSlotContainer from './block-support-slot-container';\nimport groups from './groups';\n\nexport default function InspectorControlsSlot( {\n\t__experimentalGroup,\n\tgroup = 'default',\n\tlabel,\n\tfillProps,\n\t...props\n} ) {\n\tif ( __experimentalGroup ) {\n\t\tdeprecated(\n\t\t\t'`__experimentalGroup` property in `InspectorControlsSlot`',\n\t\t\t{\n\t\t\t\tsince: '6.2',\n\t\t\t\tversion: '6.4',\n\t\t\t\talternative: '`group`',\n\t\t\t}\n\t\t);\n\t\tgroup = __experimentalGroup;\n\t}\n\tconst Slot = groups[ group ]?.Slot;\n\tconst fills = useSlotFills( Slot?.__unstableName );\n\n\tconst motionContextValue = useContext( MotionContext );\n\n\tconst computedFillProps = useMemo(\n\t\t() => ( {\n\t\t\t...( fillProps ?? {} ),\n\t\t\tforwardedContext: [\n\t\t\t\t...( fillProps?.forwardedContext ?? [] ),\n\t\t\t\t[ MotionContext.Provider, { value: motionContextValue } ],\n\t\t\t],\n\t\t} ),\n\t\t[ motionContextValue, fillProps ]\n\t);\n\n\tif ( ! Slot ) {\n\t\twarning( `Unknown InspectorControls group \"${ group }\" provided.` );\n\t\treturn null;\n\t}\n\n\tif ( ! fills?.length ) {\n\t\treturn null;\n\t}\n\n\tif ( label ) {\n\t\treturn (\n\t\t\t<BlockSupportToolsPanel group={ group } label={ label }>\n\t\t\t\t<BlockSupportSlotContainer\n\t\t\t\t\t{ ...props }\n\t\t\t\t\tfillProps={ computedFillProps }\n\t\t\t\t\tSlot={ Slot }\n\t\t\t\t/>\n\t\t\t</BlockSupportToolsPanel>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Slot { ...props } fillProps={ computedFillProps } bubblesVirtually />\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,0BAA0B,IAAIC,YAAY,EAC1CC,uBAAuB,IAAIC,aAAa,QAClC,uBAAuB;AAC9B,SAASC,UAAU,EAAEC,OAAO,QAAQ,oBAAoB;AACxD,OAAOC,OAAO,MAAM,oBAAoB;AACxC,OAAOC,UAAU,MAAM,uBAAuB;;AAE9C;AACA;AACA;AACA,OAAOC,sBAAsB,MAAM,6BAA6B;AAChE,OAAOC,yBAAyB,MAAM,gCAAgC;AACtE,OAAOC,MAAM,MAAM,UAAU;AAE7B,eAAe,SAASC,qBAAqBA,CAAE;EAC9CC,mBAAmB;EACnBC,KAAK,GAAG,SAAS;EACjBC,KAAK;EACLC,SAAS;EACT,GAAGC;AACJ,CAAC,EAAG;EACH,IAAKJ,mBAAmB,EAAG;IAC1BL,UAAU,CACT,2DAA2D,EAC3D;MACCU,KAAK,EAAE,KAAK;MACZC,OAAO,EAAE,KAAK;MACdC,WAAW,EAAE;IACd,CACD,CAAC;IACDN,KAAK,GAAGD,mBAAmB;EAC5B;EACA,MAAMQ,IAAI,GAAGV,MAAM,CAAEG,KAAK,CAAE,EAAEO,IAAI;EAClC,MAAMC,KAAK,GAAGpB,YAAY,CAAEmB,IAAI,EAAEE,cAAe,CAAC;EAElD,MAAMC,kBAAkB,GAAGnB,UAAU,CAAED,aAAc,CAAC;EAEtD,MAAMqB,iBAAiB,GAAGnB,OAAO,CAChC;IAAA,IAAAoB,qBAAA;IAAA,OAAQ;MACP,IAAKV,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,CAAC,CAAC,CAAE;MACtBW,gBAAgB,EAAE,CACjB,KAAAD,qBAAA,GAAKV,SAAS,EAAEW,gBAAgB,cAAAD,qBAAA,cAAAA,qBAAA,GAAI,EAAE,CAAE,EACxC,CAAEtB,aAAa,CAACwB,QAAQ,EAAE;QAAEC,KAAK,EAAEL;MAAmB,CAAC,CAAE;IAE3D,CAAC;EAAA,CAAE,EACH,CAAEA,kBAAkB,EAAER,SAAS,CAChC,CAAC;EAED,IAAK,CAAEK,IAAI,EAAG;IACb,OAAAS,YAAA,oBAAAA,YAAA,YAAAvB,OAAO,CAAG,oCAAoCO,KAAO,aAAa,CAAC;IACnE,OAAO,IAAI;EACZ;EAEA,IAAK,CAAEQ,KAAK,EAAES,MAAM,EAAG;IACtB,OAAO,IAAI;EACZ;EAEA,IAAKhB,KAAK,EAAG;IACZ,OACCiB,aAAA,CAACvB,sBAAsB;MAACK,KAAK,EAAGA,KAAO;MAACC,KAAK,EAAGA;IAAO,GACtDiB,aAAA,CAACtB,yBAAyB;MAAA,GACpBO,KAAK;MACVD,SAAS,EAAGS,iBAAmB;MAC/BJ,IAAI,EAAGA;IAAM,CACb,CACsB,CAAC;EAE3B;EAEA,OACCW,aAAA,CAACX,IAAI;IAAA,GAAMJ,KAAK;IAAGD,SAAS,EAAGS,iBAAmB;IAACQ,gBAAgB;EAAA,CAAE,CAAC;AAExE"}
@@ -27,6 +27,9 @@ const StylesTab = ({
27
27
  group: "color",
28
28
  label: __('Color'),
29
29
  className: "color-block-support-panel__inner-wrapper"
30
+ }), createElement(InspectorControls.Slot, {
31
+ group: "background",
32
+ label: __('Background image')
30
33
  }), createElement(InspectorControls.Slot, {
31
34
  group: "filter"
32
35
  }), createElement(InspectorControls.Slot, {
@@ -1 +1 @@
1
- {"version":3,"names":["hasBlockSupport","PanelBody","__","BlockStyles","DefaultStylePicker","InspectorControls","StylesTab","blockName","clientId","hasBlockStyles","createElement","Fragment","title","Slot","group","label","className"],"sources":["@wordpress/block-editor/src/components/inspector-controls-tabs/styles-tab.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { hasBlockSupport } from '@wordpress/blocks';\nimport { PanelBody } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockStyles from '../block-styles';\nimport DefaultStylePicker from '../default-style-picker';\nimport InspectorControls from '../inspector-controls';\n\nconst StylesTab = ( { blockName, clientId, hasBlockStyles } ) => {\n\treturn (\n\t\t<>\n\t\t\t{ hasBlockStyles && (\n\t\t\t\t<div>\n\t\t\t\t\t<PanelBody title={ __( 'Styles' ) }>\n\t\t\t\t\t\t<BlockStyles clientId={ clientId } />\n\t\t\t\t\t\t{ hasBlockSupport(\n\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\t'defaultStylePicker',\n\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t) && <DefaultStylePicker blockName={ blockName } /> }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<InspectorControls.Slot\n\t\t\t\tgroup=\"color\"\n\t\t\t\tlabel={ __( 'Color' ) }\n\t\t\t\tclassName=\"color-block-support-panel__inner-wrapper\"\n\t\t\t/>\n\t\t\t<InspectorControls.Slot group=\"filter\" />\n\t\t\t<InspectorControls.Slot\n\t\t\t\tgroup=\"typography\"\n\t\t\t\tlabel={ __( 'Typography' ) }\n\t\t\t/>\n\t\t\t<InspectorControls.Slot\n\t\t\t\tgroup=\"dimensions\"\n\t\t\t\tlabel={ __( 'Dimensions' ) }\n\t\t\t/>\n\t\t\t<InspectorControls.Slot group=\"border\" label={ __( 'Border' ) } />\n\t\t\t<InspectorControls.Slot group=\"styles\" />\n\t\t</>\n\t);\n};\n\nexport default StylesTab;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,eAAe,QAAQ,mBAAmB;AACnD,SAASC,SAAS,QAAQ,uBAAuB;AACjD,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,WAAW,MAAM,iBAAiB;AACzC,OAAOC,kBAAkB,MAAM,yBAAyB;AACxD,OAAOC,iBAAiB,MAAM,uBAAuB;AAErD,MAAMC,SAAS,GAAGA,CAAE;EAAEC,SAAS;EAAEC,QAAQ;EAAEC;AAAe,CAAC,KAAM;EAChE,OACCC,aAAA,CAAAC,QAAA,QACGF,cAAc,IACfC,aAAA,cACCA,aAAA,CAACT,SAAS;IAACW,KAAK,EAAGV,EAAE,CAAE,QAAS;EAAG,GAClCQ,aAAA,CAACP,WAAW;IAACK,QAAQ,EAAGA;EAAU,CAAE,CAAC,EACnCR,eAAe,CAChBO,SAAS,EACT,oBAAoB,EACpB,IACD,CAAC,IAAIG,aAAA,CAACN,kBAAkB;IAACG,SAAS,EAAGA;EAAW,CAAE,CACxC,CACP,CACL,EACDG,aAAA,CAACL,iBAAiB,CAACQ,IAAI;IACtBC,KAAK,EAAC,OAAO;IACbC,KAAK,EAAGb,EAAE,CAAE,OAAQ,CAAG;IACvBc,SAAS,EAAC;EAA0C,CACpD,CAAC,EACFN,aAAA,CAACL,iBAAiB,CAACQ,IAAI;IAACC,KAAK,EAAC;EAAQ,CAAE,CAAC,EACzCJ,aAAA,CAACL,iBAAiB,CAACQ,IAAI;IACtBC,KAAK,EAAC,YAAY;IAClBC,KAAK,EAAGb,EAAE,CAAE,YAAa;EAAG,CAC5B,CAAC,EACFQ,aAAA,CAACL,iBAAiB,CAACQ,IAAI;IACtBC,KAAK,EAAC,YAAY;IAClBC,KAAK,EAAGb,EAAE,CAAE,YAAa;EAAG,CAC5B,CAAC,EACFQ,aAAA,CAACL,iBAAiB,CAACQ,IAAI;IAACC,KAAK,EAAC,QAAQ;IAACC,KAAK,EAAGb,EAAE,CAAE,QAAS;EAAG,CAAE,CAAC,EAClEQ,aAAA,CAACL,iBAAiB,CAACQ,IAAI;IAACC,KAAK,EAAC;EAAQ,CAAE,CACvC,CAAC;AAEL,CAAC;AAED,eAAeR,SAAS"}
1
+ {"version":3,"names":["hasBlockSupport","PanelBody","__","BlockStyles","DefaultStylePicker","InspectorControls","StylesTab","blockName","clientId","hasBlockStyles","createElement","Fragment","title","Slot","group","label","className"],"sources":["@wordpress/block-editor/src/components/inspector-controls-tabs/styles-tab.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { hasBlockSupport } from '@wordpress/blocks';\nimport { PanelBody } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockStyles from '../block-styles';\nimport DefaultStylePicker from '../default-style-picker';\nimport InspectorControls from '../inspector-controls';\n\nconst StylesTab = ( { blockName, clientId, hasBlockStyles } ) => {\n\treturn (\n\t\t<>\n\t\t\t{ hasBlockStyles && (\n\t\t\t\t<div>\n\t\t\t\t\t<PanelBody title={ __( 'Styles' ) }>\n\t\t\t\t\t\t<BlockStyles clientId={ clientId } />\n\t\t\t\t\t\t{ hasBlockSupport(\n\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\t'defaultStylePicker',\n\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t) && <DefaultStylePicker blockName={ blockName } /> }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<InspectorControls.Slot\n\t\t\t\tgroup=\"color\"\n\t\t\t\tlabel={ __( 'Color' ) }\n\t\t\t\tclassName=\"color-block-support-panel__inner-wrapper\"\n\t\t\t/>\n\t\t\t<InspectorControls.Slot\n\t\t\t\tgroup=\"background\"\n\t\t\t\tlabel={ __( 'Background image' ) }\n\t\t\t/>\n\t\t\t<InspectorControls.Slot group=\"filter\" />\n\t\t\t<InspectorControls.Slot\n\t\t\t\tgroup=\"typography\"\n\t\t\t\tlabel={ __( 'Typography' ) }\n\t\t\t/>\n\t\t\t<InspectorControls.Slot\n\t\t\t\tgroup=\"dimensions\"\n\t\t\t\tlabel={ __( 'Dimensions' ) }\n\t\t\t/>\n\t\t\t<InspectorControls.Slot group=\"border\" label={ __( 'Border' ) } />\n\t\t\t<InspectorControls.Slot group=\"styles\" />\n\t\t</>\n\t);\n};\n\nexport default StylesTab;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,eAAe,QAAQ,mBAAmB;AACnD,SAASC,SAAS,QAAQ,uBAAuB;AACjD,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,WAAW,MAAM,iBAAiB;AACzC,OAAOC,kBAAkB,MAAM,yBAAyB;AACxD,OAAOC,iBAAiB,MAAM,uBAAuB;AAErD,MAAMC,SAAS,GAAGA,CAAE;EAAEC,SAAS;EAAEC,QAAQ;EAAEC;AAAe,CAAC,KAAM;EAChE,OACCC,aAAA,CAAAC,QAAA,QACGF,cAAc,IACfC,aAAA,cACCA,aAAA,CAACT,SAAS;IAACW,KAAK,EAAGV,EAAE,CAAE,QAAS;EAAG,GAClCQ,aAAA,CAACP,WAAW;IAACK,QAAQ,EAAGA;EAAU,CAAE,CAAC,EACnCR,eAAe,CAChBO,SAAS,EACT,oBAAoB,EACpB,IACD,CAAC,IAAIG,aAAA,CAACN,kBAAkB;IAACG,SAAS,EAAGA;EAAW,CAAE,CACxC,CACP,CACL,EACDG,aAAA,CAACL,iBAAiB,CAACQ,IAAI;IACtBC,KAAK,EAAC,OAAO;IACbC,KAAK,EAAGb,EAAE,CAAE,OAAQ,CAAG;IACvBc,SAAS,EAAC;EAA0C,CACpD,CAAC,EACFN,aAAA,CAACL,iBAAiB,CAACQ,IAAI;IACtBC,KAAK,EAAC,YAAY;IAClBC,KAAK,EAAGb,EAAE,CAAE,kBAAmB;EAAG,CAClC,CAAC,EACFQ,aAAA,CAACL,iBAAiB,CAACQ,IAAI;IAACC,KAAK,EAAC;EAAQ,CAAE,CAAC,EACzCJ,aAAA,CAACL,iBAAiB,CAACQ,IAAI;IACtBC,KAAK,EAAC,YAAY;IAClBC,KAAK,EAAGb,EAAE,CAAE,YAAa;EAAG,CAC5B,CAAC,EACFQ,aAAA,CAACL,iBAAiB,CAACQ,IAAI;IACtBC,KAAK,EAAC,YAAY;IAClBC,KAAK,EAAGb,EAAE,CAAE,YAAa;EAAG,CAC5B,CAAC,EACFQ,aAAA,CAACL,iBAAiB,CAACQ,IAAI;IAACC,KAAK,EAAC,QAAQ;IAACC,KAAK,EAAGb,EAAE,CAAE,QAAS;EAAG,CAAE,CAAC,EAClEQ,aAAA,CAACL,iBAAiB,CAACQ,IAAI;IAACC,KAAK,EAAC;EAAQ,CAAE,CACvC,CAAC;AAEL,CAAC;AAED,eAAeR,SAAS"}
@@ -15,6 +15,7 @@ import { ENTER } from '@wordpress/keycodes';
15
15
  import { isShallowEqualObjects } from '@wordpress/is-shallow-equal';
16
16
  import { useSelect, useDispatch } from '@wordpress/data';
17
17
  import { store as preferencesStore } from '@wordpress/preferences';
18
+ import { keyboardReturn } from '@wordpress/icons';
18
19
 
19
20
  /**
20
21
  * Internal dependencies
@@ -302,7 +303,8 @@ function LinkControl({
302
303
  }, createElement(Spinner, null), " ", __('Creating'), "\u2026"), isEditing && createElement(Fragment, null, createElement("div", {
303
304
  className: classnames({
304
305
  'block-editor-link-control__search-input-wrapper': true,
305
- 'has-text-control': showTextControl
306
+ 'has-text-control': showTextControl,
307
+ 'has-actions': showActions
306
308
  })
307
309
  }, showTextControl && createElement(TextControl, {
308
310
  __nextHasNoMarginBottom: true,
@@ -329,7 +331,15 @@ function LinkControl({
329
331
  withURLSuggestion: !noURLSuggestion,
330
332
  createSuggestionButtonText: createSuggestionButtonText,
331
333
  hideLabelFromVision: !showTextControl
332
- })), errorMessage && createElement(Notice, {
334
+ }), !showActions && createElement("div", {
335
+ className: "block-editor-link-control__search-enter"
336
+ }, createElement(Button, {
337
+ onClick: isDisabled ? noop : handleSubmit,
338
+ label: __('Submit'),
339
+ icon: keyboardReturn,
340
+ className: "block-editor-link-control__search-submit",
341
+ "aria-disabled": isDisabled
342
+ }))), errorMessage && createElement(Notice, {
333
343
  className: "block-editor-link-control__search-error",
334
344
  status: "error",
335
345
  isDismissible: false
@@ -379,5 +389,6 @@ function LinkControl({
379
389
  }, __('Cancel'))), renderControlBottom && renderControlBottom());
380
390
  }
381
391
  LinkControl.ViewerFill = ViewerFill;
392
+ LinkControl.DEFAULT_LINK_SETTINGS = DEFAULT_LINK_SETTINGS;
382
393
  export default LinkControl;
383
394
  //# sourceMappingURL=index.js.map