@wordpress/block-editor 12.13.0 → 12.15.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 (528) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +1 -1
  3. package/build/components/block-heading-level-dropdown/index.js +1 -1
  4. package/build/components/block-heading-level-dropdown/index.js.map +1 -1
  5. package/build/components/block-list/block.native.js +2 -0
  6. package/build/components/block-list/block.native.js.map +1 -1
  7. package/build/components/block-list/index.js +2 -9
  8. package/build/components/block-list/index.js.map +1 -1
  9. package/build/components/block-list-appender/index.js +16 -3
  10. package/build/components/block-list-appender/index.js.map +1 -1
  11. package/build/components/block-parent-selector/index.js +1 -1
  12. package/build/components/block-parent-selector/index.js.map +1 -1
  13. package/build/components/block-pattern-setup/index.js +25 -16
  14. package/build/components/block-pattern-setup/index.js.map +1 -1
  15. package/build/components/block-pattern-setup/setup-toolbar.js +4 -2
  16. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  17. package/build/components/block-patterns-list/index.js +36 -19
  18. package/build/components/block-patterns-list/index.js.map +1 -1
  19. package/build/components/block-quick-navigation/index.js +6 -4
  20. package/build/components/block-quick-navigation/index.js.map +1 -1
  21. package/build/components/block-rename/index.js +28 -0
  22. package/build/components/block-rename/index.js.map +1 -0
  23. package/build/components/block-rename/is-empty-string.js +10 -0
  24. package/build/components/block-rename/is-empty-string.js.map +1 -0
  25. package/build/components/block-rename/modal.js +87 -0
  26. package/build/components/block-rename/modal.js.map +1 -0
  27. package/build/components/block-rename/rename-control.js +74 -0
  28. package/build/components/block-rename/rename-control.js.map +1 -0
  29. package/build/components/block-rename/use-block-rename.js +17 -0
  30. package/build/components/block-rename/use-block-rename.js.map +1 -0
  31. package/build/components/block-settings-menu/block-settings-dropdown.js +33 -20
  32. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  33. package/build/components/block-settings-menu-controls/index.js +7 -0
  34. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  35. package/build/components/block-styles/index.js +0 -8
  36. package/build/components/block-styles/index.js.map +1 -1
  37. package/build/components/block-switcher/pattern-transformations-menu.js +18 -14
  38. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  39. package/build/components/block-toolbar/block-toolbar-menu.native.js +1 -1
  40. package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  41. package/build/components/block-tools/back-compat.js +2 -2
  42. package/build/components/block-tools/back-compat.js.map +1 -1
  43. package/build/components/block-tools/block-contextual-toolbar.js +11 -81
  44. package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
  45. package/build/components/block-tools/empty-block-inserter.js +56 -0
  46. package/build/components/block-tools/empty-block-inserter.js.map +1 -0
  47. package/build/components/block-tools/index.js +48 -9
  48. package/build/components/block-tools/index.js.map +1 -1
  49. package/build/components/block-tools/selected-block-tools.js +113 -0
  50. package/build/components/block-tools/selected-block-tools.js.map +1 -0
  51. package/build/components/block-tools/use-selected-block-tool-props.js +56 -0
  52. package/build/components/block-tools/use-selected-block-tool-props.js.map +1 -0
  53. package/build/components/block-types-list/index.js +6 -2
  54. package/build/components/block-types-list/index.js.map +1 -1
  55. package/build/components/date-format-picker/index.js +8 -1
  56. package/build/components/date-format-picker/index.js.map +1 -1
  57. package/build/components/editable-text/index.js +1 -2
  58. package/build/components/editable-text/index.js.map +1 -1
  59. package/build/components/global-styles/advanced-panel.js +1 -1
  60. package/build/components/global-styles/advanced-panel.js.map +1 -1
  61. package/build/components/iframe/index.js +4 -3
  62. package/build/components/iframe/index.js.map +1 -1
  63. package/build/components/image-size-control/index.js +0 -5
  64. package/build/components/image-size-control/index.js.map +1 -1
  65. package/build/components/inner-blocks/index.js +3 -1
  66. package/build/components/inner-blocks/index.js.map +1 -1
  67. package/build/components/inner-blocks/warning-max-depth-exceeded.native.js +29 -31
  68. package/build/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  69. package/build/components/inserter/block-patterns-explorer/{explorer.js → index.js} +7 -7
  70. package/build/components/inserter/block-patterns-explorer/index.js.map +1 -0
  71. package/build/components/inserter/block-patterns-explorer/{sidebar.js → pattern-explorer-sidebar.js} +1 -1
  72. package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -0
  73. package/build/components/inserter/block-patterns-explorer/{patterns-list.js → pattern-list.js} +4 -4
  74. package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -0
  75. package/build/components/inserter/block-patterns-tab/index.js +75 -0
  76. package/build/components/inserter/block-patterns-tab/index.js.map +1 -0
  77. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +48 -0
  78. package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -0
  79. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +108 -0
  80. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -0
  81. package/build/components/inserter/{block-patterns-filter.js → block-patterns-tab/patterns-filter.js} +18 -34
  82. package/build/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -0
  83. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js +55 -0
  84. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -0
  85. package/build/components/inserter/block-patterns-tab/utils.js +69 -0
  86. package/build/components/inserter/block-patterns-tab/utils.js.map +1 -0
  87. package/build/components/inserter/hooks/use-patterns-state.js +2 -1
  88. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  89. package/build/components/inserter/media-tab/media-list.js +9 -5
  90. package/build/components/inserter/media-tab/media-list.js.map +1 -1
  91. package/build/components/inserter/media-tab/media-preview.js +15 -12
  92. package/build/components/inserter/media-tab/media-preview.js.map +1 -1
  93. package/build/components/inserter/menu.js +3 -4
  94. package/build/components/inserter/menu.js.map +1 -1
  95. package/build/components/inserter-listbox/index.js +11 -6
  96. package/build/components/inserter-listbox/index.js.map +1 -1
  97. package/build/components/inserter-listbox/item.js +24 -23
  98. package/build/components/inserter-listbox/item.js.map +1 -1
  99. package/build/components/inserter-listbox/row.js +5 -5
  100. package/build/components/inserter-listbox/row.js.map +1 -1
  101. package/build/components/link-control/index.js +6 -5
  102. package/build/components/link-control/index.js.map +1 -1
  103. package/build/components/list-view/block-select-button.js +39 -0
  104. package/build/components/list-view/block-select-button.js.map +1 -1
  105. package/build/components/list-view/block.js +16 -3
  106. package/build/components/list-view/block.js.map +1 -1
  107. package/build/components/list-view/index.js +3 -2
  108. package/build/components/list-view/index.js.map +1 -1
  109. package/build/components/list-view/use-list-view-expand-selected-item.js +2 -3
  110. package/build/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  111. package/build/components/navigable-toolbar/index.js +69 -18
  112. package/build/components/navigable-toolbar/index.js.map +1 -1
  113. package/build/components/preview-options/index.js +4 -2
  114. package/build/components/preview-options/index.js.map +1 -1
  115. package/build/components/provider/use-block-sync.js +1 -14
  116. package/build/components/provider/use-block-sync.js.map +1 -1
  117. package/build/components/rich-text/index.js +0 -1
  118. package/build/components/rich-text/index.js.map +1 -1
  119. package/build/components/rich-text/index.native.js +4 -2
  120. package/build/components/rich-text/index.native.js.map +1 -1
  121. package/build/components/rich-text/native/format-edit.js +45 -0
  122. package/build/components/rich-text/native/format-edit.js.map +1 -0
  123. package/build/components/rich-text/native/get-format-colors.native.js +41 -0
  124. package/build/components/rich-text/native/get-format-colors.native.js.map +1 -0
  125. package/build/components/rich-text/native/index.js +9 -0
  126. package/build/components/rich-text/native/index.js.map +1 -0
  127. package/build/components/rich-text/native/index.native.js +1189 -0
  128. package/build/components/rich-text/native/index.native.js.map +1 -0
  129. package/build/components/rich-text/native/toolbar-button-with-options.native.js +58 -0
  130. package/build/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -0
  131. package/build/components/rich-text/native/use-format-types.js +111 -0
  132. package/build/components/rich-text/native/use-format-types.js.map +1 -0
  133. package/build/components/rich-text/use-input-rules.js +30 -1
  134. package/build/components/rich-text/use-input-rules.js.map +1 -1
  135. package/build/components/rich-text/use-paste-handler.js +2 -5
  136. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  137. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -1
  138. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  139. package/build/components/url-popover/image-url-input-ui.js +2 -1
  140. package/build/components/url-popover/image-url-input-ui.js.map +1 -1
  141. package/build/components/use-block-drop-zone/index.js +4 -1
  142. package/build/components/use-block-drop-zone/index.js.map +1 -1
  143. package/build/components/use-moving-animation/index.js +2 -1
  144. package/build/components/use-moving-animation/index.js.map +1 -1
  145. package/build/components/use-settings/index.js +2 -2
  146. package/build/components/use-settings/index.js.map +1 -1
  147. package/build/components/writing-flow/use-tab-nav.js +7 -3
  148. package/build/components/writing-flow/use-tab-nav.js.map +1 -1
  149. package/build/hooks/align.js +10 -10
  150. package/build/hooks/align.js.map +1 -1
  151. package/build/hooks/align.native.js +2 -2
  152. package/build/hooks/align.native.js.map +1 -1
  153. package/build/hooks/anchor.js +7 -6
  154. package/build/hooks/anchor.js.map +1 -1
  155. package/build/hooks/background.js +16 -4
  156. package/build/hooks/background.js.map +1 -1
  157. package/build/hooks/block-hooks.js +7 -8
  158. package/build/hooks/block-hooks.js.map +1 -1
  159. package/build/hooks/block-renaming.js +42 -0
  160. package/build/hooks/block-renaming.js.map +1 -1
  161. package/build/hooks/content-lock-ui.js +5 -5
  162. package/build/hooks/content-lock-ui.js.map +1 -1
  163. package/build/hooks/custom-class-name.js +8 -7
  164. package/build/hooks/custom-class-name.js.map +1 -1
  165. package/build/hooks/custom-fields.js +57 -52
  166. package/build/hooks/custom-fields.js.map +1 -1
  167. package/build/hooks/duotone.js +9 -20
  168. package/build/hooks/duotone.js.map +1 -1
  169. package/build/hooks/index.js +0 -1
  170. package/build/hooks/index.js.map +1 -1
  171. package/build/hooks/layout.js +103 -93
  172. package/build/hooks/layout.js.map +1 -1
  173. package/build/hooks/position.js +10 -9
  174. package/build/hooks/position.js.map +1 -1
  175. package/build/hooks/style.js +10 -13
  176. package/build/hooks/style.js.map +1 -1
  177. package/build/hooks/utils.js +30 -0
  178. package/build/hooks/utils.js.map +1 -1
  179. package/build/layouts/constrained.js +4 -3
  180. package/build/layouts/constrained.js.map +1 -1
  181. package/build/private-apis.js +3 -0
  182. package/build/private-apis.js.map +1 -1
  183. package/build/store/actions.js +30 -37
  184. package/build/store/actions.js.map +1 -1
  185. package/build/store/reducer.js +18 -0
  186. package/build/store/reducer.js.map +1 -1
  187. package/build/store/selectors.js +18 -13
  188. package/build/store/selectors.js.map +1 -1
  189. package/build/utils/transform-styles/index.js +26 -6
  190. package/build/utils/transform-styles/index.js.map +1 -1
  191. package/build-module/components/block-heading-level-dropdown/index.js +1 -1
  192. package/build-module/components/block-heading-level-dropdown/index.js.map +1 -1
  193. package/build-module/components/block-list/block.native.js +2 -0
  194. package/build-module/components/block-list/block.native.js.map +1 -1
  195. package/build-module/components/block-list/index.js +3 -10
  196. package/build-module/components/block-list/index.js.map +1 -1
  197. package/build-module/components/block-list-appender/index.js +16 -3
  198. package/build-module/components/block-list-appender/index.js.map +1 -1
  199. package/build-module/components/block-parent-selector/index.js +1 -1
  200. package/build-module/components/block-parent-selector/index.js.map +1 -1
  201. package/build-module/components/block-pattern-setup/index.js +24 -15
  202. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  203. package/build-module/components/block-pattern-setup/setup-toolbar.js +4 -2
  204. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  205. package/build-module/components/block-patterns-list/index.js +36 -19
  206. package/build-module/components/block-patterns-list/index.js.map +1 -1
  207. package/build-module/components/block-quick-navigation/index.js +7 -5
  208. package/build-module/components/block-quick-navigation/index.js.map +1 -1
  209. package/build-module/components/block-rename/index.js +4 -0
  210. package/build-module/components/block-rename/index.js.map +1 -0
  211. package/build-module/components/block-rename/is-empty-string.js +4 -0
  212. package/build-module/components/block-rename/is-empty-string.js.map +1 -0
  213. package/build-module/components/block-rename/modal.js +79 -0
  214. package/build-module/components/block-rename/modal.js.map +1 -0
  215. package/build-module/components/block-rename/rename-control.js +66 -0
  216. package/build-module/components/block-rename/rename-control.js.map +1 -0
  217. package/build-module/components/block-rename/use-block-rename.js +10 -0
  218. package/build-module/components/block-rename/use-block-rename.js.map +1 -0
  219. package/build-module/components/block-settings-menu/block-settings-dropdown.js +34 -21
  220. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  221. package/build-module/components/block-settings-menu-controls/index.js +7 -0
  222. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  223. package/build-module/components/block-styles/index.js +0 -8
  224. package/build-module/components/block-styles/index.js.map +1 -1
  225. package/build-module/components/block-switcher/pattern-transformations-menu.js +17 -13
  226. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  227. package/build-module/components/block-toolbar/block-toolbar-menu.native.js +1 -1
  228. package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  229. package/build-module/components/block-tools/back-compat.js +1 -1
  230. package/build-module/components/block-tools/back-compat.js.map +1 -1
  231. package/build-module/components/block-tools/block-contextual-toolbar.js +11 -80
  232. package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
  233. package/build-module/components/block-tools/empty-block-inserter.js +48 -0
  234. package/build-module/components/block-tools/empty-block-inserter.js.map +1 -0
  235. package/build-module/components/block-tools/index.js +48 -9
  236. package/build-module/components/block-tools/index.js.map +1 -1
  237. package/build-module/components/block-tools/selected-block-tools.js +105 -0
  238. package/build-module/components/block-tools/selected-block-tools.js.map +1 -0
  239. package/build-module/components/block-tools/use-selected-block-tool-props.js +50 -0
  240. package/build-module/components/block-tools/use-selected-block-tool-props.js.map +1 -0
  241. package/build-module/components/block-types-list/index.js +6 -2
  242. package/build-module/components/block-types-list/index.js.map +1 -1
  243. package/build-module/components/date-format-picker/index.js +8 -1
  244. package/build-module/components/date-format-picker/index.js.map +1 -1
  245. package/build-module/components/editable-text/index.js +1 -2
  246. package/build-module/components/editable-text/index.js.map +1 -1
  247. package/build-module/components/global-styles/advanced-panel.js +1 -1
  248. package/build-module/components/global-styles/advanced-panel.js.map +1 -1
  249. package/build-module/components/iframe/index.js +4 -3
  250. package/build-module/components/iframe/index.js.map +1 -1
  251. package/build-module/components/image-size-control/index.js +0 -5
  252. package/build-module/components/image-size-control/index.js.map +1 -1
  253. package/build-module/components/inner-blocks/index.js +3 -1
  254. package/build-module/components/inner-blocks/index.js.map +1 -1
  255. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js +30 -32
  256. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  257. package/build-module/components/inserter/block-patterns-explorer/{explorer.js → index.js} +5 -5
  258. package/build-module/components/inserter/block-patterns-explorer/index.js.map +1 -0
  259. package/build-module/components/inserter/block-patterns-explorer/{sidebar.js → pattern-explorer-sidebar.js} +1 -1
  260. package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -0
  261. package/build-module/components/inserter/block-patterns-explorer/{patterns-list.js → pattern-list.js} +3 -3
  262. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -0
  263. package/build-module/components/inserter/block-patterns-tab/index.js +66 -0
  264. package/build-module/components/inserter/block-patterns-tab/index.js.map +1 -0
  265. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +42 -0
  266. package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -0
  267. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +100 -0
  268. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -0
  269. package/build-module/components/inserter/{block-patterns-filter.js → block-patterns-tab/patterns-filter.js} +7 -20
  270. package/build-module/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -0
  271. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js +47 -0
  272. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -0
  273. package/build-module/components/inserter/block-patterns-tab/utils.js +57 -0
  274. package/build-module/components/inserter/block-patterns-tab/utils.js.map +1 -0
  275. package/build-module/components/inserter/hooks/use-patterns-state.js +2 -1
  276. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  277. package/build-module/components/inserter/media-tab/media-list.js +9 -5
  278. package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
  279. package/build-module/components/inserter/media-tab/media-preview.js +15 -12
  280. package/build-module/components/inserter/media-tab/media-preview.js.map +1 -1
  281. package/build-module/components/inserter/menu.js +4 -3
  282. package/build-module/components/inserter/menu.js.map +1 -1
  283. package/build-module/components/inserter-listbox/index.js +13 -8
  284. package/build-module/components/inserter-listbox/index.js.map +1 -1
  285. package/build-module/components/inserter-listbox/item.js +25 -23
  286. package/build-module/components/inserter-listbox/item.js.map +1 -1
  287. package/build-module/components/inserter-listbox/row.js +6 -5
  288. package/build-module/components/inserter-listbox/row.js.map +1 -1
  289. package/build-module/components/link-control/index.js +7 -6
  290. package/build-module/components/link-control/index.js.map +1 -1
  291. package/build-module/components/list-view/block-select-button.js +39 -0
  292. package/build-module/components/list-view/block-select-button.js.map +1 -1
  293. package/build-module/components/list-view/block.js +16 -3
  294. package/build-module/components/list-view/block.js.map +1 -1
  295. package/build-module/components/list-view/index.js +3 -2
  296. package/build-module/components/list-view/index.js.map +1 -1
  297. package/build-module/components/list-view/use-list-view-expand-selected-item.js +2 -3
  298. package/build-module/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  299. package/build-module/components/navigable-toolbar/index.js +69 -17
  300. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  301. package/build-module/components/preview-options/index.js +4 -2
  302. package/build-module/components/preview-options/index.js.map +1 -1
  303. package/build-module/components/provider/use-block-sync.js +1 -14
  304. package/build-module/components/provider/use-block-sync.js.map +1 -1
  305. package/build-module/components/rich-text/index.js +0 -1
  306. package/build-module/components/rich-text/index.js.map +1 -1
  307. package/build-module/components/rich-text/index.native.js +4 -2
  308. package/build-module/components/rich-text/index.native.js.map +1 -1
  309. package/build-module/components/rich-text/native/format-edit.js +38 -0
  310. package/build-module/components/rich-text/native/format-edit.js.map +1 -0
  311. package/build-module/components/rich-text/native/get-format-colors.native.js +34 -0
  312. package/build-module/components/rich-text/native/get-format-colors.native.js.map +1 -0
  313. package/build-module/components/rich-text/native/index.js +2 -0
  314. package/build-module/components/rich-text/native/index.js.map +1 -0
  315. package/build-module/components/rich-text/native/index.native.js +1179 -0
  316. package/build-module/components/rich-text/native/index.native.js.map +1 -0
  317. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js +51 -0
  318. package/build-module/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -0
  319. package/build-module/components/rich-text/native/use-format-types.js +104 -0
  320. package/build-module/components/rich-text/native/use-format-types.js.map +1 -0
  321. package/build-module/components/rich-text/use-input-rules.js +31 -2
  322. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  323. package/build-module/components/rich-text/use-paste-handler.js +2 -5
  324. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  325. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -1
  326. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  327. package/build-module/components/url-popover/image-url-input-ui.js +2 -1
  328. package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
  329. package/build-module/components/use-block-drop-zone/index.js +4 -1
  330. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  331. package/build-module/components/use-moving-animation/index.js +2 -1
  332. package/build-module/components/use-moving-animation/index.js.map +1 -1
  333. package/build-module/components/use-settings/index.js +2 -2
  334. package/build-module/components/use-settings/index.js.map +1 -1
  335. package/build-module/components/writing-flow/use-tab-nav.js +7 -3
  336. package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
  337. package/build-module/hooks/align.js +8 -8
  338. package/build-module/hooks/align.js.map +1 -1
  339. package/build-module/hooks/align.native.js +2 -2
  340. package/build-module/hooks/align.native.js.map +1 -1
  341. package/build-module/hooks/anchor.js +5 -4
  342. package/build-module/hooks/anchor.js.map +1 -1
  343. package/build-module/hooks/background.js +17 -5
  344. package/build-module/hooks/background.js.map +1 -1
  345. package/build-module/hooks/block-hooks.js +5 -6
  346. package/build-module/hooks/block-hooks.js.map +1 -1
  347. package/build-module/hooks/block-renaming.js +40 -0
  348. package/build-module/hooks/block-renaming.js.map +1 -1
  349. package/build-module/hooks/content-lock-ui.js +3 -3
  350. package/build-module/hooks/content-lock-ui.js.map +1 -1
  351. package/build-module/hooks/custom-class-name.js +6 -5
  352. package/build-module/hooks/custom-class-name.js.map +1 -1
  353. package/build-module/hooks/custom-fields.js +57 -52
  354. package/build-module/hooks/custom-fields.js.map +1 -1
  355. package/build-module/hooks/duotone.js +10 -21
  356. package/build-module/hooks/duotone.js.map +1 -1
  357. package/build-module/hooks/index.js +0 -1
  358. package/build-module/hooks/index.js.map +1 -1
  359. package/build-module/hooks/layout.js +103 -93
  360. package/build-module/hooks/layout.js.map +1 -1
  361. package/build-module/hooks/position.js +11 -10
  362. package/build-module/hooks/position.js.map +1 -1
  363. package/build-module/hooks/style.js +10 -13
  364. package/build-module/hooks/style.js.map +1 -1
  365. package/build-module/hooks/utils.js +30 -1
  366. package/build-module/hooks/utils.js.map +1 -1
  367. package/build-module/layouts/constrained.js +4 -3
  368. package/build-module/layouts/constrained.js.map +1 -1
  369. package/build-module/private-apis.js +4 -1
  370. package/build-module/private-apis.js.map +1 -1
  371. package/build-module/store/actions.js +29 -37
  372. package/build-module/store/actions.js.map +1 -1
  373. package/build-module/store/reducer.js +17 -0
  374. package/build-module/store/reducer.js.map +1 -1
  375. package/build-module/store/selectors.js +17 -13
  376. package/build-module/store/selectors.js.map +1 -1
  377. package/build-module/utils/transform-styles/index.js +24 -7
  378. package/build-module/utils/transform-styles/index.js.map +1 -1
  379. package/build-style/content-rtl.css +6 -6
  380. package/build-style/content.css +6 -6
  381. package/build-style/style-rtl.css +26 -20
  382. package/build-style/style.css +26 -20
  383. package/package.json +31 -31
  384. package/src/components/block-heading-level-dropdown/index.js +1 -1
  385. package/src/components/block-list/block.native.js +2 -0
  386. package/src/components/block-list/index.js +4 -18
  387. package/src/components/block-list-appender/index.js +20 -4
  388. package/src/components/block-parent-selector/index.js +1 -1
  389. package/src/components/block-pattern-setup/index.js +38 -22
  390. package/src/components/block-pattern-setup/setup-toolbar.js +2 -0
  391. package/src/components/block-pattern-setup/style.scss +4 -1
  392. package/src/components/block-patterns-list/README.md +4 -4
  393. package/src/components/block-patterns-list/index.js +60 -34
  394. package/src/components/block-patterns-list/style.scss +7 -0
  395. package/src/components/block-quick-navigation/index.js +11 -5
  396. package/src/components/block-rename/index.js +3 -0
  397. package/src/components/block-rename/is-empty-string.js +3 -0
  398. package/src/components/block-rename/modal.js +115 -0
  399. package/src/components/block-rename/rename-control.js +80 -0
  400. package/src/components/block-rename/use-block-rename.js +10 -0
  401. package/src/components/block-settings-menu/block-settings-dropdown.js +38 -34
  402. package/src/components/block-settings-menu-controls/index.js +9 -0
  403. package/src/components/block-styles/index.js +0 -10
  404. package/src/components/block-switcher/pattern-transformations-menu.js +20 -14
  405. package/src/components/block-toolbar/block-toolbar-menu.native.js +1 -4
  406. package/src/components/block-toolbar/style.scss +8 -0
  407. package/src/components/block-tools/back-compat.js +1 -1
  408. package/src/components/block-tools/block-contextual-toolbar.js +11 -134
  409. package/src/components/block-tools/empty-block-inserter.js +56 -0
  410. package/src/components/block-tools/index.js +72 -16
  411. package/src/components/block-tools/selected-block-tools.js +127 -0
  412. package/src/components/block-tools/style.scss +0 -10
  413. package/src/components/block-tools/use-selected-block-tool-props.js +66 -0
  414. package/src/components/block-types-list/index.js +5 -4
  415. package/src/components/button-block-appender/content.scss +2 -2
  416. package/src/components/date-format-picker/index.js +7 -0
  417. package/src/components/editable-text/README.md +0 -36
  418. package/src/components/editable-text/index.js +1 -8
  419. package/src/components/global-styles/advanced-panel.js +1 -1
  420. package/src/components/iframe/index.js +4 -3
  421. package/src/components/image-size-control/index.js +0 -6
  422. package/src/components/inner-blocks/index.js +6 -2
  423. package/src/components/inner-blocks/warning-max-depth-exceeded.native.js +57 -33
  424. package/src/components/inserter/block-patterns-explorer/{explorer.js → index.js} +4 -4
  425. package/src/components/inserter/block-patterns-explorer/{patterns-list.js → pattern-list.js} +9 -2
  426. package/src/components/inserter/block-patterns-tab/index.js +118 -0
  427. package/src/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +48 -0
  428. package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +179 -0
  429. package/src/components/inserter/{block-patterns-filter.js → block-patterns-tab/patterns-filter.js} +15 -21
  430. package/src/components/inserter/block-patterns-tab/use-pattern-categories.js +101 -0
  431. package/src/components/inserter/block-patterns-tab/utils.js +78 -0
  432. package/src/components/inserter/hooks/use-patterns-state.js +3 -1
  433. package/src/components/inserter/media-tab/media-list.js +7 -7
  434. package/src/components/inserter/media-tab/media-preview.js +27 -22
  435. package/src/components/inserter/menu.js +4 -5
  436. package/src/components/inserter-listbox/index.js +11 -7
  437. package/src/components/inserter-listbox/item.js +11 -12
  438. package/src/components/inserter-listbox/row.js +6 -12
  439. package/src/components/link-control/README.md +2 -2
  440. package/src/components/link-control/index.js +15 -6
  441. package/src/components/link-control/style.scss +8 -5
  442. package/src/components/list-view/block-select-button.js +44 -1
  443. package/src/components/list-view/block.js +11 -11
  444. package/src/components/list-view/index.js +2 -0
  445. package/src/components/list-view/use-list-view-expand-selected-item.js +7 -8
  446. package/src/components/media-replace-flow/style.scss +2 -2
  447. package/src/components/navigable-toolbar/index.js +71 -25
  448. package/src/components/plain-text/README.md +2 -30
  449. package/src/components/preview-options/index.js +2 -0
  450. package/src/components/provider/use-block-sync.js +2 -21
  451. package/src/components/rich-text/README.md +6 -63
  452. package/src/components/rich-text/index.js +0 -1
  453. package/src/components/rich-text/index.native.js +4 -2
  454. package/src/components/rich-text/native/format-edit.js +44 -0
  455. package/src/components/rich-text/native/get-format-colors.native.js +54 -0
  456. package/src/components/rich-text/native/index.js +1 -0
  457. package/src/components/rich-text/native/index.native.js +1406 -0
  458. package/src/components/rich-text/native/style.native.scss +28 -0
  459. package/src/components/rich-text/native/test/__snapshots__/index.native.js.snap +79 -0
  460. package/src/components/rich-text/native/test/index.native.js +278 -0
  461. package/src/components/rich-text/native/test/performance/rich-text.native.js +44 -0
  462. package/src/components/rich-text/native/toolbar-button-with-options.native.js +61 -0
  463. package/src/components/rich-text/native/use-format-types.js +146 -0
  464. package/src/components/rich-text/use-input-rules.js +30 -2
  465. package/src/components/rich-text/use-paste-handler.js +1 -6
  466. package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -1
  467. package/src/components/url-input/README.md +1 -74
  468. package/src/components/url-popover/image-url-input-ui.js +1 -0
  469. package/src/components/use-block-drop-zone/index.js +4 -1
  470. package/src/components/use-moving-animation/index.js +1 -1
  471. package/src/components/use-settings/index.js +2 -2
  472. package/src/components/use-settings/test/index.js +1 -1
  473. package/src/components/writing-flow/use-tab-nav.js +8 -3
  474. package/src/hooks/align.js +8 -8
  475. package/src/hooks/align.native.js +2 -2
  476. package/src/hooks/anchor.js +21 -23
  477. package/src/hooks/background.js +28 -6
  478. package/src/hooks/block-hooks.js +20 -16
  479. package/src/hooks/block-renaming.js +47 -0
  480. package/src/hooks/content-lock-ui.js +3 -3
  481. package/src/hooks/custom-class-name.js +7 -6
  482. package/src/hooks/custom-fields.js +73 -70
  483. package/src/hooks/duotone.js +23 -33
  484. package/src/hooks/index.js +0 -1
  485. package/src/hooks/layout.js +126 -113
  486. package/src/hooks/position.js +8 -21
  487. package/src/hooks/style.js +17 -31
  488. package/src/hooks/test/__snapshots__/align.native.js.snap +5 -5
  489. package/src/hooks/test/align.js +4 -4
  490. package/src/hooks/utils.js +33 -1
  491. package/src/layouts/constrained.js +57 -50
  492. package/src/private-apis.js +4 -1
  493. package/src/store/actions.js +26 -72
  494. package/src/store/reducer.js +19 -0
  495. package/src/store/selectors.js +15 -19
  496. package/src/style.scss +1 -1
  497. package/src/utils/test/transform-styles.js +49 -0
  498. package/src/utils/transform-styles/index.js +39 -13
  499. package/build/components/block-tools/selected-block-popover.js +0 -221
  500. package/build/components/block-tools/selected-block-popover.js.map +0 -1
  501. package/build/components/inserter/block-patterns-explorer/explorer.js.map +0 -1
  502. package/build/components/inserter/block-patterns-explorer/patterns-list.js.map +0 -1
  503. package/build/components/inserter/block-patterns-explorer/sidebar.js.map +0 -1
  504. package/build/components/inserter/block-patterns-filter.js.map +0 -1
  505. package/build/components/inserter/block-patterns-tab.js +0 -270
  506. package/build/components/inserter/block-patterns-tab.js.map +0 -1
  507. package/build/hooks/block-rename-ui.js +0 -165
  508. package/build/hooks/block-rename-ui.js.map +0 -1
  509. package/build/store/utils.js +0 -22
  510. package/build/store/utils.js.map +0 -1
  511. package/build-module/components/block-tools/selected-block-popover.js +0 -213
  512. package/build-module/components/block-tools/selected-block-popover.js.map +0 -1
  513. package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +0 -1
  514. package/build-module/components/inserter/block-patterns-explorer/patterns-list.js.map +0 -1
  515. package/build-module/components/inserter/block-patterns-explorer/sidebar.js.map +0 -1
  516. package/build-module/components/inserter/block-patterns-filter.js.map +0 -1
  517. package/build-module/components/inserter/block-patterns-tab.js +0 -254
  518. package/build-module/components/inserter/block-patterns-tab.js.map +0 -1
  519. package/build-module/hooks/block-rename-ui.js +0 -157
  520. package/build-module/hooks/block-rename-ui.js.map +0 -1
  521. package/build-module/store/utils.js +0 -16
  522. package/build-module/store/utils.js.map +0 -1
  523. package/src/components/block-tools/selected-block-popover.js +0 -265
  524. package/src/components/inserter/block-patterns-tab.js +0 -448
  525. package/src/hooks/block-rename-ui.js +0 -226
  526. package/src/store/utils.js +0 -12
  527. /package/src/{hooks/block-rename-ui.scss → components/block-rename/style.scss} +0 -0
  528. /package/src/components/inserter/block-patterns-explorer/{sidebar.js → pattern-explorer-sidebar.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_blocks","_components","_element","_compose","_i18n","_store","_blockPreview","_interopRequireDefault","_setupToolbar","_usePatternsSetup","_constants","SetupContent","viewMode","activeSlide","patterns","onBlockPatternSelect","showTitles","composite","useCompositeState","containerClass","VIEWMODES","carousel","slideClass","Map","_react","createElement","className","map","pattern","index","BlockPatternSlide","get","key","name","__unstableComposite","role","__","BlockPattern","onSelect","baseClassName","blocks","description","viewportWidth","descriptionId","useInstanceId","title","undefined","__unstableCompositeItem","as","onClick","default","VisuallyHidden","id","minHeight","BlockPatternSetup","clientId","blockName","filterPatternsFn","initialViewMode","setViewMode","useState","setActiveSlide","replaceBlock","useDispatch","blockEditorStore","usePatternsSetup","length","onBlockPatternSelectDefault","clonedBlocks","block","cloneBlock","onPatternSelectCallback","Fragment","totalSlides","handleNext","active","handlePrevious","_default","exports"],"sources":["@wordpress/block-editor/src/components/block-pattern-setup/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport { cloneBlock } from '@wordpress/blocks';\nimport {\n\tVisuallyHidden,\n\t__unstableComposite as Composite,\n\t__unstableUseCompositeState as useCompositeState,\n\t__unstableCompositeItem as CompositeItem,\n} from '@wordpress/components';\n\nimport { useState } from '@wordpress/element';\nimport { useInstanceId } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport BlockPreview from '../block-preview';\nimport SetupToolbar from './setup-toolbar';\nimport usePatternsSetup from './use-patterns-setup';\nimport { VIEWMODES } from './constants';\n\nconst SetupContent = ( {\n\tviewMode,\n\tactiveSlide,\n\tpatterns,\n\tonBlockPatternSelect,\n\tshowTitles,\n} ) => {\n\tconst composite = useCompositeState();\n\tconst containerClass = 'block-editor-block-pattern-setup__container';\n\tif ( viewMode === VIEWMODES.carousel ) {\n\t\tconst slideClass = new Map( [\n\t\t\t[ activeSlide, 'active-slide' ],\n\t\t\t[ activeSlide - 1, 'previous-slide' ],\n\t\t\t[ activeSlide + 1, 'next-slide' ],\n\t\t] );\n\t\treturn (\n\t\t\t<div className=\"block-editor-block-pattern-setup__carousel\">\n\t\t\t\t<div className={ containerClass }>\n\t\t\t\t\t<ul className=\"carousel-container\">\n\t\t\t\t\t\t{ patterns.map( ( pattern, index ) => (\n\t\t\t\t\t\t\t<BlockPatternSlide\n\t\t\t\t\t\t\t\tclassName={ slideClass.get( index ) || '' }\n\t\t\t\t\t\t\t\tkey={ pattern.name }\n\t\t\t\t\t\t\t\tpattern={ pattern }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</ul>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n\treturn (\n\t\t<div className=\"block-editor-block-pattern-setup__grid\">\n\t\t\t<Composite\n\t\t\t\t{ ...composite }\n\t\t\t\trole=\"listbox\"\n\t\t\t\tclassName={ containerClass }\n\t\t\t\taria-label={ __( 'Patterns list' ) }\n\t\t\t>\n\t\t\t\t{ patterns.map( ( pattern ) => (\n\t\t\t\t\t<BlockPattern\n\t\t\t\t\t\tkey={ pattern.name }\n\t\t\t\t\t\tpattern={ pattern }\n\t\t\t\t\t\tonSelect={ onBlockPatternSelect }\n\t\t\t\t\t\tcomposite={ composite }\n\t\t\t\t\t\tshowTitles={ showTitles }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</Composite>\n\t\t</div>\n\t);\n};\n\nfunction BlockPattern( { pattern, onSelect, composite, showTitles } ) {\n\tconst baseClassName = 'block-editor-block-pattern-setup-list';\n\tconst { blocks, description, viewportWidth = 700 } = pattern;\n\tconst descriptionId = useInstanceId(\n\t\tBlockPattern,\n\t\t`${ baseClassName }__item-description`\n\t);\n\treturn (\n\t\t<div\n\t\t\tclassName={ `${ baseClassName }__list-item` }\n\t\t\taria-label={ pattern.title }\n\t\t\taria-describedby={ pattern.description ? descriptionId : undefined }\n\t\t>\n\t\t\t<CompositeItem\n\t\t\t\trole=\"option\"\n\t\t\t\tas=\"div\"\n\t\t\t\t{ ...composite }\n\t\t\t\tclassName={ `${ baseClassName }__item` }\n\t\t\t\tonClick={ () => onSelect( blocks ) }\n\t\t\t>\n\t\t\t\t<BlockPreview\n\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\tviewportWidth={ viewportWidth }\n\t\t\t\t/>\n\t\t\t\t{ showTitles && (\n\t\t\t\t\t<div className={ `${ baseClassName }__item-title` }>\n\t\t\t\t\t\t{ pattern.title }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t\t{ !! description && (\n\t\t\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t\t\t{ description }\n\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t) }\n\t\t\t</CompositeItem>\n\t\t</div>\n\t);\n}\n\nfunction BlockPatternSlide( { className, pattern, minHeight } ) {\n\tconst { blocks, title, description } = pattern;\n\tconst descriptionId = useInstanceId(\n\t\tBlockPatternSlide,\n\t\t'block-editor-block-pattern-setup-list__item-description'\n\t);\n\treturn (\n\t\t<li\n\t\t\tclassName={ `pattern-slide ${ className }` }\n\t\t\taria-label={ title }\n\t\t\taria-describedby={ description ? descriptionId : undefined }\n\t\t>\n\t\t\t<BlockPreview blocks={ blocks } minHeight={ minHeight } />\n\t\t\t{ !! description && (\n\t\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t\t{ description }\n\t\t\t\t</VisuallyHidden>\n\t\t\t) }\n\t\t</li>\n\t);\n}\n\nconst BlockPatternSetup = ( {\n\tclientId,\n\tblockName,\n\tfilterPatternsFn,\n\tonBlockPatternSelect,\n\tinitialViewMode = VIEWMODES.carousel,\n\tshowTitles = false,\n} ) => {\n\tconst [ viewMode, setViewMode ] = useState( initialViewMode );\n\tconst [ activeSlide, setActiveSlide ] = useState( 0 );\n\tconst { replaceBlock } = useDispatch( blockEditorStore );\n\tconst patterns = usePatternsSetup( clientId, blockName, filterPatternsFn );\n\n\tif ( ! patterns?.length ) {\n\t\treturn null;\n\t}\n\n\tconst onBlockPatternSelectDefault = ( blocks ) => {\n\t\tconst clonedBlocks = blocks.map( ( block ) => cloneBlock( block ) );\n\t\treplaceBlock( clientId, clonedBlocks );\n\t};\n\tconst onPatternSelectCallback =\n\t\tonBlockPatternSelect || onBlockPatternSelectDefault;\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tclassName={ `block-editor-block-pattern-setup view-mode-${ viewMode }` }\n\t\t\t>\n\t\t\t\t<SetupContent\n\t\t\t\t\tviewMode={ viewMode }\n\t\t\t\t\tactiveSlide={ activeSlide }\n\t\t\t\t\tpatterns={ patterns }\n\t\t\t\t\tonBlockPatternSelect={ onPatternSelectCallback }\n\t\t\t\t\tshowTitles={ showTitles }\n\t\t\t\t/>\n\t\t\t\t<SetupToolbar\n\t\t\t\t\tviewMode={ viewMode }\n\t\t\t\t\tsetViewMode={ setViewMode }\n\t\t\t\t\tactiveSlide={ activeSlide }\n\t\t\t\t\ttotalSlides={ patterns.length }\n\t\t\t\t\thandleNext={ () => {\n\t\t\t\t\t\tsetActiveSlide( ( active ) => active + 1 );\n\t\t\t\t\t} }\n\t\t\t\t\thandlePrevious={ () => {\n\t\t\t\t\t\tsetActiveSlide( ( active ) => active - 1 );\n\t\t\t\t\t} }\n\t\t\t\t\tonBlockPatternSelect={ () => {\n\t\t\t\t\t\tonPatternSelectCallback(\n\t\t\t\t\t\t\tpatterns[ activeSlide ].blocks\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</>\n\t);\n};\n\nexport default BlockPatternSetup;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_data","require","_blocks","_components","_element","_compose","_i18n","_store","_blockPreview","_interopRequireDefault","_setupToolbar","_usePatternsSetup","_constants","_lockUnlock","CompositeV2","Composite","CompositeItemV2","CompositeItem","useCompositeStoreV2","useCompositeStore","unlock","componentsPrivateApis","SetupContent","viewMode","activeSlide","patterns","onBlockPatternSelect","showTitles","compositeStore","containerClass","VIEWMODES","carousel","slideClass","Map","_react","createElement","className","map","pattern","index","BlockPatternSlide","active","get","key","name","store","role","__","BlockPattern","onSelect","baseClassName","blocks","description","viewportWidth","descriptionId","useInstanceId","render","undefined","title","id","onClick","default","VisuallyHidden","minHeight","BlockPatternSetup","clientId","blockName","filterPatternsFn","initialViewMode","setViewMode","useState","setActiveSlide","replaceBlock","useDispatch","blockEditorStore","usePatternsSetup","length","onBlockPatternSelectDefault","clonedBlocks","block","cloneBlock","onPatternSelectCallback","Fragment","totalSlides","handleNext","Math","min","handlePrevious","max","_default","exports"],"sources":["@wordpress/block-editor/src/components/block-pattern-setup/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport { cloneBlock } from '@wordpress/blocks';\nimport {\n\tVisuallyHidden,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\n\nimport { useState } from '@wordpress/element';\nimport { useInstanceId } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport BlockPreview from '../block-preview';\nimport SetupToolbar from './setup-toolbar';\nimport usePatternsSetup from './use-patterns-setup';\nimport { VIEWMODES } from './constants';\nimport { unlock } from '../../lock-unlock';\n\nconst {\n\tCompositeV2: Composite,\n\tCompositeItemV2: CompositeItem,\n\tuseCompositeStoreV2: useCompositeStore,\n} = unlock( componentsPrivateApis );\n\nconst SetupContent = ( {\n\tviewMode,\n\tactiveSlide,\n\tpatterns,\n\tonBlockPatternSelect,\n\tshowTitles,\n} ) => {\n\tconst compositeStore = useCompositeStore();\n\tconst containerClass = 'block-editor-block-pattern-setup__container';\n\n\tif ( viewMode === VIEWMODES.carousel ) {\n\t\tconst slideClass = new Map( [\n\t\t\t[ activeSlide, 'active-slide' ],\n\t\t\t[ activeSlide - 1, 'previous-slide' ],\n\t\t\t[ activeSlide + 1, 'next-slide' ],\n\t\t] );\n\t\treturn (\n\t\t\t<div className=\"block-editor-block-pattern-setup__carousel\">\n\t\t\t\t<div className={ containerClass }>\n\t\t\t\t\t<div className=\"carousel-container\">\n\t\t\t\t\t\t{ patterns.map( ( pattern, index ) => (\n\t\t\t\t\t\t\t<BlockPatternSlide\n\t\t\t\t\t\t\t\tactive={ index === activeSlide }\n\t\t\t\t\t\t\t\tclassName={ slideClass.get( index ) || '' }\n\t\t\t\t\t\t\t\tkey={ pattern.name }\n\t\t\t\t\t\t\t\tpattern={ pattern }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div className=\"block-editor-block-pattern-setup__grid\">\n\t\t\t<Composite\n\t\t\t\tstore={ compositeStore }\n\t\t\t\trole=\"listbox\"\n\t\t\t\tclassName={ containerClass }\n\t\t\t\taria-label={ __( 'Patterns list' ) }\n\t\t\t>\n\t\t\t\t{ patterns.map( ( pattern ) => (\n\t\t\t\t\t<BlockPattern\n\t\t\t\t\t\tkey={ pattern.name }\n\t\t\t\t\t\tpattern={ pattern }\n\t\t\t\t\t\tonSelect={ onBlockPatternSelect }\n\t\t\t\t\t\tshowTitles={ showTitles }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</Composite>\n\t\t</div>\n\t);\n};\n\nfunction BlockPattern( { pattern, onSelect, showTitles } ) {\n\tconst baseClassName = 'block-editor-block-pattern-setup-list';\n\tconst { blocks, description, viewportWidth = 700 } = pattern;\n\tconst descriptionId = useInstanceId(\n\t\tBlockPattern,\n\t\t`${ baseClassName }__item-description`\n\t);\n\treturn (\n\t\t<div className={ `${ baseClassName }__list-item` }>\n\t\t\t<CompositeItem\n\t\t\t\trender={\n\t\t\t\t\t<div\n\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\tdescription ? descriptionId : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\taria-label={ pattern.title }\n\t\t\t\t\t\tclassName={ `${ baseClassName }__item` }\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\tid={ `${ baseClassName }__pattern__${ pattern.name }` }\n\t\t\t\trole=\"option\"\n\t\t\t\tonClick={ () => onSelect( blocks ) }\n\t\t\t>\n\t\t\t\t<BlockPreview\n\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\tviewportWidth={ viewportWidth }\n\t\t\t\t/>\n\t\t\t\t{ showTitles && (\n\t\t\t\t\t<div className={ `${ baseClassName }__item-title` }>\n\t\t\t\t\t\t{ pattern.title }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t\t{ !! description && (\n\t\t\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t\t\t{ description }\n\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t) }\n\t\t\t</CompositeItem>\n\t\t</div>\n\t);\n}\n\nfunction BlockPatternSlide( { active, className, pattern, minHeight } ) {\n\tconst { blocks, title, description } = pattern;\n\tconst descriptionId = useInstanceId(\n\t\tBlockPatternSlide,\n\t\t'block-editor-block-pattern-setup-list__item-description'\n\t);\n\treturn (\n\t\t<div\n\t\t\taria-hidden={ ! active }\n\t\t\trole=\"img\"\n\t\t\tclassName={ `pattern-slide ${ className }` }\n\t\t\taria-label={ title }\n\t\t\taria-describedby={ description ? descriptionId : undefined }\n\t\t>\n\t\t\t<BlockPreview blocks={ blocks } minHeight={ minHeight } />\n\t\t\t{ !! description && (\n\t\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t\t{ description }\n\t\t\t\t</VisuallyHidden>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nconst BlockPatternSetup = ( {\n\tclientId,\n\tblockName,\n\tfilterPatternsFn,\n\tonBlockPatternSelect,\n\tinitialViewMode = VIEWMODES.carousel,\n\tshowTitles = false,\n} ) => {\n\tconst [ viewMode, setViewMode ] = useState( initialViewMode );\n\tconst [ activeSlide, setActiveSlide ] = useState( 0 );\n\tconst { replaceBlock } = useDispatch( blockEditorStore );\n\tconst patterns = usePatternsSetup( clientId, blockName, filterPatternsFn );\n\n\tif ( ! patterns?.length ) {\n\t\treturn null;\n\t}\n\n\tconst onBlockPatternSelectDefault = ( blocks ) => {\n\t\tconst clonedBlocks = blocks.map( ( block ) => cloneBlock( block ) );\n\t\treplaceBlock( clientId, clonedBlocks );\n\t};\n\tconst onPatternSelectCallback =\n\t\tonBlockPatternSelect || onBlockPatternSelectDefault;\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tclassName={ `block-editor-block-pattern-setup view-mode-${ viewMode }` }\n\t\t\t>\n\t\t\t\t<SetupContent\n\t\t\t\t\tviewMode={ viewMode }\n\t\t\t\t\tactiveSlide={ activeSlide }\n\t\t\t\t\tpatterns={ patterns }\n\t\t\t\t\tonBlockPatternSelect={ onPatternSelectCallback }\n\t\t\t\t\tshowTitles={ showTitles }\n\t\t\t\t/>\n\t\t\t\t<SetupToolbar\n\t\t\t\t\tviewMode={ viewMode }\n\t\t\t\t\tsetViewMode={ setViewMode }\n\t\t\t\t\tactiveSlide={ activeSlide }\n\t\t\t\t\ttotalSlides={ patterns.length }\n\t\t\t\t\thandleNext={ () => {\n\t\t\t\t\t\tsetActiveSlide( ( active ) =>\n\t\t\t\t\t\t\tMath.min( active + 1, patterns.length - 1 )\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t\thandlePrevious={ () => {\n\t\t\t\t\t\tsetActiveSlide( ( active ) =>\n\t\t\t\t\t\t\tMath.max( active - 1, 0 )\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t\tonBlockPatternSelect={ () => {\n\t\t\t\t\t\tonPatternSelectCallback(\n\t\t\t\t\t\t\tpatterns[ activeSlide ].blocks\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</>\n\t);\n};\n\nexport default BlockPatternSetup;\n"],"mappings":"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"}
@@ -36,12 +36,14 @@ const CarouselNavigation = ({
36
36
  icon: _icons.chevronLeft,
37
37
  label: (0, _i18n.__)('Previous pattern'),
38
38
  onClick: handlePrevious,
39
- disabled: activeSlide === 0
39
+ disabled: activeSlide === 0,
40
+ __experimentalIsFocusable: true
40
41
  }), (0, _react.createElement)(_components.Button, {
41
42
  icon: _icons.chevronRight,
42
43
  label: (0, _i18n.__)('Next pattern'),
43
44
  onClick: handleNext,
44
- disabled: activeSlide === totalSlides - 1
45
+ disabled: activeSlide === totalSlides - 1,
46
+ __experimentalIsFocusable: true
45
47
  }));
46
48
  const SetupToolbar = ({
47
49
  viewMode,
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_icons","_constants","Actions","onBlockPatternSelect","_react","createElement","className","Button","variant","onClick","__","CarouselNavigation","handlePrevious","handleNext","activeSlide","totalSlides","icon","chevronLeft","label","disabled","chevronRight","SetupToolbar","viewMode","setViewMode","isCarouselView","VIEWMODES","carousel","displayControls","stretchFullWidth","isPressed","grid","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/block-pattern-setup/setup-toolbar.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport {\n\tchevronRight,\n\tchevronLeft,\n\tgrid,\n\tstretchFullWidth,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { VIEWMODES } from './constants';\n\nconst Actions = ( { onBlockPatternSelect } ) => (\n\t<div className=\"block-editor-block-pattern-setup__actions\">\n\t\t<Button variant=\"primary\" onClick={ onBlockPatternSelect }>\n\t\t\t{ __( 'Choose' ) }\n\t\t</Button>\n\t</div>\n);\n\nconst CarouselNavigation = ( {\n\thandlePrevious,\n\thandleNext,\n\tactiveSlide,\n\ttotalSlides,\n} ) => (\n\t<div className=\"block-editor-block-pattern-setup__navigation\">\n\t\t<Button\n\t\t\ticon={ chevronLeft }\n\t\t\tlabel={ __( 'Previous pattern' ) }\n\t\t\tonClick={ handlePrevious }\n\t\t\tdisabled={ activeSlide === 0 }\n\t\t/>\n\t\t<Button\n\t\t\ticon={ chevronRight }\n\t\t\tlabel={ __( 'Next pattern' ) }\n\t\t\tonClick={ handleNext }\n\t\t\tdisabled={ activeSlide === totalSlides - 1 }\n\t\t/>\n\t</div>\n);\n\nconst SetupToolbar = ( {\n\tviewMode,\n\tsetViewMode,\n\thandlePrevious,\n\thandleNext,\n\tactiveSlide,\n\ttotalSlides,\n\tonBlockPatternSelect,\n} ) => {\n\tconst isCarouselView = viewMode === VIEWMODES.carousel;\n\tconst displayControls = (\n\t\t<div className=\"block-editor-block-pattern-setup__display-controls\">\n\t\t\t<Button\n\t\t\t\ticon={ stretchFullWidth }\n\t\t\t\tlabel={ __( 'Carousel view' ) }\n\t\t\t\tonClick={ () => setViewMode( VIEWMODES.carousel ) }\n\t\t\t\tisPressed={ isCarouselView }\n\t\t\t/>\n\t\t\t<Button\n\t\t\t\ticon={ grid }\n\t\t\t\tlabel={ __( 'Grid view' ) }\n\t\t\t\tonClick={ () => setViewMode( VIEWMODES.grid ) }\n\t\t\t\tisPressed={ viewMode === VIEWMODES.grid }\n\t\t\t/>\n\t\t</div>\n\t);\n\treturn (\n\t\t<div className=\"block-editor-block-pattern-setup__toolbar\">\n\t\t\t{ isCarouselView && (\n\t\t\t\t<CarouselNavigation\n\t\t\t\t\thandlePrevious={ handlePrevious }\n\t\t\t\t\thandleNext={ handleNext }\n\t\t\t\t\tactiveSlide={ activeSlide }\n\t\t\t\t\ttotalSlides={ totalSlides }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ displayControls }\n\t\t\t{ isCarouselView && (\n\t\t\t\t<Actions onBlockPatternSelect={ onBlockPatternSelect } />\n\t\t\t) }\n\t\t</div>\n\t);\n};\n\nexport default SetupToolbar;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAUA,IAAAG,UAAA,GAAAH,OAAA;AAfA;AACA;AACA;;AAUA;AACA;AACA;;AAGA,MAAMI,OAAO,GAAGA,CAAE;EAAEC;AAAqB,CAAC,KACzC,IAAAC,MAAA,CAAAC,aAAA;EAAKC,SAAS,EAAC;AAA2C,GACzD,IAAAF,MAAA,CAAAC,aAAA,EAACN,WAAA,CAAAQ,MAAM;EAACC,OAAO,EAAC,SAAS;EAACC,OAAO,EAAGN;AAAsB,GACvD,IAAAO,QAAE,EAAE,QAAS,CACR,CACJ,CACL;AAED,MAAMC,kBAAkB,GAAGA,CAAE;EAC5BC,cAAc;EACdC,UAAU;EACVC,WAAW;EACXC;AACD,CAAC,KACA,IAAAX,MAAA,CAAAC,aAAA;EAAKC,SAAS,EAAC;AAA8C,GAC5D,IAAAF,MAAA,CAAAC,aAAA,EAACN,WAAA,CAAAQ,MAAM;EACNS,IAAI,EAAGC,kBAAa;EACpBC,KAAK,EAAG,IAAAR,QAAE,EAAE,kBAAmB,CAAG;EAClCD,OAAO,EAAGG,cAAgB;EAC1BO,QAAQ,EAAGL,WAAW,KAAK;AAAG,CAC9B,CAAC,EACF,IAAAV,MAAA,CAAAC,aAAA,EAACN,WAAA,CAAAQ,MAAM;EACNS,IAAI,EAAGI,mBAAc;EACrBF,KAAK,EAAG,IAAAR,QAAE,EAAE,cAAe,CAAG;EAC9BD,OAAO,EAAGI,UAAY;EACtBM,QAAQ,EAAGL,WAAW,KAAKC,WAAW,GAAG;AAAG,CAC5C,CACG,CACL;AAED,MAAMM,YAAY,GAAGA,CAAE;EACtBC,QAAQ;EACRC,WAAW;EACXX,cAAc;EACdC,UAAU;EACVC,WAAW;EACXC,WAAW;EACXZ;AACD,CAAC,KAAM;EACN,MAAMqB,cAAc,GAAGF,QAAQ,KAAKG,oBAAS,CAACC,QAAQ;EACtD,MAAMC,eAAe,GACpB,IAAAvB,MAAA,CAAAC,aAAA;IAAKC,SAAS,EAAC;EAAoD,GAClE,IAAAF,MAAA,CAAAC,aAAA,EAACN,WAAA,CAAAQ,MAAM;IACNS,IAAI,EAAGY,uBAAkB;IACzBV,KAAK,EAAG,IAAAR,QAAE,EAAE,eAAgB,CAAG;IAC/BD,OAAO,EAAGA,CAAA,KAAMc,WAAW,CAAEE,oBAAS,CAACC,QAAS,CAAG;IACnDG,SAAS,EAAGL;EAAgB,CAC5B,CAAC,EACF,IAAApB,MAAA,CAAAC,aAAA,EAACN,WAAA,CAAAQ,MAAM;IACNS,IAAI,EAAGc,WAAM;IACbZ,KAAK,EAAG,IAAAR,QAAE,EAAE,WAAY,CAAG;IAC3BD,OAAO,EAAGA,CAAA,KAAMc,WAAW,CAAEE,oBAAS,CAACK,IAAK,CAAG;IAC/CD,SAAS,EAAGP,QAAQ,KAAKG,oBAAS,CAACK;EAAM,CACzC,CACG,CACL;EACD,OACC,IAAA1B,MAAA,CAAAC,aAAA;IAAKC,SAAS,EAAC;EAA2C,GACvDkB,cAAc,IACf,IAAApB,MAAA,CAAAC,aAAA,EAACM,kBAAkB;IAClBC,cAAc,EAAGA,cAAgB;IACjCC,UAAU,EAAGA,UAAY;IACzBC,WAAW,EAAGA,WAAa;IAC3BC,WAAW,EAAGA;EAAa,CAC3B,CACD,EACCY,eAAe,EACfH,cAAc,IACf,IAAApB,MAAA,CAAAC,aAAA,EAACH,OAAO;IAACC,oBAAoB,EAAGA;EAAsB,CAAE,CAErD,CAAC;AAER,CAAC;AAAC,IAAA4B,QAAA,GAEaV,YAAY;AAAAW,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
1
+ {"version":3,"names":["_i18n","require","_components","_icons","_constants","Actions","onBlockPatternSelect","_react","createElement","className","Button","variant","onClick","__","CarouselNavigation","handlePrevious","handleNext","activeSlide","totalSlides","icon","chevronLeft","label","disabled","__experimentalIsFocusable","chevronRight","SetupToolbar","viewMode","setViewMode","isCarouselView","VIEWMODES","carousel","displayControls","stretchFullWidth","isPressed","grid","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/block-pattern-setup/setup-toolbar.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport {\n\tchevronRight,\n\tchevronLeft,\n\tgrid,\n\tstretchFullWidth,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { VIEWMODES } from './constants';\n\nconst Actions = ( { onBlockPatternSelect } ) => (\n\t<div className=\"block-editor-block-pattern-setup__actions\">\n\t\t<Button variant=\"primary\" onClick={ onBlockPatternSelect }>\n\t\t\t{ __( 'Choose' ) }\n\t\t</Button>\n\t</div>\n);\n\nconst CarouselNavigation = ( {\n\thandlePrevious,\n\thandleNext,\n\tactiveSlide,\n\ttotalSlides,\n} ) => (\n\t<div className=\"block-editor-block-pattern-setup__navigation\">\n\t\t<Button\n\t\t\ticon={ chevronLeft }\n\t\t\tlabel={ __( 'Previous pattern' ) }\n\t\t\tonClick={ handlePrevious }\n\t\t\tdisabled={ activeSlide === 0 }\n\t\t\t__experimentalIsFocusable\n\t\t/>\n\t\t<Button\n\t\t\ticon={ chevronRight }\n\t\t\tlabel={ __( 'Next pattern' ) }\n\t\t\tonClick={ handleNext }\n\t\t\tdisabled={ activeSlide === totalSlides - 1 }\n\t\t\t__experimentalIsFocusable\n\t\t/>\n\t</div>\n);\n\nconst SetupToolbar = ( {\n\tviewMode,\n\tsetViewMode,\n\thandlePrevious,\n\thandleNext,\n\tactiveSlide,\n\ttotalSlides,\n\tonBlockPatternSelect,\n} ) => {\n\tconst isCarouselView = viewMode === VIEWMODES.carousel;\n\tconst displayControls = (\n\t\t<div className=\"block-editor-block-pattern-setup__display-controls\">\n\t\t\t<Button\n\t\t\t\ticon={ stretchFullWidth }\n\t\t\t\tlabel={ __( 'Carousel view' ) }\n\t\t\t\tonClick={ () => setViewMode( VIEWMODES.carousel ) }\n\t\t\t\tisPressed={ isCarouselView }\n\t\t\t/>\n\t\t\t<Button\n\t\t\t\ticon={ grid }\n\t\t\t\tlabel={ __( 'Grid view' ) }\n\t\t\t\tonClick={ () => setViewMode( VIEWMODES.grid ) }\n\t\t\t\tisPressed={ viewMode === VIEWMODES.grid }\n\t\t\t/>\n\t\t</div>\n\t);\n\treturn (\n\t\t<div className=\"block-editor-block-pattern-setup__toolbar\">\n\t\t\t{ isCarouselView && (\n\t\t\t\t<CarouselNavigation\n\t\t\t\t\thandlePrevious={ handlePrevious }\n\t\t\t\t\thandleNext={ handleNext }\n\t\t\t\t\tactiveSlide={ activeSlide }\n\t\t\t\t\ttotalSlides={ totalSlides }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ displayControls }\n\t\t\t{ isCarouselView && (\n\t\t\t\t<Actions onBlockPatternSelect={ onBlockPatternSelect } />\n\t\t\t) }\n\t\t</div>\n\t);\n};\n\nexport default SetupToolbar;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAUA,IAAAG,UAAA,GAAAH,OAAA;AAfA;AACA;AACA;;AAUA;AACA;AACA;;AAGA,MAAMI,OAAO,GAAGA,CAAE;EAAEC;AAAqB,CAAC,KACzC,IAAAC,MAAA,CAAAC,aAAA;EAAKC,SAAS,EAAC;AAA2C,GACzD,IAAAF,MAAA,CAAAC,aAAA,EAACN,WAAA,CAAAQ,MAAM;EAACC,OAAO,EAAC,SAAS;EAACC,OAAO,EAAGN;AAAsB,GACvD,IAAAO,QAAE,EAAE,QAAS,CACR,CACJ,CACL;AAED,MAAMC,kBAAkB,GAAGA,CAAE;EAC5BC,cAAc;EACdC,UAAU;EACVC,WAAW;EACXC;AACD,CAAC,KACA,IAAAX,MAAA,CAAAC,aAAA;EAAKC,SAAS,EAAC;AAA8C,GAC5D,IAAAF,MAAA,CAAAC,aAAA,EAACN,WAAA,CAAAQ,MAAM;EACNS,IAAI,EAAGC,kBAAa;EACpBC,KAAK,EAAG,IAAAR,QAAE,EAAE,kBAAmB,CAAG;EAClCD,OAAO,EAAGG,cAAgB;EAC1BO,QAAQ,EAAGL,WAAW,KAAK,CAAG;EAC9BM,yBAAyB;AAAA,CACzB,CAAC,EACF,IAAAhB,MAAA,CAAAC,aAAA,EAACN,WAAA,CAAAQ,MAAM;EACNS,IAAI,EAAGK,mBAAc;EACrBH,KAAK,EAAG,IAAAR,QAAE,EAAE,cAAe,CAAG;EAC9BD,OAAO,EAAGI,UAAY;EACtBM,QAAQ,EAAGL,WAAW,KAAKC,WAAW,GAAG,CAAG;EAC5CK,yBAAyB;AAAA,CACzB,CACG,CACL;AAED,MAAME,YAAY,GAAGA,CAAE;EACtBC,QAAQ;EACRC,WAAW;EACXZ,cAAc;EACdC,UAAU;EACVC,WAAW;EACXC,WAAW;EACXZ;AACD,CAAC,KAAM;EACN,MAAMsB,cAAc,GAAGF,QAAQ,KAAKG,oBAAS,CAACC,QAAQ;EACtD,MAAMC,eAAe,GACpB,IAAAxB,MAAA,CAAAC,aAAA;IAAKC,SAAS,EAAC;EAAoD,GAClE,IAAAF,MAAA,CAAAC,aAAA,EAACN,WAAA,CAAAQ,MAAM;IACNS,IAAI,EAAGa,uBAAkB;IACzBX,KAAK,EAAG,IAAAR,QAAE,EAAE,eAAgB,CAAG;IAC/BD,OAAO,EAAGA,CAAA,KAAMe,WAAW,CAAEE,oBAAS,CAACC,QAAS,CAAG;IACnDG,SAAS,EAAGL;EAAgB,CAC5B,CAAC,EACF,IAAArB,MAAA,CAAAC,aAAA,EAACN,WAAA,CAAAQ,MAAM;IACNS,IAAI,EAAGe,WAAM;IACbb,KAAK,EAAG,IAAAR,QAAE,EAAE,WAAY,CAAG;IAC3BD,OAAO,EAAGA,CAAA,KAAMe,WAAW,CAAEE,oBAAS,CAACK,IAAK,CAAG;IAC/CD,SAAS,EAAGP,QAAQ,KAAKG,oBAAS,CAACK;EAAM,CACzC,CACG,CACL;EACD,OACC,IAAA3B,MAAA,CAAAC,aAAA;IAAKC,SAAS,EAAC;EAA2C,GACvDmB,cAAc,IACf,IAAArB,MAAA,CAAAC,aAAA,EAACM,kBAAkB;IAClBC,cAAc,EAAGA,cAAgB;IACjCC,UAAU,EAAGA,UAAY;IACzBC,WAAW,EAAGA,WAAa;IAC3BC,WAAW,EAAGA;EAAa,CAC3B,CACD,EACCa,eAAe,EACfH,cAAc,IACf,IAAArB,MAAA,CAAAC,aAAA,EAACH,OAAO;IAACC,oBAAoB,EAAGA;EAAsB,CAAE,CAErD,CAAC;AAER,CAAC;AAAC,IAAA6B,QAAA,GAEaV,YAAY;AAAAW,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
@@ -12,9 +12,11 @@ var _components = require("@wordpress/components");
12
12
  var _compose = require("@wordpress/compose");
13
13
  var _i18n = require("@wordpress/i18n");
14
14
  var _icons = require("@wordpress/icons");
15
+ var _lockUnlock = require("../../lock-unlock");
15
16
  var _blockPreview = _interopRequireDefault(require("../block-preview"));
16
17
  var _inserterDraggableBlocks = _interopRequireDefault(require("../inserter-draggable-blocks"));
17
18
  var _blockPatternsPaging = _interopRequireDefault(require("../block-patterns-paging"));
19
+ var _utils = require("../inserter/block-patterns-tab/utils");
18
20
  /**
19
21
  * External dependencies
20
22
  */
@@ -27,6 +29,11 @@ var _blockPatternsPaging = _interopRequireDefault(require("../block-patterns-pag
27
29
  * Internal dependencies
28
30
  */
29
31
 
32
+ const {
33
+ CompositeV2: Composite,
34
+ CompositeItemV2: CompositeItem,
35
+ useCompositeStoreV2: useCompositeStore
36
+ } = (0, _lockUnlock.unlock)(_components.privateApis);
30
37
  const WithToolTip = ({
31
38
  showTooltip,
32
39
  title,
@@ -40,11 +47,11 @@ const WithToolTip = ({
40
47
  return (0, _react.createElement)(_react.Fragment, null, children);
41
48
  };
42
49
  function BlockPattern({
50
+ id,
43
51
  isDraggable,
44
52
  pattern,
45
53
  onClick,
46
54
  onHover,
47
- composite,
48
55
  showTooltip
49
56
  }) {
50
57
  const [isDragging, setIsDragging] = (0, _element.useState)(false);
@@ -79,15 +86,18 @@ function BlockPattern({
79
86
  }
80
87
  }
81
88
  }, (0, _react.createElement)(WithToolTip, {
82
- showTooltip: showTooltip && !pattern.id,
89
+ showTooltip: showTooltip && !pattern.type !== _utils.PATTERN_TYPES.user,
83
90
  title: pattern.title
84
- }, (0, _react.createElement)(_components.__unstableCompositeItem, {
85
- role: "option",
86
- as: "div",
87
- ...composite,
88
- className: (0, _classnames.default)('block-editor-block-patterns-list__item', {
89
- 'block-editor-block-patterns-list__list-item-synced': pattern.id && !pattern.syncStatus
91
+ }, (0, _react.createElement)(CompositeItem, {
92
+ render: (0, _react.createElement)("div", {
93
+ role: "option",
94
+ "aria-label": pattern.title,
95
+ "aria-describedby": pattern.description ? descriptionId : undefined,
96
+ className: (0, _classnames.default)('block-editor-block-patterns-list__item', {
97
+ 'block-editor-block-patterns-list__list-item-synced': pattern.type === _utils.PATTERN_TYPES.user && !pattern.syncStatus
98
+ })
90
99
  }),
100
+ id: id,
91
101
  onClick: () => {
92
102
  onClick(pattern, blocks);
93
103
  onHover?.(null);
@@ -98,20 +108,18 @@ function BlockPattern({
98
108
  }
99
109
  onHover?.(pattern);
100
110
  },
101
- onMouseLeave: () => onHover?.(null),
102
- "aria-label": pattern.title,
103
- "aria-describedby": pattern.description ? descriptionId : undefined
111
+ onMouseLeave: () => onHover?.(null)
104
112
  }, (0, _react.createElement)(_blockPreview.default, {
105
113
  blocks: blocks,
106
114
  viewportWidth: viewportWidth
107
115
  }), (0, _react.createElement)(_components.__experimentalHStack, {
108
116
  className: "block-editor-patterns__pattern-details"
109
- }, pattern.id && !pattern.syncStatus && (0, _react.createElement)("div", {
117
+ }, pattern.type === _utils.PATTERN_TYPES.user && !pattern.syncStatus && (0, _react.createElement)("div", {
110
118
  className: "block-editor-patterns__pattern-icon-wrapper"
111
119
  }, (0, _react.createElement)(_icons.Icon, {
112
120
  className: "block-editor-patterns__pattern-icon",
113
121
  icon: _icons.symbol
114
- })), (!showTooltip || pattern.id) && (0, _react.createElement)("div", {
122
+ })), (!showTooltip || pattern.type === _utils.PATTERN_TYPES.user) && (0, _react.createElement)("div", {
115
123
  className: "block-editor-block-patterns-list__item-title"
116
124
  }, pattern.title)), !!pattern.description && (0, _react.createElement)(_components.VisuallyHidden, {
117
125
  id: descriptionId
@@ -122,7 +130,7 @@ function BlockPatternPlaceholder() {
122
130
  className: "block-editor-block-patterns-list__item is-placeholder"
123
131
  });
124
132
  }
125
- function BlockPatternList({
133
+ function BlockPatternsList({
126
134
  isDraggable,
127
135
  blockPatterns,
128
136
  shownPatterns,
@@ -133,11 +141,20 @@ function BlockPatternList({
133
141
  showTitlesAsTooltip,
134
142
  pagingProps
135
143
  }, ref) {
136
- const composite = (0, _components.__unstableUseCompositeState)({
144
+ const compositeStore = useCompositeStore({
137
145
  orientation
138
146
  });
139
- return (0, _react.createElement)(_components.__unstableComposite, {
140
- ...composite,
147
+ const {
148
+ setActiveId
149
+ } = compositeStore;
150
+ (0, _element.useEffect)(() => {
151
+ // We reset the active composite item whenever the
152
+ // available patterns change, to make sure that
153
+ // focus is put back to the start.
154
+ setActiveId(undefined);
155
+ }, [setActiveId, shownPatterns, blockPatterns]);
156
+ return (0, _react.createElement)(Composite, {
157
+ store: compositeStore,
141
158
  role: "listbox",
142
159
  className: "block-editor-block-patterns-list",
143
160
  "aria-label": label,
@@ -146,11 +163,11 @@ function BlockPatternList({
146
163
  const isShown = shownPatterns.includes(pattern);
147
164
  return isShown ? (0, _react.createElement)(BlockPattern, {
148
165
  key: pattern.name,
166
+ id: pattern.name,
149
167
  pattern: pattern,
150
168
  onClick: onClickPattern,
151
169
  onHover: onHover,
152
170
  isDraggable: isDraggable,
153
- composite: composite,
154
171
  showTooltip: showTitlesAsTooltip
155
172
  }) : (0, _react.createElement)(BlockPatternPlaceholder, {
156
173
  key: pattern.name
@@ -159,6 +176,6 @@ function BlockPatternList({
159
176
  ...pagingProps
160
177
  }));
161
178
  }
162
- var _default = (0, _element.forwardRef)(BlockPatternList);
179
+ var _default = (0, _element.forwardRef)(BlockPatternsList);
163
180
  exports.default = _default;
164
181
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_element","_components","_compose","_i18n","_icons","_blockPreview","_inserterDraggableBlocks","_blockPatternsPaging","WithToolTip","showTooltip","title","children","_react","createElement","Tooltip","text","Fragment","BlockPattern","isDraggable","pattern","onClick","onHover","composite","isDragging","setIsDragging","useState","blocks","viewportWidth","instanceId","useInstanceId","descriptionId","default","isEnabled","isPattern","draggable","onDragStart","onDragEnd","className","event","id","__unstableCompositeItem","role","as","classnames","syncStatus","onMouseEnter","onMouseLeave","description","undefined","__experimentalHStack","Icon","icon","symbol","VisuallyHidden","BlockPatternPlaceholder","BlockPatternList","blockPatterns","shownPatterns","onClickPattern","orientation","label","__","showTitlesAsTooltip","pagingProps","ref","useCompositeState","__unstableComposite","map","isShown","includes","key","name","_default","forwardRef","exports"],"sources":["@wordpress/block-editor/src/components/block-patterns-list/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useState, forwardRef } from '@wordpress/element';\nimport {\n\tVisuallyHidden,\n\t__unstableComposite as Composite,\n\t__unstableUseCompositeState as useCompositeState,\n\t__unstableCompositeItem as CompositeItem,\n\tTooltip,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { Icon, symbol } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport BlockPreview from '../block-preview';\nimport InserterDraggableBlocks from '../inserter-draggable-blocks';\nimport BlockPatternsPaging from '../block-patterns-paging';\n\nconst WithToolTip = ( { showTooltip, title, children } ) => {\n\tif ( showTooltip ) {\n\t\treturn <Tooltip text={ title }>{ children }</Tooltip>;\n\t}\n\treturn <>{ children }</>;\n};\n\nfunction BlockPattern( {\n\tisDraggable,\n\tpattern,\n\tonClick,\n\tonHover,\n\tcomposite,\n\tshowTooltip,\n} ) {\n\tconst [ isDragging, setIsDragging ] = useState( false );\n\tconst { blocks, viewportWidth } = pattern;\n\tconst instanceId = useInstanceId( BlockPattern );\n\tconst descriptionId = `block-editor-block-patterns-list__item-description-${ instanceId }`;\n\n\treturn (\n\t\t<InserterDraggableBlocks\n\t\t\tisEnabled={ isDraggable }\n\t\t\tblocks={ blocks }\n\t\t\tisPattern={ !! pattern }\n\t\t>\n\t\t\t{ ( { draggable, onDragStart, onDragEnd } ) => (\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"block-editor-block-patterns-list__list-item\"\n\t\t\t\t\tdraggable={ draggable }\n\t\t\t\t\tonDragStart={ ( event ) => {\n\t\t\t\t\t\tsetIsDragging( true );\n\t\t\t\t\t\tif ( onDragStart ) {\n\t\t\t\t\t\t\tonHover?.( null );\n\t\t\t\t\t\t\tonDragStart( event );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\tonDragEnd={ ( event ) => {\n\t\t\t\t\t\tsetIsDragging( false );\n\t\t\t\t\t\tif ( onDragEnd ) {\n\t\t\t\t\t\t\tonDragEnd( event );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<WithToolTip\n\t\t\t\t\t\tshowTooltip={ showTooltip && ! pattern.id }\n\t\t\t\t\t\ttitle={ pattern.title }\n\t\t\t\t\t>\n\t\t\t\t\t\t<CompositeItem\n\t\t\t\t\t\t\trole=\"option\"\n\t\t\t\t\t\t\tas=\"div\"\n\t\t\t\t\t\t\t{ ...composite }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'block-editor-block-patterns-list__item',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'block-editor-block-patterns-list__list-item-synced':\n\t\t\t\t\t\t\t\t\t\tpattern.id && ! pattern.syncStatus,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonClick( pattern, blocks );\n\t\t\t\t\t\t\t\tonHover?.( null );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonMouseEnter={ () => {\n\t\t\t\t\t\t\t\tif ( isDragging ) {\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonHover?.( pattern );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonMouseLeave={ () => onHover?.( null ) }\n\t\t\t\t\t\t\taria-label={ pattern.title }\n\t\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t\tpattern.description ? descriptionId : undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\tviewportWidth={ viewportWidth }\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t<HStack className=\"block-editor-patterns__pattern-details\">\n\t\t\t\t\t\t\t\t{ pattern.id && ! pattern.syncStatus && (\n\t\t\t\t\t\t\t\t\t<div className=\"block-editor-patterns__pattern-icon-wrapper\">\n\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"block-editor-patterns__pattern-icon\"\n\t\t\t\t\t\t\t\t\t\t\ticon={ symbol }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ ( ! showTooltip || pattern.id ) && (\n\t\t\t\t\t\t\t\t\t<div className=\"block-editor-block-patterns-list__item-title\">\n\t\t\t\t\t\t\t\t\t\t{ pattern.title }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</HStack>\n\n\t\t\t\t\t\t\t{ !! pattern.description && (\n\t\t\t\t\t\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t\t\t\t\t\t{ pattern.description }\n\t\t\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</CompositeItem>\n\t\t\t\t\t</WithToolTip>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</InserterDraggableBlocks>\n\t);\n}\n\nfunction BlockPatternPlaceholder() {\n\treturn (\n\t\t<div className=\"block-editor-block-patterns-list__item is-placeholder\" />\n\t);\n}\n\nfunction BlockPatternList(\n\t{\n\t\tisDraggable,\n\t\tblockPatterns,\n\t\tshownPatterns,\n\t\tonHover,\n\t\tonClickPattern,\n\t\torientation,\n\t\tlabel = __( 'Block patterns' ),\n\t\tshowTitlesAsTooltip,\n\t\tpagingProps,\n\t},\n\tref\n) {\n\tconst composite = useCompositeState( { orientation } );\n\treturn (\n\t\t<Composite\n\t\t\t{ ...composite }\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"block-editor-block-patterns-list\"\n\t\t\taria-label={ label }\n\t\t\tref={ ref }\n\t\t>\n\t\t\t{ blockPatterns.map( ( pattern ) => {\n\t\t\t\tconst isShown = shownPatterns.includes( pattern );\n\t\t\t\treturn isShown ? (\n\t\t\t\t\t<BlockPattern\n\t\t\t\t\t\tkey={ pattern.name }\n\t\t\t\t\t\tpattern={ pattern }\n\t\t\t\t\t\tonClick={ onClickPattern }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\tisDraggable={ isDraggable }\n\t\t\t\t\t\tcomposite={ composite }\n\t\t\t\t\t\tshowTooltip={ showTitlesAsTooltip }\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<BlockPatternPlaceholder key={ pattern.name } />\n\t\t\t\t);\n\t\t\t} ) }\n\t\t\t{ pagingProps && <BlockPatternsPaging { ...pagingProps } /> }\n\t\t</Composite>\n\t);\n}\n\nexport default forwardRef( BlockPatternList );\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AAQA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAKA,IAAAM,aAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,wBAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,oBAAA,GAAAT,sBAAA,CAAAC,OAAA;AA1BA;AACA;AACA;;AAGA;AACA;AACA;;AAcA;AACA;AACA;;AAKA,MAAMS,WAAW,GAAGA,CAAE;EAAEC,WAAW;EAAEC,KAAK;EAAEC;AAAS,CAAC,KAAM;EAC3D,IAAKF,WAAW,EAAG;IAClB,OAAO,IAAAG,MAAA,CAAAC,aAAA,EAACZ,WAAA,CAAAa,OAAO;MAACC,IAAI,EAAGL;IAAO,GAAGC,QAAmB,CAAC;EACtD;EACA,OAAO,IAAAC,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAI,QAAA,QAAIL,QAAY,CAAC;AACzB,CAAC;AAED,SAASM,YAAYA,CAAE;EACtBC,WAAW;EACXC,OAAO;EACPC,OAAO;EACPC,OAAO;EACPC,SAAS;EACTb;AACD,CAAC,EAAG;EACH,MAAM,CAAEc,UAAU,EAAEC,aAAa,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EACvD,MAAM;IAAEC,MAAM;IAAEC;EAAc,CAAC,GAAGR,OAAO;EACzC,MAAMS,UAAU,GAAG,IAAAC,sBAAa,EAAEZ,YAAa,CAAC;EAChD,MAAMa,aAAa,GAAI,sDAAsDF,UAAY,EAAC;EAE1F,OACC,IAAAhB,MAAA,CAAAC,aAAA,EAACP,wBAAA,CAAAyB,OAAuB;IACvBC,SAAS,EAAGd,WAAa;IACzBQ,MAAM,EAAGA,MAAQ;IACjBO,SAAS,EAAG,CAAC,CAAEd;EAAS,GAEtB,CAAE;IAAEe,SAAS;IAAEC,WAAW;IAAEC;EAAU,CAAC,KACxC,IAAAxB,MAAA,CAAAC,aAAA;IACCwB,SAAS,EAAC,6CAA6C;IACvDH,SAAS,EAAGA,SAAW;IACvBC,WAAW,EAAKG,KAAK,IAAM;MAC1Bd,aAAa,CAAE,IAAK,CAAC;MACrB,IAAKW,WAAW,EAAG;QAClBd,OAAO,GAAI,IAAK,CAAC;QACjBc,WAAW,CAAEG,KAAM,CAAC;MACrB;IACD,CAAG;IACHF,SAAS,EAAKE,KAAK,IAAM;MACxBd,aAAa,CAAE,KAAM,CAAC;MACtB,IAAKY,SAAS,EAAG;QAChBA,SAAS,CAAEE,KAAM,CAAC;MACnB;IACD;EAAG,GAEH,IAAA1B,MAAA,CAAAC,aAAA,EAACL,WAAW;IACXC,WAAW,EAAGA,WAAW,IAAI,CAAEU,OAAO,CAACoB,EAAI;IAC3C7B,KAAK,EAAGS,OAAO,CAACT;EAAO,GAEvB,IAAAE,MAAA,CAAAC,aAAA,EAACZ,WAAA,CAAAuC,uBAAa;IACbC,IAAI,EAAC,QAAQ;IACbC,EAAE,EAAC,KAAK;IAAA,GACHpB,SAAS;IACde,SAAS,EAAG,IAAAM,mBAAU,EACrB,wCAAwC,EACxC;MACC,oDAAoD,EACnDxB,OAAO,CAACoB,EAAE,IAAI,CAAEpB,OAAO,CAACyB;IAC1B,CACD,CAAG;IACHxB,OAAO,EAAGA,CAAA,KAAM;MACfA,OAAO,CAAED,OAAO,EAAEO,MAAO,CAAC;MAC1BL,OAAO,GAAI,IAAK,CAAC;IAClB,CAAG;IACHwB,YAAY,EAAGA,CAAA,KAAM;MACpB,IAAKtB,UAAU,EAAG;QACjB;MACD;MACAF,OAAO,GAAIF,OAAQ,CAAC;IACrB,CAAG;IACH2B,YAAY,EAAGA,CAAA,KAAMzB,OAAO,GAAI,IAAK,CAAG;IACxC,cAAaF,OAAO,CAACT,KAAO;IAC5B,oBACCS,OAAO,CAAC4B,WAAW,GAAGjB,aAAa,GAAGkB;EACtC,GAED,IAAApC,MAAA,CAAAC,aAAA,EAACR,aAAA,CAAA0B,OAAY;IACZL,MAAM,EAAGA,MAAQ;IACjBC,aAAa,EAAGA;EAAe,CAC/B,CAAC,EAEF,IAAAf,MAAA,CAAAC,aAAA,EAACZ,WAAA,CAAAgD,oBAAM;IAACZ,SAAS,EAAC;EAAwC,GACvDlB,OAAO,CAACoB,EAAE,IAAI,CAAEpB,OAAO,CAACyB,UAAU,IACnC,IAAAhC,MAAA,CAAAC,aAAA;IAAKwB,SAAS,EAAC;EAA6C,GAC3D,IAAAzB,MAAA,CAAAC,aAAA,EAACT,MAAA,CAAA8C,IAAI;IACJb,SAAS,EAAC,qCAAqC;IAC/Cc,IAAI,EAAGC;EAAQ,CACf,CACG,CACL,EACC,CAAE,CAAE3C,WAAW,IAAIU,OAAO,CAACoB,EAAE,KAC9B,IAAA3B,MAAA,CAAAC,aAAA;IAAKwB,SAAS,EAAC;EAA8C,GAC1DlB,OAAO,CAACT,KACN,CAEC,CAAC,EAEP,CAAC,CAAES,OAAO,CAAC4B,WAAW,IACvB,IAAAnC,MAAA,CAAAC,aAAA,EAACZ,WAAA,CAAAoD,cAAc;IAACd,EAAE,EAAGT;EAAe,GACjCX,OAAO,CAAC4B,WACK,CAEH,CACH,CACT,CAEkB,CAAC;AAE5B;AAEA,SAASO,uBAAuBA,CAAA,EAAG;EAClC,OACC,IAAA1C,MAAA,CAAAC,aAAA;IAAKwB,SAAS,EAAC;EAAuD,CAAE,CAAC;AAE3E;AAEA,SAASkB,gBAAgBA,CACxB;EACCrC,WAAW;EACXsC,aAAa;EACbC,aAAa;EACbpC,OAAO;EACPqC,cAAc;EACdC,WAAW;EACXC,KAAK,GAAG,IAAAC,QAAE,EAAE,gBAAiB,CAAC;EAC9BC,mBAAmB;EACnBC;AACD,CAAC,EACDC,GAAG,EACF;EACD,MAAM1C,SAAS,GAAG,IAAA2C,uCAAiB,EAAE;IAAEN;EAAY,CAAE,CAAC;EACtD,OACC,IAAA/C,MAAA,CAAAC,aAAA,EAACZ,WAAA,CAAAiE,mBAAS;IAAA,GACJ5C,SAAS;IACdmB,IAAI,EAAC,SAAS;IACdJ,SAAS,EAAC,kCAAkC;IAC5C,cAAauB,KAAO;IACpBI,GAAG,EAAGA;EAAK,GAETR,aAAa,CAACW,GAAG,CAAIhD,OAAO,IAAM;IACnC,MAAMiD,OAAO,GAAGX,aAAa,CAACY,QAAQ,CAAElD,OAAQ,CAAC;IACjD,OAAOiD,OAAO,GACb,IAAAxD,MAAA,CAAAC,aAAA,EAACI,YAAY;MACZqD,GAAG,EAAGnD,OAAO,CAACoD,IAAM;MACpBpD,OAAO,EAAGA,OAAS;MACnBC,OAAO,EAAGsC,cAAgB;MAC1BrC,OAAO,EAAGA,OAAS;MACnBH,WAAW,EAAGA,WAAa;MAC3BI,SAAS,EAAGA,SAAW;MACvBb,WAAW,EAAGqD;IAAqB,CACnC,CAAC,GAEF,IAAAlD,MAAA,CAAAC,aAAA,EAACyC,uBAAuB;MAACgB,GAAG,EAAGnD,OAAO,CAACoD;IAAM,CAAE,CAC/C;EACF,CAAE,CAAC,EACDR,WAAW,IAAI,IAAAnD,MAAA,CAAAC,aAAA,EAACN,oBAAA,CAAAwB,OAAmB;IAAA,GAAMgC;EAAW,CAAI,CAChD,CAAC;AAEd;AAAC,IAAAS,QAAA,GAEc,IAAAC,mBAAU,EAAElB,gBAAiB,CAAC;AAAAmB,OAAA,CAAA3C,OAAA,GAAAyC,QAAA"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_element","_components","_compose","_i18n","_icons","_lockUnlock","_blockPreview","_inserterDraggableBlocks","_blockPatternsPaging","_utils","CompositeV2","Composite","CompositeItemV2","CompositeItem","useCompositeStoreV2","useCompositeStore","unlock","componentsPrivateApis","WithToolTip","showTooltip","title","children","_react","createElement","Tooltip","text","Fragment","BlockPattern","id","isDraggable","pattern","onClick","onHover","isDragging","setIsDragging","useState","blocks","viewportWidth","instanceId","useInstanceId","descriptionId","default","isEnabled","isPattern","draggable","onDragStart","onDragEnd","className","event","type","PATTERN_TYPES","user","render","role","description","undefined","classnames","syncStatus","onMouseEnter","onMouseLeave","__experimentalHStack","Icon","icon","symbol","VisuallyHidden","BlockPatternPlaceholder","BlockPatternsList","blockPatterns","shownPatterns","onClickPattern","orientation","label","__","showTitlesAsTooltip","pagingProps","ref","compositeStore","setActiveId","useEffect","store","map","isShown","includes","key","name","_default","forwardRef","exports"],"sources":["@wordpress/block-editor/src/components/block-patterns-list/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useEffect, useState, forwardRef } from '@wordpress/element';\nimport {\n\tVisuallyHidden,\n\tTooltip,\n\tprivateApis as componentsPrivateApis,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { Icon, symbol } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport BlockPreview from '../block-preview';\nimport InserterDraggableBlocks from '../inserter-draggable-blocks';\nimport BlockPatternsPaging from '../block-patterns-paging';\nimport { PATTERN_TYPES } from '../inserter/block-patterns-tab/utils';\n\nconst {\n\tCompositeV2: Composite,\n\tCompositeItemV2: CompositeItem,\n\tuseCompositeStoreV2: useCompositeStore,\n} = unlock( componentsPrivateApis );\n\nconst WithToolTip = ( { showTooltip, title, children } ) => {\n\tif ( showTooltip ) {\n\t\treturn <Tooltip text={ title }>{ children }</Tooltip>;\n\t}\n\treturn <>{ children }</>;\n};\n\nfunction BlockPattern( {\n\tid,\n\tisDraggable,\n\tpattern,\n\tonClick,\n\tonHover,\n\tshowTooltip,\n} ) {\n\tconst [ isDragging, setIsDragging ] = useState( false );\n\tconst { blocks, viewportWidth } = pattern;\n\tconst instanceId = useInstanceId( BlockPattern );\n\tconst descriptionId = `block-editor-block-patterns-list__item-description-${ instanceId }`;\n\n\treturn (\n\t\t<InserterDraggableBlocks\n\t\t\tisEnabled={ isDraggable }\n\t\t\tblocks={ blocks }\n\t\t\tisPattern={ !! pattern }\n\t\t>\n\t\t\t{ ( { draggable, onDragStart, onDragEnd } ) => (\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"block-editor-block-patterns-list__list-item\"\n\t\t\t\t\tdraggable={ draggable }\n\t\t\t\t\tonDragStart={ ( event ) => {\n\t\t\t\t\t\tsetIsDragging( true );\n\t\t\t\t\t\tif ( onDragStart ) {\n\t\t\t\t\t\t\tonHover?.( null );\n\t\t\t\t\t\t\tonDragStart( event );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\tonDragEnd={ ( event ) => {\n\t\t\t\t\t\tsetIsDragging( false );\n\t\t\t\t\t\tif ( onDragEnd ) {\n\t\t\t\t\t\t\tonDragEnd( event );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<WithToolTip\n\t\t\t\t\t\tshowTooltip={\n\t\t\t\t\t\t\tshowTooltip && ! pattern.type !== PATTERN_TYPES.user\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttitle={ pattern.title }\n\t\t\t\t\t>\n\t\t\t\t\t\t<CompositeItem\n\t\t\t\t\t\t\trender={\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\trole=\"option\"\n\t\t\t\t\t\t\t\t\taria-label={ pattern.title }\n\t\t\t\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t\t\t\tpattern.description\n\t\t\t\t\t\t\t\t\t\t\t? descriptionId\n\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\t\t'block-editor-block-patterns-list__item',\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t'block-editor-block-patterns-list__list-item-synced':\n\t\t\t\t\t\t\t\t\t\t\t\tpattern.type ===\n\t\t\t\t\t\t\t\t\t\t\t\t\tPATTERN_TYPES.user &&\n\t\t\t\t\t\t\t\t\t\t\t\t! pattern.syncStatus,\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tid={ id }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonClick( pattern, blocks );\n\t\t\t\t\t\t\t\tonHover?.( null );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonMouseEnter={ () => {\n\t\t\t\t\t\t\t\tif ( isDragging ) {\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonHover?.( pattern );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonMouseLeave={ () => onHover?.( null ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\tviewportWidth={ viewportWidth }\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t<HStack className=\"block-editor-patterns__pattern-details\">\n\t\t\t\t\t\t\t\t{ pattern.type === PATTERN_TYPES.user &&\n\t\t\t\t\t\t\t\t\t! pattern.syncStatus && (\n\t\t\t\t\t\t\t\t\t\t<div className=\"block-editor-patterns__pattern-icon-wrapper\">\n\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"block-editor-patterns__pattern-icon\"\n\t\t\t\t\t\t\t\t\t\t\t\ticon={ symbol }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ ( ! showTooltip ||\n\t\t\t\t\t\t\t\t\tpattern.type === PATTERN_TYPES.user ) && (\n\t\t\t\t\t\t\t\t\t<div className=\"block-editor-block-patterns-list__item-title\">\n\t\t\t\t\t\t\t\t\t\t{ pattern.title }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</HStack>\n\n\t\t\t\t\t\t\t{ !! pattern.description && (\n\t\t\t\t\t\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t\t\t\t\t\t{ pattern.description }\n\t\t\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</CompositeItem>\n\t\t\t\t\t</WithToolTip>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</InserterDraggableBlocks>\n\t);\n}\n\nfunction BlockPatternPlaceholder() {\n\treturn (\n\t\t<div className=\"block-editor-block-patterns-list__item is-placeholder\" />\n\t);\n}\n\nfunction BlockPatternsList(\n\t{\n\t\tisDraggable,\n\t\tblockPatterns,\n\t\tshownPatterns,\n\t\tonHover,\n\t\tonClickPattern,\n\t\torientation,\n\t\tlabel = __( 'Block patterns' ),\n\t\tshowTitlesAsTooltip,\n\t\tpagingProps,\n\t},\n\tref\n) {\n\tconst compositeStore = useCompositeStore( { orientation } );\n\tconst { setActiveId } = compositeStore;\n\n\tuseEffect( () => {\n\t\t// We reset the active composite item whenever the\n\t\t// available patterns change, to make sure that\n\t\t// focus is put back to the start.\n\t\tsetActiveId( undefined );\n\t}, [ setActiveId, shownPatterns, blockPatterns ] );\n\n\treturn (\n\t\t<Composite\n\t\t\tstore={ compositeStore }\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"block-editor-block-patterns-list\"\n\t\t\taria-label={ label }\n\t\t\tref={ ref }\n\t\t>\n\t\t\t{ blockPatterns.map( ( pattern ) => {\n\t\t\t\tconst isShown = shownPatterns.includes( pattern );\n\t\t\t\treturn isShown ? (\n\t\t\t\t\t<BlockPattern\n\t\t\t\t\t\tkey={ pattern.name }\n\t\t\t\t\t\tid={ pattern.name }\n\t\t\t\t\t\tpattern={ pattern }\n\t\t\t\t\t\tonClick={ onClickPattern }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\tisDraggable={ isDraggable }\n\t\t\t\t\t\tshowTooltip={ showTitlesAsTooltip }\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<BlockPatternPlaceholder key={ pattern.name } />\n\t\t\t\t);\n\t\t\t} ) }\n\t\t\t{ pagingProps && <BlockPatternsPaging { ...pagingProps } /> }\n\t\t</Composite>\n\t);\n}\n\nexport default forwardRef( BlockPatternsList );\n"],"mappings":"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"}
@@ -63,10 +63,12 @@ function BlockQuickNavigationItem({
63
63
  return (0, _react.createElement)(_components.Button, {
64
64
  isPressed: isSelected,
65
65
  onClick: () => selectBlock(clientId)
66
- }, (0, _react.createElement)(_components.__experimentalHStack, {
67
- justify: "flex-start"
68
- }, (0, _react.createElement)(_blockIcon.default, {
66
+ }, (0, _react.createElement)(_components.Flex, null, (0, _react.createElement)(_components.FlexItem, null, (0, _react.createElement)(_blockIcon.default, {
69
67
  icon: icon
70
- }), (0, _react.createElement)(_components.FlexItem, null, name)));
68
+ })), (0, _react.createElement)(_components.FlexBlock, {
69
+ style: {
70
+ textAlign: 'left'
71
+ }
72
+ }, (0, _react.createElement)(_components.__experimentalTruncate, null, name))));
71
73
  }
72
74
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_components","_blocks","_store","_blockIcon","_interopRequireDefault","BlockQuickNavigation","clientIds","length","_react","createElement","__experimentalVStack","spacing","map","clientId","BlockQuickNavigationItem","key","name","icon","isSelected","useSelect","select","getBlockName","getBlockAttributes","isBlockSelected","hasSelectedInnerBlock","blockEditorStore","getBlockType","blocksStore","blockType","attributes","__experimentalGetBlockLabel","selectBlock","useDispatch","Button","isPressed","onClick","__experimentalHStack","justify","default","FlexItem"],"sources":["@wordpress/block-editor/src/components/block-quick-navigation/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n\tFlexItem,\n} from '@wordpress/components';\nimport {\n\t__experimentalGetBlockLabel,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport BlockIcon from '../block-icon';\n\nexport default function BlockQuickNavigation( { clientIds } ) {\n\tif ( ! clientIds.length ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<VStack spacing={ 1 }>\n\t\t\t{ clientIds.map( ( clientId ) => (\n\t\t\t\t<BlockQuickNavigationItem\n\t\t\t\t\tkey={ clientId }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</VStack>\n\t);\n}\n\nfunction BlockQuickNavigationItem( { clientId } ) {\n\tconst { name, icon, isSelected } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tisBlockSelected,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { getBlockType } = select( blocksStore );\n\n\t\t\tconst blockType = getBlockType( getBlockName( clientId ) );\n\t\t\tconst attributes = getBlockAttributes( clientId );\n\n\t\t\treturn {\n\t\t\t\tname:\n\t\t\t\t\tblockType &&\n\t\t\t\t\t__experimentalGetBlockLabel(\n\t\t\t\t\t\tblockType,\n\t\t\t\t\t\tattributes,\n\t\t\t\t\t\t'list-view'\n\t\t\t\t\t),\n\t\t\t\ticon: blockType?.icon,\n\t\t\t\tisSelected:\n\t\t\t\t\tisBlockSelected( clientId ) ||\n\t\t\t\t\thasSelectedInnerBlock( clientId, /* deep: */ true ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\n\treturn (\n\t\t<Button\n\t\t\tisPressed={ isSelected }\n\t\t\tonClick={ () => selectBlock( clientId ) }\n\t\t>\n\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t<BlockIcon icon={ icon } />\n\t\t\t\t<FlexItem>{ name }</FlexItem>\n\t\t\t</HStack>\n\t\t</Button>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAMA,IAAAE,OAAA,GAAAF,OAAA;AAQA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAC,sBAAA,CAAAL,OAAA;AAnBA;AACA;AACA;;AAaA;AACA;AACA;;AAIe,SAASM,oBAAoBA,CAAE;EAAEC;AAAU,CAAC,EAAG;EAC7D,IAAK,CAAEA,SAAS,CAACC,MAAM,EAAG;IACzB,OAAO,IAAI;EACZ;EACA,OACC,IAAAC,MAAA,CAAAC,aAAA,EAACT,WAAA,CAAAU,oBAAM;IAACC,OAAO,EAAG;EAAG,GAClBL,SAAS,CAACM,GAAG,CAAIC,QAAQ,IAC1B,IAAAL,MAAA,CAAAC,aAAA,EAACK,wBAAwB;IACxBC,GAAG,EAAGF,QAAU;IAChBA,QAAQ,EAAGA;EAAU,CACrB,CACA,CACK,CAAC;AAEX;AAEA,SAASC,wBAAwBA,CAAE;EAAED;AAAS,CAAC,EAAG;EACjD,MAAM;IAAEG,IAAI;IAAEC,IAAI;IAAEC;EAAW,CAAC,GAAG,IAAAC,eAAS,EACzCC,MAAM,IAAM;IACb,MAAM;MACLC,YAAY;MACZC,kBAAkB;MAClBC,eAAe;MACfC;IACD,CAAC,GAAGJ,MAAM,CAAEK,YAAiB,CAAC;IAC9B,MAAM;MAAEC;IAAa,CAAC,GAAGN,MAAM,CAAEO,aAAY,CAAC;IAE9C,MAAMC,SAAS,GAAGF,YAAY,CAAEL,YAAY,CAAER,QAAS,CAAE,CAAC;IAC1D,MAAMgB,UAAU,GAAGP,kBAAkB,CAAET,QAAS,CAAC;IAEjD,OAAO;MACNG,IAAI,EACHY,SAAS,IACT,IAAAE,mCAA2B,EAC1BF,SAAS,EACTC,UAAU,EACV,WACD,CAAC;MACFZ,IAAI,EAAEW,SAAS,EAAEX,IAAI;MACrBC,UAAU,EACTK,eAAe,CAAEV,QAAS,CAAC,IAC3BW,qBAAqB,CAAEX,QAAQ,EAAE,WAAY,IAAK;IACpD,CAAC;EACF,CAAC,EACD,CAAEA,QAAQ,CACX,CAAC;EACD,MAAM;IAAEkB;EAAY,CAAC,GAAG,IAAAC,iBAAW,EAAEP,YAAiB,CAAC;EAEvD,OACC,IAAAjB,MAAA,CAAAC,aAAA,EAACT,WAAA,CAAAiC,MAAM;IACNC,SAAS,EAAGhB,UAAY;IACxBiB,OAAO,EAAGA,CAAA,KAAMJ,WAAW,CAAElB,QAAS;EAAG,GAEzC,IAAAL,MAAA,CAAAC,aAAA,EAACT,WAAA,CAAAoC,oBAAM;IAACC,OAAO,EAAC;EAAY,GAC3B,IAAA7B,MAAA,CAAAC,aAAA,EAACN,UAAA,CAAAmC,OAAS;IAACrB,IAAI,EAAGA;EAAM,CAAE,CAAC,EAC3B,IAAAT,MAAA,CAAAC,aAAA,EAACT,WAAA,CAAAuC,QAAQ,QAAGvB,IAAgB,CACrB,CACD,CAAC;AAEX"}
1
+ {"version":3,"names":["_data","require","_components","_blocks","_store","_blockIcon","_interopRequireDefault","BlockQuickNavigation","clientIds","length","_react","createElement","__experimentalVStack","spacing","map","clientId","BlockQuickNavigationItem","key","name","icon","isSelected","useSelect","select","getBlockName","getBlockAttributes","isBlockSelected","hasSelectedInnerBlock","blockEditorStore","getBlockType","blocksStore","blockType","attributes","__experimentalGetBlockLabel","selectBlock","useDispatch","Button","isPressed","onClick","Flex","FlexItem","default","FlexBlock","style","textAlign","__experimentalTruncate"],"sources":["@wordpress/block-editor/src/components/block-quick-navigation/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\t__experimentalVStack as VStack,\n\t__experimentalTruncate as Truncate,\n\tFlex,\n\tFlexBlock,\n\tFlexItem,\n} from '@wordpress/components';\nimport {\n\t__experimentalGetBlockLabel,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport BlockIcon from '../block-icon';\n\nexport default function BlockQuickNavigation( { clientIds } ) {\n\tif ( ! clientIds.length ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<VStack spacing={ 1 }>\n\t\t\t{ clientIds.map( ( clientId ) => (\n\t\t\t\t<BlockQuickNavigationItem\n\t\t\t\t\tkey={ clientId }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</VStack>\n\t);\n}\n\nfunction BlockQuickNavigationItem( { clientId } ) {\n\tconst { name, icon, isSelected } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tisBlockSelected,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { getBlockType } = select( blocksStore );\n\n\t\t\tconst blockType = getBlockType( getBlockName( clientId ) );\n\t\t\tconst attributes = getBlockAttributes( clientId );\n\n\t\t\treturn {\n\t\t\t\tname:\n\t\t\t\t\tblockType &&\n\t\t\t\t\t__experimentalGetBlockLabel(\n\t\t\t\t\t\tblockType,\n\t\t\t\t\t\tattributes,\n\t\t\t\t\t\t'list-view'\n\t\t\t\t\t),\n\t\t\t\ticon: blockType?.icon,\n\t\t\t\tisSelected:\n\t\t\t\t\tisBlockSelected( clientId ) ||\n\t\t\t\t\thasSelectedInnerBlock( clientId, /* deep: */ true ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\n\treturn (\n\t\t<Button\n\t\t\tisPressed={ isSelected }\n\t\t\tonClick={ () => selectBlock( clientId ) }\n\t\t>\n\t\t\t<Flex>\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<BlockIcon icon={ icon } />\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexBlock style={ { textAlign: 'left' } }>\n\t\t\t\t\t<Truncate>{ name }</Truncate>\n\t\t\t\t</FlexBlock>\n\t\t\t</Flex>\n\t\t</Button>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAQA,IAAAE,OAAA,GAAAF,OAAA;AAQA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAC,sBAAA,CAAAL,OAAA;AArBA;AACA;AACA;;AAeA;AACA;AACA;;AAIe,SAASM,oBAAoBA,CAAE;EAAEC;AAAU,CAAC,EAAG;EAC7D,IAAK,CAAEA,SAAS,CAACC,MAAM,EAAG;IACzB,OAAO,IAAI;EACZ;EACA,OACC,IAAAC,MAAA,CAAAC,aAAA,EAACT,WAAA,CAAAU,oBAAM;IAACC,OAAO,EAAG;EAAG,GAClBL,SAAS,CAACM,GAAG,CAAIC,QAAQ,IAC1B,IAAAL,MAAA,CAAAC,aAAA,EAACK,wBAAwB;IACxBC,GAAG,EAAGF,QAAU;IAChBA,QAAQ,EAAGA;EAAU,CACrB,CACA,CACK,CAAC;AAEX;AAEA,SAASC,wBAAwBA,CAAE;EAAED;AAAS,CAAC,EAAG;EACjD,MAAM;IAAEG,IAAI;IAAEC,IAAI;IAAEC;EAAW,CAAC,GAAG,IAAAC,eAAS,EACzCC,MAAM,IAAM;IACb,MAAM;MACLC,YAAY;MACZC,kBAAkB;MAClBC,eAAe;MACfC;IACD,CAAC,GAAGJ,MAAM,CAAEK,YAAiB,CAAC;IAC9B,MAAM;MAAEC;IAAa,CAAC,GAAGN,MAAM,CAAEO,aAAY,CAAC;IAE9C,MAAMC,SAAS,GAAGF,YAAY,CAAEL,YAAY,CAAER,QAAS,CAAE,CAAC;IAC1D,MAAMgB,UAAU,GAAGP,kBAAkB,CAAET,QAAS,CAAC;IAEjD,OAAO;MACNG,IAAI,EACHY,SAAS,IACT,IAAAE,mCAA2B,EAC1BF,SAAS,EACTC,UAAU,EACV,WACD,CAAC;MACFZ,IAAI,EAAEW,SAAS,EAAEX,IAAI;MACrBC,UAAU,EACTK,eAAe,CAAEV,QAAS,CAAC,IAC3BW,qBAAqB,CAAEX,QAAQ,EAAE,WAAY,IAAK;IACpD,CAAC;EACF,CAAC,EACD,CAAEA,QAAQ,CACX,CAAC;EACD,MAAM;IAAEkB;EAAY,CAAC,GAAG,IAAAC,iBAAW,EAAEP,YAAiB,CAAC;EAEvD,OACC,IAAAjB,MAAA,CAAAC,aAAA,EAACT,WAAA,CAAAiC,MAAM;IACNC,SAAS,EAAGhB,UAAY;IACxBiB,OAAO,EAAGA,CAAA,KAAMJ,WAAW,CAAElB,QAAS;EAAG,GAEzC,IAAAL,MAAA,CAAAC,aAAA,EAACT,WAAA,CAAAoC,IAAI,QACJ,IAAA5B,MAAA,CAAAC,aAAA,EAACT,WAAA,CAAAqC,QAAQ,QACR,IAAA7B,MAAA,CAAAC,aAAA,EAACN,UAAA,CAAAmC,OAAS;IAACrB,IAAI,EAAGA;EAAM,CAAE,CACjB,CAAC,EACX,IAAAT,MAAA,CAAAC,aAAA,EAACT,WAAA,CAAAuC,SAAS;IAACC,KAAK,EAAG;MAAEC,SAAS,EAAE;IAAO;EAAG,GACzC,IAAAjC,MAAA,CAAAC,aAAA,EAACT,WAAA,CAAA0C,sBAAQ,QAAG1B,IAAgB,CAClB,CACN,CACC,CAAC;AAEX"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "BlockRenameControl", {
8
+ enumerable: true,
9
+ get: function () {
10
+ return _renameControl.default;
11
+ }
12
+ });
13
+ Object.defineProperty(exports, "BlockRenameModal", {
14
+ enumerable: true,
15
+ get: function () {
16
+ return _modal.default;
17
+ }
18
+ });
19
+ Object.defineProperty(exports, "useBlockRename", {
20
+ enumerable: true,
21
+ get: function () {
22
+ return _useBlockRename.default;
23
+ }
24
+ });
25
+ var _renameControl = _interopRequireDefault(require("./rename-control"));
26
+ var _modal = _interopRequireDefault(require("./modal"));
27
+ var _useBlockRename = _interopRequireDefault(require("./use-block-rename"));
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_renameControl","_interopRequireDefault","require","_modal","_useBlockRename"],"sources":["@wordpress/block-editor/src/components/block-rename/index.js"],"sourcesContent":["export { default as BlockRenameControl } from './rename-control';\nexport { default as BlockRenameModal } from './modal';\nexport { default as useBlockRename } from './use-block-rename';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,cAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,eAAA,GAAAH,sBAAA,CAAAC,OAAA"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = isEmptyString;
7
+ function isEmptyString(testString) {
8
+ return testString?.trim()?.length === 0;
9
+ }
10
+ //# sourceMappingURL=is-empty-string.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isEmptyString","testString","trim","length"],"sources":["@wordpress/block-editor/src/components/block-rename/is-empty-string.js"],"sourcesContent":["export default function isEmptyString( testString ) {\n\treturn testString?.trim()?.length === 0;\n}\n"],"mappings":";;;;;;AAAe,SAASA,aAAaA,CAAEC,UAAU,EAAG;EACnD,OAAOA,UAAU,EAAEC,IAAI,CAAC,CAAC,EAAEC,MAAM,KAAK,CAAC;AACxC"}
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = BlockRenameModal;
8
+ var _react = require("react");
9
+ var _components = require("@wordpress/components");
10
+ var _compose = require("@wordpress/compose");
11
+ var _i18n = require("@wordpress/i18n");
12
+ var _element = require("@wordpress/element");
13
+ var _a11y = require("@wordpress/a11y");
14
+ var _isEmptyString = _interopRequireDefault(require("./is-empty-string"));
15
+ /**
16
+ * WordPress dependencies
17
+ */
18
+
19
+ /**
20
+ * Internal dependencies
21
+ */
22
+
23
+ function BlockRenameModal({
24
+ blockName,
25
+ originalBlockName,
26
+ onClose,
27
+ onSave
28
+ }) {
29
+ const [editedBlockName, setEditedBlockName] = (0, _element.useState)(blockName);
30
+ const nameHasChanged = editedBlockName !== blockName;
31
+ const nameIsOriginal = editedBlockName === originalBlockName;
32
+ const nameIsEmpty = (0, _isEmptyString.default)(editedBlockName);
33
+ const isNameValid = nameHasChanged || nameIsOriginal;
34
+ const autoSelectInputText = event => event.target.select();
35
+ const dialogDescription = (0, _compose.useInstanceId)(BlockRenameModal, `block-editor-rename-modal__description`);
36
+ const handleSubmit = () => {
37
+ const message = nameIsOriginal || nameIsEmpty ? (0, _i18n.sprintf)( /* translators: %s: new name/label for the block */
38
+ (0, _i18n.__)('Block name reset to: "%s".'), editedBlockName) : (0, _i18n.sprintf)( /* translators: %s: new name/label for the block */
39
+ (0, _i18n.__)('Block name changed to: "%s".'), editedBlockName);
40
+
41
+ // Must be assertive to immediately announce change.
42
+ (0, _a11y.speak)(message, 'assertive');
43
+ onSave(editedBlockName);
44
+
45
+ // Immediate close avoids ability to hit save multiple times.
46
+ onClose();
47
+ };
48
+ return (0, _react.createElement)(_components.Modal, {
49
+ title: (0, _i18n.__)('Rename'),
50
+ onRequestClose: onClose,
51
+ overlayClassName: "block-editor-block-rename-modal",
52
+ aria: {
53
+ describedby: dialogDescription
54
+ },
55
+ focusOnMount: "firstContentElement"
56
+ }, (0, _react.createElement)("p", {
57
+ id: dialogDescription
58
+ }, (0, _i18n.__)('Enter a custom name for this block.')), (0, _react.createElement)("form", {
59
+ onSubmit: e => {
60
+ e.preventDefault();
61
+ if (!isNameValid) {
62
+ return;
63
+ }
64
+ handleSubmit();
65
+ }
66
+ }, (0, _react.createElement)(_components.__experimentalVStack, {
67
+ spacing: "3"
68
+ }, (0, _react.createElement)(_components.TextControl, {
69
+ __nextHasNoMarginBottom: true,
70
+ value: editedBlockName,
71
+ label: (0, _i18n.__)('Block name'),
72
+ hideLabelFromVision: true,
73
+ placeholder: originalBlockName,
74
+ onChange: setEditedBlockName,
75
+ onFocus: autoSelectInputText
76
+ }), (0, _react.createElement)(_components.__experimentalHStack, {
77
+ justify: "right"
78
+ }, (0, _react.createElement)(_components.Button, {
79
+ variant: "tertiary",
80
+ onClick: onClose
81
+ }, (0, _i18n.__)('Cancel')), (0, _react.createElement)(_components.Button, {
82
+ "aria-disabled": !isNameValid,
83
+ variant: "primary",
84
+ type: "submit"
85
+ }, (0, _i18n.__)('Save'))))));
86
+ }
87
+ //# sourceMappingURL=modal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_components","require","_compose","_i18n","_element","_a11y","_isEmptyString","_interopRequireDefault","BlockRenameModal","blockName","originalBlockName","onClose","onSave","editedBlockName","setEditedBlockName","useState","nameHasChanged","nameIsOriginal","nameIsEmpty","isEmptyString","isNameValid","autoSelectInputText","event","target","select","dialogDescription","useInstanceId","handleSubmit","message","sprintf","__","speak","_react","createElement","Modal","title","onRequestClose","overlayClassName","aria","describedby","focusOnMount","id","onSubmit","e","preventDefault","__experimentalVStack","spacing","TextControl","__nextHasNoMarginBottom","value","label","hideLabelFromVision","placeholder","onChange","onFocus","__experimentalHStack","justify","Button","variant","onClick","type"],"sources":["@wordpress/block-editor/src/components/block-rename/modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tButton,\n\tTextControl,\n\tModal,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { speak } from '@wordpress/a11y';\n\n/**\n * Internal dependencies\n */\nimport isEmptyString from './is-empty-string';\n\nexport default function BlockRenameModal( {\n\tblockName,\n\toriginalBlockName,\n\tonClose,\n\tonSave,\n} ) {\n\tconst [ editedBlockName, setEditedBlockName ] = useState( blockName );\n\n\tconst nameHasChanged = editedBlockName !== blockName;\n\tconst nameIsOriginal = editedBlockName === originalBlockName;\n\tconst nameIsEmpty = isEmptyString( editedBlockName );\n\n\tconst isNameValid = nameHasChanged || nameIsOriginal;\n\n\tconst autoSelectInputText = ( event ) => event.target.select();\n\n\tconst dialogDescription = useInstanceId(\n\t\tBlockRenameModal,\n\t\t`block-editor-rename-modal__description`\n\t);\n\n\tconst handleSubmit = () => {\n\t\tconst message =\n\t\t\tnameIsOriginal || nameIsEmpty\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: %s: new name/label for the block */\n\t\t\t\t\t\t__( 'Block name reset to: \"%s\".' ),\n\t\t\t\t\t\teditedBlockName\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t/* translators: %s: new name/label for the block */\n\t\t\t\t\t\t__( 'Block name changed to: \"%s\".' ),\n\t\t\t\t\t\teditedBlockName\n\t\t\t\t );\n\n\t\t// Must be assertive to immediately announce change.\n\t\tspeak( message, 'assertive' );\n\t\tonSave( editedBlockName );\n\n\t\t// Immediate close avoids ability to hit save multiple times.\n\t\tonClose();\n\t};\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ __( 'Rename' ) }\n\t\t\tonRequestClose={ onClose }\n\t\t\toverlayClassName=\"block-editor-block-rename-modal\"\n\t\t\taria={ {\n\t\t\t\tdescribedby: dialogDescription,\n\t\t\t} }\n\t\t\tfocusOnMount=\"firstContentElement\"\n\t\t>\n\t\t\t<p id={ dialogDescription }>\n\t\t\t\t{ __( 'Enter a custom name for this block.' ) }\n\t\t\t</p>\n\t\t\t<form\n\t\t\t\tonSubmit={ ( e ) => {\n\t\t\t\t\te.preventDefault();\n\n\t\t\t\t\tif ( ! isNameValid ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\thandleSubmit();\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<VStack spacing=\"3\">\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ editedBlockName }\n\t\t\t\t\t\tlabel={ __( 'Block name' ) }\n\t\t\t\t\t\thideLabelFromVision={ true }\n\t\t\t\t\t\tplaceholder={ originalBlockName }\n\t\t\t\t\t\tonChange={ setEditedBlockName }\n\t\t\t\t\t\tonFocus={ autoSelectInputText }\n\t\t\t\t\t/>\n\t\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t\t<Button variant=\"tertiary\" onClick={ onClose }>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\taria-disabled={ ! isNameValid }\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</form>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = BlockRenameControl;
8
+ var _react = require("react");
9
+ var _components = require("@wordpress/components");
10
+ var _data = require("@wordpress/data");
11
+ var _i18n = require("@wordpress/i18n");
12
+ var _element = require("@wordpress/element");
13
+ var _store = require("../../store");
14
+ var _ = require("..");
15
+ var _isEmptyString = _interopRequireDefault(require("./is-empty-string"));
16
+ var _modal = _interopRequireDefault(require("./modal"));
17
+ /**
18
+ * WordPress dependencies
19
+ */
20
+
21
+ /**
22
+ * Internal dependencies
23
+ */
24
+
25
+ function BlockRenameControl({
26
+ clientId
27
+ }) {
28
+ const [renamingBlock, setRenamingBlock] = (0, _element.useState)(false);
29
+ const {
30
+ metadata
31
+ } = (0, _data.useSelect)(select => {
32
+ const {
33
+ getBlockAttributes
34
+ } = select(_store.store);
35
+ const _metadata = getBlockAttributes(clientId)?.metadata;
36
+ return {
37
+ metadata: _metadata
38
+ };
39
+ }, [clientId]);
40
+ const {
41
+ updateBlockAttributes
42
+ } = (0, _data.useDispatch)(_store.store);
43
+ const customName = metadata?.name;
44
+ function onChange(newName) {
45
+ updateBlockAttributes([clientId], {
46
+ metadata: {
47
+ ...(metadata && metadata),
48
+ name: newName
49
+ }
50
+ });
51
+ }
52
+ const blockInformation = (0, _.useBlockDisplayInformation)(clientId);
53
+ return (0, _react.createElement)(_react.Fragment, null, (0, _react.createElement)(_components.MenuItem, {
54
+ onClick: () => {
55
+ setRenamingBlock(true);
56
+ },
57
+ "aria-expanded": renamingBlock,
58
+ "aria-haspopup": "dialog"
59
+ }, (0, _i18n.__)('Rename')), renamingBlock && (0, _react.createElement)(_modal.default, {
60
+ blockName: customName || '',
61
+ originalBlockName: blockInformation?.title,
62
+ onClose: () => setRenamingBlock(false),
63
+ onSave: newName => {
64
+ // If the new value is the block's original name (e.g. `Group`)
65
+ // or it is an empty string then assume the intent is to reset
66
+ // the value. Therefore reset the metadata.
67
+ if (newName === blockInformation?.title || (0, _isEmptyString.default)(newName)) {
68
+ newName = undefined;
69
+ }
70
+ onChange(newName);
71
+ }
72
+ }));
73
+ }
74
+ //# sourceMappingURL=rename-control.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_components","require","_data","_i18n","_element","_store","_","_isEmptyString","_interopRequireDefault","_modal","BlockRenameControl","clientId","renamingBlock","setRenamingBlock","useState","metadata","useSelect","select","getBlockAttributes","blockEditorStore","_metadata","updateBlockAttributes","useDispatch","customName","name","onChange","newName","blockInformation","useBlockDisplayInformation","_react","createElement","Fragment","MenuItem","onClick","__","default","blockName","originalBlockName","title","onClose","onSave","isEmptyString","undefined"],"sources":["@wordpress/block-editor/src/components/block-rename/rename-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { MenuItem } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { useBlockDisplayInformation } from '..';\nimport isEmptyString from './is-empty-string';\nimport BlockRenameModal from './modal';\n\nexport default function BlockRenameControl( { clientId } ) {\n\tconst [ renamingBlock, setRenamingBlock ] = useState( false );\n\n\tconst { metadata } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockAttributes } = select( blockEditorStore );\n\n\t\t\tconst _metadata = getBlockAttributes( clientId )?.metadata;\n\t\t\treturn {\n\t\t\t\tmetadata: _metadata,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\n\tconst customName = metadata?.name;\n\n\tfunction onChange( newName ) {\n\t\tupdateBlockAttributes( [ clientId ], {\n\t\t\tmetadata: {\n\t\t\t\t...( metadata && metadata ),\n\t\t\t\tname: newName,\n\t\t\t},\n\t\t} );\n\t}\n\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetRenamingBlock( true );\n\t\t\t\t} }\n\t\t\t\taria-expanded={ renamingBlock }\n\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t>\n\t\t\t\t{ __( 'Rename' ) }\n\t\t\t</MenuItem>\n\t\t\t{ renamingBlock && (\n\t\t\t\t<BlockRenameModal\n\t\t\t\t\tblockName={ customName || '' }\n\t\t\t\t\toriginalBlockName={ blockInformation?.title }\n\t\t\t\t\tonClose={ () => setRenamingBlock( false ) }\n\t\t\t\t\tonSave={ ( newName ) => {\n\t\t\t\t\t\t// If the new value is the block's original name (e.g. `Group`)\n\t\t\t\t\t\t// or it is an empty string then assume the intent is to reset\n\t\t\t\t\t\t// the value. Therefore reset the metadata.\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tnewName === blockInformation?.title ||\n\t\t\t\t\t\t\tisEmptyString( newName )\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tnewName = undefined;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tonChange( newName );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAKA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,CAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAC,sBAAA,CAAAP,OAAA;AACA,IAAAQ,MAAA,GAAAD,sBAAA,CAAAP,OAAA;AAdA;AACA;AACA;;AAMA;AACA;AACA;;AAMe,SAASS,kBAAkBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EAC1D,MAAM,CAAEC,aAAa,EAAEC,gBAAgB,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EAE7D,MAAM;IAAEC;EAAS,CAAC,GAAG,IAAAC,eAAS,EAC3BC,MAAM,IAAM;IACb,MAAM;MAAEC;IAAmB,CAAC,GAAGD,MAAM,CAAEE,YAAiB,CAAC;IAEzD,MAAMC,SAAS,GAAGF,kBAAkB,CAAEP,QAAS,CAAC,EAAEI,QAAQ;IAC1D,OAAO;MACNA,QAAQ,EAAEK;IACX,CAAC;EACF,CAAC,EACD,CAAET,QAAQ,CACX,CAAC;EAED,MAAM;IAAEU;EAAsB,CAAC,GAAG,IAAAC,iBAAW,EAAEH,YAAiB,CAAC;EAEjE,MAAMI,UAAU,GAAGR,QAAQ,EAAES,IAAI;EAEjC,SAASC,QAAQA,CAAEC,OAAO,EAAG;IAC5BL,qBAAqB,CAAE,CAAEV,QAAQ,CAAE,EAAE;MACpCI,QAAQ,EAAE;QACT,IAAKA,QAAQ,IAAIA,QAAQ,CAAE;QAC3BS,IAAI,EAAEE;MACP;IACD,CAAE,CAAC;EACJ;EAEA,MAAMC,gBAAgB,GAAG,IAAAC,4BAA0B,EAAEjB,QAAS,CAAC;EAE/D,OACC,IAAAkB,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAE,QAAA,QACC,IAAAF,MAAA,CAAAC,aAAA,EAAC9B,WAAA,CAAAgC,QAAQ;IACRC,OAAO,EAAGA,CAAA,KAAM;MACfpB,gBAAgB,CAAE,IAAK,CAAC;IACzB,CAAG;IACH,iBAAgBD,aAAe;IAC/B,iBAAc;EAAQ,GAEpB,IAAAsB,QAAE,EAAE,QAAS,CACN,CAAC,EACTtB,aAAa,IACd,IAAAiB,MAAA,CAAAC,aAAA,EAACrB,MAAA,CAAA0B,OAAgB;IAChBC,SAAS,EAAGb,UAAU,IAAI,EAAI;IAC9Bc,iBAAiB,EAAGV,gBAAgB,EAAEW,KAAO;IAC7CC,OAAO,EAAGA,CAAA,KAAM1B,gBAAgB,CAAE,KAAM,CAAG;IAC3C2B,MAAM,EAAKd,OAAO,IAAM;MACvB;MACA;MACA;MACA,IACCA,OAAO,KAAKC,gBAAgB,EAAEW,KAAK,IACnC,IAAAG,sBAAa,EAAEf,OAAQ,CAAC,EACvB;QACDA,OAAO,GAAGgB,SAAS;MACpB;MAEAjB,QAAQ,CAAEC,OAAQ,CAAC;IACpB;EAAG,CACH,CAED,CAAC;AAEL"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useBlockRename;
7
+ var _blocks = require("@wordpress/blocks");
8
+ /**
9
+ * WordPress dependencies
10
+ */
11
+
12
+ function useBlockRename(name) {
13
+ return {
14
+ canRename: (0, _blocks.getBlockSupport)(name, 'renaming', true)
15
+ };
16
+ }
17
+ //# sourceMappingURL=use-block-rename.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_blocks","require","useBlockRename","name","canRename","getBlockSupport"],"sources":["@wordpress/block-editor/src/components/block-rename/use-block-rename.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getBlockSupport } from '@wordpress/blocks';\n\nexport default function useBlockRename( name ) {\n\treturn {\n\t\tcanRename: getBlockSupport( name, 'renaming', true ),\n\t};\n}\n"],"mappings":";;;;;;AAGA,IAAAA,OAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGe,SAASC,cAAcA,CAAEC,IAAI,EAAG;EAC9C,OAAO;IACNC,SAAS,EAAE,IAAAC,uBAAe,EAAEF,IAAI,EAAE,UAAU,EAAE,IAAK;EACpD,CAAC;AACF"}