@wordpress/editor 14.6.0 → 14.7.1-next.5368f64a9.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 (354) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +41 -0
  3. package/build/bindings/post-meta.js +11 -8
  4. package/build/bindings/post-meta.js.map +1 -1
  5. package/build/components/block-manager/index.js +4 -1
  6. package/build/components/block-manager/index.js.map +1 -1
  7. package/build/components/block-settings-menu/content-only-settings-menu.js +5 -8
  8. package/build/components/block-settings-menu/content-only-settings-menu.js.map +1 -1
  9. package/build/components/document-bar/index.js +4 -4
  10. package/build/components/document-bar/index.js.map +1 -1
  11. package/build/components/editor/index.js +2 -2
  12. package/build/components/editor/index.js.map +1 -1
  13. package/build/components/editor-history/redo.js +4 -1
  14. package/build/components/editor-history/redo.js.map +1 -1
  15. package/build/components/editor-history/undo.js +4 -1
  16. package/build/components/editor-history/undo.js.map +1 -1
  17. package/build/components/editor-interface/index.js +2 -3
  18. package/build/components/editor-interface/index.js.map +1 -1
  19. package/build/components/error-boundary/index.js +4 -1
  20. package/build/components/error-boundary/index.js.map +1 -1
  21. package/build/components/global-styles-provider/index.js +3 -4
  22. package/build/components/global-styles-provider/index.js.map +1 -1
  23. package/build/components/header/index.js +4 -4
  24. package/build/components/header/index.js.map +1 -1
  25. package/build/components/index.js +8 -0
  26. package/build/components/index.js.map +1 -1
  27. package/build/components/inserter-sidebar/index.js +5 -10
  28. package/build/components/inserter-sidebar/index.js.map +1 -1
  29. package/build/components/local-autosave-monitor/index.js +5 -5
  30. package/build/components/local-autosave-monitor/index.js.map +1 -1
  31. package/build/components/page-attributes/parent.js +4 -1
  32. package/build/components/page-attributes/parent.js.map +1 -1
  33. package/build/components/plugin-preview-menu-item/index.js +57 -0
  34. package/build/components/plugin-preview-menu-item/index.js.map +1 -0
  35. package/build/components/post-actions/index.js +5 -8
  36. package/build/components/post-actions/index.js.map +1 -1
  37. package/build/components/post-excerpt/panel.js +4 -1
  38. package/build/components/post-excerpt/panel.js.map +1 -1
  39. package/build/components/post-featured-image/index.js +12 -3
  40. package/build/components/post-featured-image/index.js.map +1 -1
  41. package/build/components/post-format/index.js +4 -1
  42. package/build/components/post-format/index.js.map +1 -1
  43. package/build/components/post-last-revision/index.js +4 -1
  44. package/build/components/post-last-revision/index.js.map +1 -1
  45. package/build/components/post-locked-modal/index.js +12 -3
  46. package/build/components/post-locked-modal/index.js.map +1 -1
  47. package/build/components/post-publish-panel/index.js +4 -1
  48. package/build/components/post-publish-panel/index.js.map +1 -1
  49. package/build/components/post-publish-panel/maybe-post-format-panel.js +4 -1
  50. package/build/components/post-publish-panel/maybe-post-format-panel.js.map +1 -1
  51. package/build/components/post-publish-panel/maybe-upload-media.js +158 -33
  52. package/build/components/post-publish-panel/maybe-upload-media.js.map +1 -1
  53. package/build/components/post-publish-panel/media-util.js +79 -0
  54. package/build/components/post-publish-panel/media-util.js.map +1 -0
  55. package/build/components/post-status/index.js +4 -2
  56. package/build/components/post-status/index.js.map +1 -1
  57. package/build/components/post-taxonomies/hierarchical-term-selector.js +4 -1
  58. package/build/components/post-taxonomies/hierarchical-term-selector.js.map +1 -1
  59. package/build/components/post-taxonomies/most-used-terms.js +4 -1
  60. package/build/components/post-taxonomies/most-used-terms.js.map +1 -1
  61. package/build/components/post-template/block-theme.js +13 -4
  62. package/build/components/post-template/block-theme.js.map +1 -1
  63. package/build/components/post-template/classic-theme.js +4 -1
  64. package/build/components/post-template/classic-theme.js.map +1 -1
  65. package/build/components/post-title/index.js +32 -46
  66. package/build/components/post-title/index.js.map +1 -1
  67. package/build/components/post-trash/check.js +2 -1
  68. package/build/components/post-trash/check.js.map +1 -1
  69. package/build/components/post-trash/index.js +22 -8
  70. package/build/components/post-trash/index.js.map +1 -1
  71. package/build/components/post-url/index.js +4 -1
  72. package/build/components/post-url/index.js.map +1 -1
  73. package/build/components/preferences-modal/index.js +28 -1
  74. package/build/components/preferences-modal/index.js.map +1 -1
  75. package/build/components/preview-dropdown/index.js +26 -14
  76. package/build/components/preview-dropdown/index.js.map +1 -1
  77. package/build/components/provider/index.js +34 -8
  78. package/build/components/provider/index.js.map +1 -1
  79. package/build/components/provider/use-block-editor-settings.js +14 -10
  80. package/build/components/provider/use-block-editor-settings.js.map +1 -1
  81. package/build/components/save-publish-panels/index.js +8 -2
  82. package/build/components/save-publish-panels/index.js.map +1 -1
  83. package/build/components/sidebar/post-summary.js +3 -0
  84. package/build/components/sidebar/post-summary.js.map +1 -1
  85. package/build/components/start-page-options/index.js +16 -19
  86. package/build/components/start-page-options/index.js.map +1 -1
  87. package/build/components/start-template-options/index.js +1 -0
  88. package/build/components/start-template-options/index.js.map +1 -1
  89. package/build/components/table-of-contents/index.js +1 -0
  90. package/build/components/table-of-contents/index.js.map +1 -1
  91. package/build/components/text-editor/index.js +1 -0
  92. package/build/components/text-editor/index.js.map +1 -1
  93. package/build/components/visual-editor/edit-template-blocks-notification.js +1 -1
  94. package/build/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
  95. package/build/components/visual-editor/index.js +1 -6
  96. package/build/components/visual-editor/index.js.map +1 -1
  97. package/build/dataviews/actions/export-pattern.js +2 -0
  98. package/build/dataviews/actions/export-pattern.js.map +1 -1
  99. package/build/dataviews/actions/permanently-delete-post.js +2 -0
  100. package/build/dataviews/actions/permanently-delete-post.js.map +1 -1
  101. package/build/dataviews/actions/reset-post.js +2 -0
  102. package/build/dataviews/actions/reset-post.js.map +1 -1
  103. package/build/dataviews/actions/trash-post.js +2 -0
  104. package/build/dataviews/actions/trash-post.js.map +1 -1
  105. package/build/dataviews/actions/view-post.js +1 -1
  106. package/build/dataviews/actions/view-post.js.map +1 -1
  107. package/build/private-apis.js +0 -2
  108. package/build/private-apis.js.map +1 -1
  109. package/build/store/private-actions.js +1 -1
  110. package/build/store/private-actions.js.map +1 -1
  111. package/build/store/selectors.js +7 -3
  112. package/build/store/selectors.js.map +1 -1
  113. package/build-module/bindings/post-meta.js +11 -8
  114. package/build-module/bindings/post-meta.js.map +1 -1
  115. package/build-module/components/block-manager/index.js +4 -1
  116. package/build-module/components/block-manager/index.js.map +1 -1
  117. package/build-module/components/block-settings-menu/content-only-settings-menu.js +6 -9
  118. package/build-module/components/block-settings-menu/content-only-settings-menu.js.map +1 -1
  119. package/build-module/components/document-bar/index.js +4 -4
  120. package/build-module/components/document-bar/index.js.map +1 -1
  121. package/build-module/components/editor/index.js +2 -2
  122. package/build-module/components/editor/index.js.map +1 -1
  123. package/build-module/components/editor-history/redo.js +4 -1
  124. package/build-module/components/editor-history/redo.js.map +1 -1
  125. package/build-module/components/editor-history/undo.js +4 -1
  126. package/build-module/components/editor-history/undo.js.map +1 -1
  127. package/build-module/components/editor-interface/index.js +2 -3
  128. package/build-module/components/editor-interface/index.js.map +1 -1
  129. package/build-module/components/error-boundary/index.js +4 -1
  130. package/build-module/components/error-boundary/index.js.map +1 -1
  131. package/build-module/components/global-styles-provider/index.js +3 -4
  132. package/build-module/components/global-styles-provider/index.js.map +1 -1
  133. package/build-module/components/header/index.js +4 -4
  134. package/build-module/components/header/index.js.map +1 -1
  135. package/build-module/components/index.js +1 -0
  136. package/build-module/components/index.js.map +1 -1
  137. package/build-module/components/inserter-sidebar/index.js +5 -10
  138. package/build-module/components/inserter-sidebar/index.js.map +1 -1
  139. package/build-module/components/local-autosave-monitor/index.js +5 -5
  140. package/build-module/components/local-autosave-monitor/index.js.map +1 -1
  141. package/build-module/components/page-attributes/parent.js +4 -1
  142. package/build-module/components/page-attributes/parent.js.map +1 -1
  143. package/build-module/components/plugin-preview-menu-item/index.js +52 -0
  144. package/build-module/components/plugin-preview-menu-item/index.js.map +1 -0
  145. package/build-module/components/post-actions/index.js +5 -8
  146. package/build-module/components/post-actions/index.js.map +1 -1
  147. package/build-module/components/post-excerpt/panel.js +4 -1
  148. package/build-module/components/post-excerpt/panel.js.map +1 -1
  149. package/build-module/components/post-featured-image/index.js +12 -3
  150. package/build-module/components/post-featured-image/index.js.map +1 -1
  151. package/build-module/components/post-format/index.js +4 -1
  152. package/build-module/components/post-format/index.js.map +1 -1
  153. package/build-module/components/post-last-revision/index.js +4 -1
  154. package/build-module/components/post-last-revision/index.js.map +1 -1
  155. package/build-module/components/post-locked-modal/index.js +12 -3
  156. package/build-module/components/post-locked-modal/index.js.map +1 -1
  157. package/build-module/components/post-publish-panel/index.js +4 -1
  158. package/build-module/components/post-publish-panel/index.js.map +1 -1
  159. package/build-module/components/post-publish-panel/maybe-post-format-panel.js +4 -1
  160. package/build-module/components/post-publish-panel/maybe-post-format-panel.js.map +1 -1
  161. package/build-module/components/post-publish-panel/maybe-upload-media.js +157 -32
  162. package/build-module/components/post-publish-panel/maybe-upload-media.js.map +1 -1
  163. package/build-module/components/post-publish-panel/media-util.js +72 -0
  164. package/build-module/components/post-publish-panel/media-util.js.map +1 -0
  165. package/build-module/components/post-status/index.js +4 -2
  166. package/build-module/components/post-status/index.js.map +1 -1
  167. package/build-module/components/post-taxonomies/hierarchical-term-selector.js +4 -1
  168. package/build-module/components/post-taxonomies/hierarchical-term-selector.js.map +1 -1
  169. package/build-module/components/post-taxonomies/most-used-terms.js +4 -1
  170. package/build-module/components/post-taxonomies/most-used-terms.js.map +1 -1
  171. package/build-module/components/post-template/block-theme.js +13 -4
  172. package/build-module/components/post-template/block-theme.js.map +1 -1
  173. package/build-module/components/post-template/classic-theme.js +4 -1
  174. package/build-module/components/post-template/classic-theme.js.map +1 -1
  175. package/build-module/components/post-title/index.js +33 -47
  176. package/build-module/components/post-title/index.js.map +1 -1
  177. package/build-module/components/post-trash/check.js +2 -1
  178. package/build-module/components/post-trash/check.js.map +1 -1
  179. package/build-module/components/post-trash/index.js +23 -11
  180. package/build-module/components/post-trash/index.js.map +1 -1
  181. package/build-module/components/post-url/index.js +4 -1
  182. package/build-module/components/post-url/index.js.map +1 -1
  183. package/build-module/components/preferences-modal/index.js +28 -1
  184. package/build-module/components/preferences-modal/index.js.map +1 -1
  185. package/build-module/components/preview-dropdown/index.js +26 -14
  186. package/build-module/components/preview-dropdown/index.js.map +1 -1
  187. package/build-module/components/provider/index.js +35 -9
  188. package/build-module/components/provider/index.js.map +1 -1
  189. package/build-module/components/provider/use-block-editor-settings.js +15 -11
  190. package/build-module/components/provider/use-block-editor-settings.js.map +1 -1
  191. package/build-module/components/save-publish-panels/index.js +8 -2
  192. package/build-module/components/save-publish-panels/index.js.map +1 -1
  193. package/build-module/components/sidebar/post-summary.js +3 -0
  194. package/build-module/components/sidebar/post-summary.js.map +1 -1
  195. package/build-module/components/start-page-options/index.js +17 -21
  196. package/build-module/components/start-page-options/index.js.map +1 -1
  197. package/build-module/components/start-template-options/index.js +1 -0
  198. package/build-module/components/start-template-options/index.js.map +1 -1
  199. package/build-module/components/table-of-contents/index.js +1 -0
  200. package/build-module/components/table-of-contents/index.js.map +1 -1
  201. package/build-module/components/text-editor/index.js +1 -0
  202. package/build-module/components/text-editor/index.js.map +1 -1
  203. package/build-module/components/visual-editor/edit-template-blocks-notification.js +1 -1
  204. package/build-module/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
  205. package/build-module/components/visual-editor/index.js +1 -6
  206. package/build-module/components/visual-editor/index.js.map +1 -1
  207. package/build-module/dataviews/actions/export-pattern.js +2 -0
  208. package/build-module/dataviews/actions/export-pattern.js.map +1 -1
  209. package/build-module/dataviews/actions/permanently-delete-post.js +3 -0
  210. package/build-module/dataviews/actions/permanently-delete-post.js.map +1 -1
  211. package/build-module/dataviews/actions/reset-post.js +2 -0
  212. package/build-module/dataviews/actions/reset-post.js.map +1 -1
  213. package/build-module/dataviews/actions/trash-post.js +2 -0
  214. package/build-module/dataviews/actions/trash-post.js.map +1 -1
  215. package/build-module/dataviews/actions/view-post.js +2 -2
  216. package/build-module/dataviews/actions/view-post.js.map +1 -1
  217. package/build-module/private-apis.js +0 -2
  218. package/build-module/private-apis.js.map +1 -1
  219. package/build-module/store/private-actions.js +1 -1
  220. package/build-module/store/private-actions.js.map +1 -1
  221. package/build-module/store/selectors.js +6 -2
  222. package/build-module/store/selectors.js.map +1 -1
  223. package/build-style/style-rtl.css +13 -8
  224. package/build-style/style.css +13 -8
  225. package/build-types/bindings/post-meta.d.ts +0 -3
  226. package/build-types/bindings/post-meta.d.ts.map +1 -1
  227. package/build-types/components/block-settings-menu/content-only-settings-menu.d.ts.map +1 -1
  228. package/build-types/components/editor-history/redo.d.ts.map +1 -1
  229. package/build-types/components/editor-history/undo.d.ts.map +1 -1
  230. package/build-types/components/editor-interface/index.d.ts.map +1 -1
  231. package/build-types/components/error-boundary/index.d.ts.map +1 -1
  232. package/build-types/components/global-styles-provider/index.d.ts.map +1 -1
  233. package/build-types/components/header/back-button.d.ts.map +1 -1
  234. package/build-types/components/index.d.ts +1 -0
  235. package/build-types/components/index.d.ts.map +1 -1
  236. package/build-types/components/inserter-sidebar/index.d.ts.map +1 -1
  237. package/build-types/components/more-menu/tools-more-menu-group.d.ts.map +1 -1
  238. package/build-types/components/more-menu/view-more-menu-group.d.ts.map +1 -1
  239. package/build-types/components/page-attributes/parent.d.ts.map +1 -1
  240. package/build-types/components/plugin-document-setting-panel/index.d.ts.map +1 -1
  241. package/build-types/components/plugin-post-publish-panel/index.d.ts.map +1 -1
  242. package/build-types/components/plugin-post-status-info/index.d.ts.map +1 -1
  243. package/build-types/components/plugin-pre-publish-panel/index.d.ts.map +1 -1
  244. package/build-types/components/plugin-preview-menu-item/index.d.ts +3 -0
  245. package/build-types/components/plugin-preview-menu-item/index.d.ts.map +1 -0
  246. package/build-types/components/post-actions/index.d.ts.map +1 -1
  247. package/build-types/components/post-excerpt/plugin.d.ts.map +1 -1
  248. package/build-types/components/post-format/index.d.ts.map +1 -1
  249. package/build-types/components/post-last-revision/index.d.ts.map +1 -1
  250. package/build-types/components/post-locked-modal/index.d.ts.map +1 -1
  251. package/build-types/components/post-publish-panel/index.d.ts.map +1 -1
  252. package/build-types/components/post-publish-panel/maybe-post-format-panel.d.ts.map +1 -1
  253. package/build-types/components/post-publish-panel/maybe-upload-media.d.ts +1 -1
  254. package/build-types/components/post-publish-panel/maybe-upload-media.d.ts.map +1 -1
  255. package/build-types/components/post-publish-panel/media-util.d.ts +20 -0
  256. package/build-types/components/post-publish-panel/media-util.d.ts.map +1 -0
  257. package/build-types/components/post-status/index.d.ts.map +1 -1
  258. package/build-types/components/post-taxonomies/hierarchical-term-selector.d.ts.map +1 -1
  259. package/build-types/components/post-taxonomies/most-used-terms.d.ts.map +1 -1
  260. package/build-types/components/post-template/block-theme.d.ts.map +1 -1
  261. package/build-types/components/post-template/classic-theme.d.ts.map +1 -1
  262. package/build-types/components/post-trash/check.d.ts.map +1 -1
  263. package/build-types/components/post-trash/index.d.ts +4 -1
  264. package/build-types/components/post-trash/index.d.ts.map +1 -1
  265. package/build-types/components/post-url/index.d.ts.map +1 -1
  266. package/build-types/components/preferences-modal/enable-plugin-document-setting-panel.d.ts.map +1 -1
  267. package/build-types/components/preferences-modal/index.d.ts.map +1 -1
  268. package/build-types/components/preview-dropdown/index.d.ts.map +1 -1
  269. package/build-types/components/provider/index.d.ts.map +1 -1
  270. package/build-types/components/provider/use-block-editor-settings.d.ts.map +1 -1
  271. package/build-types/components/save-publish-panels/index.d.ts.map +1 -1
  272. package/build-types/components/sidebar/post-summary.d.ts.map +1 -1
  273. package/build-types/components/start-page-options/index.d.ts +1 -0
  274. package/build-types/components/start-page-options/index.d.ts.map +1 -1
  275. package/build-types/components/start-template-options/index.d.ts.map +1 -1
  276. package/build-types/components/text-editor/index.d.ts.map +1 -1
  277. package/build-types/components/visual-editor/edit-template-blocks-notification.d.ts.map +1 -1
  278. package/build-types/components/visual-editor/index.d.ts.map +1 -1
  279. package/build-types/dataviews/actions/export-pattern.d.ts.map +1 -1
  280. package/build-types/dataviews/actions/permanently-delete-post.d.ts.map +1 -1
  281. package/build-types/dataviews/actions/reset-post.d.ts.map +1 -1
  282. package/build-types/dataviews/actions/trash-post.d.ts.map +1 -1
  283. package/build-types/private-apis.d.ts.map +1 -1
  284. package/build-types/store/private-actions.d.ts.map +1 -1
  285. package/build-types/store/selectors.d.ts +8 -8
  286. package/build-types/store/selectors.d.ts.map +1 -1
  287. package/package.json +36 -36
  288. package/src/bindings/post-meta.js +12 -6
  289. package/src/components/block-manager/index.js +2 -0
  290. package/src/components/block-settings-menu/content-only-settings-menu.js +5 -9
  291. package/src/components/create-template-part-modal/style.scss +1 -1
  292. package/src/components/document-bar/index.js +4 -4
  293. package/src/components/document-outline/style.scss +1 -1
  294. package/src/components/editor/index.js +1 -1
  295. package/src/components/editor-history/redo.js +2 -0
  296. package/src/components/editor-history/undo.js +2 -0
  297. package/src/components/editor-interface/index.js +2 -4
  298. package/src/components/error-boundary/index.js +6 -1
  299. package/src/components/global-styles-provider/index.js +11 -7
  300. package/src/components/header/index.js +3 -3
  301. package/src/components/header/style.scss +6 -3
  302. package/src/components/index.js +1 -0
  303. package/src/components/inserter-sidebar/index.js +6 -8
  304. package/src/components/local-autosave-monitor/index.js +6 -6
  305. package/src/components/page-attributes/parent.js +5 -4
  306. package/src/components/plugin-preview-menu-item/index.js +52 -0
  307. package/src/components/post-actions/index.js +8 -14
  308. package/src/components/post-card-panel/style.scss +1 -1
  309. package/src/components/post-excerpt/panel.js +2 -0
  310. package/src/components/post-featured-image/index.js +6 -0
  311. package/src/components/post-featured-image/style.scss +1 -2
  312. package/src/components/post-format/index.js +2 -0
  313. package/src/components/post-last-revision/index.js +2 -0
  314. package/src/components/post-locked-modal/index.js +14 -2
  315. package/src/components/post-locked-modal/style.scss +1 -1
  316. package/src/components/post-publish-panel/index.js +2 -0
  317. package/src/components/post-publish-panel/maybe-post-format-panel.js +2 -0
  318. package/src/components/post-publish-panel/maybe-upload-media.js +145 -36
  319. package/src/components/post-publish-panel/media-util.js +87 -0
  320. package/src/components/post-publish-panel/style.scss +3 -1
  321. package/src/components/post-publish-panel/test/media-util.js +118 -0
  322. package/src/components/post-status/index.js +3 -2
  323. package/src/components/post-taxonomies/hierarchical-term-selector.js +2 -0
  324. package/src/components/post-taxonomies/most-used-terms.js +2 -0
  325. package/src/components/post-template/block-theme.js +15 -9
  326. package/src/components/post-template/classic-theme.js +2 -0
  327. package/src/components/post-title/index.js +30 -41
  328. package/src/components/post-trash/check.js +5 -2
  329. package/src/components/post-trash/index.js +23 -12
  330. package/src/components/post-url/index.js +2 -0
  331. package/src/components/preferences-modal/index.js +227 -172
  332. package/src/components/preview-dropdown/index.js +28 -20
  333. package/src/components/provider/index.js +42 -10
  334. package/src/components/provider/use-block-editor-settings.js +16 -11
  335. package/src/components/resizable-editor/style.scss +2 -2
  336. package/src/components/save-publish-panels/index.js +4 -0
  337. package/src/components/sidebar/post-summary.js +4 -0
  338. package/src/components/start-page-options/index.js +28 -26
  339. package/src/components/start-template-options/index.js +5 -1
  340. package/src/components/table-of-contents/index.js +1 -0
  341. package/src/components/text-editor/index.js +1 -0
  342. package/src/components/text-editor/style.scss +1 -1
  343. package/src/components/visual-editor/edit-template-blocks-notification.js +4 -1
  344. package/src/components/visual-editor/index.js +2 -9
  345. package/src/dataviews/actions/export-pattern.tsx +2 -0
  346. package/src/dataviews/actions/permanently-delete-post.tsx +2 -0
  347. package/src/dataviews/actions/reset-post.tsx +2 -0
  348. package/src/dataviews/actions/trash-post.tsx +2 -0
  349. package/src/dataviews/actions/view-post.tsx +2 -2
  350. package/src/private-apis.js +0 -2
  351. package/src/store/private-actions.js +3 -1
  352. package/src/store/selectors.js +9 -3
  353. package/tsconfig.json +1 -0
  354. package/tsconfig.tsbuildinfo +1 -1
@@ -28,6 +28,7 @@ var _postsPerPage = _interopRequireDefault(require("../posts-per-page"));
28
28
  var _siteDiscussion = _interopRequireDefault(require("../site-discussion"));
29
29
  var _store = require("../../store");
30
30
  var _postLastRevision = require("../post-last-revision");
31
+ var _postTrash = _interopRequireDefault(require("../post-trash"));
31
32
  var _jsxRuntime = require("react/jsx-runtime");
32
33
  /**
33
34
  * WordPress dependencies
@@ -81,6 +82,8 @@ function PostSummary({
81
82
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalVStack, {
82
83
  spacing: 1,
83
84
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_postStatus.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_panel7.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_panel9.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_panel.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_panel8.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_panel3.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_postLastRevision.PrivatePostLastRevision, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_panel2.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_postSyncStatus.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_blogTitle.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_postsPerPage.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_siteDiscussion.default, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_panel6.default, {})]
85
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_postTrash.default, {
86
+ onActionPerformed: onActionPerformed
84
87
  }), fills]
85
88
  })]
86
89
  })
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_data","_pluginPostStatusInfo","_interopRequireDefault","_panel","_postCardPanel","_postContentInformation","_panel2","_panel3","_panel4","_panel5","_panel6","_postLastEditedPanel","_postPanelSection","_panel7","_postStatus","_postSyncStatus","_panel8","_panel9","_blogTitle","_postsPerPage","_siteDiscussion","_store","_postLastRevision","_jsxRuntime","PANEL_NAME","PostSummary","onActionPerformed","isRemovedPostStatusPanel","postType","postId","useSelect","select","isEditorPanelRemoved","getCurrentPostType","getCurrentPostId","editorStore","jsx","default","className","children","Slot","fills","Fragment","jsxs","__experimentalVStack","spacing","withPanelBody","PrivatePostExcerptPanel","PrivatePostLastRevision"],"sources":["@wordpress/editor/src/components/sidebar/post-summary.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalVStack as VStack } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport PluginPostStatusInfo from '../plugin-post-status-info';\nimport PostAuthorPanel from '../post-author/panel';\nimport PostCardPanel from '../post-card-panel';\nimport PostContentInformation from '../post-content-information';\nimport PageAttributesPanel from '../page-attributes/panel';\nimport PostDiscussionPanel from '../post-discussion/panel';\nimport { PrivatePostExcerptPanel as PostExcerptPanel } from '../post-excerpt/panel';\nimport PostFeaturedImagePanel from '../post-featured-image/panel';\nimport PostFormatPanel from '../post-format/panel';\nimport PostLastEditedPanel from '../post-last-edited-panel';\nimport PostPanelSection from '../post-panel-section';\nimport PostSchedulePanel from '../post-schedule/panel';\nimport PostStatusPanel from '../post-status';\nimport PostSyncStatus from '../post-sync-status';\nimport PostTemplatePanel from '../post-template/panel';\nimport PostURLPanel from '../post-url/panel';\nimport BlogTitle from '../blog-title';\nimport PostsPerPage from '../posts-per-page';\nimport SiteDiscussion from '../site-discussion';\nimport { store as editorStore } from '../../store';\nimport { PrivatePostLastRevision } from '../post-last-revision';\n\n/**\n * Module Constants\n */\nconst PANEL_NAME = 'post-status';\n\nexport default function PostSummary( { onActionPerformed } ) {\n\tconst { isRemovedPostStatusPanel, postType, postId } = useSelect(\n\t\t( select ) => {\n\t\t\t// We use isEditorPanelRemoved to hide the panel if it was programatically removed. We do\n\t\t\t// not use isEditorPanelEnabled since this panel should not be disabled through the UI.\n\t\t\tconst {\n\t\t\t\tisEditorPanelRemoved,\n\t\t\t\tgetCurrentPostType,\n\t\t\t\tgetCurrentPostId,\n\t\t\t} = select( editorStore );\n\t\t\treturn {\n\t\t\t\tisRemovedPostStatusPanel: isEditorPanelRemoved( PANEL_NAME ),\n\t\t\t\tpostType: getCurrentPostType(),\n\t\t\t\tpostId: getCurrentPostId(),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\treturn (\n\t\t<PostPanelSection className=\"editor-post-summary\">\n\t\t\t<PluginPostStatusInfo.Slot>\n\t\t\t\t{ ( fills ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t\t\t\t<PostCardPanel\n\t\t\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\t\t\tpostId={ postId }\n\t\t\t\t\t\t\t\tonActionPerformed={ onActionPerformed }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<PostFeaturedImagePanel withPanelBody={ false } />\n\t\t\t\t\t\t\t<PostExcerptPanel />\n\t\t\t\t\t\t\t<VStack spacing={ 1 }>\n\t\t\t\t\t\t\t\t<PostContentInformation />\n\t\t\t\t\t\t\t\t<PostLastEditedPanel />\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t{ ! isRemovedPostStatusPanel && (\n\t\t\t\t\t\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t\t\t\t\t\t<VStack spacing={ 1 }>\n\t\t\t\t\t\t\t\t\t\t<PostStatusPanel />\n\t\t\t\t\t\t\t\t\t\t<PostSchedulePanel />\n\t\t\t\t\t\t\t\t\t\t<PostURLPanel />\n\t\t\t\t\t\t\t\t\t\t<PostAuthorPanel />\n\t\t\t\t\t\t\t\t\t\t<PostTemplatePanel />\n\t\t\t\t\t\t\t\t\t\t<PostDiscussionPanel />\n\t\t\t\t\t\t\t\t\t\t<PrivatePostLastRevision />\n\t\t\t\t\t\t\t\t\t\t<PageAttributesPanel />\n\t\t\t\t\t\t\t\t\t\t<PostSyncStatus />\n\t\t\t\t\t\t\t\t\t\t<BlogTitle />\n\t\t\t\t\t\t\t\t\t\t<PostsPerPage />\n\t\t\t\t\t\t\t\t\t\t<SiteDiscussion />\n\t\t\t\t\t\t\t\t\t\t<PostFormatPanel />\n\t\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t\t\t{ fills }\n\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</VStack>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PluginPostStatusInfo.Slot>\n\t\t</PostPanelSection>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_components","require","_data","_pluginPostStatusInfo","_interopRequireDefault","_panel","_postCardPanel","_postContentInformation","_panel2","_panel3","_panel4","_panel5","_panel6","_postLastEditedPanel","_postPanelSection","_panel7","_postStatus","_postSyncStatus","_panel8","_panel9","_blogTitle","_postsPerPage","_siteDiscussion","_store","_postLastRevision","_postTrash","_jsxRuntime","PANEL_NAME","PostSummary","onActionPerformed","isRemovedPostStatusPanel","postType","postId","useSelect","select","isEditorPanelRemoved","getCurrentPostType","getCurrentPostId","editorStore","jsx","default","className","children","Slot","fills","Fragment","jsxs","__experimentalVStack","spacing","withPanelBody","PrivatePostExcerptPanel","PrivatePostLastRevision"],"sources":["@wordpress/editor/src/components/sidebar/post-summary.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalVStack as VStack } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport PluginPostStatusInfo from '../plugin-post-status-info';\nimport PostAuthorPanel from '../post-author/panel';\nimport PostCardPanel from '../post-card-panel';\nimport PostContentInformation from '../post-content-information';\nimport PageAttributesPanel from '../page-attributes/panel';\nimport PostDiscussionPanel from '../post-discussion/panel';\nimport { PrivatePostExcerptPanel as PostExcerptPanel } from '../post-excerpt/panel';\nimport PostFeaturedImagePanel from '../post-featured-image/panel';\nimport PostFormatPanel from '../post-format/panel';\nimport PostLastEditedPanel from '../post-last-edited-panel';\nimport PostPanelSection from '../post-panel-section';\nimport PostSchedulePanel from '../post-schedule/panel';\nimport PostStatusPanel from '../post-status';\nimport PostSyncStatus from '../post-sync-status';\nimport PostTemplatePanel from '../post-template/panel';\nimport PostURLPanel from '../post-url/panel';\nimport BlogTitle from '../blog-title';\nimport PostsPerPage from '../posts-per-page';\nimport SiteDiscussion from '../site-discussion';\nimport { store as editorStore } from '../../store';\nimport { PrivatePostLastRevision } from '../post-last-revision';\nimport PostTrash from '../post-trash';\n\n/**\n * Module Constants\n */\nconst PANEL_NAME = 'post-status';\n\nexport default function PostSummary( { onActionPerformed } ) {\n\tconst { isRemovedPostStatusPanel, postType, postId } = useSelect(\n\t\t( select ) => {\n\t\t\t// We use isEditorPanelRemoved to hide the panel if it was programatically removed. We do\n\t\t\t// not use isEditorPanelEnabled since this panel should not be disabled through the UI.\n\t\t\tconst {\n\t\t\t\tisEditorPanelRemoved,\n\t\t\t\tgetCurrentPostType,\n\t\t\t\tgetCurrentPostId,\n\t\t\t} = select( editorStore );\n\t\t\treturn {\n\t\t\t\tisRemovedPostStatusPanel: isEditorPanelRemoved( PANEL_NAME ),\n\t\t\t\tpostType: getCurrentPostType(),\n\t\t\t\tpostId: getCurrentPostId(),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\treturn (\n\t\t<PostPanelSection className=\"editor-post-summary\">\n\t\t\t<PluginPostStatusInfo.Slot>\n\t\t\t\t{ ( fills ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t\t\t\t<PostCardPanel\n\t\t\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\t\t\tpostId={ postId }\n\t\t\t\t\t\t\t\tonActionPerformed={ onActionPerformed }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<PostFeaturedImagePanel withPanelBody={ false } />\n\t\t\t\t\t\t\t<PostExcerptPanel />\n\t\t\t\t\t\t\t<VStack spacing={ 1 }>\n\t\t\t\t\t\t\t\t<PostContentInformation />\n\t\t\t\t\t\t\t\t<PostLastEditedPanel />\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t{ ! isRemovedPostStatusPanel && (\n\t\t\t\t\t\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t\t\t\t\t\t<VStack spacing={ 1 }>\n\t\t\t\t\t\t\t\t\t\t<PostStatusPanel />\n\t\t\t\t\t\t\t\t\t\t<PostSchedulePanel />\n\t\t\t\t\t\t\t\t\t\t<PostURLPanel />\n\t\t\t\t\t\t\t\t\t\t<PostAuthorPanel />\n\t\t\t\t\t\t\t\t\t\t<PostTemplatePanel />\n\t\t\t\t\t\t\t\t\t\t<PostDiscussionPanel />\n\t\t\t\t\t\t\t\t\t\t<PrivatePostLastRevision />\n\t\t\t\t\t\t\t\t\t\t<PageAttributesPanel />\n\t\t\t\t\t\t\t\t\t\t<PostSyncStatus />\n\t\t\t\t\t\t\t\t\t\t<BlogTitle />\n\t\t\t\t\t\t\t\t\t\t<PostsPerPage />\n\t\t\t\t\t\t\t\t\t\t<SiteDiscussion />\n\t\t\t\t\t\t\t\t\t\t<PostFormatPanel />\n\t\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t\t\t<PostTrash\n\t\t\t\t\t\t\t\t\t\tonActionPerformed={ onActionPerformed }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{ fills }\n\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</VStack>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PluginPostStatusInfo.Slot>\n\t\t</PostPanelSection>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAKA,IAAAE,qBAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,MAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,cAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,uBAAA,GAAAH,sBAAA,CAAAH,OAAA;AACA,IAAAO,OAAA,GAAAJ,sBAAA,CAAAH,OAAA;AACA,IAAAQ,OAAA,GAAAL,sBAAA,CAAAH,OAAA;AACA,IAAAS,OAAA,GAAAT,OAAA;AACA,IAAAU,OAAA,GAAAP,sBAAA,CAAAH,OAAA;AACA,IAAAW,OAAA,GAAAR,sBAAA,CAAAH,OAAA;AACA,IAAAY,oBAAA,GAAAT,sBAAA,CAAAH,OAAA;AACA,IAAAa,iBAAA,GAAAV,sBAAA,CAAAH,OAAA;AACA,IAAAc,OAAA,GAAAX,sBAAA,CAAAH,OAAA;AACA,IAAAe,WAAA,GAAAZ,sBAAA,CAAAH,OAAA;AACA,IAAAgB,eAAA,GAAAb,sBAAA,CAAAH,OAAA;AACA,IAAAiB,OAAA,GAAAd,sBAAA,CAAAH,OAAA;AACA,IAAAkB,OAAA,GAAAf,sBAAA,CAAAH,OAAA;AACA,IAAAmB,UAAA,GAAAhB,sBAAA,CAAAH,OAAA;AACA,IAAAoB,aAAA,GAAAjB,sBAAA,CAAAH,OAAA;AACA,IAAAqB,eAAA,GAAAlB,sBAAA,CAAAH,OAAA;AACA,IAAAsB,MAAA,GAAAtB,OAAA;AACA,IAAAuB,iBAAA,GAAAvB,OAAA;AACA,IAAAwB,UAAA,GAAArB,sBAAA,CAAAH,OAAA;AAAsC,IAAAyB,WAAA,GAAAzB,OAAA;AA9BtC;AACA;AACA;;AAIA;AACA;AACA;;AAwBA;AACA;AACA,GACA,MAAM0B,UAAU,GAAG,aAAa;AAEjB,SAASC,WAAWA,CAAE;EAAEC;AAAkB,CAAC,EAAG;EAC5D,MAAM;IAAEC,wBAAwB;IAAEC,QAAQ;IAAEC;EAAO,CAAC,GAAG,IAAAC,eAAS,EAC7DC,MAAM,IAAM;IACb;IACA;IACA,MAAM;MACLC,oBAAoB;MACpBC,kBAAkB;MAClBC;IACD,CAAC,GAAGH,MAAM,CAAEI,YAAY,CAAC;IACzB,OAAO;MACNR,wBAAwB,EAAEK,oBAAoB,CAAER,UAAW,CAAC;MAC5DI,QAAQ,EAAEK,kBAAkB,CAAC,CAAC;MAC9BJ,MAAM,EAAEK,gBAAgB,CAAC;IAC1B,CAAC;EACF,CAAC,EACD,EACD,CAAC;EAED,oBACC,IAAAX,WAAA,CAAAa,GAAA,EAACzB,iBAAA,CAAA0B,OAAgB;IAACC,SAAS,EAAC,qBAAqB;IAAAC,QAAA,eAChD,IAAAhB,WAAA,CAAAa,GAAA,EAACpC,qBAAA,CAAAqC,OAAoB,CAACG,IAAI;MAAAD,QAAA,EACrBE,KAAK,iBACR,IAAAlB,WAAA,CAAAa,GAAA,EAAAb,WAAA,CAAAmB,QAAA;QAAAH,QAAA,eACC,IAAAhB,WAAA,CAAAoB,IAAA,EAAC9C,WAAA,CAAA+C,oBAAM;UAACC,OAAO,EAAG,CAAG;UAAAN,QAAA,gBACpB,IAAAhB,WAAA,CAAAa,GAAA,EAACjC,cAAA,CAAAkC,OAAa;YACbT,QAAQ,EAAGA,QAAU;YACrBC,MAAM,EAAGA,MAAQ;YACjBH,iBAAiB,EAAGA;UAAmB,CACvC,CAAC,eACF,IAAAH,WAAA,CAAAa,GAAA,EAAC5B,OAAA,CAAA6B,OAAsB;YAACS,aAAa,EAAG;UAAO,CAAE,CAAC,eAClD,IAAAvB,WAAA,CAAAa,GAAA,EAAC7B,OAAA,CAAAwC,uBAAgB,IAAE,CAAC,eACpB,IAAAxB,WAAA,CAAAoB,IAAA,EAAC9C,WAAA,CAAA+C,oBAAM;YAACC,OAAO,EAAG,CAAG;YAAAN,QAAA,gBACpB,IAAAhB,WAAA,CAAAa,GAAA,EAAChC,uBAAA,CAAAiC,OAAsB,IAAE,CAAC,eAC1B,IAAAd,WAAA,CAAAa,GAAA,EAAC1B,oBAAA,CAAA2B,OAAmB,IAAE,CAAC;UAAA,CAChB,CAAC,EACP,CAAEV,wBAAwB,iBAC3B,IAAAJ,WAAA,CAAAoB,IAAA,EAAC9C,WAAA,CAAA+C,oBAAM;YAACC,OAAO,EAAG,CAAG;YAAAN,QAAA,gBACpB,IAAAhB,WAAA,CAAAoB,IAAA,EAAC9C,WAAA,CAAA+C,oBAAM;cAACC,OAAO,EAAG,CAAG;cAAAN,QAAA,gBACpB,IAAAhB,WAAA,CAAAa,GAAA,EAACvB,WAAA,CAAAwB,OAAe,IAAE,CAAC,eACnB,IAAAd,WAAA,CAAAa,GAAA,EAACxB,OAAA,CAAAyB,OAAiB,IAAE,CAAC,eACrB,IAAAd,WAAA,CAAAa,GAAA,EAACpB,OAAA,CAAAqB,OAAY,IAAE,CAAC,eAChB,IAAAd,WAAA,CAAAa,GAAA,EAAClC,MAAA,CAAAmC,OAAe,IAAE,CAAC,eACnB,IAAAd,WAAA,CAAAa,GAAA,EAACrB,OAAA,CAAAsB,OAAiB,IAAE,CAAC,eACrB,IAAAd,WAAA,CAAAa,GAAA,EAAC9B,OAAA,CAAA+B,OAAmB,IAAE,CAAC,eACvB,IAAAd,WAAA,CAAAa,GAAA,EAACf,iBAAA,CAAA2B,uBAAuB,IAAE,CAAC,eAC3B,IAAAzB,WAAA,CAAAa,GAAA,EAAC/B,OAAA,CAAAgC,OAAmB,IAAE,CAAC,eACvB,IAAAd,WAAA,CAAAa,GAAA,EAACtB,eAAA,CAAAuB,OAAc,IAAE,CAAC,eAClB,IAAAd,WAAA,CAAAa,GAAA,EAACnB,UAAA,CAAAoB,OAAS,IAAE,CAAC,eACb,IAAAd,WAAA,CAAAa,GAAA,EAAClB,aAAA,CAAAmB,OAAY,IAAE,CAAC,eAChB,IAAAd,WAAA,CAAAa,GAAA,EAACjB,eAAA,CAAAkB,OAAc,IAAE,CAAC,eAClB,IAAAd,WAAA,CAAAa,GAAA,EAAC3B,OAAA,CAAA4B,OAAe,IAAE,CAAC;YAAA,CACZ,CAAC,eACT,IAAAd,WAAA,CAAAa,GAAA,EAACd,UAAA,CAAAe,OAAS;cACTX,iBAAiB,EAAGA;YAAmB,CACvC,CAAC,EACAe,KAAK;UAAA,CACA,CACR;QAAA,CACM;MAAC,CACR;IACF,CACyB;EAAC,CACX,CAAC;AAErB","ignoreList":[]}
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = StartPageOptions;
7
+ exports.useStartPatterns = useStartPatterns;
7
8
  var _components = require("@wordpress/components");
8
9
  var _i18n = require("@wordpress/i18n");
9
10
  var _element = require("@wordpress/element");
@@ -12,6 +13,8 @@ var _data = require("@wordpress/data");
12
13
  var _compose = require("@wordpress/compose");
13
14
  var _coreData = require("@wordpress/core-data");
14
15
  var _blocks = require("@wordpress/blocks");
16
+ var _preferences = require("@wordpress/preferences");
17
+ var _interface = require("@wordpress/interface");
15
18
  var _store = require("../../store");
16
19
  var _constants = require("../../store/constants");
17
20
  var _jsxRuntime = require("react/jsx-runtime");
@@ -46,8 +49,14 @@ function useStartPatterns() {
46
49
  };
47
50
  }, []);
48
51
  return (0, _element.useMemo)(() => {
49
- // filter patterns without postTypes declared if the current postType is page
50
- // or patterns that declare the current postType in its post type array.
52
+ if (!blockPatternsWithPostContentBlockType?.length) {
53
+ return [];
54
+ }
55
+
56
+ /*
57
+ * Filter patterns without postTypes declared if the current postType is page
58
+ * or patterns that declare the current postType in its post type array.
59
+ */
51
60
  return blockPatternsWithPostContentBlockType.filter(pattern => {
52
61
  return postType === 'page' && !pattern.postTypes || Array.isArray(pattern.postTypes) && pattern.postTypes.includes(postType);
53
62
  });
@@ -111,28 +120,16 @@ function StartPageOptionsModal({
111
120
  }
112
121
  function StartPageOptions() {
113
122
  const [isClosed, setIsClosed] = (0, _element.useState)(false);
114
- const {
115
- shouldEnableModal,
116
- postType,
117
- postId
118
- } = (0, _data.useSelect)(select => {
123
+ const shouldEnableModal = (0, _data.useSelect)(select => {
119
124
  const {
120
125
  isEditedPostDirty,
121
126
  isEditedPostEmpty,
122
- getCurrentPostType,
123
- getCurrentPostId
127
+ getCurrentPostType
124
128
  } = select(_store.store);
125
- const _postType = getCurrentPostType();
126
- return {
127
- shouldEnableModal: !isEditedPostDirty() && isEditedPostEmpty() && _constants.TEMPLATE_POST_TYPE !== _postType,
128
- postType: _postType,
129
- postId: getCurrentPostId()
130
- };
129
+ const preferencesModalActive = select(_interface.store).isModalActive('editor/preferences');
130
+ const choosePatternModalEnabled = select(_preferences.store).get('core', 'enableChoosePatternModal');
131
+ return choosePatternModalEnabled && !preferencesModalActive && !isEditedPostDirty() && isEditedPostEmpty() && _constants.TEMPLATE_POST_TYPE !== getCurrentPostType();
131
132
  }, []);
132
- (0, _element.useEffect)(() => {
133
- // Should reset the modal state when navigating to a new page/post.
134
- setIsClosed(false);
135
- }, [postType, postId]);
136
133
  if (!shouldEnableModal || isClosed) {
137
134
  return null;
138
135
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_i18n","_element","_blockEditor","_data","_compose","_coreData","_blocks","_store","_constants","_jsxRuntime","useStartPatterns","blockPatternsWithPostContentBlockType","postType","useSelect","select","getPatternsByBlockTypes","getBlocksByName","blockEditorStore","getCurrentPostType","getRenderingMode","editorStore","rootClientId","useMemo","filter","pattern","postTypes","Array","isArray","includes","PatternSelection","blockPatterns","onChoosePattern","shownBlockPatterns","useAsyncList","editEntityRecord","useDispatch","coreStore","postId","getCurrentPostId","jsx","__experimentalBlockPatternsList","shownPatterns","onClickPattern","_pattern","blocks","content","blocksForSerialization","__unstableSerializeAndClean","StartPageOptionsModal","onClose","startPatterns","hasStartPattern","length","Modal","title","__","isFullScreen","onRequestClose","children","className","StartPageOptions","isClosed","setIsClosed","useState","shouldEnableModal","isEditedPostDirty","isEditedPostEmpty","_postType","TEMPLATE_POST_TYPE","useEffect"],"sources":["@wordpress/editor/src/components/start-page-options/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Modal } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useEffect } from '@wordpress/element';\nimport {\n\tstore as blockEditorStore,\n\t__experimentalBlockPatternsList as BlockPatternsList,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useAsyncList } from '@wordpress/compose';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __unstableSerializeAndClean } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport { TEMPLATE_POST_TYPE } from '../../store/constants';\n\nfunction useStartPatterns() {\n\t// A pattern is a start pattern if it includes 'core/post-content' in its blockTypes,\n\t// and it has no postTypes declared and the current post type is page or if\n\t// the current post type is part of the postTypes declared.\n\tconst { blockPatternsWithPostContentBlockType, postType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getPatternsByBlockTypes, getBlocksByName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst { getCurrentPostType, getRenderingMode } =\n\t\t\t\tselect( editorStore );\n\t\t\tconst rootClientId =\n\t\t\t\tgetRenderingMode() === 'post-only'\n\t\t\t\t\t? ''\n\t\t\t\t\t: getBlocksByName( 'core/post-content' )?.[ 0 ];\n\t\t\treturn {\n\t\t\t\tblockPatternsWithPostContentBlockType: getPatternsByBlockTypes(\n\t\t\t\t\t'core/post-content',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tpostType: getCurrentPostType(),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\treturn useMemo( () => {\n\t\t// filter patterns without postTypes declared if the current postType is page\n\t\t// or patterns that declare the current postType in its post type array.\n\t\treturn blockPatternsWithPostContentBlockType.filter( ( pattern ) => {\n\t\t\treturn (\n\t\t\t\t( postType === 'page' && ! pattern.postTypes ) ||\n\t\t\t\t( Array.isArray( pattern.postTypes ) &&\n\t\t\t\t\tpattern.postTypes.includes( postType ) )\n\t\t\t);\n\t\t} );\n\t}, [ postType, blockPatternsWithPostContentBlockType ] );\n}\n\nfunction PatternSelection( { blockPatterns, onChoosePattern } ) {\n\tconst shownBlockPatterns = useAsyncList( blockPatterns );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\tconst { postType, postId } = useSelect( ( select ) => {\n\t\tconst { getCurrentPostType, getCurrentPostId } = select( editorStore );\n\n\t\treturn {\n\t\t\tpostType: getCurrentPostType(),\n\t\t\tpostId: getCurrentPostId(),\n\t\t};\n\t}, [] );\n\treturn (\n\t\t<BlockPatternsList\n\t\t\tblockPatterns={ blockPatterns }\n\t\t\tshownPatterns={ shownBlockPatterns }\n\t\t\tonClickPattern={ ( _pattern, blocks ) => {\n\t\t\t\teditEntityRecord( 'postType', postType, postId, {\n\t\t\t\t\tblocks,\n\t\t\t\t\tcontent: ( { blocks: blocksForSerialization = [] } ) =>\n\t\t\t\t\t\t__unstableSerializeAndClean( blocksForSerialization ),\n\t\t\t\t} );\n\t\t\t\tonChoosePattern();\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction StartPageOptionsModal( { onClose } ) {\n\tconst startPatterns = useStartPatterns();\n\tconst hasStartPattern = startPatterns.length > 0;\n\n\tif ( ! hasStartPattern ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\tisFullScreen\n\t\t\tonRequestClose={ onClose }\n\t\t>\n\t\t\t<div className=\"editor-start-page-options__modal-content\">\n\t\t\t\t<PatternSelection\n\t\t\t\t\tblockPatterns={ startPatterns }\n\t\t\t\t\tonChoosePattern={ onClose }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</Modal>\n\t);\n}\n\nexport default function StartPageOptions() {\n\tconst [ isClosed, setIsClosed ] = useState( false );\n\tconst { shouldEnableModal, postType, postId } = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisEditedPostDirty,\n\t\t\tisEditedPostEmpty,\n\t\t\tgetCurrentPostType,\n\t\t\tgetCurrentPostId,\n\t\t} = select( editorStore );\n\t\tconst _postType = getCurrentPostType();\n\n\t\treturn {\n\t\t\tshouldEnableModal:\n\t\t\t\t! isEditedPostDirty() &&\n\t\t\t\tisEditedPostEmpty() &&\n\t\t\t\tTEMPLATE_POST_TYPE !== _postType,\n\t\t\tpostType: _postType,\n\t\t\tpostId: getCurrentPostId(),\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Should reset the modal state when navigating to a new page/post.\n\t\tsetIsClosed( false );\n\t}, [ postType, postId ] );\n\n\tif ( ! shouldEnableModal || isClosed ) {\n\t\treturn null;\n\t}\n\n\treturn <StartPageOptionsModal onClose={ () => setIsClosed( true ) } />;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_components","require","_i18n","_element","_blockEditor","_data","_compose","_coreData","_blocks","_preferences","_interface","_store","_constants","_jsxRuntime","useStartPatterns","blockPatternsWithPostContentBlockType","postType","useSelect","select","getPatternsByBlockTypes","getBlocksByName","blockEditorStore","getCurrentPostType","getRenderingMode","editorStore","rootClientId","useMemo","length","filter","pattern","postTypes","Array","isArray","includes","PatternSelection","blockPatterns","onChoosePattern","shownBlockPatterns","useAsyncList","editEntityRecord","useDispatch","coreStore","postId","getCurrentPostId","jsx","__experimentalBlockPatternsList","shownPatterns","onClickPattern","_pattern","blocks","content","blocksForSerialization","__unstableSerializeAndClean","StartPageOptionsModal","onClose","startPatterns","hasStartPattern","Modal","title","__","isFullScreen","onRequestClose","children","className","StartPageOptions","isClosed","setIsClosed","useState","shouldEnableModal","isEditedPostDirty","isEditedPostEmpty","preferencesModalActive","interfaceStore","isModalActive","choosePatternModalEnabled","preferencesStore","get","TEMPLATE_POST_TYPE"],"sources":["@wordpress/editor/src/components/start-page-options/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Modal } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo } from '@wordpress/element';\nimport {\n\tstore as blockEditorStore,\n\t__experimentalBlockPatternsList as BlockPatternsList,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useAsyncList } from '@wordpress/compose';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __unstableSerializeAndClean } from '@wordpress/blocks';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport { TEMPLATE_POST_TYPE } from '../../store/constants';\n\nexport function useStartPatterns() {\n\t// A pattern is a start pattern if it includes 'core/post-content' in its blockTypes,\n\t// and it has no postTypes declared and the current post type is page or if\n\t// the current post type is part of the postTypes declared.\n\tconst { blockPatternsWithPostContentBlockType, postType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getPatternsByBlockTypes, getBlocksByName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst { getCurrentPostType, getRenderingMode } =\n\t\t\t\tselect( editorStore );\n\t\t\tconst rootClientId =\n\t\t\t\tgetRenderingMode() === 'post-only'\n\t\t\t\t\t? ''\n\t\t\t\t\t: getBlocksByName( 'core/post-content' )?.[ 0 ];\n\t\t\treturn {\n\t\t\t\tblockPatternsWithPostContentBlockType: getPatternsByBlockTypes(\n\t\t\t\t\t'core/post-content',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tpostType: getCurrentPostType(),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\treturn useMemo( () => {\n\t\tif ( ! blockPatternsWithPostContentBlockType?.length ) {\n\t\t\treturn [];\n\t\t}\n\n\t\t/*\n\t\t * Filter patterns without postTypes declared if the current postType is page\n\t\t * or patterns that declare the current postType in its post type array.\n\t\t */\n\t\treturn blockPatternsWithPostContentBlockType.filter( ( pattern ) => {\n\t\t\treturn (\n\t\t\t\t( postType === 'page' && ! pattern.postTypes ) ||\n\t\t\t\t( Array.isArray( pattern.postTypes ) &&\n\t\t\t\t\tpattern.postTypes.includes( postType ) )\n\t\t\t);\n\t\t} );\n\t}, [ postType, blockPatternsWithPostContentBlockType ] );\n}\n\nfunction PatternSelection( { blockPatterns, onChoosePattern } ) {\n\tconst shownBlockPatterns = useAsyncList( blockPatterns );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\tconst { postType, postId } = useSelect( ( select ) => {\n\t\tconst { getCurrentPostType, getCurrentPostId } = select( editorStore );\n\n\t\treturn {\n\t\t\tpostType: getCurrentPostType(),\n\t\t\tpostId: getCurrentPostId(),\n\t\t};\n\t}, [] );\n\treturn (\n\t\t<BlockPatternsList\n\t\t\tblockPatterns={ blockPatterns }\n\t\t\tshownPatterns={ shownBlockPatterns }\n\t\t\tonClickPattern={ ( _pattern, blocks ) => {\n\t\t\t\teditEntityRecord( 'postType', postType, postId, {\n\t\t\t\t\tblocks,\n\t\t\t\t\tcontent: ( { blocks: blocksForSerialization = [] } ) =>\n\t\t\t\t\t\t__unstableSerializeAndClean( blocksForSerialization ),\n\t\t\t\t} );\n\t\t\t\tonChoosePattern();\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction StartPageOptionsModal( { onClose } ) {\n\tconst startPatterns = useStartPatterns();\n\tconst hasStartPattern = startPatterns.length > 0;\n\n\tif ( ! hasStartPattern ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\tisFullScreen\n\t\t\tonRequestClose={ onClose }\n\t\t>\n\t\t\t<div className=\"editor-start-page-options__modal-content\">\n\t\t\t\t<PatternSelection\n\t\t\t\t\tblockPatterns={ startPatterns }\n\t\t\t\t\tonChoosePattern={ onClose }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</Modal>\n\t);\n}\n\nexport default function StartPageOptions() {\n\tconst [ isClosed, setIsClosed ] = useState( false );\n\tconst shouldEnableModal = useSelect( ( select ) => {\n\t\tconst { isEditedPostDirty, isEditedPostEmpty, getCurrentPostType } =\n\t\t\tselect( editorStore );\n\t\tconst preferencesModalActive =\n\t\t\tselect( interfaceStore ).isModalActive( 'editor/preferences' );\n\t\tconst choosePatternModalEnabled = select( preferencesStore ).get(\n\t\t\t'core',\n\t\t\t'enableChoosePatternModal'\n\t\t);\n\t\treturn (\n\t\t\tchoosePatternModalEnabled &&\n\t\t\t! preferencesModalActive &&\n\t\t\t! isEditedPostDirty() &&\n\t\t\tisEditedPostEmpty() &&\n\t\t\tTEMPLATE_POST_TYPE !== getCurrentPostType()\n\t\t);\n\t}, [] );\n\n\tif ( ! shouldEnableModal || isClosed ) {\n\t\treturn null;\n\t}\n\n\treturn <StartPageOptionsModal onClose={ () => setIsClosed( true ) } />;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -144,6 +144,7 @@ function StartModal({
144
144
  expanded: false,
145
145
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.FlexItem, {
146
146
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
147
+ __next40pxDefaultSize: true,
147
148
  variant: "tertiary",
148
149
  onClick: onClose,
149
150
  children: (0, _i18n.__)('Skip')
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_i18n","_element","_blockEditor","_data","_compose","_blocks","_coreData","_store","_constants","_jsxRuntime","useFallbackTemplateContent","slug","isCustom","useSelect","select","getEntityRecord","getDefaultTemplateId","coreStore","templateId","is_custom","ignore_empty","TEMPLATE_POST_TYPE","content","raw","undefined","useStartPatterns","fallbackContent","patterns","getCurrentPostType","getCurrentPostId","editorStore","getBlockPatterns","postId","postType","record","currentThemeStylesheet","getCurrentTheme","stylesheet","injectThemeAttributeInBlockTemplateContent","block","innerBlocks","find","innerBlock","name","map","attributes","theme","useMemo","blocks","parse","title","__","filter","pattern","Array","isArray","templateTypes","some","templateType","startsWith","PatternSelection","onChoosePattern","onChange","useEntityBlockEditor","blockPatterns","shownBlockPatterns","useAsyncList","jsx","__experimentalBlockPatternsList","shownPatterns","onClickPattern","selection","StartModal","onClose","jsxs","Modal","className","closeLabel","focusOnMount","onRequestClose","isFullScreen","children","Flex","justify","expanded","FlexItem","Button","variant","onClick","StartTemplateOptions","isClosed","setIsClosed","useState","shouldOpenModal","_postType","_postId","getEditedEntityRecord","hasEditsForEntityRecord","templateRecord","hasEdits","useEffect"],"sources":["@wordpress/editor/src/components/start-template-options/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Modal, Flex, FlexItem, Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useEffect } from '@wordpress/element';\nimport { __experimentalBlockPatternsList as BlockPatternsList } from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useAsyncList } from '@wordpress/compose';\nimport { parse } from '@wordpress/blocks';\nimport { store as coreStore, useEntityBlockEditor } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport { TEMPLATE_POST_TYPE } from '../../store/constants';\n\nfunction useFallbackTemplateContent( slug, isCustom = false ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord, getDefaultTemplateId } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst templateId = getDefaultTemplateId( {\n\t\t\t\tslug,\n\t\t\t\tis_custom: isCustom,\n\t\t\t\tignore_empty: true,\n\t\t\t} );\n\t\t\treturn templateId\n\t\t\t\t? getEntityRecord( 'postType', TEMPLATE_POST_TYPE, templateId )\n\t\t\t\t\t\t?.content?.raw\n\t\t\t\t: undefined;\n\t\t},\n\t\t[ slug, isCustom ]\n\t);\n}\n\nfunction useStartPatterns( fallbackContent ) {\n\tconst { slug, patterns } = useSelect( ( select ) => {\n\t\tconst { getCurrentPostType, getCurrentPostId } = select( editorStore );\n\t\tconst { getEntityRecord, getBlockPatterns } = select( coreStore );\n\t\tconst postId = getCurrentPostId();\n\t\tconst postType = getCurrentPostType();\n\t\tconst record = getEntityRecord( 'postType', postType, postId );\n\t\treturn {\n\t\t\tslug: record.slug,\n\t\t\tpatterns: getBlockPatterns(),\n\t\t};\n\t}, [] );\n\n\tconst currentThemeStylesheet = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme().stylesheet\n\t);\n\n\t// Duplicated from packages/block-library/src/pattern/edit.js.\n\tfunction injectThemeAttributeInBlockTemplateContent( block ) {\n\t\tif (\n\t\t\tblock.innerBlocks.find(\n\t\t\t\t( innerBlock ) => innerBlock.name === 'core/template-part'\n\t\t\t)\n\t\t) {\n\t\t\tblock.innerBlocks = block.innerBlocks.map( ( innerBlock ) => {\n\t\t\t\tif (\n\t\t\t\t\tinnerBlock.name === 'core/template-part' &&\n\t\t\t\t\tinnerBlock.attributes.theme === undefined\n\t\t\t\t) {\n\t\t\t\t\tinnerBlock.attributes.theme = currentThemeStylesheet;\n\t\t\t\t}\n\t\t\t\treturn innerBlock;\n\t\t\t} );\n\t\t}\n\n\t\tif (\n\t\t\tblock.name === 'core/template-part' &&\n\t\t\tblock.attributes.theme === undefined\n\t\t) {\n\t\t\tblock.attributes.theme = currentThemeStylesheet;\n\t\t}\n\t\treturn block;\n\t}\n\n\treturn useMemo( () => {\n\t\t// filter patterns that are supposed to be used in the current template being edited.\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'fallback',\n\t\t\t\tblocks: parse( fallbackContent ),\n\t\t\t\ttitle: __( 'Fallback content' ),\n\t\t\t},\n\t\t\t...patterns\n\t\t\t\t.filter( ( pattern ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\tArray.isArray( pattern.templateTypes ) &&\n\t\t\t\t\t\tpattern.templateTypes.some( ( templateType ) =>\n\t\t\t\t\t\t\tslug.startsWith( templateType )\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t} )\n\t\t\t\t.map( ( pattern ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...pattern,\n\t\t\t\t\t\tblocks: parse( pattern.content ).map( ( block ) =>\n\t\t\t\t\t\t\tinjectThemeAttributeInBlockTemplateContent( block )\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\t\t\t\t} ),\n\t\t];\n\t}, [ fallbackContent, slug, patterns ] );\n}\n\nfunction PatternSelection( { fallbackContent, onChoosePattern, postType } ) {\n\tconst [ , , onChange ] = useEntityBlockEditor( 'postType', postType );\n\tconst blockPatterns = useStartPatterns( fallbackContent );\n\tconst shownBlockPatterns = useAsyncList( blockPatterns );\n\treturn (\n\t\t<BlockPatternsList\n\t\t\tblockPatterns={ blockPatterns }\n\t\t\tshownPatterns={ shownBlockPatterns }\n\t\t\tonClickPattern={ ( pattern, blocks ) => {\n\t\t\t\tonChange( blocks, { selection: undefined } );\n\t\t\t\tonChoosePattern();\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction StartModal( { slug, isCustom, onClose, postType } ) {\n\tconst fallbackContent = useFallbackTemplateContent( slug, isCustom );\n\tif ( ! fallbackContent ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"editor-start-template-options__modal\"\n\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\tfocusOnMount=\"firstElement\"\n\t\t\tonRequestClose={ onClose }\n\t\t\tisFullScreen\n\t\t>\n\t\t\t<div className=\"editor-start-template-options__modal-content\">\n\t\t\t\t<PatternSelection\n\t\t\t\t\tfallbackContent={ fallbackContent }\n\t\t\t\t\tslug={ slug }\n\t\t\t\t\tisCustom={ isCustom }\n\t\t\t\t\tpostType={ postType }\n\t\t\t\t\tonChoosePattern={ () => {\n\t\t\t\t\t\tonClose();\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<Flex\n\t\t\t\tclassName=\"editor-start-template-options__modal__actions\"\n\t\t\t\tjustify=\"flex-end\"\n\t\t\t\texpanded={ false }\n\t\t\t>\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ onClose }>\n\t\t\t\t\t\t{ __( 'Skip' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\t\t</Modal>\n\t);\n}\n\nexport default function StartTemplateOptions() {\n\tconst [ isClosed, setIsClosed ] = useState( false );\n\tconst { shouldOpenModal, slug, isCustom, postType, postId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCurrentPostType, getCurrentPostId } =\n\t\t\t\tselect( editorStore );\n\t\t\tconst _postType = getCurrentPostType();\n\t\t\tconst _postId = getCurrentPostId();\n\t\t\tconst { getEditedEntityRecord, hasEditsForEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst templateRecord = getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t_postType,\n\t\t\t\t_postId\n\t\t\t);\n\t\t\tconst hasEdits = hasEditsForEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t_postType,\n\t\t\t\t_postId\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tshouldOpenModal:\n\t\t\t\t\t! hasEdits &&\n\t\t\t\t\t'' === templateRecord.content &&\n\t\t\t\t\tTEMPLATE_POST_TYPE === _postType,\n\t\t\t\tslug: templateRecord.slug,\n\t\t\t\tisCustom: templateRecord.is_custom,\n\t\t\t\tpostType: _postType,\n\t\t\t\tpostId: _postId,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tuseEffect( () => {\n\t\t// Should reset the modal state when navigating to a new page/post.\n\t\tsetIsClosed( false );\n\t}, [ postType, postId ] );\n\n\tif ( ! shouldOpenModal || isClosed ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<StartModal\n\t\t\tslug={ slug }\n\t\t\tisCustom={ isCustom }\n\t\t\tpostType={ postType }\n\t\t\tonClose={ () => setIsClosed( true ) }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_components","require","_i18n","_element","_blockEditor","_data","_compose","_blocks","_coreData","_store","_constants","_jsxRuntime","useFallbackTemplateContent","slug","isCustom","useSelect","select","getEntityRecord","getDefaultTemplateId","coreStore","templateId","is_custom","ignore_empty","TEMPLATE_POST_TYPE","content","raw","undefined","useStartPatterns","fallbackContent","patterns","getCurrentPostType","getCurrentPostId","editorStore","getBlockPatterns","postId","postType","record","currentThemeStylesheet","getCurrentTheme","stylesheet","injectThemeAttributeInBlockTemplateContent","block","innerBlocks","find","innerBlock","name","map","attributes","theme","useMemo","blocks","parse","title","__","filter","pattern","Array","isArray","templateTypes","some","templateType","startsWith","PatternSelection","onChoosePattern","onChange","useEntityBlockEditor","blockPatterns","shownBlockPatterns","useAsyncList","jsx","__experimentalBlockPatternsList","shownPatterns","onClickPattern","selection","StartModal","onClose","jsxs","Modal","className","closeLabel","focusOnMount","onRequestClose","isFullScreen","children","Flex","justify","expanded","FlexItem","Button","__next40pxDefaultSize","variant","onClick","StartTemplateOptions","isClosed","setIsClosed","useState","shouldOpenModal","_postType","_postId","getEditedEntityRecord","hasEditsForEntityRecord","templateRecord","hasEdits","useEffect"],"sources":["@wordpress/editor/src/components/start-template-options/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Modal, Flex, FlexItem, Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useEffect } from '@wordpress/element';\nimport { __experimentalBlockPatternsList as BlockPatternsList } from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useAsyncList } from '@wordpress/compose';\nimport { parse } from '@wordpress/blocks';\nimport { store as coreStore, useEntityBlockEditor } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport { TEMPLATE_POST_TYPE } from '../../store/constants';\n\nfunction useFallbackTemplateContent( slug, isCustom = false ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord, getDefaultTemplateId } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst templateId = getDefaultTemplateId( {\n\t\t\t\tslug,\n\t\t\t\tis_custom: isCustom,\n\t\t\t\tignore_empty: true,\n\t\t\t} );\n\t\t\treturn templateId\n\t\t\t\t? getEntityRecord( 'postType', TEMPLATE_POST_TYPE, templateId )\n\t\t\t\t\t\t?.content?.raw\n\t\t\t\t: undefined;\n\t\t},\n\t\t[ slug, isCustom ]\n\t);\n}\n\nfunction useStartPatterns( fallbackContent ) {\n\tconst { slug, patterns } = useSelect( ( select ) => {\n\t\tconst { getCurrentPostType, getCurrentPostId } = select( editorStore );\n\t\tconst { getEntityRecord, getBlockPatterns } = select( coreStore );\n\t\tconst postId = getCurrentPostId();\n\t\tconst postType = getCurrentPostType();\n\t\tconst record = getEntityRecord( 'postType', postType, postId );\n\t\treturn {\n\t\t\tslug: record.slug,\n\t\t\tpatterns: getBlockPatterns(),\n\t\t};\n\t}, [] );\n\n\tconst currentThemeStylesheet = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme().stylesheet\n\t);\n\n\t// Duplicated from packages/block-library/src/pattern/edit.js.\n\tfunction injectThemeAttributeInBlockTemplateContent( block ) {\n\t\tif (\n\t\t\tblock.innerBlocks.find(\n\t\t\t\t( innerBlock ) => innerBlock.name === 'core/template-part'\n\t\t\t)\n\t\t) {\n\t\t\tblock.innerBlocks = block.innerBlocks.map( ( innerBlock ) => {\n\t\t\t\tif (\n\t\t\t\t\tinnerBlock.name === 'core/template-part' &&\n\t\t\t\t\tinnerBlock.attributes.theme === undefined\n\t\t\t\t) {\n\t\t\t\t\tinnerBlock.attributes.theme = currentThemeStylesheet;\n\t\t\t\t}\n\t\t\t\treturn innerBlock;\n\t\t\t} );\n\t\t}\n\n\t\tif (\n\t\t\tblock.name === 'core/template-part' &&\n\t\t\tblock.attributes.theme === undefined\n\t\t) {\n\t\t\tblock.attributes.theme = currentThemeStylesheet;\n\t\t}\n\t\treturn block;\n\t}\n\n\treturn useMemo( () => {\n\t\t// filter patterns that are supposed to be used in the current template being edited.\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'fallback',\n\t\t\t\tblocks: parse( fallbackContent ),\n\t\t\t\ttitle: __( 'Fallback content' ),\n\t\t\t},\n\t\t\t...patterns\n\t\t\t\t.filter( ( pattern ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\tArray.isArray( pattern.templateTypes ) &&\n\t\t\t\t\t\tpattern.templateTypes.some( ( templateType ) =>\n\t\t\t\t\t\t\tslug.startsWith( templateType )\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t} )\n\t\t\t\t.map( ( pattern ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...pattern,\n\t\t\t\t\t\tblocks: parse( pattern.content ).map( ( block ) =>\n\t\t\t\t\t\t\tinjectThemeAttributeInBlockTemplateContent( block )\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\t\t\t\t} ),\n\t\t];\n\t}, [ fallbackContent, slug, patterns ] );\n}\n\nfunction PatternSelection( { fallbackContent, onChoosePattern, postType } ) {\n\tconst [ , , onChange ] = useEntityBlockEditor( 'postType', postType );\n\tconst blockPatterns = useStartPatterns( fallbackContent );\n\tconst shownBlockPatterns = useAsyncList( blockPatterns );\n\treturn (\n\t\t<BlockPatternsList\n\t\t\tblockPatterns={ blockPatterns }\n\t\t\tshownPatterns={ shownBlockPatterns }\n\t\t\tonClickPattern={ ( pattern, blocks ) => {\n\t\t\t\tonChange( blocks, { selection: undefined } );\n\t\t\t\tonChoosePattern();\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction StartModal( { slug, isCustom, onClose, postType } ) {\n\tconst fallbackContent = useFallbackTemplateContent( slug, isCustom );\n\tif ( ! fallbackContent ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"editor-start-template-options__modal\"\n\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\tfocusOnMount=\"firstElement\"\n\t\t\tonRequestClose={ onClose }\n\t\t\tisFullScreen\n\t\t>\n\t\t\t<div className=\"editor-start-template-options__modal-content\">\n\t\t\t\t<PatternSelection\n\t\t\t\t\tfallbackContent={ fallbackContent }\n\t\t\t\t\tslug={ slug }\n\t\t\t\t\tisCustom={ isCustom }\n\t\t\t\t\tpostType={ postType }\n\t\t\t\t\tonChoosePattern={ () => {\n\t\t\t\t\t\tonClose();\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<Flex\n\t\t\t\tclassName=\"editor-start-template-options__modal__actions\"\n\t\t\t\tjustify=\"flex-end\"\n\t\t\t\texpanded={ false }\n\t\t\t>\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Skip' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\t\t</Modal>\n\t);\n}\n\nexport default function StartTemplateOptions() {\n\tconst [ isClosed, setIsClosed ] = useState( false );\n\tconst { shouldOpenModal, slug, isCustom, postType, postId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCurrentPostType, getCurrentPostId } =\n\t\t\t\tselect( editorStore );\n\t\t\tconst _postType = getCurrentPostType();\n\t\t\tconst _postId = getCurrentPostId();\n\t\t\tconst { getEditedEntityRecord, hasEditsForEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst templateRecord = getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t_postType,\n\t\t\t\t_postId\n\t\t\t);\n\t\t\tconst hasEdits = hasEditsForEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t_postType,\n\t\t\t\t_postId\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tshouldOpenModal:\n\t\t\t\t\t! hasEdits &&\n\t\t\t\t\t'' === templateRecord.content &&\n\t\t\t\t\tTEMPLATE_POST_TYPE === _postType,\n\t\t\t\tslug: templateRecord.slug,\n\t\t\t\tisCustom: templateRecord.is_custom,\n\t\t\t\tpostType: _postType,\n\t\t\t\tpostId: _postId,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tuseEffect( () => {\n\t\t// Should reset the modal state when navigating to a new page/post.\n\t\tsetIsClosed( false );\n\t}, [ postType, postId ] );\n\n\tif ( ! shouldOpenModal || isClosed ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<StartModal\n\t\t\tslug={ slug }\n\t\t\tisCustom={ isCustom }\n\t\t\tpostType={ postType }\n\t\t\tonClose={ () => setIsClosed( true ) }\n\t\t/>\n\t);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AAKA,IAAAQ,MAAA,GAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AAA2D,IAAAU,WAAA,GAAAV,OAAA;AAhB3D;AACA;AACA;;AAUA;AACA;AACA;;AAIA,SAASW,0BAA0BA,CAAEC,IAAI,EAAEC,QAAQ,GAAG,KAAK,EAAG;EAC7D,OAAO,IAAAC,eAAS,EACbC,MAAM,IAAM;IACb,MAAM;MAAEC,eAAe;MAAEC;IAAqB,CAAC,GAC9CF,MAAM,CAAEG,eAAU,CAAC;IACpB,MAAMC,UAAU,GAAGF,oBAAoB,CAAE;MACxCL,IAAI;MACJQ,SAAS,EAAEP,QAAQ;MACnBQ,YAAY,EAAE;IACf,CAAE,CAAC;IACH,OAAOF,UAAU,GACdH,eAAe,CAAE,UAAU,EAAEM,6BAAkB,EAAEH,UAAW,CAAC,EAC3DI,OAAO,EAAEC,GAAG,GACdC,SAAS;EACb,CAAC,EACD,CAAEb,IAAI,EAAEC,QAAQ,CACjB,CAAC;AACF;AAEA,SAASa,gBAAgBA,CAAEC,eAAe,EAAG;EAC5C,MAAM;IAAEf,IAAI;IAAEgB;EAAS,CAAC,GAAG,IAAAd,eAAS,EAAIC,MAAM,IAAM;IACnD,MAAM;MAAEc,kBAAkB;MAAEC;IAAiB,CAAC,GAAGf,MAAM,CAAEgB,YAAY,CAAC;IACtE,MAAM;MAAEf,eAAe;MAAEgB;IAAiB,CAAC,GAAGjB,MAAM,CAAEG,eAAU,CAAC;IACjE,MAAMe,MAAM,GAAGH,gBAAgB,CAAC,CAAC;IACjC,MAAMI,QAAQ,GAAGL,kBAAkB,CAAC,CAAC;IACrC,MAAMM,MAAM,GAAGnB,eAAe,CAAE,UAAU,EAAEkB,QAAQ,EAAED,MAAO,CAAC;IAC9D,OAAO;MACNrB,IAAI,EAAEuB,MAAM,CAACvB,IAAI;MACjBgB,QAAQ,EAAEI,gBAAgB,CAAC;IAC5B,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMI,sBAAsB,GAAG,IAAAtB,eAAS,EACrCC,MAAM,IAAMA,MAAM,CAAEG,eAAU,CAAC,CAACmB,eAAe,CAAC,CAAC,CAACC,UACrD,CAAC;;EAED;EACA,SAASC,0CAA0CA,CAAEC,KAAK,EAAG;IAC5D,IACCA,KAAK,CAACC,WAAW,CAACC,IAAI,CACnBC,UAAU,IAAMA,UAAU,CAACC,IAAI,KAAK,oBACvC,CAAC,EACA;MACDJ,KAAK,CAACC,WAAW,GAAGD,KAAK,CAACC,WAAW,CAACI,GAAG,CAAIF,UAAU,IAAM;QAC5D,IACCA,UAAU,CAACC,IAAI,KAAK,oBAAoB,IACxCD,UAAU,CAACG,UAAU,CAACC,KAAK,KAAKtB,SAAS,EACxC;UACDkB,UAAU,CAACG,UAAU,CAACC,KAAK,GAAGX,sBAAsB;QACrD;QACA,OAAOO,UAAU;MAClB,CAAE,CAAC;IACJ;IAEA,IACCH,KAAK,CAACI,IAAI,KAAK,oBAAoB,IACnCJ,KAAK,CAACM,UAAU,CAACC,KAAK,KAAKtB,SAAS,EACnC;MACDe,KAAK,CAACM,UAAU,CAACC,KAAK,GAAGX,sBAAsB;IAChD;IACA,OAAOI,KAAK;EACb;EAEA,OAAO,IAAAQ,gBAAO,EAAE,MAAM;IACrB;IACA,OAAO,CACN;MACCJ,IAAI,EAAE,UAAU;MAChBK,MAAM,EAAE,IAAAC,aAAK,EAAEvB,eAAgB,CAAC;MAChCwB,KAAK,EAAE,IAAAC,QAAE,EAAE,kBAAmB;IAC/B,CAAC,EACD,GAAGxB,QAAQ,CACTyB,MAAM,CAAIC,OAAO,IAAM;MACvB,OACCC,KAAK,CAACC,OAAO,CAAEF,OAAO,CAACG,aAAc,CAAC,IACtCH,OAAO,CAACG,aAAa,CAACC,IAAI,CAAIC,YAAY,IACzC/C,IAAI,CAACgD,UAAU,CAAED,YAAa,CAC/B,CAAC;IAEH,CAAE,CAAC,CACFd,GAAG,CAAIS,OAAO,IAAM;MACpB,OAAO;QACN,GAAGA,OAAO;QACVL,MAAM,EAAE,IAAAC,aAAK,EAAEI,OAAO,CAAC/B,OAAQ,CAAC,CAACsB,GAAG,CAAIL,KAAK,IAC5CD,0CAA0C,CAAEC,KAAM,CACnD;MACD,CAAC;IACF,CAAE,CAAC,CACJ;EACF,CAAC,EAAE,CAAEb,eAAe,EAAEf,IAAI,EAAEgB,QAAQ,CAAG,CAAC;AACzC;AAEA,SAASiC,gBAAgBA,CAAE;EAAElC,eAAe;EAAEmC,eAAe;EAAE5B;AAAS,CAAC,EAAG;EAC3E,MAAM,IAAM6B,QAAQ,CAAE,GAAG,IAAAC,8BAAoB,EAAE,UAAU,EAAE9B,QAAS,CAAC;EACrE,MAAM+B,aAAa,GAAGvC,gBAAgB,CAAEC,eAAgB,CAAC;EACzD,MAAMuC,kBAAkB,GAAG,IAAAC,qBAAY,EAAEF,aAAc,CAAC;EACxD,oBACC,IAAAvD,WAAA,CAAA0D,GAAA,EAACjE,YAAA,CAAAkE,+BAAiB;IACjBJ,aAAa,EAAGA,aAAe;IAC/BK,aAAa,EAAGJ,kBAAoB;IACpCK,cAAc,EAAGA,CAAEjB,OAAO,EAAEL,MAAM,KAAM;MACvCc,QAAQ,CAAEd,MAAM,EAAE;QAAEuB,SAAS,EAAE/C;MAAU,CAAE,CAAC;MAC5CqC,eAAe,CAAC,CAAC;IAClB;EAAG,CACH,CAAC;AAEJ;AAEA,SAASW,UAAUA,CAAE;EAAE7D,IAAI;EAAEC,QAAQ;EAAE6D,OAAO;EAAExC;AAAS,CAAC,EAAG;EAC5D,MAAMP,eAAe,GAAGhB,0BAA0B,CAAEC,IAAI,EAAEC,QAAS,CAAC;EACpE,IAAK,CAAEc,eAAe,EAAG;IACxB,OAAO,IAAI;EACZ;EACA,oBACC,IAAAjB,WAAA,CAAAiE,IAAA,EAAC5E,WAAA,CAAA6E,KAAK;IACLC,SAAS,EAAC,sCAAsC;IAChD1B,KAAK,EAAG,IAAAC,QAAE,EAAE,kBAAmB,CAAG;IAClC0B,UAAU,EAAG,IAAA1B,QAAE,EAAE,QAAS,CAAG;IAC7B2B,YAAY,EAAC,cAAc;IAC3BC,cAAc,EAAGN,OAAS;IAC1BO,YAAY;IAAAC,QAAA,gBAEZ,IAAAxE,WAAA,CAAA0D,GAAA;MAAKS,SAAS,EAAC,8CAA8C;MAAAK,QAAA,eAC5D,IAAAxE,WAAA,CAAA0D,GAAA,EAACP,gBAAgB;QAChBlC,eAAe,EAAGA,eAAiB;QACnCf,IAAI,EAAGA,IAAM;QACbC,QAAQ,EAAGA,QAAU;QACrBqB,QAAQ,EAAGA,QAAU;QACrB4B,eAAe,EAAGA,CAAA,KAAM;UACvBY,OAAO,CAAC,CAAC;QACV;MAAG,CACH;IAAC,CACE,CAAC,eACN,IAAAhE,WAAA,CAAA0D,GAAA,EAACrE,WAAA,CAAAoF,IAAI;MACJN,SAAS,EAAC,+CAA+C;MACzDO,OAAO,EAAC,UAAU;MAClBC,QAAQ,EAAG,KAAO;MAAAH,QAAA,eAElB,IAAAxE,WAAA,CAAA0D,GAAA,EAACrE,WAAA,CAAAuF,QAAQ;QAAAJ,QAAA,eACR,IAAAxE,WAAA,CAAA0D,GAAA,EAACrE,WAAA,CAAAwF,MAAM;UACNC,qBAAqB;UACrBC,OAAO,EAAC,UAAU;UAClBC,OAAO,EAAGhB,OAAS;UAAAQ,QAAA,EAEjB,IAAA9B,QAAE,EAAE,MAAO;QAAC,CACP;MAAC,CACA;IAAC,CACN,CAAC;EAAA,CACD,CAAC;AAEV;AAEe,SAASuC,oBAAoBA,CAAA,EAAG;EAC9C,MAAM,CAAEC,QAAQ,EAAEC,WAAW,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EACnD,MAAM;IAAEC,eAAe;IAAEnF,IAAI;IAAEC,QAAQ;IAAEqB,QAAQ;IAAED;EAAO,CAAC,GAAG,IAAAnB,eAAS,EACpEC,MAAM,IAAM;IACb,MAAM;MAAEc,kBAAkB;MAAEC;IAAiB,CAAC,GAC7Cf,MAAM,CAAEgB,YAAY,CAAC;IACtB,MAAMiE,SAAS,GAAGnE,kBAAkB,CAAC,CAAC;IACtC,MAAMoE,OAAO,GAAGnE,gBAAgB,CAAC,CAAC;IAClC,MAAM;MAAEoE,qBAAqB;MAAEC;IAAwB,CAAC,GACvDpF,MAAM,CAAEG,eAAU,CAAC;IACpB,MAAMkF,cAAc,GAAGF,qBAAqB,CAC3C,UAAU,EACVF,SAAS,EACTC,OACD,CAAC;IACD,MAAMI,QAAQ,GAAGF,uBAAuB,CACvC,UAAU,EACVH,SAAS,EACTC,OACD,CAAC;IAED,OAAO;MACNF,eAAe,EACd,CAAEM,QAAQ,IACV,EAAE,KAAKD,cAAc,CAAC7E,OAAO,IAC7BD,6BAAkB,KAAK0E,SAAS;MACjCpF,IAAI,EAAEwF,cAAc,CAACxF,IAAI;MACzBC,QAAQ,EAAEuF,cAAc,CAAChF,SAAS;MAClCc,QAAQ,EAAE8D,SAAS;MACnB/D,MAAM,EAAEgE;IACT,CAAC;EACF,CAAC,EACD,EACD,CAAC;EAED,IAAAK,kBAAS,EAAE,MAAM;IAChB;IACAT,WAAW,CAAE,KAAM,CAAC;EACrB,CAAC,EAAE,CAAE3D,QAAQ,EAAED,MAAM,CAAG,CAAC;EAEzB,IAAK,CAAE8D,eAAe,IAAIH,QAAQ,EAAG;IACpC,OAAO,IAAI;EACZ;EAEA,oBACC,IAAAlF,WAAA,CAAA0D,GAAA,EAACK,UAAU;IACV7D,IAAI,EAAGA,IAAM;IACbC,QAAQ,EAAGA,QAAU;IACrBqB,QAAQ,EAAGA,QAAU;IACrBwC,OAAO,EAAGA,CAAA,KAAMmB,WAAW,CAAE,IAAK;EAAG,CACrC,CAAC;AAEJ","ignoreList":[]}
@@ -37,6 +37,7 @@ function TableOfContents({
37
37
  isOpen,
38
38
  onToggle
39
39
  }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
40
+ __next40pxDefaultSize: true,
40
41
  ...props,
41
42
  ref: ref,
42
43
  onClick: hasBlocks ? onToggle : undefined,
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_components","_data","_icons","_element","_blockEditor","_panel","_interopRequireDefault","_jsxRuntime","TableOfContents","hasOutlineItemsDisabled","repositionDropdown","props","ref","hasBlocks","useSelect","select","blockEditorStore","getBlockCount","jsx","Dropdown","popoverProps","placement","className","contentClassName","renderToggle","isOpen","onToggle","Button","onClick","undefined","icon","info","label","__","tooltipPosition","renderContent","onClose","default","onRequestClose","_default","exports","forwardRef"],"sources":["@wordpress/editor/src/components/table-of-contents/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Dropdown, Button } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { info } from '@wordpress/icons';\nimport { forwardRef } from '@wordpress/element';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport TableOfContentsPanel from './panel';\n\nfunction TableOfContents(\n\t{ hasOutlineItemsDisabled, repositionDropdown, ...props },\n\tref\n) {\n\tconst hasBlocks = useSelect(\n\t\t( select ) => !! select( blockEditorStore ).getBlockCount(),\n\t\t[]\n\t);\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ {\n\t\t\t\tplacement: repositionDropdown ? 'right' : 'bottom',\n\t\t\t} }\n\t\t\tclassName=\"table-of-contents\"\n\t\t\tcontentClassName=\"table-of-contents__popover\"\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t<Button\n\t\t\t\t\t{ ...props }\n\t\t\t\t\tref={ ref }\n\t\t\t\t\tonClick={ hasBlocks ? onToggle : undefined }\n\t\t\t\t\ticon={ info }\n\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\tlabel={ __( 'Details' ) }\n\t\t\t\t\ttooltipPosition=\"bottom\"\n\t\t\t\t\taria-disabled={ ! hasBlocks }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t<TableOfContentsPanel\n\t\t\t\t\tonRequestClose={ onClose }\n\t\t\t\t\thasOutlineItemsDisabled={ hasOutlineItemsDisabled }\n\t\t\t\t/>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\n/**\n * Renders a table of contents component.\n *\n * @param {Object} props The component props.\n * @param {boolean} props.hasOutlineItemsDisabled Whether outline items are disabled.\n * @param {boolean} props.repositionDropdown Whether to reposition the dropdown.\n * @param {Element.ref} ref The component's ref.\n *\n * @return {JSX.Element} The rendered table of contents component.\n */\nexport default forwardRef( TableOfContents );\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,YAAA,GAAAL,OAAA;AAKA,IAAAM,MAAA,GAAAC,sBAAA,CAAAP,OAAA;AAA2C,IAAAQ,WAAA,GAAAR,OAAA;AAb3C;AACA;AACA;;AAQA;AACA;AACA;;AAGA,SAASS,eAAeA,CACvB;EAAEC,uBAAuB;EAAEC,kBAAkB;EAAE,GAAGC;AAAM,CAAC,EACzDC,GAAG,EACF;EACD,MAAMC,SAAS,GAAG,IAAAC,eAAS,EACxBC,MAAM,IAAM,CAAC,CAAEA,MAAM,CAAEC,kBAAiB,CAAC,CAACC,aAAa,CAAC,CAAC,EAC3D,EACD,CAAC;EACD,oBACC,IAAAV,WAAA,CAAAW,GAAA,EAAClB,WAAA,CAAAmB,QAAQ;IACRC,YAAY,EAAG;MACdC,SAAS,EAAEX,kBAAkB,GAAG,OAAO,GAAG;IAC3C,CAAG;IACHY,SAAS,EAAC,mBAAmB;IAC7BC,gBAAgB,EAAC,4BAA4B;IAC7CC,YAAY,EAAGA,CAAE;MAAEC,MAAM;MAAEC;IAAS,CAAC,kBACpC,IAAAnB,WAAA,CAAAW,GAAA,EAAClB,WAAA,CAAA2B,MAAM;MAAA,GACDhB,KAAK;MACVC,GAAG,EAAGA,GAAK;MACXgB,OAAO,EAAGf,SAAS,GAAGa,QAAQ,GAAGG,SAAW;MAC5CC,IAAI,EAAGC,WAAM;MACb,iBAAgBN,MAAQ;MACxB,iBAAc;MACd;MACAO,KAAK,EAAG,IAAAC,QAAE,EAAE,SAAU,CAAG;MACzBC,eAAe,EAAC,QAAQ;MACxB,iBAAgB,CAAErB;IAAW,CAC7B,CACC;IACHsB,aAAa,EAAGA,CAAE;MAAEC;IAAQ,CAAC,kBAC5B,IAAA7B,WAAA,CAAAW,GAAA,EAACb,MAAA,CAAAgC,OAAoB;MACpBC,cAAc,EAAGF,OAAS;MAC1B3B,uBAAuB,EAAGA;IAAyB,CACnD;EACC,CACH,CAAC;AAEJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA,IAAA8B,QAAA,GAAAC,OAAA,CAAAH,OAAA,GAUe,IAAAI,mBAAU,EAAEjC,eAAgB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_components","_data","_icons","_element","_blockEditor","_panel","_interopRequireDefault","_jsxRuntime","TableOfContents","hasOutlineItemsDisabled","repositionDropdown","props","ref","hasBlocks","useSelect","select","blockEditorStore","getBlockCount","jsx","Dropdown","popoverProps","placement","className","contentClassName","renderToggle","isOpen","onToggle","Button","__next40pxDefaultSize","onClick","undefined","icon","info","label","__","tooltipPosition","renderContent","onClose","default","onRequestClose","_default","exports","forwardRef"],"sources":["@wordpress/editor/src/components/table-of-contents/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { Dropdown, Button } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { info } from '@wordpress/icons';\nimport { forwardRef } from '@wordpress/element';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport TableOfContentsPanel from './panel';\n\nfunction TableOfContents(\n\t{ hasOutlineItemsDisabled, repositionDropdown, ...props },\n\tref\n) {\n\tconst hasBlocks = useSelect(\n\t\t( select ) => !! select( blockEditorStore ).getBlockCount(),\n\t\t[]\n\t);\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ {\n\t\t\t\tplacement: repositionDropdown ? 'right' : 'bottom',\n\t\t\t} }\n\t\t\tclassName=\"table-of-contents\"\n\t\t\tcontentClassName=\"table-of-contents__popover\"\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t{ ...props }\n\t\t\t\t\tref={ ref }\n\t\t\t\t\tonClick={ hasBlocks ? onToggle : undefined }\n\t\t\t\t\ticon={ info }\n\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\tlabel={ __( 'Details' ) }\n\t\t\t\t\ttooltipPosition=\"bottom\"\n\t\t\t\t\taria-disabled={ ! hasBlocks }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t<TableOfContentsPanel\n\t\t\t\t\tonRequestClose={ onClose }\n\t\t\t\t\thasOutlineItemsDisabled={ hasOutlineItemsDisabled }\n\t\t\t\t/>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\n/**\n * Renders a table of contents component.\n *\n * @param {Object} props The component props.\n * @param {boolean} props.hasOutlineItemsDisabled Whether outline items are disabled.\n * @param {boolean} props.repositionDropdown Whether to reposition the dropdown.\n * @param {Element.ref} ref The component's ref.\n *\n * @return {JSX.Element} The rendered table of contents component.\n */\nexport default forwardRef( TableOfContents );\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,YAAA,GAAAL,OAAA;AAKA,IAAAM,MAAA,GAAAC,sBAAA,CAAAP,OAAA;AAA2C,IAAAQ,WAAA,GAAAR,OAAA;AAb3C;AACA;AACA;;AAQA;AACA;AACA;;AAGA,SAASS,eAAeA,CACvB;EAAEC,uBAAuB;EAAEC,kBAAkB;EAAE,GAAGC;AAAM,CAAC,EACzDC,GAAG,EACF;EACD,MAAMC,SAAS,GAAG,IAAAC,eAAS,EACxBC,MAAM,IAAM,CAAC,CAAEA,MAAM,CAAEC,kBAAiB,CAAC,CAACC,aAAa,CAAC,CAAC,EAC3D,EACD,CAAC;EACD,oBACC,IAAAV,WAAA,CAAAW,GAAA,EAAClB,WAAA,CAAAmB,QAAQ;IACRC,YAAY,EAAG;MACdC,SAAS,EAAEX,kBAAkB,GAAG,OAAO,GAAG;IAC3C,CAAG;IACHY,SAAS,EAAC,mBAAmB;IAC7BC,gBAAgB,EAAC,4BAA4B;IAC7CC,YAAY,EAAGA,CAAE;MAAEC,MAAM;MAAEC;IAAS,CAAC,kBACpC,IAAAnB,WAAA,CAAAW,GAAA,EAAClB,WAAA,CAAA2B,MAAM;MACNC,qBAAqB;MAAA,GAChBjB,KAAK;MACVC,GAAG,EAAGA,GAAK;MACXiB,OAAO,EAAGhB,SAAS,GAAGa,QAAQ,GAAGI,SAAW;MAC5CC,IAAI,EAAGC,WAAM;MACb,iBAAgBP,MAAQ;MACxB,iBAAc;MACd;MACAQ,KAAK,EAAG,IAAAC,QAAE,EAAE,SAAU,CAAG;MACzBC,eAAe,EAAC,QAAQ;MACxB,iBAAgB,CAAEtB;IAAW,CAC7B,CACC;IACHuB,aAAa,EAAGA,CAAE;MAAEC;IAAQ,CAAC,kBAC5B,IAAA9B,WAAA,CAAAW,GAAA,EAACb,MAAA,CAAAiC,OAAoB;MACpBC,cAAc,EAAGF,OAAS;MAC1B5B,uBAAuB,EAAGA;IAAyB,CACnD;EACC,CACH,CAAC;AAEJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA,IAAA+B,QAAA,GAAAC,OAAA,CAAAH,OAAA,GAUe,IAAAI,mBAAU,EAAElC,eAAgB,CAAC","ignoreList":[]}
@@ -57,6 +57,7 @@ function TextEditor({
57
57
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("h2", {
58
58
  children: (0, _i18n.__)('Editing code')
59
59
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
60
+ __next40pxDefaultSize: true,
60
61
  variant: "tertiary",
61
62
  onClick: () => switchEditorMode('visual'),
62
63
  shortcut: shortcut,
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_data","_i18n","_keyboardShortcuts","_element","_store","_postTextEditor","_interopRequireDefault","_postTitleRaw","_jsxRuntime","TextEditor","autoFocus","switchEditorMode","useDispatch","editorStore","shortcut","isRichEditingEnabled","useSelect","select","getEditorSettings","getShortcutRepresentation","keyboardShortcutsStore","richEditingEnabled","titleRef","useRef","useEffect","current","focus","jsxs","className","children","jsx","__","Button","variant","onClick","default","ref"],"sources":["@wordpress/editor/src/components/text-editor/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { useEffect, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport PostTextEditor from '../post-text-editor';\nimport PostTitleRaw from '../post-title/post-title-raw';\n\nexport default function TextEditor( { autoFocus = false } ) {\n\tconst { switchEditorMode } = useDispatch( editorStore );\n\tconst { shortcut, isRichEditingEnabled } = useSelect( ( select ) => {\n\t\tconst { getEditorSettings } = select( editorStore );\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\n\t\treturn {\n\t\t\tshortcut: getShortcutRepresentation( 'core/editor/toggle-mode' ),\n\t\t\tisRichEditingEnabled: getEditorSettings().richEditingEnabled,\n\t\t};\n\t}, [] );\n\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( autoFocus ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ autoFocus ] );\n\n\treturn (\n\t\t<div className=\"editor-text-editor\">\n\t\t\t{ isRichEditingEnabled && (\n\t\t\t\t<div className=\"editor-text-editor__toolbar\">\n\t\t\t\t\t<h2>{ __( 'Editing code' ) }</h2>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => switchEditorMode( 'visual' ) }\n\t\t\t\t\t\tshortcut={ shortcut }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Exit code editor' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<div className=\"editor-text-editor__body\">\n\t\t\t\t<PostTitleRaw ref={ titleRef } />\n\t\t\t\t<PostTextEditor />\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAKA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,eAAA,GAAAC,sBAAA,CAAAP,OAAA;AACA,IAAAQ,aAAA,GAAAD,sBAAA,CAAAP,OAAA;AAAwD,IAAAS,WAAA,GAAAT,OAAA;AAdxD;AACA;AACA;;AAOA;AACA;AACA;;AAKe,SAASU,UAAUA,CAAE;EAAEC,SAAS,GAAG;AAAM,CAAC,EAAG;EAC3D,MAAM;IAAEC;EAAiB,CAAC,GAAG,IAAAC,iBAAW,EAAEC,YAAY,CAAC;EACvD,MAAM;IAAEC,QAAQ;IAAEC;EAAqB,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACnE,MAAM;MAAEC;IAAkB,CAAC,GAAGD,MAAM,CAAEJ,YAAY,CAAC;IACnD,MAAM;MAAEM;IAA0B,CAAC,GAAGF,MAAM,CAAEG,wBAAuB,CAAC;IAEtE,OAAO;MACNN,QAAQ,EAAEK,yBAAyB,CAAE,yBAA0B,CAAC;MAChEJ,oBAAoB,EAAEG,iBAAiB,CAAC,CAAC,CAACG;IAC3C,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMC,QAAQ,GAAG,IAAAC,eAAM,EAAC,CAAC;EACzB,IAAAC,kBAAS,EAAE,MAAM;IAChB,IAAKd,SAAS,EAAG;MAChB;IACD;IACAY,QAAQ,EAAEG,OAAO,EAAEC,KAAK,CAAC,CAAC;EAC3B,CAAC,EAAE,CAAEhB,SAAS,CAAG,CAAC;EAElB,oBACC,IAAAF,WAAA,CAAAmB,IAAA;IAAKC,SAAS,EAAC,oBAAoB;IAAAC,QAAA,GAChCd,oBAAoB,iBACrB,IAAAP,WAAA,CAAAmB,IAAA;MAAKC,SAAS,EAAC,6BAA6B;MAAAC,QAAA,gBAC3C,IAAArB,WAAA,CAAAsB,GAAA;QAAAD,QAAA,EAAM,IAAAE,QAAE,EAAE,cAAe;MAAC,CAAM,CAAC,eACjC,IAAAvB,WAAA,CAAAsB,GAAA,EAAChC,WAAA,CAAAkC,MAAM;QACNC,OAAO,EAAC,UAAU;QAClBC,OAAO,EAAGA,CAAA,KAAMvB,gBAAgB,CAAE,QAAS,CAAG;QAC9CG,QAAQ,EAAGA,QAAU;QAAAe,QAAA,EAEnB,IAAAE,QAAE,EAAE,kBAAmB;MAAC,CACnB,CAAC;IAAA,CACL,CACL,eACD,IAAAvB,WAAA,CAAAmB,IAAA;MAAKC,SAAS,EAAC,0BAA0B;MAAAC,QAAA,gBACxC,IAAArB,WAAA,CAAAsB,GAAA,EAACvB,aAAA,CAAA4B,OAAY;QAACC,GAAG,EAAGd;MAAU,CAAE,CAAC,eACjC,IAAAd,WAAA,CAAAsB,GAAA,EAACzB,eAAA,CAAA8B,OAAc,IAAE,CAAC;IAAA,CACd,CAAC;EAAA,CACF,CAAC;AAER","ignoreList":[]}
1
+ {"version":3,"names":["_components","require","_data","_i18n","_keyboardShortcuts","_element","_store","_postTextEditor","_interopRequireDefault","_postTitleRaw","_jsxRuntime","TextEditor","autoFocus","switchEditorMode","useDispatch","editorStore","shortcut","isRichEditingEnabled","useSelect","select","getEditorSettings","getShortcutRepresentation","keyboardShortcutsStore","richEditingEnabled","titleRef","useRef","useEffect","current","focus","jsxs","className","children","jsx","__","Button","__next40pxDefaultSize","variant","onClick","default","ref"],"sources":["@wordpress/editor/src/components/text-editor/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { useEffect, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport PostTextEditor from '../post-text-editor';\nimport PostTitleRaw from '../post-title/post-title-raw';\n\nexport default function TextEditor( { autoFocus = false } ) {\n\tconst { switchEditorMode } = useDispatch( editorStore );\n\tconst { shortcut, isRichEditingEnabled } = useSelect( ( select ) => {\n\t\tconst { getEditorSettings } = select( editorStore );\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\n\t\treturn {\n\t\t\tshortcut: getShortcutRepresentation( 'core/editor/toggle-mode' ),\n\t\t\tisRichEditingEnabled: getEditorSettings().richEditingEnabled,\n\t\t};\n\t}, [] );\n\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( autoFocus ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ autoFocus ] );\n\n\treturn (\n\t\t<div className=\"editor-text-editor\">\n\t\t\t{ isRichEditingEnabled && (\n\t\t\t\t<div className=\"editor-text-editor__toolbar\">\n\t\t\t\t\t<h2>{ __( 'Editing code' ) }</h2>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => switchEditorMode( 'visual' ) }\n\t\t\t\t\t\tshortcut={ shortcut }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Exit code editor' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<div className=\"editor-text-editor__body\">\n\t\t\t\t<PostTitleRaw ref={ titleRef } />\n\t\t\t\t<PostTextEditor />\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAKA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,eAAA,GAAAC,sBAAA,CAAAP,OAAA;AACA,IAAAQ,aAAA,GAAAD,sBAAA,CAAAP,OAAA;AAAwD,IAAAS,WAAA,GAAAT,OAAA;AAdxD;AACA;AACA;;AAOA;AACA;AACA;;AAKe,SAASU,UAAUA,CAAE;EAAEC,SAAS,GAAG;AAAM,CAAC,EAAG;EAC3D,MAAM;IAAEC;EAAiB,CAAC,GAAG,IAAAC,iBAAW,EAAEC,YAAY,CAAC;EACvD,MAAM;IAAEC,QAAQ;IAAEC;EAAqB,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACnE,MAAM;MAAEC;IAAkB,CAAC,GAAGD,MAAM,CAAEJ,YAAY,CAAC;IACnD,MAAM;MAAEM;IAA0B,CAAC,GAAGF,MAAM,CAAEG,wBAAuB,CAAC;IAEtE,OAAO;MACNN,QAAQ,EAAEK,yBAAyB,CAAE,yBAA0B,CAAC;MAChEJ,oBAAoB,EAAEG,iBAAiB,CAAC,CAAC,CAACG;IAC3C,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMC,QAAQ,GAAG,IAAAC,eAAM,EAAC,CAAC;EACzB,IAAAC,kBAAS,EAAE,MAAM;IAChB,IAAKd,SAAS,EAAG;MAChB;IACD;IACAY,QAAQ,EAAEG,OAAO,EAAEC,KAAK,CAAC,CAAC;EAC3B,CAAC,EAAE,CAAEhB,SAAS,CAAG,CAAC;EAElB,oBACC,IAAAF,WAAA,CAAAmB,IAAA;IAAKC,SAAS,EAAC,oBAAoB;IAAAC,QAAA,GAChCd,oBAAoB,iBACrB,IAAAP,WAAA,CAAAmB,IAAA;MAAKC,SAAS,EAAC,6BAA6B;MAAAC,QAAA,gBAC3C,IAAArB,WAAA,CAAAsB,GAAA;QAAAD,QAAA,EAAM,IAAAE,QAAE,EAAE,cAAe;MAAC,CAAM,CAAC,eACjC,IAAAvB,WAAA,CAAAsB,GAAA,EAAChC,WAAA,CAAAkC,MAAM;QACNC,qBAAqB;QACrBC,OAAO,EAAC,UAAU;QAClBC,OAAO,EAAGA,CAAA,KAAMxB,gBAAgB,CAAE,QAAS,CAAG;QAC9CG,QAAQ,EAAGA,QAAU;QAAAe,QAAA,EAEnB,IAAAE,QAAE,EAAE,kBAAmB;MAAC,CACnB,CAAC;IAAA,CACL,CACL,eACD,IAAAvB,WAAA,CAAAmB,IAAA;MAAKC,SAAS,EAAC,0BAA0B;MAAAC,QAAA,gBACxC,IAAArB,WAAA,CAAAsB,GAAA,EAACvB,aAAA,CAAA6B,OAAY;QAACC,GAAG,EAAGf;MAAU,CAAE,CAAC,eACjC,IAAAd,WAAA,CAAAsB,GAAA,EAACzB,eAAA,CAAA+B,OAAc,IAAE,CAAC;IAAA,CACd,CAAC;EAAA,CACF,CAAC;AAER","ignoreList":[]}
@@ -58,7 +58,7 @@ var _jsxRuntime = require("react/jsx-runtime");
58
58
  if (!canEditTemplate) {
59
59
  return;
60
60
  }
61
- if (!event.target.classList.contains('is-root-container')) {
61
+ if (!event.target.classList.contains('is-root-container') || event.target.dataset?.type === 'core/template-part') {
62
62
  return;
63
63
  }
64
64
  setIsDialogOpen(true);
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_coreData","_element","_i18n","_components","_store","_jsxRuntime","EditTemplateBlocksNotification","contentRef","onNavigateToEntityRecord","templateId","useSelect","select","getEditorSettings","getCurrentTemplateId","editorStore","canEditTemplate","coreStore","canUser","kind","name","isDialogOpen","setIsDialogOpen","useState","useEffect","handleDblClick","event","target","classList","contains","canvas","current","addEventListener","removeEventListener","jsx","__experimentalConfirmDialog","isOpen","confirmButtonText","__","onConfirm","postId","postType","onCancel","size","children"],"sources":["@wordpress/editor/src/components/visual-editor/edit-template-blocks-notification.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useEffect, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\n\n/**\n * Component that:\n *\n * - Displays a 'Edit your template to edit this block' notification when the\n * user is focusing on editing page content and clicks on a disabled template\n * block.\n * - Displays a 'Edit your template to edit this block' dialog when the user\n * is focusing on editing page conetnt and double clicks on a disabled\n * template block.\n *\n * @param {Object} props\n * @param {import('react').RefObject<HTMLElement>} props.contentRef Ref to the block\n * editor iframe canvas.\n */\nexport default function EditTemplateBlocksNotification( { contentRef } ) {\n\tconst { onNavigateToEntityRecord, templateId } = useSelect( ( select ) => {\n\t\tconst { getEditorSettings, getCurrentTemplateId } =\n\t\t\tselect( editorStore );\n\n\t\treturn {\n\t\t\tonNavigateToEntityRecord:\n\t\t\t\tgetEditorSettings().onNavigateToEntityRecord,\n\t\t\ttemplateId: getCurrentTemplateId(),\n\t\t};\n\t}, [] );\n\n\tconst canEditTemplate = useSelect(\n\t\t( select ) =>\n\t\t\t!! select( coreStore ).canUser( 'create', {\n\t\t\t\tkind: 'postType',\n\t\t\t\tname: 'wp_template',\n\t\t\t} ),\n\t\t[]\n\t);\n\n\tconst [ isDialogOpen, setIsDialogOpen ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst handleDblClick = ( event ) => {\n\t\t\tif ( ! canEditTemplate ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( ! event.target.classList.contains( 'is-root-container' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetIsDialogOpen( true );\n\t\t};\n\n\t\tconst canvas = contentRef.current;\n\t\tcanvas?.addEventListener( 'dblclick', handleDblClick );\n\t\treturn () => {\n\t\t\tcanvas?.removeEventListener( 'dblclick', handleDblClick );\n\t\t};\n\t}, [ contentRef, canEditTemplate ] );\n\n\tif ( ! canEditTemplate ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ConfirmDialog\n\t\t\tisOpen={ isDialogOpen }\n\t\t\tconfirmButtonText={ __( 'Edit template' ) }\n\t\t\tonConfirm={ () => {\n\t\t\t\tsetIsDialogOpen( false );\n\t\t\t\tonNavigateToEntityRecord( {\n\t\t\t\t\tpostId: templateId,\n\t\t\t\t\tpostType: 'wp_template',\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tonCancel={ () => setIsDialogOpen( false ) }\n\t\t\tsize=\"medium\"\n\t\t>\n\t\t\t{ __(\n\t\t\t\t'You’ve tried to select a block that is part of a template, which may be used on other posts and pages. Would you like to edit the template?'\n\t\t\t) }\n\t\t</ConfirmDialog>\n\t);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAKA,IAAAK,MAAA,GAAAL,OAAA;AAAmD,IAAAM,WAAA,GAAAN,OAAA;AAZnD;AACA;AACA;;AAOA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GACe,SAASO,8BAA8BA,CAAE;EAAEC;AAAW,CAAC,EAAG;EACxE,MAAM;IAAEC,wBAAwB;IAAEC;EAAW,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACzE,MAAM;MAAEC,iBAAiB;MAAEC;IAAqB,CAAC,GAChDF,MAAM,CAAEG,YAAY,CAAC;IAEtB,OAAO;MACNN,wBAAwB,EACvBI,iBAAiB,CAAC,CAAC,CAACJ,wBAAwB;MAC7CC,UAAU,EAAEI,oBAAoB,CAAC;IAClC,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAME,eAAe,GAAG,IAAAL,eAAS,EAC9BC,MAAM,IACP,CAAC,CAAEA,MAAM,CAAEK,eAAU,CAAC,CAACC,OAAO,CAAE,QAAQ,EAAE;IACzCC,IAAI,EAAE,UAAU;IAChBC,IAAI,EAAE;EACP,CAAE,CAAC,EACJ,EACD,CAAC;EAED,MAAM,CAAEC,YAAY,EAAEC,eAAe,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EAE3D,IAAAC,kBAAS,EAAE,MAAM;IAChB,MAAMC,cAAc,GAAKC,KAAK,IAAM;MACnC,IAAK,CAAEV,eAAe,EAAG;QACxB;MACD;MAEA,IAAK,CAAEU,KAAK,CAACC,MAAM,CAACC,SAAS,CAACC,QAAQ,CAAE,mBAAoB,CAAC,EAAG;QAC/D;MACD;MACAP,eAAe,CAAE,IAAK,CAAC;IACxB,CAAC;IAED,MAAMQ,MAAM,GAAGtB,UAAU,CAACuB,OAAO;IACjCD,MAAM,EAAEE,gBAAgB,CAAE,UAAU,EAAEP,cAAe,CAAC;IACtD,OAAO,MAAM;MACZK,MAAM,EAAEG,mBAAmB,CAAE,UAAU,EAAER,cAAe,CAAC;IAC1D,CAAC;EACF,CAAC,EAAE,CAAEjB,UAAU,EAAEQ,eAAe,CAAG,CAAC;EAEpC,IAAK,CAAEA,eAAe,EAAG;IACxB,OAAO,IAAI;EACZ;EAEA,oBACC,IAAAV,WAAA,CAAA4B,GAAA,EAAC9B,WAAA,CAAA+B,2BAAa;IACbC,MAAM,EAAGf,YAAc;IACvBgB,iBAAiB,EAAG,IAAAC,QAAE,EAAE,eAAgB,CAAG;IAC3CC,SAAS,EAAGA,CAAA,KAAM;MACjBjB,eAAe,CAAE,KAAM,CAAC;MACxBb,wBAAwB,CAAE;QACzB+B,MAAM,EAAE9B,UAAU;QAClB+B,QAAQ,EAAE;MACX,CAAE,CAAC;IACJ,CAAG;IACHC,QAAQ,EAAGA,CAAA,KAAMpB,eAAe,CAAE,KAAM,CAAG;IAC3CqB,IAAI,EAAC,QAAQ;IAAAC,QAAA,EAEX,IAAAN,QAAE,EACH,6IACD;EAAC,CACa,CAAC;AAElB","ignoreList":[]}
1
+ {"version":3,"names":["_data","require","_coreData","_element","_i18n","_components","_store","_jsxRuntime","EditTemplateBlocksNotification","contentRef","onNavigateToEntityRecord","templateId","useSelect","select","getEditorSettings","getCurrentTemplateId","editorStore","canEditTemplate","coreStore","canUser","kind","name","isDialogOpen","setIsDialogOpen","useState","useEffect","handleDblClick","event","target","classList","contains","dataset","type","canvas","current","addEventListener","removeEventListener","jsx","__experimentalConfirmDialog","isOpen","confirmButtonText","__","onConfirm","postId","postType","onCancel","size","children"],"sources":["@wordpress/editor/src/components/visual-editor/edit-template-blocks-notification.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useEffect, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\n\n/**\n * Component that:\n *\n * - Displays a 'Edit your template to edit this block' notification when the\n * user is focusing on editing page content and clicks on a disabled template\n * block.\n * - Displays a 'Edit your template to edit this block' dialog when the user\n * is focusing on editing page conetnt and double clicks on a disabled\n * template block.\n *\n * @param {Object} props\n * @param {import('react').RefObject<HTMLElement>} props.contentRef Ref to the block\n * editor iframe canvas.\n */\nexport default function EditTemplateBlocksNotification( { contentRef } ) {\n\tconst { onNavigateToEntityRecord, templateId } = useSelect( ( select ) => {\n\t\tconst { getEditorSettings, getCurrentTemplateId } =\n\t\t\tselect( editorStore );\n\n\t\treturn {\n\t\t\tonNavigateToEntityRecord:\n\t\t\t\tgetEditorSettings().onNavigateToEntityRecord,\n\t\t\ttemplateId: getCurrentTemplateId(),\n\t\t};\n\t}, [] );\n\n\tconst canEditTemplate = useSelect(\n\t\t( select ) =>\n\t\t\t!! select( coreStore ).canUser( 'create', {\n\t\t\t\tkind: 'postType',\n\t\t\t\tname: 'wp_template',\n\t\t\t} ),\n\t\t[]\n\t);\n\n\tconst [ isDialogOpen, setIsDialogOpen ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst handleDblClick = ( event ) => {\n\t\t\tif ( ! canEditTemplate ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t! event.target.classList.contains( 'is-root-container' ) ||\n\t\t\t\tevent.target.dataset?.type === 'core/template-part'\n\t\t\t) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetIsDialogOpen( true );\n\t\t};\n\n\t\tconst canvas = contentRef.current;\n\t\tcanvas?.addEventListener( 'dblclick', handleDblClick );\n\t\treturn () => {\n\t\t\tcanvas?.removeEventListener( 'dblclick', handleDblClick );\n\t\t};\n\t}, [ contentRef, canEditTemplate ] );\n\n\tif ( ! canEditTemplate ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ConfirmDialog\n\t\t\tisOpen={ isDialogOpen }\n\t\t\tconfirmButtonText={ __( 'Edit template' ) }\n\t\t\tonConfirm={ () => {\n\t\t\t\tsetIsDialogOpen( false );\n\t\t\t\tonNavigateToEntityRecord( {\n\t\t\t\t\tpostId: templateId,\n\t\t\t\t\tpostType: 'wp_template',\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tonCancel={ () => setIsDialogOpen( false ) }\n\t\t\tsize=\"medium\"\n\t\t>\n\t\t\t{ __(\n\t\t\t\t'You’ve tried to select a block that is part of a template, which may be used on other posts and pages. Would you like to edit the template?'\n\t\t\t) }\n\t\t</ConfirmDialog>\n\t);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAKA,IAAAK,MAAA,GAAAL,OAAA;AAAmD,IAAAM,WAAA,GAAAN,OAAA;AAZnD;AACA;AACA;;AAOA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GACe,SAASO,8BAA8BA,CAAE;EAAEC;AAAW,CAAC,EAAG;EACxE,MAAM;IAAEC,wBAAwB;IAAEC;EAAW,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACzE,MAAM;MAAEC,iBAAiB;MAAEC;IAAqB,CAAC,GAChDF,MAAM,CAAEG,YAAY,CAAC;IAEtB,OAAO;MACNN,wBAAwB,EACvBI,iBAAiB,CAAC,CAAC,CAACJ,wBAAwB;MAC7CC,UAAU,EAAEI,oBAAoB,CAAC;IAClC,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAME,eAAe,GAAG,IAAAL,eAAS,EAC9BC,MAAM,IACP,CAAC,CAAEA,MAAM,CAAEK,eAAU,CAAC,CAACC,OAAO,CAAE,QAAQ,EAAE;IACzCC,IAAI,EAAE,UAAU;IAChBC,IAAI,EAAE;EACP,CAAE,CAAC,EACJ,EACD,CAAC;EAED,MAAM,CAAEC,YAAY,EAAEC,eAAe,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EAE3D,IAAAC,kBAAS,EAAE,MAAM;IAChB,MAAMC,cAAc,GAAKC,KAAK,IAAM;MACnC,IAAK,CAAEV,eAAe,EAAG;QACxB;MACD;MAEA,IACC,CAAEU,KAAK,CAACC,MAAM,CAACC,SAAS,CAACC,QAAQ,CAAE,mBAAoB,CAAC,IACxDH,KAAK,CAACC,MAAM,CAACG,OAAO,EAAEC,IAAI,KAAK,oBAAoB,EAClD;QACD;MACD;MACAT,eAAe,CAAE,IAAK,CAAC;IACxB,CAAC;IAED,MAAMU,MAAM,GAAGxB,UAAU,CAACyB,OAAO;IACjCD,MAAM,EAAEE,gBAAgB,CAAE,UAAU,EAAET,cAAe,CAAC;IACtD,OAAO,MAAM;MACZO,MAAM,EAAEG,mBAAmB,CAAE,UAAU,EAAEV,cAAe,CAAC;IAC1D,CAAC;EACF,CAAC,EAAE,CAAEjB,UAAU,EAAEQ,eAAe,CAAG,CAAC;EAEpC,IAAK,CAAEA,eAAe,EAAG;IACxB,OAAO,IAAI;EACZ;EAEA,oBACC,IAAAV,WAAA,CAAA8B,GAAA,EAAChC,WAAA,CAAAiC,2BAAa;IACbC,MAAM,EAAGjB,YAAc;IACvBkB,iBAAiB,EAAG,IAAAC,QAAE,EAAE,eAAgB,CAAG;IAC3CC,SAAS,EAAGA,CAAA,KAAM;MACjBnB,eAAe,CAAE,KAAM,CAAC;MACxBb,wBAAwB,CAAE;QACzBiC,MAAM,EAAEhC,UAAU;QAClBiC,QAAQ,EAAE;MACX,CAAE,CAAC;IACJ,CAAG;IACHC,QAAQ,EAAGA,CAAA,KAAMtB,eAAe,CAAE,KAAM,CAAG;IAC3CuB,IAAI,EAAC,QAAQ;IAAAC,QAAA,EAEX,IAAAN,QAAE,EACH,6IACD;EAAC,CACa,CAAC;AAElB","ignoreList":[]}
@@ -110,7 +110,6 @@ function VisualEditor({
110
110
  } = select(_store.store);
111
111
  const {
112
112
  getPostType,
113
- canUser,
114
113
  getEditedEntityRecord
115
114
  } = select(_coreData.store);
116
115
  const postTypeSlug = getCurrentPostType();
@@ -124,10 +123,6 @@ function VisualEditor({
124
123
  const editorSettings = getEditorSettings();
125
124
  const supportsTemplateMode = editorSettings.supportsTemplateMode;
126
125
  const postTypeObject = getPostType(postTypeSlug);
127
- const canEditTemplate = canUser('create', {
128
- kind: 'postType',
129
- name: 'wp_template'
130
- });
131
126
  const currentTemplateId = getCurrentTemplateId();
132
127
  const template = currentTemplateId ? getEditedEntityRecord('postType', _constants.TEMPLATE_POST_TYPE, currentTemplateId) : undefined;
133
128
  return {
@@ -136,7 +131,7 @@ function VisualEditor({
136
131
  isDesignPostType: DESIGN_POST_TYPES.includes(postTypeSlug),
137
132
  // Post template fetch returns a 404 on classic themes, which
138
133
  // messes with e2e tests, so check it's a block theme first.
139
- editedPostTemplate: postTypeObject?.viewable && supportsTemplateMode && canEditTemplate ? template : undefined,
134
+ editedPostTemplate: postTypeObject?.viewable && supportsTemplateMode ? template : undefined,
140
135
  wrapperBlockName: _wrapperBlockName,
141
136
  wrapperUniqueId: getCurrentPostId(),
142
137
  deviceType: getDeviceType(),
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_blockEditor","_element","_data","_blocks","_coreData","_compose","_postTitle","_store","_lockUnlock","_editTemplateBlocksNotification","_resizableEditor","_useSelectNearestEditableBlock","_constants","_jsxRuntime","LayoutStyle","useLayoutClasses","useLayoutStyles","ExperimentalBlockCanvas","BlockCanvas","useFlashEditableBlocks","unlock","blockEditorPrivateApis","DESIGN_POST_TYPES","PATTERN_POST_TYPE","TEMPLATE_POST_TYPE","NAVIGATION_POST_TYPE","TEMPLATE_PART_POST_TYPE","getPostContentAttributes","blocks","i","length","name","attributes","innerBlocks","nestedPostContent","checkForPostContentAtRootLevel","VisualEditor","autoFocus","styles","disableIframe","iframeProps","contentRef","className","resizeObserver","sizes","useResizeObserver","isMobileViewport","useViewportMatch","isTabletViewport","renderingMode","postContentAttributes","editedPostTemplate","wrapperBlockName","wrapperUniqueId","deviceType","isFocusedEntity","isDesignPostType","postType","isPreview","useSelect","select","getCurrentPostId","getCurrentPostType","getCurrentTemplateId","getEditorSettings","getRenderingMode","getDeviceType","editorStore","getPostType","canUser","getEditedEntityRecord","coreStore","postTypeSlug","_renderingMode","_wrapperBlockName","editorSettings","supportsTemplateMode","postTypeObject","canEditTemplate","kind","currentTemplateId","template","undefined","includes","viewable","onNavigateToPreviousEntityRecord","__unstableIsPreviewMode","isCleanNewPost","hasRootPaddingAwareAlignments","themeHasDisabledLayoutStyles","themeSupportsLayout","isZoomOutMode","getSettings","__unstableGetEditorMode","blockEditorStore","_settings","disableLayoutStyles","supportsLayout","__experimentalFeatures","useRootPaddingAwareAlignments","deviceStyles","useResizeCanvas","globalLayoutSettings","useSettings","fallbackLayout","useMemo","type","newestPostContentAttributes","content","parseableContent","parse","hasPostContentAtRootLevel","layout","align","postContentLayoutClasses","blockListLayoutClass","clsx","postContentLayoutStyles","postContentLayout","inherit","contentSize","wideSize","blockListLayout","postEditorLayout","observeTypingRef","useTypingObserver","titleRef","useRef","useEffect","current","focus","alignCSS","localRef","typewriterRef","useTypewriter","useMergeRefs","isEnabled","useSelectNearestEditableBlock","zoomOutProps","scale","frameSize","forceFullHeight","enableResizing","shouldIframe","iframeStyles","css","jsx","children","default","height","jsxs","style","Fragment","selector","contentEditable","ref","marginTop","RecursionProvider","blockName","uniqueId","BlockList","toLowerCase","dropZoneElement","parentNode","__unstableDisableDropZone","_default","exports"],"sources":["@wordpress/editor/src/components/visual-editor/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockList,\n\tstore as blockEditorStore,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseTypingObserver as useTypingObserver,\n\tuseSettings,\n\tRecursionProvider,\n\tprivateApis as blockEditorPrivateApis,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { parse } from '@wordpress/blocks';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tuseMergeRefs,\n\tuseViewportMatch,\n\tuseResizeObserver,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport PostTitle from '../post-title';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport EditTemplateBlocksNotification from './edit-template-blocks-notification';\nimport ResizableEditor from '../resizable-editor';\nimport useSelectNearestEditableBlock from './use-select-nearest-editable-block';\nimport {\n\tNAVIGATION_POST_TYPE,\n\tPATTERN_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_POST_TYPE,\n} from '../../store/constants';\n\nconst {\n\tLayoutStyle,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\tExperimentalBlockCanvas: BlockCanvas,\n\tuseFlashEditableBlocks,\n} = unlock( blockEditorPrivateApis );\n\n/**\n * These post types have a special editor where they don't allow you to fill the title\n * and they don't apply the layout styles.\n */\nconst DESIGN_POST_TYPES = [\n\tPATTERN_POST_TYPE,\n\tTEMPLATE_POST_TYPE,\n\tNAVIGATION_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n];\n\n/**\n * Given an array of nested blocks, find the first Post Content\n * block inside it, recursing through any nesting levels,\n * and return its attributes.\n *\n * @param {Array} blocks A list of blocks.\n *\n * @return {Object | undefined} The Post Content block.\n */\nfunction getPostContentAttributes( blocks ) {\n\tfor ( let i = 0; i < blocks.length; i++ ) {\n\t\tif ( blocks[ i ].name === 'core/post-content' ) {\n\t\t\treturn blocks[ i ].attributes;\n\t\t}\n\t\tif ( blocks[ i ].innerBlocks.length ) {\n\t\t\tconst nestedPostContent = getPostContentAttributes(\n\t\t\t\tblocks[ i ].innerBlocks\n\t\t\t);\n\n\t\t\tif ( nestedPostContent ) {\n\t\t\t\treturn nestedPostContent;\n\t\t\t}\n\t\t}\n\t}\n}\n\nfunction checkForPostContentAtRootLevel( blocks ) {\n\tfor ( let i = 0; i < blocks.length; i++ ) {\n\t\tif ( blocks[ i ].name === 'core/post-content' ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n}\n\nfunction VisualEditor( {\n\t// Ideally as we unify post and site editors, we won't need these props.\n\tautoFocus,\n\tstyles,\n\tdisableIframe = false,\n\tiframeProps,\n\tcontentRef,\n\tclassName,\n} ) {\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\tconst isMobileViewport = useViewportMatch( 'small', '<' );\n\tconst isTabletViewport = useViewportMatch( 'medium', '<' );\n\tconst {\n\t\trenderingMode,\n\t\tpostContentAttributes,\n\t\teditedPostTemplate = {},\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t\tdeviceType,\n\t\tisFocusedEntity,\n\t\tisDesignPostType,\n\t\tpostType,\n\t\tisPreview,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetCurrentPostId,\n\t\t\tgetCurrentPostType,\n\t\t\tgetCurrentTemplateId,\n\t\t\tgetEditorSettings,\n\t\t\tgetRenderingMode,\n\t\t\tgetDeviceType,\n\t\t} = select( editorStore );\n\t\tconst { getPostType, canUser, getEditedEntityRecord } =\n\t\t\tselect( coreStore );\n\t\tconst postTypeSlug = getCurrentPostType();\n\t\tconst _renderingMode = getRenderingMode();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( postTypeSlug === PATTERN_POST_TYPE ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( _renderingMode === 'post-only' ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst supportsTemplateMode = editorSettings.supportsTemplateMode;\n\t\tconst postTypeObject = getPostType( postTypeSlug );\n\t\tconst canEditTemplate = canUser( 'create', {\n\t\t\tkind: 'postType',\n\t\t\tname: 'wp_template',\n\t\t} );\n\t\tconst currentTemplateId = getCurrentTemplateId();\n\t\tconst template = currentTemplateId\n\t\t\t? getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tTEMPLATE_POST_TYPE,\n\t\t\t\t\tcurrentTemplateId\n\t\t\t )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\trenderingMode: _renderingMode,\n\t\t\tpostContentAttributes: editorSettings.postContentAttributes,\n\t\t\tisDesignPostType: DESIGN_POST_TYPES.includes( postTypeSlug ),\n\t\t\t// Post template fetch returns a 404 on classic themes, which\n\t\t\t// messes with e2e tests, so check it's a block theme first.\n\t\t\teditedPostTemplate:\n\t\t\t\tpostTypeObject?.viewable &&\n\t\t\t\tsupportsTemplateMode &&\n\t\t\t\tcanEditTemplate\n\t\t\t\t\t? template\n\t\t\t\t\t: undefined,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t\tdeviceType: getDeviceType(),\n\t\t\tisFocusedEntity: !! editorSettings.onNavigateToPreviousEntityRecord,\n\t\t\tpostType: postTypeSlug,\n\t\t\tisPreview: editorSettings.__unstableIsPreviewMode,\n\t\t};\n\t}, [] );\n\tconst { isCleanNewPost } = useSelect( editorStore );\n\tconst {\n\t\thasRootPaddingAwareAlignments,\n\t\tthemeHasDisabledLayoutStyles,\n\t\tthemeSupportsLayout,\n\t\tisZoomOutMode,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSettings, __unstableGetEditorMode } =\n\t\t\tselect( blockEditorStore );\n\t\tconst _settings = getSettings();\n\t\treturn {\n\t\t\tthemeHasDisabledLayoutStyles: _settings.disableLayoutStyles,\n\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\thasRootPaddingAwareAlignments:\n\t\t\t\t_settings.__experimentalFeatures?.useRootPaddingAwareAlignments,\n\t\t\tisZoomOutMode: __unstableGetEditorMode() === 'zoom-out',\n\t\t};\n\t}, [] );\n\n\tconst deviceStyles = useResizeCanvas( deviceType );\n\tconst [ globalLayoutSettings ] = useSettings( 'layout' );\n\n\t// fallbackLayout is used if there is no Post Content,\n\t// and for Post Title.\n\tconst fallbackLayout = useMemo( () => {\n\t\tif ( renderingMode !== 'post-only' || isDesignPostType ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\t// We need to ensure support for wide and full alignments,\n\t\t\t// so we add the constrained type.\n\t\t\treturn { ...globalLayoutSettings, type: 'constrained' };\n\t\t}\n\t\t// Set default layout for classic themes so all alignments are supported.\n\t\treturn { type: 'default' };\n\t}, [\n\t\trenderingMode,\n\t\tthemeSupportsLayout,\n\t\tglobalLayoutSettings,\n\t\tisDesignPostType,\n\t] );\n\n\tconst newestPostContentAttributes = useMemo( () => {\n\t\tif (\n\t\t\t! editedPostTemplate?.content &&\n\t\t\t! editedPostTemplate?.blocks &&\n\t\t\tpostContentAttributes\n\t\t) {\n\t\t\treturn postContentAttributes;\n\t\t}\n\t\t// When in template editing mode, we can access the blocks directly.\n\t\tif ( editedPostTemplate?.blocks ) {\n\t\t\treturn getPostContentAttributes( editedPostTemplate?.blocks );\n\t\t}\n\t\t// If there are no blocks, we have to parse the content string.\n\t\t// Best double-check it's a string otherwise the parse function gets unhappy.\n\t\tconst parseableContent =\n\t\t\ttypeof editedPostTemplate?.content === 'string'\n\t\t\t\t? editedPostTemplate?.content\n\t\t\t\t: '';\n\n\t\treturn getPostContentAttributes( parse( parseableContent ) ) || {};\n\t}, [\n\t\teditedPostTemplate?.content,\n\t\teditedPostTemplate?.blocks,\n\t\tpostContentAttributes,\n\t] );\n\n\tconst hasPostContentAtRootLevel = useMemo( () => {\n\t\tif ( ! editedPostTemplate?.content && ! editedPostTemplate?.blocks ) {\n\t\t\treturn false;\n\t\t}\n\t\t// When in template editing mode, we can access the blocks directly.\n\t\tif ( editedPostTemplate?.blocks ) {\n\t\t\treturn checkForPostContentAtRootLevel( editedPostTemplate?.blocks );\n\t\t}\n\t\t// If there are no blocks, we have to parse the content string.\n\t\t// Best double-check it's a string otherwise the parse function gets unhappy.\n\t\tconst parseableContent =\n\t\t\ttypeof editedPostTemplate?.content === 'string'\n\t\t\t\t? editedPostTemplate?.content\n\t\t\t\t: '';\n\n\t\treturn (\n\t\t\tcheckForPostContentAtRootLevel( parse( parseableContent ) ) || false\n\t\t);\n\t}, [ editedPostTemplate?.content, editedPostTemplate?.blocks ] );\n\n\tconst { layout = {}, align = '' } = newestPostContentAttributes || {};\n\n\tconst postContentLayoutClasses = useLayoutClasses(\n\t\tnewestPostContentAttributes,\n\t\t'core/post-content'\n\t);\n\n\tconst blockListLayoutClass = clsx(\n\t\t{\n\t\t\t'is-layout-flow': ! themeSupportsLayout,\n\t\t},\n\t\tthemeSupportsLayout && postContentLayoutClasses,\n\t\talign && `align${ align }`\n\t);\n\n\tconst postContentLayoutStyles = useLayoutStyles(\n\t\tnewestPostContentAttributes,\n\t\t'core/post-content',\n\t\t'.block-editor-block-list__layout.is-root-container'\n\t);\n\n\t// Update type for blocks using legacy layouts.\n\tconst postContentLayout = useMemo( () => {\n\t\treturn layout &&\n\t\t\t( layout?.type === 'constrained' ||\n\t\t\t\tlayout?.inherit ||\n\t\t\t\tlayout?.contentSize ||\n\t\t\t\tlayout?.wideSize )\n\t\t\t? { ...globalLayoutSettings, ...layout, type: 'constrained' }\n\t\t\t: { ...globalLayoutSettings, ...layout, type: 'default' };\n\t}, [\n\t\tlayout?.type,\n\t\tlayout?.inherit,\n\t\tlayout?.contentSize,\n\t\tlayout?.wideSize,\n\t\tglobalLayoutSettings,\n\t] );\n\n\t// If there is a Post Content block we use its layout for the block list;\n\t// if not, this must be a classic theme, in which case we use the fallback layout.\n\tconst blockListLayout = postContentAttributes\n\t\t? postContentLayout\n\t\t: fallbackLayout;\n\n\tconst postEditorLayout =\n\t\tblockListLayout?.type === 'default' && ! hasPostContentAtRootLevel\n\t\t\t? fallbackLayout\n\t\t\t: blockListLayout;\n\tconst observeTypingRef = useTypingObserver();\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( ! autoFocus || ! isCleanNewPost() ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ autoFocus, isCleanNewPost ] );\n\n\t// Add some styles for alignwide/alignfull Post Content and its children.\n\tconst alignCSS = `.is-root-container.alignwide { max-width: var(--wp--style--global--wide-size); margin-left: auto; margin-right: auto;}\n\t\t.is-root-container.alignwide:where(.is-layout-flow) > :not(.alignleft):not(.alignright) { max-width: var(--wp--style--global--wide-size);}\n\t\t.is-root-container.alignfull { max-width: none; margin-left: auto; margin-right: auto;}\n\t\t.is-root-container.alignfull:where(.is-layout-flow) > :not(.alignleft):not(.alignright) { max-width: none;}`;\n\n\tconst localRef = useRef();\n\tconst typewriterRef = useTypewriter();\n\tcontentRef = useMergeRefs( [\n\t\tlocalRef,\n\t\tcontentRef,\n\t\trenderingMode === 'post-only' ? typewriterRef : null,\n\t\tuseFlashEditableBlocks( {\n\t\t\tisEnabled: renderingMode === 'template-locked',\n\t\t} ),\n\t\tuseSelectNearestEditableBlock( {\n\t\t\tisEnabled: renderingMode === 'template-locked',\n\t\t} ),\n\t] );\n\n\tconst zoomOutProps =\n\t\tisZoomOutMode && ! isTabletViewport\n\t\t\t? {\n\t\t\t\t\tscale: 'default',\n\t\t\t\t\tframeSize: '48px',\n\t\t\t }\n\t\t\t: {};\n\n\tconst forceFullHeight = postType === NAVIGATION_POST_TYPE;\n\tconst enableResizing =\n\t\t[\n\t\t\tNAVIGATION_POST_TYPE,\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\tPATTERN_POST_TYPE,\n\t\t].includes( postType ) &&\n\t\t// Disable in previews / view mode.\n\t\t! isPreview &&\n\t\t// Disable resizing in mobile viewport.\n\t\t! isMobileViewport &&\n\t\t// Dsiable resizing in zoomed-out mode.\n\t\t! isZoomOutMode;\n\tconst shouldIframe =\n\t\t! disableIframe || [ 'Tablet', 'Mobile' ].includes( deviceType );\n\n\tconst iframeStyles = useMemo( () => {\n\t\treturn [\n\t\t\t...( styles ?? [] ),\n\t\t\t{\n\t\t\t\tcss: `.is-root-container{display:flow-root;${\n\t\t\t\t\t// Some themes will have `min-height: 100vh` for the root container,\n\t\t\t\t\t// which isn't a requirement in auto resize mode.\n\t\t\t\t\tenableResizing ? 'min-height:0!important;' : ''\n\t\t\t\t}}`,\n\t\t\t},\n\t\t];\n\t}, [ styles, enableResizing ] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx(\n\t\t\t\t'editor-visual-editor',\n\t\t\t\t// this class is here for backward compatibility reasons.\n\t\t\t\t'edit-post-visual-editor',\n\t\t\t\tclassName,\n\t\t\t\t{\n\t\t\t\t\t'has-padding': isFocusedEntity || enableResizing,\n\t\t\t\t\t'is-resizable': enableResizing,\n\t\t\t\t\t'is-iframed': shouldIframe,\n\t\t\t\t}\n\t\t\t) }\n\t\t>\n\t\t\t<ResizableEditor\n\t\t\t\tenableResizing={ enableResizing }\n\t\t\t\theight={\n\t\t\t\t\tsizes.height && ! forceFullHeight ? sizes.height : '100%'\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<BlockCanvas\n\t\t\t\t\tshouldIframe={ shouldIframe }\n\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\tstyles={ iframeStyles }\n\t\t\t\t\theight=\"100%\"\n\t\t\t\t\tiframeProps={ {\n\t\t\t\t\t\t...iframeProps,\n\t\t\t\t\t\t...zoomOutProps,\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t...iframeProps?.style,\n\t\t\t\t\t\t\t...deviceStyles,\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ themeSupportsLayout &&\n\t\t\t\t\t\t! themeHasDisabledLayoutStyles &&\n\t\t\t\t\t\trenderingMode === 'post-only' &&\n\t\t\t\t\t\t! isDesignPostType && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\tselector=\".editor-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\t\tlayout={ fallbackLayout }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\tselector=\".block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\t\tlayout={ postEditorLayout }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ align && <LayoutStyle css={ alignCSS } /> }\n\t\t\t\t\t\t\t\t{ postContentLayoutStyles && (\n\t\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\t\tlayout={ postContentLayout }\n\t\t\t\t\t\t\t\t\t\tcss={ postContentLayoutStyles }\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) }\n\t\t\t\t\t{ renderingMode === 'post-only' && ! isDesignPostType && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t'editor-visual-editor__post-title-wrapper',\n\t\t\t\t\t\t\t\t// The following class is only here for backward comapatibility\n\t\t\t\t\t\t\t\t// some themes might be using it to style the post title.\n\t\t\t\t\t\t\t\t'edit-post-visual-editor__post-title-wrapper',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'has-global-padding':\n\t\t\t\t\t\t\t\t\t\thasRootPaddingAwareAlignments,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\tref={ observeTypingRef }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t// This is using inline styles\n\t\t\t\t\t\t\t\t// so it's applied for both iframed and non iframed editors.\n\t\t\t\t\t\t\t\tmarginTop: '4rem',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<PostTitle ref={ titleRef } />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t\t<RecursionProvider\n\t\t\t\t\t\tblockName={ wrapperBlockName }\n\t\t\t\t\t\tuniqueId={ wrapperUniqueId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t'is-' + deviceType.toLowerCase() + '-preview',\n\t\t\t\t\t\t\t\trenderingMode !== 'post-only' ||\n\t\t\t\t\t\t\t\t\tisDesignPostType\n\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t: `${ blockListLayoutClass } wp-block-post-content` // Ensure root level blocks receive default/flow blockGap styling rules.\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tlayout={ blockListLayout }\n\t\t\t\t\t\t\tdropZoneElement={\n\t\t\t\t\t\t\t\t// When iframed, pass in the html element of the iframe to\n\t\t\t\t\t\t\t\t// ensure the drop zone extends to the edges of the iframe.\n\t\t\t\t\t\t\t\tdisableIframe\n\t\t\t\t\t\t\t\t\t? localRef.current\n\t\t\t\t\t\t\t\t\t: localRef.current?.parentNode\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t__unstableDisableDropZone={\n\t\t\t\t\t\t\t\t// In template preview mode, disable drop zones at the root of the template.\n\t\t\t\t\t\t\t\trenderingMode === 'template-locked'\n\t\t\t\t\t\t\t\t\t? true\n\t\t\t\t\t\t\t\t\t: false\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ renderingMode === 'template-locked' && (\n\t\t\t\t\t\t\t<EditTemplateBlocksNotification\n\t\t\t\t\t\t\t\tcontentRef={ localRef }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t{\n\t\t\t\t\t\t// Avoid resize listeners when not needed,\n\t\t\t\t\t\t// these will trigger unnecessary re-renders\n\t\t\t\t\t\t// when animating the iframe width.\n\t\t\t\t\t\tenableResizing && resizeObserver\n\t\t\t\t\t}\n\t\t\t\t</BlockCanvas>\n\t\t\t</ResizableEditor>\n\t\t</div>\n\t);\n}\n\nexport default VisualEditor;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_blockEditor","_element","_data","_blocks","_coreData","_compose","_postTitle","_store","_lockUnlock","_editTemplateBlocksNotification","_resizableEditor","_useSelectNearestEditableBlock","_constants","_jsxRuntime","LayoutStyle","useLayoutClasses","useLayoutStyles","ExperimentalBlockCanvas","BlockCanvas","useFlashEditableBlocks","unlock","blockEditorPrivateApis","DESIGN_POST_TYPES","PATTERN_POST_TYPE","TEMPLATE_POST_TYPE","NAVIGATION_POST_TYPE","TEMPLATE_PART_POST_TYPE","getPostContentAttributes","blocks","i","length","name","attributes","innerBlocks","nestedPostContent","checkForPostContentAtRootLevel","VisualEditor","autoFocus","styles","disableIframe","iframeProps","contentRef","className","resizeObserver","sizes","useResizeObserver","isMobileViewport","useViewportMatch","isTabletViewport","renderingMode","postContentAttributes","editedPostTemplate","wrapperBlockName","wrapperUniqueId","deviceType","isFocusedEntity","isDesignPostType","postType","isPreview","useSelect","select","getCurrentPostId","getCurrentPostType","getCurrentTemplateId","getEditorSettings","getRenderingMode","getDeviceType","editorStore","getPostType","getEditedEntityRecord","coreStore","postTypeSlug","_renderingMode","_wrapperBlockName","editorSettings","supportsTemplateMode","postTypeObject","currentTemplateId","template","undefined","includes","viewable","onNavigateToPreviousEntityRecord","__unstableIsPreviewMode","isCleanNewPost","hasRootPaddingAwareAlignments","themeHasDisabledLayoutStyles","themeSupportsLayout","isZoomOutMode","getSettings","__unstableGetEditorMode","blockEditorStore","_settings","disableLayoutStyles","supportsLayout","__experimentalFeatures","useRootPaddingAwareAlignments","deviceStyles","useResizeCanvas","globalLayoutSettings","useSettings","fallbackLayout","useMemo","type","newestPostContentAttributes","content","parseableContent","parse","hasPostContentAtRootLevel","layout","align","postContentLayoutClasses","blockListLayoutClass","clsx","postContentLayoutStyles","postContentLayout","inherit","contentSize","wideSize","blockListLayout","postEditorLayout","observeTypingRef","useTypingObserver","titleRef","useRef","useEffect","current","focus","alignCSS","localRef","typewriterRef","useTypewriter","useMergeRefs","isEnabled","useSelectNearestEditableBlock","zoomOutProps","scale","frameSize","forceFullHeight","enableResizing","shouldIframe","iframeStyles","css","jsx","children","default","height","jsxs","style","Fragment","selector","contentEditable","ref","marginTop","RecursionProvider","blockName","uniqueId","BlockList","toLowerCase","dropZoneElement","parentNode","__unstableDisableDropZone","_default","exports"],"sources":["@wordpress/editor/src/components/visual-editor/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockList,\n\tstore as blockEditorStore,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseTypingObserver as useTypingObserver,\n\tuseSettings,\n\tRecursionProvider,\n\tprivateApis as blockEditorPrivateApis,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { parse } from '@wordpress/blocks';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tuseMergeRefs,\n\tuseViewportMatch,\n\tuseResizeObserver,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport PostTitle from '../post-title';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport EditTemplateBlocksNotification from './edit-template-blocks-notification';\nimport ResizableEditor from '../resizable-editor';\nimport useSelectNearestEditableBlock from './use-select-nearest-editable-block';\nimport {\n\tNAVIGATION_POST_TYPE,\n\tPATTERN_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_POST_TYPE,\n} from '../../store/constants';\n\nconst {\n\tLayoutStyle,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\tExperimentalBlockCanvas: BlockCanvas,\n\tuseFlashEditableBlocks,\n} = unlock( blockEditorPrivateApis );\n\n/**\n * These post types have a special editor where they don't allow you to fill the title\n * and they don't apply the layout styles.\n */\nconst DESIGN_POST_TYPES = [\n\tPATTERN_POST_TYPE,\n\tTEMPLATE_POST_TYPE,\n\tNAVIGATION_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n];\n\n/**\n * Given an array of nested blocks, find the first Post Content\n * block inside it, recursing through any nesting levels,\n * and return its attributes.\n *\n * @param {Array} blocks A list of blocks.\n *\n * @return {Object | undefined} The Post Content block.\n */\nfunction getPostContentAttributes( blocks ) {\n\tfor ( let i = 0; i < blocks.length; i++ ) {\n\t\tif ( blocks[ i ].name === 'core/post-content' ) {\n\t\t\treturn blocks[ i ].attributes;\n\t\t}\n\t\tif ( blocks[ i ].innerBlocks.length ) {\n\t\t\tconst nestedPostContent = getPostContentAttributes(\n\t\t\t\tblocks[ i ].innerBlocks\n\t\t\t);\n\n\t\t\tif ( nestedPostContent ) {\n\t\t\t\treturn nestedPostContent;\n\t\t\t}\n\t\t}\n\t}\n}\n\nfunction checkForPostContentAtRootLevel( blocks ) {\n\tfor ( let i = 0; i < blocks.length; i++ ) {\n\t\tif ( blocks[ i ].name === 'core/post-content' ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n}\n\nfunction VisualEditor( {\n\t// Ideally as we unify post and site editors, we won't need these props.\n\tautoFocus,\n\tstyles,\n\tdisableIframe = false,\n\tiframeProps,\n\tcontentRef,\n\tclassName,\n} ) {\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\tconst isMobileViewport = useViewportMatch( 'small', '<' );\n\tconst isTabletViewport = useViewportMatch( 'medium', '<' );\n\tconst {\n\t\trenderingMode,\n\t\tpostContentAttributes,\n\t\teditedPostTemplate = {},\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t\tdeviceType,\n\t\tisFocusedEntity,\n\t\tisDesignPostType,\n\t\tpostType,\n\t\tisPreview,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetCurrentPostId,\n\t\t\tgetCurrentPostType,\n\t\t\tgetCurrentTemplateId,\n\t\t\tgetEditorSettings,\n\t\t\tgetRenderingMode,\n\t\t\tgetDeviceType,\n\t\t} = select( editorStore );\n\t\tconst { getPostType, getEditedEntityRecord } = select( coreStore );\n\t\tconst postTypeSlug = getCurrentPostType();\n\t\tconst _renderingMode = getRenderingMode();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( postTypeSlug === PATTERN_POST_TYPE ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( _renderingMode === 'post-only' ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst supportsTemplateMode = editorSettings.supportsTemplateMode;\n\t\tconst postTypeObject = getPostType( postTypeSlug );\n\t\tconst currentTemplateId = getCurrentTemplateId();\n\t\tconst template = currentTemplateId\n\t\t\t? getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tTEMPLATE_POST_TYPE,\n\t\t\t\t\tcurrentTemplateId\n\t\t\t )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\trenderingMode: _renderingMode,\n\t\t\tpostContentAttributes: editorSettings.postContentAttributes,\n\t\t\tisDesignPostType: DESIGN_POST_TYPES.includes( postTypeSlug ),\n\t\t\t// Post template fetch returns a 404 on classic themes, which\n\t\t\t// messes with e2e tests, so check it's a block theme first.\n\t\t\teditedPostTemplate:\n\t\t\t\tpostTypeObject?.viewable && supportsTemplateMode\n\t\t\t\t\t? template\n\t\t\t\t\t: undefined,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t\tdeviceType: getDeviceType(),\n\t\t\tisFocusedEntity: !! editorSettings.onNavigateToPreviousEntityRecord,\n\t\t\tpostType: postTypeSlug,\n\t\t\tisPreview: editorSettings.__unstableIsPreviewMode,\n\t\t};\n\t}, [] );\n\tconst { isCleanNewPost } = useSelect( editorStore );\n\tconst {\n\t\thasRootPaddingAwareAlignments,\n\t\tthemeHasDisabledLayoutStyles,\n\t\tthemeSupportsLayout,\n\t\tisZoomOutMode,\n\t} = useSelect( ( select ) => {\n\t\tconst { getSettings, __unstableGetEditorMode } =\n\t\t\tselect( blockEditorStore );\n\t\tconst _settings = getSettings();\n\t\treturn {\n\t\t\tthemeHasDisabledLayoutStyles: _settings.disableLayoutStyles,\n\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\thasRootPaddingAwareAlignments:\n\t\t\t\t_settings.__experimentalFeatures?.useRootPaddingAwareAlignments,\n\t\t\tisZoomOutMode: __unstableGetEditorMode() === 'zoom-out',\n\t\t};\n\t}, [] );\n\n\tconst deviceStyles = useResizeCanvas( deviceType );\n\tconst [ globalLayoutSettings ] = useSettings( 'layout' );\n\n\t// fallbackLayout is used if there is no Post Content,\n\t// and for Post Title.\n\tconst fallbackLayout = useMemo( () => {\n\t\tif ( renderingMode !== 'post-only' || isDesignPostType ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\t// We need to ensure support for wide and full alignments,\n\t\t\t// so we add the constrained type.\n\t\t\treturn { ...globalLayoutSettings, type: 'constrained' };\n\t\t}\n\t\t// Set default layout for classic themes so all alignments are supported.\n\t\treturn { type: 'default' };\n\t}, [\n\t\trenderingMode,\n\t\tthemeSupportsLayout,\n\t\tglobalLayoutSettings,\n\t\tisDesignPostType,\n\t] );\n\n\tconst newestPostContentAttributes = useMemo( () => {\n\t\tif (\n\t\t\t! editedPostTemplate?.content &&\n\t\t\t! editedPostTemplate?.blocks &&\n\t\t\tpostContentAttributes\n\t\t) {\n\t\t\treturn postContentAttributes;\n\t\t}\n\t\t// When in template editing mode, we can access the blocks directly.\n\t\tif ( editedPostTemplate?.blocks ) {\n\t\t\treturn getPostContentAttributes( editedPostTemplate?.blocks );\n\t\t}\n\t\t// If there are no blocks, we have to parse the content string.\n\t\t// Best double-check it's a string otherwise the parse function gets unhappy.\n\t\tconst parseableContent =\n\t\t\ttypeof editedPostTemplate?.content === 'string'\n\t\t\t\t? editedPostTemplate?.content\n\t\t\t\t: '';\n\n\t\treturn getPostContentAttributes( parse( parseableContent ) ) || {};\n\t}, [\n\t\teditedPostTemplate?.content,\n\t\teditedPostTemplate?.blocks,\n\t\tpostContentAttributes,\n\t] );\n\n\tconst hasPostContentAtRootLevel = useMemo( () => {\n\t\tif ( ! editedPostTemplate?.content && ! editedPostTemplate?.blocks ) {\n\t\t\treturn false;\n\t\t}\n\t\t// When in template editing mode, we can access the blocks directly.\n\t\tif ( editedPostTemplate?.blocks ) {\n\t\t\treturn checkForPostContentAtRootLevel( editedPostTemplate?.blocks );\n\t\t}\n\t\t// If there are no blocks, we have to parse the content string.\n\t\t// Best double-check it's a string otherwise the parse function gets unhappy.\n\t\tconst parseableContent =\n\t\t\ttypeof editedPostTemplate?.content === 'string'\n\t\t\t\t? editedPostTemplate?.content\n\t\t\t\t: '';\n\n\t\treturn (\n\t\t\tcheckForPostContentAtRootLevel( parse( parseableContent ) ) || false\n\t\t);\n\t}, [ editedPostTemplate?.content, editedPostTemplate?.blocks ] );\n\n\tconst { layout = {}, align = '' } = newestPostContentAttributes || {};\n\n\tconst postContentLayoutClasses = useLayoutClasses(\n\t\tnewestPostContentAttributes,\n\t\t'core/post-content'\n\t);\n\n\tconst blockListLayoutClass = clsx(\n\t\t{\n\t\t\t'is-layout-flow': ! themeSupportsLayout,\n\t\t},\n\t\tthemeSupportsLayout && postContentLayoutClasses,\n\t\talign && `align${ align }`\n\t);\n\n\tconst postContentLayoutStyles = useLayoutStyles(\n\t\tnewestPostContentAttributes,\n\t\t'core/post-content',\n\t\t'.block-editor-block-list__layout.is-root-container'\n\t);\n\n\t// Update type for blocks using legacy layouts.\n\tconst postContentLayout = useMemo( () => {\n\t\treturn layout &&\n\t\t\t( layout?.type === 'constrained' ||\n\t\t\t\tlayout?.inherit ||\n\t\t\t\tlayout?.contentSize ||\n\t\t\t\tlayout?.wideSize )\n\t\t\t? { ...globalLayoutSettings, ...layout, type: 'constrained' }\n\t\t\t: { ...globalLayoutSettings, ...layout, type: 'default' };\n\t}, [\n\t\tlayout?.type,\n\t\tlayout?.inherit,\n\t\tlayout?.contentSize,\n\t\tlayout?.wideSize,\n\t\tglobalLayoutSettings,\n\t] );\n\n\t// If there is a Post Content block we use its layout for the block list;\n\t// if not, this must be a classic theme, in which case we use the fallback layout.\n\tconst blockListLayout = postContentAttributes\n\t\t? postContentLayout\n\t\t: fallbackLayout;\n\n\tconst postEditorLayout =\n\t\tblockListLayout?.type === 'default' && ! hasPostContentAtRootLevel\n\t\t\t? fallbackLayout\n\t\t\t: blockListLayout;\n\tconst observeTypingRef = useTypingObserver();\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( ! autoFocus || ! isCleanNewPost() ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ autoFocus, isCleanNewPost ] );\n\n\t// Add some styles for alignwide/alignfull Post Content and its children.\n\tconst alignCSS = `.is-root-container.alignwide { max-width: var(--wp--style--global--wide-size); margin-left: auto; margin-right: auto;}\n\t\t.is-root-container.alignwide:where(.is-layout-flow) > :not(.alignleft):not(.alignright) { max-width: var(--wp--style--global--wide-size);}\n\t\t.is-root-container.alignfull { max-width: none; margin-left: auto; margin-right: auto;}\n\t\t.is-root-container.alignfull:where(.is-layout-flow) > :not(.alignleft):not(.alignright) { max-width: none;}`;\n\n\tconst localRef = useRef();\n\tconst typewriterRef = useTypewriter();\n\tcontentRef = useMergeRefs( [\n\t\tlocalRef,\n\t\tcontentRef,\n\t\trenderingMode === 'post-only' ? typewriterRef : null,\n\t\tuseFlashEditableBlocks( {\n\t\t\tisEnabled: renderingMode === 'template-locked',\n\t\t} ),\n\t\tuseSelectNearestEditableBlock( {\n\t\t\tisEnabled: renderingMode === 'template-locked',\n\t\t} ),\n\t] );\n\n\tconst zoomOutProps =\n\t\tisZoomOutMode && ! isTabletViewport\n\t\t\t? {\n\t\t\t\t\tscale: 'default',\n\t\t\t\t\tframeSize: '48px',\n\t\t\t }\n\t\t\t: {};\n\n\tconst forceFullHeight = postType === NAVIGATION_POST_TYPE;\n\tconst enableResizing =\n\t\t[\n\t\t\tNAVIGATION_POST_TYPE,\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\tPATTERN_POST_TYPE,\n\t\t].includes( postType ) &&\n\t\t// Disable in previews / view mode.\n\t\t! isPreview &&\n\t\t// Disable resizing in mobile viewport.\n\t\t! isMobileViewport &&\n\t\t// Dsiable resizing in zoomed-out mode.\n\t\t! isZoomOutMode;\n\tconst shouldIframe =\n\t\t! disableIframe || [ 'Tablet', 'Mobile' ].includes( deviceType );\n\n\tconst iframeStyles = useMemo( () => {\n\t\treturn [\n\t\t\t...( styles ?? [] ),\n\t\t\t{\n\t\t\t\tcss: `.is-root-container{display:flow-root;${\n\t\t\t\t\t// Some themes will have `min-height: 100vh` for the root container,\n\t\t\t\t\t// which isn't a requirement in auto resize mode.\n\t\t\t\t\tenableResizing ? 'min-height:0!important;' : ''\n\t\t\t\t}}`,\n\t\t\t},\n\t\t];\n\t}, [ styles, enableResizing ] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx(\n\t\t\t\t'editor-visual-editor',\n\t\t\t\t// this class is here for backward compatibility reasons.\n\t\t\t\t'edit-post-visual-editor',\n\t\t\t\tclassName,\n\t\t\t\t{\n\t\t\t\t\t'has-padding': isFocusedEntity || enableResizing,\n\t\t\t\t\t'is-resizable': enableResizing,\n\t\t\t\t\t'is-iframed': shouldIframe,\n\t\t\t\t}\n\t\t\t) }\n\t\t>\n\t\t\t<ResizableEditor\n\t\t\t\tenableResizing={ enableResizing }\n\t\t\t\theight={\n\t\t\t\t\tsizes.height && ! forceFullHeight ? sizes.height : '100%'\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<BlockCanvas\n\t\t\t\t\tshouldIframe={ shouldIframe }\n\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\tstyles={ iframeStyles }\n\t\t\t\t\theight=\"100%\"\n\t\t\t\t\tiframeProps={ {\n\t\t\t\t\t\t...iframeProps,\n\t\t\t\t\t\t...zoomOutProps,\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t...iframeProps?.style,\n\t\t\t\t\t\t\t...deviceStyles,\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ themeSupportsLayout &&\n\t\t\t\t\t\t! themeHasDisabledLayoutStyles &&\n\t\t\t\t\t\trenderingMode === 'post-only' &&\n\t\t\t\t\t\t! isDesignPostType && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\tselector=\".editor-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\t\tlayout={ fallbackLayout }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\tselector=\".block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\t\tlayout={ postEditorLayout }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ align && <LayoutStyle css={ alignCSS } /> }\n\t\t\t\t\t\t\t\t{ postContentLayoutStyles && (\n\t\t\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\t\t\tlayout={ postContentLayout }\n\t\t\t\t\t\t\t\t\t\tcss={ postContentLayoutStyles }\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) }\n\t\t\t\t\t{ renderingMode === 'post-only' && ! isDesignPostType && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t'editor-visual-editor__post-title-wrapper',\n\t\t\t\t\t\t\t\t// The following class is only here for backward comapatibility\n\t\t\t\t\t\t\t\t// some themes might be using it to style the post title.\n\t\t\t\t\t\t\t\t'edit-post-visual-editor__post-title-wrapper',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'has-global-padding':\n\t\t\t\t\t\t\t\t\t\thasRootPaddingAwareAlignments,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\tref={ observeTypingRef }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t// This is using inline styles\n\t\t\t\t\t\t\t\t// so it's applied for both iframed and non iframed editors.\n\t\t\t\t\t\t\t\tmarginTop: '4rem',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<PostTitle ref={ titleRef } />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t\t<RecursionProvider\n\t\t\t\t\t\tblockName={ wrapperBlockName }\n\t\t\t\t\t\tuniqueId={ wrapperUniqueId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t'is-' + deviceType.toLowerCase() + '-preview',\n\t\t\t\t\t\t\t\trenderingMode !== 'post-only' ||\n\t\t\t\t\t\t\t\t\tisDesignPostType\n\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t: `${ blockListLayoutClass } wp-block-post-content` // Ensure root level blocks receive default/flow blockGap styling rules.\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tlayout={ blockListLayout }\n\t\t\t\t\t\t\tdropZoneElement={\n\t\t\t\t\t\t\t\t// When iframed, pass in the html element of the iframe to\n\t\t\t\t\t\t\t\t// ensure the drop zone extends to the edges of the iframe.\n\t\t\t\t\t\t\t\tdisableIframe\n\t\t\t\t\t\t\t\t\t? localRef.current\n\t\t\t\t\t\t\t\t\t: localRef.current?.parentNode\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t__unstableDisableDropZone={\n\t\t\t\t\t\t\t\t// In template preview mode, disable drop zones at the root of the template.\n\t\t\t\t\t\t\t\trenderingMode === 'template-locked'\n\t\t\t\t\t\t\t\t\t? true\n\t\t\t\t\t\t\t\t\t: false\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ renderingMode === 'template-locked' && (\n\t\t\t\t\t\t\t<EditTemplateBlocksNotification\n\t\t\t\t\t\t\t\tcontentRef={ localRef }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t{\n\t\t\t\t\t\t// Avoid resize listeners when not needed,\n\t\t\t\t\t\t// these will trigger unnecessary re-renders\n\t\t\t\t\t\t// when animating the iframe width.\n\t\t\t\t\t\tenableResizing && resizeObserver\n\t\t\t\t\t}\n\t\t\t\t</BlockCanvas>\n\t\t\t</ResizableEditor>\n\t\t</div>\n\t);\n}\n\nexport default VisualEditor;\n"],"mappings":"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","ignoreList":[]}
@@ -8,6 +8,7 @@ var _changeCase = require("change-case");
8
8
  var _clientZip = require("client-zip");
9
9
  var _blob = require("@wordpress/blob");
10
10
  var _i18n = require("@wordpress/i18n");
11
+ var _icons = require("@wordpress/icons");
11
12
  var _utils = require("./utils");
12
13
  /**
13
14
  * External dependencies
@@ -32,6 +33,7 @@ function getJsonFromItem(item) {
32
33
  const exportPattern = {
33
34
  id: 'export-pattern',
34
35
  label: (0, _i18n.__)('Export as JSON'),
36
+ icon: _icons.download,
35
37
  supportsBulk: true,
36
38
  isEligible: item => item.type === 'wp_block',
37
39
  callback: async items => {