@wordpress/editor 14.5.0 → 14.7.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 (415) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +37 -0
  3. package/build/bindings/post-meta.js +12 -10
  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/create-template-part-modal/index.js +1 -0
  10. package/build/components/create-template-part-modal/index.js.map +1 -1
  11. package/build/components/document-bar/index.js +4 -4
  12. package/build/components/document-bar/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 +17 -4
  22. package/build/components/global-styles-provider/index.js.map +1 -1
  23. package/build/components/index.js +8 -0
  24. package/build/components/index.js.map +1 -1
  25. package/build/components/inserter-sidebar/index.js +8 -7
  26. package/build/components/inserter-sidebar/index.js.map +1 -1
  27. package/build/components/local-autosave-monitor/index.js +5 -5
  28. package/build/components/local-autosave-monitor/index.js.map +1 -1
  29. package/build/components/page-attributes/parent.js +10 -6
  30. package/build/components/page-attributes/parent.js.map +1 -1
  31. package/build/components/plugin-preview-menu-item/index.js +57 -0
  32. package/build/components/plugin-preview-menu-item/index.js.map +1 -0
  33. package/build/components/post-actions/actions.js +4 -499
  34. package/build/components/post-actions/actions.js.map +1 -1
  35. package/build/components/post-actions/index.js +13 -25
  36. package/build/components/post-actions/index.js.map +1 -1
  37. package/build/components/post-card-panel/index.js +20 -20
  38. package/build/components/post-card-panel/index.js.map +1 -1
  39. package/build/components/post-excerpt/panel.js +4 -1
  40. package/build/components/post-excerpt/panel.js.map +1 -1
  41. package/build/components/post-featured-image/index.js +14 -3
  42. package/build/components/post-featured-image/index.js.map +1 -1
  43. package/build/components/post-format/index.js +4 -1
  44. package/build/components/post-format/index.js.map +1 -1
  45. package/build/components/post-last-revision/index.js +4 -1
  46. package/build/components/post-last-revision/index.js.map +1 -1
  47. package/build/components/post-locked-modal/index.js +12 -3
  48. package/build/components/post-locked-modal/index.js.map +1 -1
  49. package/build/components/post-publish-panel/index.js +4 -1
  50. package/build/components/post-publish-panel/index.js.map +1 -1
  51. package/build/components/post-publish-panel/maybe-post-format-panel.js +4 -1
  52. package/build/components/post-publish-panel/maybe-post-format-panel.js.map +1 -1
  53. package/build/components/post-publish-panel/maybe-upload-media.js +14 -8
  54. package/build/components/post-publish-panel/maybe-upload-media.js.map +1 -1
  55. package/build/components/post-publish-panel/postpublish.js +4 -0
  56. package/build/components/post-publish-panel/postpublish.js.map +1 -1
  57. package/build/components/post-slug/index.js +1 -0
  58. package/build/components/post-slug/index.js.map +1 -1
  59. package/build/components/post-status/index.js +4 -2
  60. package/build/components/post-status/index.js.map +1 -1
  61. package/build/components/post-taxonomies/hierarchical-term-selector.js +6 -2
  62. package/build/components/post-taxonomies/hierarchical-term-selector.js.map +1 -1
  63. package/build/components/post-taxonomies/most-used-terms.js +4 -1
  64. package/build/components/post-taxonomies/most-used-terms.js.map +1 -1
  65. package/build/components/post-template/block-theme.js +13 -4
  66. package/build/components/post-template/block-theme.js.map +1 -1
  67. package/build/components/post-template/classic-theme.js +4 -1
  68. package/build/components/post-template/classic-theme.js.map +1 -1
  69. package/build/components/post-title/index.js +32 -46
  70. package/build/components/post-title/index.js.map +1 -1
  71. package/build/components/post-url/index.js +10 -6
  72. package/build/components/post-url/index.js.map +1 -1
  73. package/build/components/preview-dropdown/index.js +26 -14
  74. package/build/components/preview-dropdown/index.js.map +1 -1
  75. package/build/components/provider/use-block-editor-settings.js +5 -6
  76. package/build/components/provider/use-block-editor-settings.js.map +1 -1
  77. package/build/components/save-publish-panels/index.js +8 -2
  78. package/build/components/save-publish-panels/index.js.map +1 -1
  79. package/build/components/sidebar/post-summary.js +10 -7
  80. package/build/components/sidebar/post-summary.js.map +1 -1
  81. package/build/components/start-template-options/index.js +4 -1
  82. package/build/components/start-template-options/index.js.map +1 -1
  83. package/build/components/table-of-contents/index.js +4 -1
  84. package/build/components/table-of-contents/index.js.map +1 -1
  85. package/build/components/template-content-panel/index.js +1 -1
  86. package/build/components/template-content-panel/index.js.map +1 -1
  87. package/build/components/text-editor/index.js +4 -1
  88. package/build/components/text-editor/index.js.map +1 -1
  89. package/build/components/visual-editor/index.js +1 -6
  90. package/build/components/visual-editor/index.js.map +1 -1
  91. package/build/dataviews/actions/duplicate-pattern.js +48 -0
  92. package/build/dataviews/actions/duplicate-pattern.js.map +1 -0
  93. package/build/dataviews/actions/duplicate-post.js +146 -0
  94. package/build/dataviews/actions/duplicate-post.js.map +1 -0
  95. package/build/dataviews/actions/duplicate-post.native.js +9 -0
  96. package/build/dataviews/actions/duplicate-post.native.js.map +1 -0
  97. package/build/dataviews/actions/duplicate-template-part.js +67 -0
  98. package/build/dataviews/actions/duplicate-template-part.js.map +1 -0
  99. package/build/dataviews/actions/export-pattern.js +2 -0
  100. package/build/dataviews/actions/export-pattern.js.map +1 -1
  101. package/build/dataviews/actions/permanently-delete-post.js +2 -0
  102. package/build/dataviews/actions/permanently-delete-post.js.map +1 -1
  103. package/build/dataviews/actions/rename-post.js +125 -0
  104. package/build/dataviews/actions/rename-post.js.map +1 -0
  105. package/build/dataviews/actions/reorder-page.js +116 -0
  106. package/build/dataviews/actions/reorder-page.js.map +1 -0
  107. package/build/dataviews/actions/reorder-page.native.js +9 -0
  108. package/build/dataviews/actions/reorder-page.native.js.map +1 -0
  109. package/build/dataviews/actions/reset-post.js +9 -3
  110. package/build/dataviews/actions/reset-post.js.map +1 -1
  111. package/build/dataviews/actions/trash-post.js +8 -2
  112. package/build/dataviews/actions/trash-post.js.map +1 -1
  113. package/build/dataviews/actions/utils.js +9 -1
  114. package/build/dataviews/actions/utils.js.map +1 -1
  115. package/build/dataviews/actions/view-post-revisions.js +49 -0
  116. package/build/dataviews/actions/view-post-revisions.js.map +1 -0
  117. package/build/dataviews/actions/view-post.js +36 -0
  118. package/build/dataviews/actions/view-post.js.map +1 -0
  119. package/build/dataviews/fields/index.js +32 -0
  120. package/build/dataviews/fields/index.js.map +1 -0
  121. package/build/dataviews/store/private-actions.js +16 -2
  122. package/build/dataviews/store/private-actions.js.map +1 -1
  123. package/build/dataviews/types.js.map +1 -1
  124. package/build/private-apis.js +2 -2
  125. package/build/private-apis.js.map +1 -1
  126. package/build/store/private-actions.js +2 -2
  127. package/build/store/private-actions.js.map +1 -1
  128. package/build/store/utils/is-template-revertable.js +1 -1
  129. package/build/store/utils/is-template-revertable.js.map +1 -1
  130. package/build-module/bindings/post-meta.js +12 -10
  131. package/build-module/bindings/post-meta.js.map +1 -1
  132. package/build-module/components/block-manager/index.js +4 -1
  133. package/build-module/components/block-manager/index.js.map +1 -1
  134. package/build-module/components/block-settings-menu/content-only-settings-menu.js +6 -9
  135. package/build-module/components/block-settings-menu/content-only-settings-menu.js.map +1 -1
  136. package/build-module/components/create-template-part-modal/index.js +1 -0
  137. package/build-module/components/create-template-part-modal/index.js.map +1 -1
  138. package/build-module/components/document-bar/index.js +4 -4
  139. package/build-module/components/document-bar/index.js.map +1 -1
  140. package/build-module/components/editor-history/redo.js +4 -1
  141. package/build-module/components/editor-history/redo.js.map +1 -1
  142. package/build-module/components/editor-history/undo.js +4 -1
  143. package/build-module/components/editor-history/undo.js.map +1 -1
  144. package/build-module/components/editor-interface/index.js +2 -3
  145. package/build-module/components/editor-interface/index.js.map +1 -1
  146. package/build-module/components/error-boundary/index.js +4 -1
  147. package/build-module/components/error-boundary/index.js.map +1 -1
  148. package/build-module/components/global-styles-provider/index.js +17 -4
  149. package/build-module/components/global-styles-provider/index.js.map +1 -1
  150. package/build-module/components/index.js +1 -0
  151. package/build-module/components/index.js.map +1 -1
  152. package/build-module/components/inserter-sidebar/index.js +8 -7
  153. package/build-module/components/inserter-sidebar/index.js.map +1 -1
  154. package/build-module/components/local-autosave-monitor/index.js +5 -5
  155. package/build-module/components/local-autosave-monitor/index.js.map +1 -1
  156. package/build-module/components/page-attributes/parent.js +10 -6
  157. package/build-module/components/page-attributes/parent.js.map +1 -1
  158. package/build-module/components/plugin-preview-menu-item/index.js +52 -0
  159. package/build-module/components/plugin-preview-menu-item/index.js.map +1 -0
  160. package/build-module/components/post-actions/actions.js +5 -501
  161. package/build-module/components/post-actions/actions.js.map +1 -1
  162. package/build-module/components/post-actions/index.js +13 -25
  163. package/build-module/components/post-actions/index.js.map +1 -1
  164. package/build-module/components/post-card-panel/index.js +20 -20
  165. package/build-module/components/post-card-panel/index.js.map +1 -1
  166. package/build-module/components/post-excerpt/panel.js +4 -1
  167. package/build-module/components/post-excerpt/panel.js.map +1 -1
  168. package/build-module/components/post-featured-image/index.js +14 -3
  169. package/build-module/components/post-featured-image/index.js.map +1 -1
  170. package/build-module/components/post-format/index.js +4 -1
  171. package/build-module/components/post-format/index.js.map +1 -1
  172. package/build-module/components/post-last-revision/index.js +4 -1
  173. package/build-module/components/post-last-revision/index.js.map +1 -1
  174. package/build-module/components/post-locked-modal/index.js +12 -3
  175. package/build-module/components/post-locked-modal/index.js.map +1 -1
  176. package/build-module/components/post-publish-panel/index.js +4 -1
  177. package/build-module/components/post-publish-panel/index.js.map +1 -1
  178. package/build-module/components/post-publish-panel/maybe-post-format-panel.js +4 -1
  179. package/build-module/components/post-publish-panel/maybe-post-format-panel.js.map +1 -1
  180. package/build-module/components/post-publish-panel/maybe-upload-media.js +14 -8
  181. package/build-module/components/post-publish-panel/maybe-upload-media.js.map +1 -1
  182. package/build-module/components/post-publish-panel/postpublish.js +4 -0
  183. package/build-module/components/post-publish-panel/postpublish.js.map +1 -1
  184. package/build-module/components/post-slug/index.js +1 -0
  185. package/build-module/components/post-slug/index.js.map +1 -1
  186. package/build-module/components/post-status/index.js +4 -2
  187. package/build-module/components/post-status/index.js.map +1 -1
  188. package/build-module/components/post-taxonomies/hierarchical-term-selector.js +7 -3
  189. package/build-module/components/post-taxonomies/hierarchical-term-selector.js.map +1 -1
  190. package/build-module/components/post-taxonomies/most-used-terms.js +4 -1
  191. package/build-module/components/post-taxonomies/most-used-terms.js.map +1 -1
  192. package/build-module/components/post-template/block-theme.js +13 -4
  193. package/build-module/components/post-template/block-theme.js.map +1 -1
  194. package/build-module/components/post-template/classic-theme.js +4 -1
  195. package/build-module/components/post-template/classic-theme.js.map +1 -1
  196. package/build-module/components/post-title/index.js +33 -47
  197. package/build-module/components/post-title/index.js.map +1 -1
  198. package/build-module/components/post-url/index.js +11 -7
  199. package/build-module/components/post-url/index.js.map +1 -1
  200. package/build-module/components/preview-dropdown/index.js +26 -14
  201. package/build-module/components/preview-dropdown/index.js.map +1 -1
  202. package/build-module/components/provider/use-block-editor-settings.js +6 -7
  203. package/build-module/components/provider/use-block-editor-settings.js.map +1 -1
  204. package/build-module/components/save-publish-panels/index.js +8 -2
  205. package/build-module/components/save-publish-panels/index.js.map +1 -1
  206. package/build-module/components/sidebar/post-summary.js +10 -7
  207. package/build-module/components/sidebar/post-summary.js.map +1 -1
  208. package/build-module/components/start-template-options/index.js +4 -1
  209. package/build-module/components/start-template-options/index.js.map +1 -1
  210. package/build-module/components/table-of-contents/index.js +4 -1
  211. package/build-module/components/table-of-contents/index.js.map +1 -1
  212. package/build-module/components/template-content-panel/index.js +1 -1
  213. package/build-module/components/template-content-panel/index.js.map +1 -1
  214. package/build-module/components/text-editor/index.js +4 -1
  215. package/build-module/components/text-editor/index.js.map +1 -1
  216. package/build-module/components/visual-editor/index.js +1 -6
  217. package/build-module/components/visual-editor/index.js.map +1 -1
  218. package/build-module/dataviews/actions/duplicate-pattern.js +39 -0
  219. package/build-module/dataviews/actions/duplicate-pattern.js.map +1 -0
  220. package/build-module/dataviews/actions/duplicate-post.js +139 -0
  221. package/build-module/dataviews/actions/duplicate-post.js.map +1 -0
  222. package/build-module/dataviews/actions/duplicate-post.native.js +3 -0
  223. package/build-module/dataviews/actions/duplicate-post.native.js.map +1 -0
  224. package/build-module/dataviews/actions/duplicate-template-part.js +58 -0
  225. package/build-module/dataviews/actions/duplicate-template-part.js.map +1 -0
  226. package/build-module/dataviews/actions/export-pattern.js +2 -0
  227. package/build-module/dataviews/actions/export-pattern.js.map +1 -1
  228. package/build-module/dataviews/actions/permanently-delete-post.js +3 -0
  229. package/build-module/dataviews/actions/permanently-delete-post.js.map +1 -1
  230. package/build-module/dataviews/actions/rename-post.js +118 -0
  231. package/build-module/dataviews/actions/rename-post.js.map +1 -0
  232. package/build-module/dataviews/actions/reorder-page.js +111 -0
  233. package/build-module/dataviews/actions/reorder-page.js.map +1 -0
  234. package/build-module/dataviews/actions/reorder-page.native.js +3 -0
  235. package/build-module/dataviews/actions/reorder-page.native.js.map +1 -0
  236. package/build-module/dataviews/actions/reset-post.js +9 -3
  237. package/build-module/dataviews/actions/reset-post.js.map +1 -1
  238. package/build-module/dataviews/actions/trash-post.js +8 -2
  239. package/build-module/dataviews/actions/trash-post.js.map +1 -1
  240. package/build-module/dataviews/actions/utils.js +7 -1
  241. package/build-module/dataviews/actions/utils.js.map +1 -1
  242. package/build-module/dataviews/actions/view-post-revisions.js +43 -0
  243. package/build-module/dataviews/actions/view-post-revisions.js.map +1 -0
  244. package/build-module/dataviews/actions/view-post.js +30 -0
  245. package/build-module/dataviews/actions/view-post.js.map +1 -0
  246. package/build-module/dataviews/fields/index.js +26 -0
  247. package/build-module/dataviews/fields/index.js.map +1 -0
  248. package/build-module/dataviews/store/private-actions.js +16 -2
  249. package/build-module/dataviews/store/private-actions.js.map +1 -1
  250. package/build-module/dataviews/types.js.map +1 -1
  251. package/build-module/private-apis.js +2 -2
  252. package/build-module/private-apis.js.map +1 -1
  253. package/build-module/store/private-actions.js +2 -2
  254. package/build-module/store/private-actions.js.map +1 -1
  255. package/build-module/store/utils/is-template-revertable.js +1 -1
  256. package/build-module/store/utils/is-template-revertable.js.map +1 -1
  257. package/build-style/style-rtl.css +14 -38
  258. package/build-style/style.css +14 -38
  259. package/build-types/bindings/post-meta.d.ts +0 -3
  260. package/build-types/bindings/post-meta.d.ts.map +1 -1
  261. package/build-types/components/block-settings-menu/content-only-settings-menu.d.ts.map +1 -1
  262. package/build-types/components/create-template-part-modal/index.d.ts.map +1 -1
  263. package/build-types/components/editor-history/redo.d.ts.map +1 -1
  264. package/build-types/components/editor-history/undo.d.ts.map +1 -1
  265. package/build-types/components/editor-interface/index.d.ts.map +1 -1
  266. package/build-types/components/error-boundary/index.d.ts.map +1 -1
  267. package/build-types/components/global-styles-provider/index.d.ts.map +1 -1
  268. package/build-types/components/index.d.ts +1 -0
  269. package/build-types/components/index.d.ts.map +1 -1
  270. package/build-types/components/inserter-sidebar/index.d.ts.map +1 -1
  271. package/build-types/components/page-attributes/parent.d.ts.map +1 -1
  272. package/build-types/components/plugin-preview-menu-item/index.d.ts +3 -0
  273. package/build-types/components/plugin-preview-menu-item/index.d.ts.map +1 -0
  274. package/build-types/components/post-actions/actions.d.ts +1 -26
  275. package/build-types/components/post-actions/actions.d.ts.map +1 -1
  276. package/build-types/components/post-actions/index.d.ts +3 -2
  277. package/build-types/components/post-actions/index.d.ts.map +1 -1
  278. package/build-types/components/post-card-panel/index.d.ts +4 -2
  279. package/build-types/components/post-card-panel/index.d.ts.map +1 -1
  280. package/build-types/components/post-format/index.d.ts.map +1 -1
  281. package/build-types/components/post-last-revision/index.d.ts.map +1 -1
  282. package/build-types/components/post-locked-modal/index.d.ts.map +1 -1
  283. package/build-types/components/post-publish-panel/index.d.ts.map +1 -1
  284. package/build-types/components/post-publish-panel/maybe-post-format-panel.d.ts.map +1 -1
  285. package/build-types/components/post-publish-panel/maybe-upload-media.d.ts.map +1 -1
  286. package/build-types/components/post-slug/index.d.ts.map +1 -1
  287. package/build-types/components/post-status/index.d.ts.map +1 -1
  288. package/build-types/components/post-taxonomies/hierarchical-term-selector.d.ts +1 -17
  289. package/build-types/components/post-taxonomies/hierarchical-term-selector.d.ts.map +1 -1
  290. package/build-types/components/post-taxonomies/most-used-terms.d.ts.map +1 -1
  291. package/build-types/components/post-template/block-theme.d.ts.map +1 -1
  292. package/build-types/components/post-template/classic-theme.d.ts.map +1 -1
  293. package/build-types/components/post-url/index.d.ts.map +1 -1
  294. package/build-types/components/preview-dropdown/index.d.ts.map +1 -1
  295. package/build-types/components/provider/use-block-editor-settings.d.ts.map +1 -1
  296. package/build-types/components/save-publish-panels/index.d.ts.map +1 -1
  297. package/build-types/components/sidebar/post-summary.d.ts.map +1 -1
  298. package/build-types/components/start-template-options/index.d.ts.map +1 -1
  299. package/build-types/components/template-content-panel/index.d.ts.map +1 -1
  300. package/build-types/components/text-editor/index.d.ts.map +1 -1
  301. package/build-types/components/visual-editor/index.d.ts.map +1 -1
  302. package/build-types/dataviews/actions/duplicate-pattern.d.ts +5 -0
  303. package/build-types/dataviews/actions/duplicate-pattern.d.ts.map +1 -0
  304. package/build-types/dataviews/actions/duplicate-post.d.ts +5 -0
  305. package/build-types/dataviews/actions/duplicate-post.d.ts.map +1 -0
  306. package/build-types/dataviews/actions/duplicate-post.native.d.ts +3 -0
  307. package/build-types/dataviews/actions/duplicate-post.native.d.ts.map +1 -0
  308. package/build-types/dataviews/actions/duplicate-template-part.d.ts +5 -0
  309. package/build-types/dataviews/actions/duplicate-template-part.d.ts.map +1 -0
  310. package/build-types/dataviews/actions/export-pattern.d.ts.map +1 -1
  311. package/build-types/dataviews/actions/permanently-delete-post.d.ts.map +1 -1
  312. package/build-types/dataviews/actions/rename-post.d.ts +5 -0
  313. package/build-types/dataviews/actions/rename-post.d.ts.map +1 -0
  314. package/build-types/dataviews/actions/reorder-page.d.ts +8 -0
  315. package/build-types/dataviews/actions/reorder-page.d.ts.map +1 -0
  316. package/build-types/dataviews/actions/reorder-page.native.d.ts +3 -0
  317. package/build-types/dataviews/actions/reorder-page.native.d.ts.map +1 -0
  318. package/build-types/dataviews/actions/reset-post.d.ts.map +1 -1
  319. package/build-types/dataviews/actions/trash-post.d.ts.map +1 -1
  320. package/build-types/dataviews/actions/utils.d.ts +5 -3
  321. package/build-types/dataviews/actions/utils.d.ts.map +1 -1
  322. package/build-types/dataviews/actions/view-post-revisions.d.ts +8 -0
  323. package/build-types/dataviews/actions/view-post-revisions.d.ts.map +1 -0
  324. package/build-types/dataviews/actions/view-post.d.ts +8 -0
  325. package/build-types/dataviews/actions/view-post.d.ts.map +1 -0
  326. package/build-types/dataviews/fields/index.d.ts +8 -0
  327. package/build-types/dataviews/fields/index.d.ts.map +1 -0
  328. package/build-types/dataviews/store/private-actions.d.ts.map +1 -1
  329. package/build-types/dataviews/types.d.ts +57 -8
  330. package/build-types/dataviews/types.d.ts.map +1 -1
  331. package/build-types/store/private-actions.d.ts.map +1 -1
  332. package/build-types/store/utils/is-template-revertable.d.ts.map +1 -1
  333. package/package.json +36 -36
  334. package/src/bindings/post-meta.js +14 -8
  335. package/src/components/block-manager/index.js +2 -0
  336. package/src/components/block-manager/style.scss +2 -2
  337. package/src/components/block-settings-menu/content-only-settings-menu.js +5 -9
  338. package/src/components/create-template-part-modal/index.js +1 -0
  339. package/src/components/create-template-part-modal/style.scss +1 -1
  340. package/src/components/document-bar/index.js +4 -4
  341. package/src/components/document-outline/style.scss +1 -1
  342. package/src/components/editor-history/redo.js +2 -0
  343. package/src/components/editor-history/undo.js +2 -0
  344. package/src/components/editor-interface/index.js +2 -4
  345. package/src/components/error-boundary/index.js +6 -1
  346. package/src/components/error-boundary/style.native.scss +1 -1
  347. package/src/components/error-boundary/style.scss +1 -1
  348. package/src/components/global-styles-provider/index.js +16 -3
  349. package/src/components/header/style.scss +6 -3
  350. package/src/components/index.js +1 -0
  351. package/src/components/inserter-sidebar/index.js +12 -5
  352. package/src/components/local-autosave-monitor/index.js +6 -6
  353. package/src/components/page-attributes/parent.js +18 -13
  354. package/src/components/plugin-preview-menu-item/index.js +52 -0
  355. package/src/components/post-actions/actions.js +5 -616
  356. package/src/components/post-actions/index.js +24 -34
  357. package/src/components/post-card-panel/index.js +28 -27
  358. package/src/components/post-card-panel/style.scss +1 -1
  359. package/src/components/post-discussion/style.scss +0 -9
  360. package/src/components/post-excerpt/panel.js +2 -0
  361. package/src/components/post-featured-image/index.js +8 -0
  362. package/src/components/post-featured-image/style.scss +1 -2
  363. package/src/components/post-format/index.js +2 -0
  364. package/src/components/post-format/style.scss +0 -6
  365. package/src/components/post-last-revision/index.js +2 -0
  366. package/src/components/post-locked-modal/index.js +14 -2
  367. package/src/components/post-locked-modal/style.scss +1 -1
  368. package/src/components/post-publish-panel/index.js +2 -0
  369. package/src/components/post-publish-panel/maybe-post-format-panel.js +2 -0
  370. package/src/components/post-publish-panel/maybe-upload-media.js +37 -29
  371. package/src/components/post-publish-panel/postpublish.js +8 -2
  372. package/src/components/post-publish-panel/style.scss +3 -1
  373. package/src/components/post-publish-panel/test/__snapshots__/index.js.snap +8 -8
  374. package/src/components/post-slug/index.js +1 -0
  375. package/src/components/post-status/index.js +3 -2
  376. package/src/components/post-status/style.scss +0 -19
  377. package/src/components/post-taxonomies/hierarchical-term-selector.js +5 -1
  378. package/src/components/post-taxonomies/most-used-terms.js +2 -0
  379. package/src/components/post-template/block-theme.js +15 -9
  380. package/src/components/post-template/classic-theme.js +2 -0
  381. package/src/components/post-title/index.js +30 -41
  382. package/src/components/post-url/index.js +17 -9
  383. package/src/components/preview-dropdown/index.js +28 -20
  384. package/src/components/provider/use-block-editor-settings.js +5 -5
  385. package/src/components/resizable-editor/style.scss +2 -2
  386. package/src/components/save-publish-panels/index.js +4 -0
  387. package/src/components/save-publish-panels/style.scss +3 -3
  388. package/src/components/sidebar/post-summary.js +20 -16
  389. package/src/components/site-discussion/style.scss +0 -14
  390. package/src/components/start-template-options/index.js +6 -1
  391. package/src/components/table-of-contents/index.js +2 -0
  392. package/src/components/template-content-panel/index.js +4 -1
  393. package/src/components/text-editor/index.js +2 -0
  394. package/src/components/visual-editor/index.js +2 -9
  395. package/src/dataviews/actions/duplicate-pattern.tsx +40 -0
  396. package/src/dataviews/actions/duplicate-post.native.tsx +3 -0
  397. package/src/dataviews/actions/duplicate-post.tsx +174 -0
  398. package/src/dataviews/actions/duplicate-template-part.tsx +70 -0
  399. package/src/dataviews/actions/export-pattern.tsx +2 -0
  400. package/src/dataviews/actions/permanently-delete-post.tsx +2 -0
  401. package/src/dataviews/actions/rename-post.tsx +146 -0
  402. package/src/dataviews/actions/reorder-page.native.tsx +3 -0
  403. package/src/dataviews/actions/reorder-page.tsx +125 -0
  404. package/src/dataviews/actions/reset-post.tsx +6 -1
  405. package/src/dataviews/actions/trash-post.tsx +4 -0
  406. package/src/dataviews/actions/utils.ts +14 -4
  407. package/src/dataviews/actions/view-post-revisions.tsx +47 -0
  408. package/src/dataviews/actions/view-post.tsx +30 -0
  409. package/src/dataviews/fields/index.ts +26 -0
  410. package/src/dataviews/store/private-actions.ts +42 -1
  411. package/src/dataviews/types.ts +47 -6
  412. package/src/private-apis.js +2 -2
  413. package/src/store/private-actions.js +4 -2
  414. package/src/store/utils/is-template-revertable.js +2 -1
  415. package/tsconfig.tsbuildinfo +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_coreData","require","_i18n","_notices","_blockEditor","_preferences","_url","_apiFetch","_interopRequireDefault","_blocks","_htmlEntities","_isTemplateRevertable","_privateActions","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","setCurrentTemplateId","id","type","createTemplate","template","select","dispatch","registry","savedTemplate","coreStore","saveEntityRecord","editEntityRecord","getCurrentPostType","getCurrentPostId","slug","noticesStore","createSuccessNotice","__","actions","label","onClick","setRenderingMode","getEditorSettings","defaultRenderingMode","showBlockTypes","blockNames","_registry$select$get","existingBlockNames","preferencesStore","newBlockNames","filter","Array","isArray","includes","set","hideBlockTypes","_registry$select$get2","mergedBlockNames","Set","saveDirtyEntities","onSave","dirtyEntityRecords","entitiesToSkip","close","PUBLISH_ON_SAVE_ENTITIES","kind","name","saveNoticeId","homeUrl","getUnstableBase","home","removeNotice","entitiesToSave","property","some","elt","siteItemsToSave","pendingSavedRecords","push","typeToPublish","status","saveEditedEntityRecord","length","__experimentalSaveSpecifiedEntityEdits","undefined","blockEditorStore","__unstableMarkLastChangeAsPersistent","Promise","all","then","values","value","createErrorNotice","url","catch","error","revertTemplate","allowUndo","noticeId","isTemplateRevertable","templateEntityConfig","getEntityConfig","fileTemplatePath","addQueryArgs","baseURL","context","source","fileTemplate","apiFetch","path","serializeBlocks","blocks","blocksForSerialization","__unstableSerializeAndClean","edited","getEditedEntityRecord","content","undoIgnore","parse","raw","undoRevert","errorMessage","message","code","removeTemplates","items","isResetting","every","item","has_theme_file","promiseResult","allSettled","map","deleteEntityRecord","force","throwOnError","successMessage","title","rendered","sprintf","decodeEntities","reason","errorMessages","failedPromises","failedPromise","add","size","join"],"sources":["@wordpress/editor/src/store/private-actions.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { addQueryArgs } from '@wordpress/url';\nimport apiFetch from '@wordpress/api-fetch';\nimport { parse, __unstableSerializeAndClean } from '@wordpress/blocks';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport isTemplateRevertable from './utils/is-template-revertable';\nexport * from '../dataviews/store/private-actions';\n\n/**\n * Returns an action object used to set which template is currently being used/edited.\n *\n * @param {string} id Template Id.\n *\n * @return {Object} Action object.\n */\nexport function setCurrentTemplateId( id ) {\n\treturn {\n\t\ttype: 'SET_CURRENT_TEMPLATE_ID',\n\t\tid,\n\t};\n}\n\n/**\n * Create a block based template.\n *\n * @param {Object?} template Template to create and assign.\n */\nexport const createTemplate =\n\t( template ) =>\n\tasync ( { select, dispatch, registry } ) => {\n\t\tconst savedTemplate = await registry\n\t\t\t.dispatch( coreStore )\n\t\t\t.saveEntityRecord( 'postType', 'wp_template', template );\n\t\tregistry\n\t\t\t.dispatch( coreStore )\n\t\t\t.editEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tselect.getCurrentPostType(),\n\t\t\t\tselect.getCurrentPostId(),\n\t\t\t\t{\n\t\t\t\t\ttemplate: savedTemplate.slug,\n\t\t\t\t}\n\t\t\t);\n\t\tregistry\n\t\t\t.dispatch( noticesStore )\n\t\t\t.createSuccessNotice(\n\t\t\t\t__( \"Custom template created. You're in template mode now.\" ),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tactions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( 'Go back' ),\n\t\t\t\t\t\t\tonClick: () =>\n\t\t\t\t\t\t\t\tdispatch.setRenderingMode(\n\t\t\t\t\t\t\t\t\tselect.getEditorSettings()\n\t\t\t\t\t\t\t\t\t\t.defaultRenderingMode\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t);\n\t\treturn savedTemplate;\n\t};\n\n/**\n * Update the provided block types to be visible.\n *\n * @param {string[]} blockNames Names of block types to show.\n */\nexport const showBlockTypes =\n\t( blockNames ) =>\n\t( { registry } ) => {\n\t\tconst existingBlockNames =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core', 'hiddenBlockTypes' ) ?? [];\n\n\t\tconst newBlockNames = existingBlockNames.filter(\n\t\t\t( type ) =>\n\t\t\t\t! (\n\t\t\t\t\tArray.isArray( blockNames ) ? blockNames : [ blockNames ]\n\t\t\t\t).includes( type )\n\t\t);\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core', 'hiddenBlockTypes', newBlockNames );\n\t};\n\n/**\n * Update the provided block types to be hidden.\n *\n * @param {string[]} blockNames Names of block types to hide.\n */\nexport const hideBlockTypes =\n\t( blockNames ) =>\n\t( { registry } ) => {\n\t\tconst existingBlockNames =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core', 'hiddenBlockTypes' ) ?? [];\n\n\t\tconst mergedBlockNames = new Set( [\n\t\t\t...existingBlockNames,\n\t\t\t...( Array.isArray( blockNames ) ? blockNames : [ blockNames ] ),\n\t\t] );\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core', 'hiddenBlockTypes', [ ...mergedBlockNames ] );\n\t};\n\n/**\n * Save entity records marked as dirty.\n *\n * @param {Object} options Options for the action.\n * @param {Function} [options.onSave] Callback when saving happens.\n * @param {object[]} [options.dirtyEntityRecords] Array of dirty entities.\n * @param {object[]} [options.entitiesToSkip] Array of entities to skip saving.\n * @param {Function} [options.close] Callback when the actions is called. It should be consolidated with `onSave`.\n */\nexport const saveDirtyEntities =\n\t( { onSave, dirtyEntityRecords = [], entitiesToSkip = [], close } = {} ) =>\n\t( { registry } ) => {\n\t\tconst PUBLISH_ON_SAVE_ENTITIES = [\n\t\t\t{ kind: 'postType', name: 'wp_navigation' },\n\t\t];\n\t\tconst saveNoticeId = 'site-editor-save-success';\n\t\tconst homeUrl = registry.select( coreStore ).getUnstableBase()?.home;\n\t\tregistry.dispatch( noticesStore ).removeNotice( saveNoticeId );\n\t\tconst entitiesToSave = dirtyEntityRecords.filter(\n\t\t\t( { kind, name, key, property } ) => {\n\t\t\t\treturn ! entitiesToSkip.some(\n\t\t\t\t\t( elt ) =>\n\t\t\t\t\t\telt.kind === kind &&\n\t\t\t\t\t\telt.name === name &&\n\t\t\t\t\t\telt.key === key &&\n\t\t\t\t\t\telt.property === property\n\t\t\t\t);\n\t\t\t}\n\t\t);\n\t\tclose?.( entitiesToSave );\n\t\tconst siteItemsToSave = [];\n\t\tconst pendingSavedRecords = [];\n\t\tentitiesToSave.forEach( ( { kind, name, key, property } ) => {\n\t\t\tif ( 'root' === kind && 'site' === name ) {\n\t\t\t\tsiteItemsToSave.push( property );\n\t\t\t} else {\n\t\t\t\tif (\n\t\t\t\t\tPUBLISH_ON_SAVE_ENTITIES.some(\n\t\t\t\t\t\t( typeToPublish ) =>\n\t\t\t\t\t\t\ttypeToPublish.kind === kind &&\n\t\t\t\t\t\t\ttypeToPublish.name === name\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t\t.editEntityRecord( kind, name, key, {\n\t\t\t\t\t\t\tstatus: 'publish',\n\t\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\tpendingSavedRecords.push(\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t\t.saveEditedEntityRecord( kind, name, key )\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\t\tif ( siteItemsToSave.length ) {\n\t\t\tpendingSavedRecords.push(\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t.__experimentalSaveSpecifiedEntityEdits(\n\t\t\t\t\t\t'root',\n\t\t\t\t\t\t'site',\n\t\t\t\t\t\tundefined,\n\t\t\t\t\t\tsiteItemsToSave\n\t\t\t\t\t)\n\t\t\t);\n\t\t}\n\t\tregistry\n\t\t\t.dispatch( blockEditorStore )\n\t\t\t.__unstableMarkLastChangeAsPersistent();\n\t\tPromise.all( pendingSavedRecords )\n\t\t\t.then( ( values ) => {\n\t\t\t\treturn onSave ? onSave( values ) : values;\n\t\t\t} )\n\t\t\t.then( ( values ) => {\n\t\t\t\tif (\n\t\t\t\t\tvalues.some( ( value ) => typeof value === 'undefined' )\n\t\t\t\t) {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t\t.createErrorNotice( __( 'Saving failed.' ) );\n\t\t\t\t} else {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t\t.createSuccessNotice( __( 'Site updated.' ), {\n\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\tid: saveNoticeId,\n\t\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlabel: __( 'View site' ),\n\t\t\t\t\t\t\t\t\turl: homeUrl,\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}\n\t\t\t} )\n\t\t\t.catch( ( error ) =>\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createErrorNotice(\n\t\t\t\t\t\t`${ __( 'Saving failed.' ) } ${ error }`\n\t\t\t\t\t)\n\t\t\t);\n\t};\n\n/**\n * Reverts a template to its original theme-provided file.\n *\n * @param {Object} template The template to revert.\n * @param {Object} [options]\n * @param {boolean} [options.allowUndo] Whether to allow the user to undo\n * reverting the template. Default true.\n */\nexport const revertTemplate =\n\t( template, { allowUndo = true } = {} ) =>\n\tasync ( { registry } ) => {\n\t\tconst noticeId = 'edit-site-template-reverted';\n\t\tregistry.dispatch( noticesStore ).removeNotice( noticeId );\n\t\tif ( ! isTemplateRevertable( template ) ) {\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createErrorNotice( __( 'This template is not revertable.' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tconst templateEntityConfig = registry\n\t\t\t\t.select( coreStore )\n\t\t\t\t.getEntityConfig( 'postType', template.type );\n\n\t\t\tif ( ! templateEntityConfig ) {\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createErrorNotice(\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'The editor has encountered an unexpected error. Please reload.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{ type: 'snackbar' }\n\t\t\t\t\t);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst fileTemplatePath = addQueryArgs(\n\t\t\t\t`${ templateEntityConfig.baseURL }/${ template.id }`,\n\t\t\t\t{ context: 'edit', source: 'theme' }\n\t\t\t);\n\n\t\t\tconst fileTemplate = await apiFetch( { path: fileTemplatePath } );\n\t\t\tif ( ! fileTemplate ) {\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createErrorNotice(\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'The editor has encountered an unexpected error. Please reload.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{ type: 'snackbar' }\n\t\t\t\t\t);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst serializeBlocks = ( {\n\t\t\t\tblocks: blocksForSerialization = [],\n\t\t\t} ) => __unstableSerializeAndClean( blocksForSerialization );\n\n\t\t\tconst edited = registry\n\t\t\t\t.select( coreStore )\n\t\t\t\t.getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\ttemplate.type,\n\t\t\t\t\ttemplate.id\n\t\t\t\t);\n\n\t\t\t// We are fixing up the undo level here to make sure we can undo\n\t\t\t// the revert in the header toolbar correctly.\n\t\t\tregistry.dispatch( coreStore ).editEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\ttemplate.type,\n\t\t\t\ttemplate.id,\n\t\t\t\t{\n\t\t\t\t\tcontent: serializeBlocks, // Required to make the `undo` behave correctly.\n\t\t\t\t\tblocks: edited.blocks, // Required to revert the blocks in the editor.\n\t\t\t\t\tsource: 'custom', // required to avoid turning the editor into a dirty state\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tundoIgnore: true, // Required to merge this edit with the last undo level.\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tconst blocks = parse( fileTemplate?.content?.raw );\n\t\t\tregistry\n\t\t\t\t.dispatch( coreStore )\n\t\t\t\t.editEntityRecord( 'postType', template.type, fileTemplate.id, {\n\t\t\t\t\tcontent: serializeBlocks,\n\t\t\t\t\tblocks,\n\t\t\t\t\tsource: 'theme',\n\t\t\t\t} );\n\n\t\t\tif ( allowUndo ) {\n\t\t\t\tconst undoRevert = () => {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t\t.editEntityRecord(\n\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\ttemplate.type,\n\t\t\t\t\t\t\tedited.id,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcontent: serializeBlocks,\n\t\t\t\t\t\t\t\tblocks: edited.blocks,\n\t\t\t\t\t\t\t\tsource: 'custom',\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t};\n\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createSuccessNotice( __( 'Template reset.' ), {\n\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\tid: noticeId,\n\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Undo' ),\n\t\t\t\t\t\t\t\tonClick: undoRevert,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t} );\n\t\t\t}\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'Template revert failed. Please reload.' );\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t}\n\t};\n\n/**\n * Action that removes an array of templates, template parts or patterns.\n *\n * @param {Array} items An array of template,template part or pattern objects to remove.\n */\nexport const removeTemplates =\n\t( items ) =>\n\tasync ( { registry } ) => {\n\t\tconst isResetting = items.every( ( item ) => item?.has_theme_file );\n\n\t\tconst promiseResult = await Promise.allSettled(\n\t\t\titems.map( ( item ) => {\n\t\t\t\treturn registry\n\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t.deleteEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\titem.type,\n\t\t\t\t\t\titem.id,\n\t\t\t\t\t\t{ force: true },\n\t\t\t\t\t\t{ throwOnError: true }\n\t\t\t\t\t);\n\t\t\t} )\n\t\t);\n\n\t\t// If all the promises were fulfilled with sucess.\n\t\tif ( promiseResult.every( ( { status } ) => status === 'fulfilled' ) ) {\n\t\t\tlet successMessage;\n\n\t\t\tif ( items.length === 1 ) {\n\t\t\t\t// Depending on how the entity was retrieved its title might be\n\t\t\t\t// an object or simple string.\n\t\t\t\tlet title;\n\t\t\t\tif ( typeof items[ 0 ].title === 'string' ) {\n\t\t\t\t\ttitle = items[ 0 ].title;\n\t\t\t\t} else if ( typeof items[ 0 ].title?.rendered === 'string' ) {\n\t\t\t\t\ttitle = items[ 0 ].title?.rendered;\n\t\t\t\t} else if ( typeof items[ 0 ].title?.raw === 'string' ) {\n\t\t\t\t\ttitle = items[ 0 ].title?.raw;\n\t\t\t\t}\n\t\t\t\tsuccessMessage = isResetting\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: The template/part's name. */\n\t\t\t\t\t\t\t__( '\"%s\" reset.' ),\n\t\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t/* translators: The template/part's name. */\n\t\t\t\t\t\t\t__( '\"%s\" deleted.' ),\n\t\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t );\n\t\t\t} else {\n\t\t\t\tsuccessMessage = isResetting\n\t\t\t\t\t? __( 'Items reset.' )\n\t\t\t\t\t: __( 'Items deleted.' );\n\t\t\t}\n\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createSuccessNotice( successMessage, {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tid: 'editor-template-deleted-success',\n\t\t\t\t} );\n\t\t} else {\n\t\t\t// If there was at lease one failure.\n\t\t\tlet errorMessage;\n\t\t\t// If we were trying to delete a single template.\n\t\t\tif ( promiseResult.length === 1 ) {\n\t\t\t\tif ( promiseResult[ 0 ].reason?.message ) {\n\t\t\t\t\terrorMessage = promiseResult[ 0 ].reason.message;\n\t\t\t\t} else {\n\t\t\t\t\terrorMessage = isResetting\n\t\t\t\t\t\t? __( 'An error occurred while reverting the item.' )\n\t\t\t\t\t\t: __( 'An error occurred while deleting the item.' );\n\t\t\t\t}\n\t\t\t\t// If we were trying to delete a multiple templates\n\t\t\t} else {\n\t\t\t\tconst errorMessages = new Set();\n\t\t\t\tconst failedPromises = promiseResult.filter(\n\t\t\t\t\t( { status } ) => status === 'rejected'\n\t\t\t\t);\n\t\t\t\tfor ( const failedPromise of failedPromises ) {\n\t\t\t\t\tif ( failedPromise.reason?.message ) {\n\t\t\t\t\t\terrorMessages.add( failedPromise.reason.message );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ( errorMessages.size === 0 ) {\n\t\t\t\t\terrorMessage = __(\n\t\t\t\t\t\t'An error occurred while deleting the items.'\n\t\t\t\t\t);\n\t\t\t\t} else if ( errorMessages.size === 1 ) {\n\t\t\t\t\terrorMessage = isResetting\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: an error message */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'An error occurred while reverting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ][ 0 ]\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: an error message */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'An error occurred while deleting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ][ 0 ]\n\t\t\t\t\t\t );\n\t\t\t\t} else {\n\t\t\t\t\terrorMessage = isResetting\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: a list of comma separated error messages */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'Some errors occurred while reverting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ].join( ',' )\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: a list of comma separated error messages */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'Some errors occurred while deleting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ].join( ',' )\n\t\t\t\t\t\t );\n\t\t\t\t}\n\t\t\t}\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t}\n\t};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_coreData","require","_i18n","_notices","_blockEditor","_preferences","_url","_apiFetch","_interopRequireDefault","_blocks","_htmlEntities","_isTemplateRevertable","_privateActions","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","setCurrentTemplateId","id","type","createTemplate","template","select","dispatch","registry","savedTemplate","coreStore","saveEntityRecord","editEntityRecord","getCurrentPostType","getCurrentPostId","slug","noticesStore","createSuccessNotice","__","actions","label","onClick","setRenderingMode","getEditorSettings","defaultRenderingMode","showBlockTypes","blockNames","_registry$select$get","existingBlockNames","preferencesStore","newBlockNames","filter","Array","isArray","includes","set","hideBlockTypes","_registry$select$get2","mergedBlockNames","Set","saveDirtyEntities","onSave","dirtyEntityRecords","entitiesToSkip","close","PUBLISH_ON_SAVE_ENTITIES","kind","name","saveNoticeId","homeUrl","getEntityRecord","home","removeNotice","entitiesToSave","property","some","elt","siteItemsToSave","pendingSavedRecords","push","typeToPublish","status","saveEditedEntityRecord","length","__experimentalSaveSpecifiedEntityEdits","undefined","blockEditorStore","__unstableMarkLastChangeAsPersistent","Promise","all","then","values","value","createErrorNotice","url","catch","error","revertTemplate","allowUndo","noticeId","isTemplateRevertable","templateEntityConfig","getEntityConfig","fileTemplatePath","addQueryArgs","baseURL","context","source","origin","fileTemplate","apiFetch","path","serializeBlocks","blocks","blocksForSerialization","__unstableSerializeAndClean","edited","getEditedEntityRecord","content","undoIgnore","parse","raw","undoRevert","errorMessage","message","code","removeTemplates","items","isResetting","every","item","has_theme_file","promiseResult","allSettled","map","deleteEntityRecord","force","throwOnError","successMessage","title","rendered","sprintf","decodeEntities","reason","errorMessages","failedPromises","failedPromise","add","size","join"],"sources":["@wordpress/editor/src/store/private-actions.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { addQueryArgs } from '@wordpress/url';\nimport apiFetch from '@wordpress/api-fetch';\nimport { parse, __unstableSerializeAndClean } from '@wordpress/blocks';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport isTemplateRevertable from './utils/is-template-revertable';\nexport * from '../dataviews/store/private-actions';\n\n/**\n * Returns an action object used to set which template is currently being used/edited.\n *\n * @param {string} id Template Id.\n *\n * @return {Object} Action object.\n */\nexport function setCurrentTemplateId( id ) {\n\treturn {\n\t\ttype: 'SET_CURRENT_TEMPLATE_ID',\n\t\tid,\n\t};\n}\n\n/**\n * Create a block based template.\n *\n * @param {Object?} template Template to create and assign.\n */\nexport const createTemplate =\n\t( template ) =>\n\tasync ( { select, dispatch, registry } ) => {\n\t\tconst savedTemplate = await registry\n\t\t\t.dispatch( coreStore )\n\t\t\t.saveEntityRecord( 'postType', 'wp_template', template );\n\t\tregistry\n\t\t\t.dispatch( coreStore )\n\t\t\t.editEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tselect.getCurrentPostType(),\n\t\t\t\tselect.getCurrentPostId(),\n\t\t\t\t{\n\t\t\t\t\ttemplate: savedTemplate.slug,\n\t\t\t\t}\n\t\t\t);\n\t\tregistry\n\t\t\t.dispatch( noticesStore )\n\t\t\t.createSuccessNotice(\n\t\t\t\t__( \"Custom template created. You're in template mode now.\" ),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tactions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( 'Go back' ),\n\t\t\t\t\t\t\tonClick: () =>\n\t\t\t\t\t\t\t\tdispatch.setRenderingMode(\n\t\t\t\t\t\t\t\t\tselect.getEditorSettings()\n\t\t\t\t\t\t\t\t\t\t.defaultRenderingMode\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t);\n\t\treturn savedTemplate;\n\t};\n\n/**\n * Update the provided block types to be visible.\n *\n * @param {string[]} blockNames Names of block types to show.\n */\nexport const showBlockTypes =\n\t( blockNames ) =>\n\t( { registry } ) => {\n\t\tconst existingBlockNames =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core', 'hiddenBlockTypes' ) ?? [];\n\n\t\tconst newBlockNames = existingBlockNames.filter(\n\t\t\t( type ) =>\n\t\t\t\t! (\n\t\t\t\t\tArray.isArray( blockNames ) ? blockNames : [ blockNames ]\n\t\t\t\t).includes( type )\n\t\t);\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core', 'hiddenBlockTypes', newBlockNames );\n\t};\n\n/**\n * Update the provided block types to be hidden.\n *\n * @param {string[]} blockNames Names of block types to hide.\n */\nexport const hideBlockTypes =\n\t( blockNames ) =>\n\t( { registry } ) => {\n\t\tconst existingBlockNames =\n\t\t\tregistry\n\t\t\t\t.select( preferencesStore )\n\t\t\t\t.get( 'core', 'hiddenBlockTypes' ) ?? [];\n\n\t\tconst mergedBlockNames = new Set( [\n\t\t\t...existingBlockNames,\n\t\t\t...( Array.isArray( blockNames ) ? blockNames : [ blockNames ] ),\n\t\t] );\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( 'core', 'hiddenBlockTypes', [ ...mergedBlockNames ] );\n\t};\n\n/**\n * Save entity records marked as dirty.\n *\n * @param {Object} options Options for the action.\n * @param {Function} [options.onSave] Callback when saving happens.\n * @param {object[]} [options.dirtyEntityRecords] Array of dirty entities.\n * @param {object[]} [options.entitiesToSkip] Array of entities to skip saving.\n * @param {Function} [options.close] Callback when the actions is called. It should be consolidated with `onSave`.\n */\nexport const saveDirtyEntities =\n\t( { onSave, dirtyEntityRecords = [], entitiesToSkip = [], close } = {} ) =>\n\t( { registry } ) => {\n\t\tconst PUBLISH_ON_SAVE_ENTITIES = [\n\t\t\t{ kind: 'postType', name: 'wp_navigation' },\n\t\t];\n\t\tconst saveNoticeId = 'site-editor-save-success';\n\t\tconst homeUrl = registry\n\t\t\t.select( coreStore )\n\t\t\t.getEntityRecord( 'root', '__unstableBase' )?.home;\n\t\tregistry.dispatch( noticesStore ).removeNotice( saveNoticeId );\n\t\tconst entitiesToSave = dirtyEntityRecords.filter(\n\t\t\t( { kind, name, key, property } ) => {\n\t\t\t\treturn ! entitiesToSkip.some(\n\t\t\t\t\t( elt ) =>\n\t\t\t\t\t\telt.kind === kind &&\n\t\t\t\t\t\telt.name === name &&\n\t\t\t\t\t\telt.key === key &&\n\t\t\t\t\t\telt.property === property\n\t\t\t\t);\n\t\t\t}\n\t\t);\n\t\tclose?.( entitiesToSave );\n\t\tconst siteItemsToSave = [];\n\t\tconst pendingSavedRecords = [];\n\t\tentitiesToSave.forEach( ( { kind, name, key, property } ) => {\n\t\t\tif ( 'root' === kind && 'site' === name ) {\n\t\t\t\tsiteItemsToSave.push( property );\n\t\t\t} else {\n\t\t\t\tif (\n\t\t\t\t\tPUBLISH_ON_SAVE_ENTITIES.some(\n\t\t\t\t\t\t( typeToPublish ) =>\n\t\t\t\t\t\t\ttypeToPublish.kind === kind &&\n\t\t\t\t\t\t\ttypeToPublish.name === name\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t\t.editEntityRecord( kind, name, key, {\n\t\t\t\t\t\t\tstatus: 'publish',\n\t\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\tpendingSavedRecords.push(\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t\t.saveEditedEntityRecord( kind, name, key )\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\t\tif ( siteItemsToSave.length ) {\n\t\t\tpendingSavedRecords.push(\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t.__experimentalSaveSpecifiedEntityEdits(\n\t\t\t\t\t\t'root',\n\t\t\t\t\t\t'site',\n\t\t\t\t\t\tundefined,\n\t\t\t\t\t\tsiteItemsToSave\n\t\t\t\t\t)\n\t\t\t);\n\t\t}\n\t\tregistry\n\t\t\t.dispatch( blockEditorStore )\n\t\t\t.__unstableMarkLastChangeAsPersistent();\n\t\tPromise.all( pendingSavedRecords )\n\t\t\t.then( ( values ) => {\n\t\t\t\treturn onSave ? onSave( values ) : values;\n\t\t\t} )\n\t\t\t.then( ( values ) => {\n\t\t\t\tif (\n\t\t\t\t\tvalues.some( ( value ) => typeof value === 'undefined' )\n\t\t\t\t) {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t\t.createErrorNotice( __( 'Saving failed.' ) );\n\t\t\t\t} else {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t\t.createSuccessNotice( __( 'Site updated.' ), {\n\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\tid: saveNoticeId,\n\t\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlabel: __( 'View site' ),\n\t\t\t\t\t\t\t\t\turl: homeUrl,\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}\n\t\t\t} )\n\t\t\t.catch( ( error ) =>\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createErrorNotice(\n\t\t\t\t\t\t`${ __( 'Saving failed.' ) } ${ error }`\n\t\t\t\t\t)\n\t\t\t);\n\t};\n\n/**\n * Reverts a template to its original theme-provided file.\n *\n * @param {Object} template The template to revert.\n * @param {Object} [options]\n * @param {boolean} [options.allowUndo] Whether to allow the user to undo\n * reverting the template. Default true.\n */\nexport const revertTemplate =\n\t( template, { allowUndo = true } = {} ) =>\n\tasync ( { registry } ) => {\n\t\tconst noticeId = 'edit-site-template-reverted';\n\t\tregistry.dispatch( noticesStore ).removeNotice( noticeId );\n\t\tif ( ! isTemplateRevertable( template ) ) {\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createErrorNotice( __( 'This template is not revertable.' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tconst templateEntityConfig = registry\n\t\t\t\t.select( coreStore )\n\t\t\t\t.getEntityConfig( 'postType', template.type );\n\n\t\t\tif ( ! templateEntityConfig ) {\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createErrorNotice(\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'The editor has encountered an unexpected error. Please reload.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{ type: 'snackbar' }\n\t\t\t\t\t);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst fileTemplatePath = addQueryArgs(\n\t\t\t\t`${ templateEntityConfig.baseURL }/${ template.id }`,\n\t\t\t\t{ context: 'edit', source: template.origin }\n\t\t\t);\n\n\t\t\tconst fileTemplate = await apiFetch( { path: fileTemplatePath } );\n\t\t\tif ( ! fileTemplate ) {\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createErrorNotice(\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'The editor has encountered an unexpected error. Please reload.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{ type: 'snackbar' }\n\t\t\t\t\t);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst serializeBlocks = ( {\n\t\t\t\tblocks: blocksForSerialization = [],\n\t\t\t} ) => __unstableSerializeAndClean( blocksForSerialization );\n\n\t\t\tconst edited = registry\n\t\t\t\t.select( coreStore )\n\t\t\t\t.getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\ttemplate.type,\n\t\t\t\t\ttemplate.id\n\t\t\t\t);\n\n\t\t\t// We are fixing up the undo level here to make sure we can undo\n\t\t\t// the revert in the header toolbar correctly.\n\t\t\tregistry.dispatch( coreStore ).editEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\ttemplate.type,\n\t\t\t\ttemplate.id,\n\t\t\t\t{\n\t\t\t\t\tcontent: serializeBlocks, // Required to make the `undo` behave correctly.\n\t\t\t\t\tblocks: edited.blocks, // Required to revert the blocks in the editor.\n\t\t\t\t\tsource: 'custom', // required to avoid turning the editor into a dirty state\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tundoIgnore: true, // Required to merge this edit with the last undo level.\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tconst blocks = parse( fileTemplate?.content?.raw );\n\t\t\tregistry\n\t\t\t\t.dispatch( coreStore )\n\t\t\t\t.editEntityRecord( 'postType', template.type, fileTemplate.id, {\n\t\t\t\t\tcontent: serializeBlocks,\n\t\t\t\t\tblocks,\n\t\t\t\t\tsource: 'theme',\n\t\t\t\t} );\n\n\t\t\tif ( allowUndo ) {\n\t\t\t\tconst undoRevert = () => {\n\t\t\t\t\tregistry\n\t\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t\t.editEntityRecord(\n\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\ttemplate.type,\n\t\t\t\t\t\t\tedited.id,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcontent: serializeBlocks,\n\t\t\t\t\t\t\t\tblocks: edited.blocks,\n\t\t\t\t\t\t\t\tsource: 'custom',\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t};\n\n\t\t\t\tregistry\n\t\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t\t.createSuccessNotice( __( 'Template reset.' ), {\n\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\tid: noticeId,\n\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Undo' ),\n\t\t\t\t\t\t\t\tonClick: undoRevert,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t} );\n\t\t\t}\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'Template revert failed. Please reload.' );\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t}\n\t};\n\n/**\n * Action that removes an array of templates, template parts or patterns.\n *\n * @param {Array} items An array of template,template part or pattern objects to remove.\n */\nexport const removeTemplates =\n\t( items ) =>\n\tasync ( { registry } ) => {\n\t\tconst isResetting = items.every( ( item ) => item?.has_theme_file );\n\n\t\tconst promiseResult = await Promise.allSettled(\n\t\t\titems.map( ( item ) => {\n\t\t\t\treturn registry\n\t\t\t\t\t.dispatch( coreStore )\n\t\t\t\t\t.deleteEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\titem.type,\n\t\t\t\t\t\titem.id,\n\t\t\t\t\t\t{ force: true },\n\t\t\t\t\t\t{ throwOnError: true }\n\t\t\t\t\t);\n\t\t\t} )\n\t\t);\n\n\t\t// If all the promises were fulfilled with sucess.\n\t\tif ( promiseResult.every( ( { status } ) => status === 'fulfilled' ) ) {\n\t\t\tlet successMessage;\n\n\t\t\tif ( items.length === 1 ) {\n\t\t\t\t// Depending on how the entity was retrieved its title might be\n\t\t\t\t// an object or simple string.\n\t\t\t\tlet title;\n\t\t\t\tif ( typeof items[ 0 ].title === 'string' ) {\n\t\t\t\t\ttitle = items[ 0 ].title;\n\t\t\t\t} else if ( typeof items[ 0 ].title?.rendered === 'string' ) {\n\t\t\t\t\ttitle = items[ 0 ].title?.rendered;\n\t\t\t\t} else if ( typeof items[ 0 ].title?.raw === 'string' ) {\n\t\t\t\t\ttitle = items[ 0 ].title?.raw;\n\t\t\t\t}\n\t\t\t\tsuccessMessage = isResetting\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: The template/part's name. */\n\t\t\t\t\t\t\t__( '\"%s\" reset.' ),\n\t\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t/* translators: The template/part's name. */\n\t\t\t\t\t\t\t__( '\"%s\" deleted.' ),\n\t\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t );\n\t\t\t} else {\n\t\t\t\tsuccessMessage = isResetting\n\t\t\t\t\t? __( 'Items reset.' )\n\t\t\t\t\t: __( 'Items deleted.' );\n\t\t\t}\n\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createSuccessNotice( successMessage, {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tid: 'editor-template-deleted-success',\n\t\t\t\t} );\n\t\t} else {\n\t\t\t// If there was at lease one failure.\n\t\t\tlet errorMessage;\n\t\t\t// If we were trying to delete a single template.\n\t\t\tif ( promiseResult.length === 1 ) {\n\t\t\t\tif ( promiseResult[ 0 ].reason?.message ) {\n\t\t\t\t\terrorMessage = promiseResult[ 0 ].reason.message;\n\t\t\t\t} else {\n\t\t\t\t\terrorMessage = isResetting\n\t\t\t\t\t\t? __( 'An error occurred while reverting the item.' )\n\t\t\t\t\t\t: __( 'An error occurred while deleting the item.' );\n\t\t\t\t}\n\t\t\t\t// If we were trying to delete a multiple templates\n\t\t\t} else {\n\t\t\t\tconst errorMessages = new Set();\n\t\t\t\tconst failedPromises = promiseResult.filter(\n\t\t\t\t\t( { status } ) => status === 'rejected'\n\t\t\t\t);\n\t\t\t\tfor ( const failedPromise of failedPromises ) {\n\t\t\t\t\tif ( failedPromise.reason?.message ) {\n\t\t\t\t\t\terrorMessages.add( failedPromise.reason.message );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ( errorMessages.size === 0 ) {\n\t\t\t\t\terrorMessage = __(\n\t\t\t\t\t\t'An error occurred while deleting the items.'\n\t\t\t\t\t);\n\t\t\t\t} else if ( errorMessages.size === 1 ) {\n\t\t\t\t\terrorMessage = isResetting\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: an error message */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'An error occurred while reverting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ][ 0 ]\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: an error message */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'An error occurred while deleting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ][ 0 ]\n\t\t\t\t\t\t );\n\t\t\t\t} else {\n\t\t\t\t\terrorMessage = isResetting\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: a list of comma separated error messages */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'Some errors occurred while reverting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ].join( ',' )\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: a list of comma separated error messages */\n\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t'Some errors occurred while deleting the items: %s'\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t[ ...errorMessages ].join( ',' )\n\t\t\t\t\t\t );\n\t\t\t\t}\n\t\t\t}\n\t\t\tregistry\n\t\t\t\t.dispatch( noticesStore )\n\t\t\t\t.createErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t}\n\t};\n"],"mappings":"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","ignoreList":[]}
@@ -21,6 +21,6 @@ function isTemplateRevertable(templateOrTemplatePart) {
21
21
  if (!templateOrTemplatePart) {
22
22
  return false;
23
23
  }
24
- return templateOrTemplatePart.source === _constants.TEMPLATE_ORIGINS.custom && templateOrTemplatePart.has_theme_file;
24
+ return templateOrTemplatePart.source === _constants.TEMPLATE_ORIGINS.custom && (Boolean(templateOrTemplatePart?.plugin) || templateOrTemplatePart?.has_theme_file);
25
25
  }
26
26
  //# sourceMappingURL=is-template-revertable.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_constants","require","isTemplateRevertable","templateOrTemplatePart","source","TEMPLATE_ORIGINS","custom","has_theme_file"],"sources":["@wordpress/editor/src/store/utils/is-template-revertable.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport { TEMPLATE_ORIGINS } from '../constants';\n\n// Copy of the function from packages/edit-site/src/utils/is-template-revertable.js\n\n/**\n * Check if a template or template part is revertable to its original theme-provided file.\n *\n * @param {Object} templateOrTemplatePart The entity to check.\n * @return {boolean} Whether the entity is revertable.\n */\nexport default function isTemplateRevertable( templateOrTemplatePart ) {\n\tif ( ! templateOrTemplatePart ) {\n\t\treturn false;\n\t}\n\n\treturn (\n\t\ttemplateOrTemplatePart.source === TEMPLATE_ORIGINS.custom &&\n\t\ttemplateOrTemplatePart.has_theme_file\n\t);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,UAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACe,SAASC,oBAAoBA,CAAEC,sBAAsB,EAAG;EACtE,IAAK,CAAEA,sBAAsB,EAAG;IAC/B,OAAO,KAAK;EACb;EAEA,OACCA,sBAAsB,CAACC,MAAM,KAAKC,2BAAgB,CAACC,MAAM,IACzDH,sBAAsB,CAACI,cAAc;AAEvC","ignoreList":[]}
1
+ {"version":3,"names":["_constants","require","isTemplateRevertable","templateOrTemplatePart","source","TEMPLATE_ORIGINS","custom","Boolean","plugin","has_theme_file"],"sources":["@wordpress/editor/src/store/utils/is-template-revertable.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport { TEMPLATE_ORIGINS } from '../constants';\n\n// Copy of the function from packages/edit-site/src/utils/is-template-revertable.js\n\n/**\n * Check if a template or template part is revertable to its original theme-provided file.\n *\n * @param {Object} templateOrTemplatePart The entity to check.\n * @return {boolean} Whether the entity is revertable.\n */\nexport default function isTemplateRevertable( templateOrTemplatePart ) {\n\tif ( ! templateOrTemplatePart ) {\n\t\treturn false;\n\t}\n\n\treturn (\n\t\ttemplateOrTemplatePart.source === TEMPLATE_ORIGINS.custom &&\n\t\t( Boolean( templateOrTemplatePart?.plugin ) ||\n\t\t\ttemplateOrTemplatePart?.has_theme_file )\n\t);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,UAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACe,SAASC,oBAAoBA,CAAEC,sBAAsB,EAAG;EACtE,IAAK,CAAEA,sBAAsB,EAAG;IAC/B,OAAO,KAAK;EACb;EAEA,OACCA,sBAAsB,CAACC,MAAM,KAAKC,2BAAgB,CAACC,MAAM,KACvDC,OAAO,CAAEJ,sBAAsB,EAAEK,MAAO,CAAC,IAC1CL,sBAAsB,EAAEM,cAAc,CAAE;AAE3C","ignoreList":[]}
@@ -9,11 +9,6 @@ import { store as coreDataStore } from '@wordpress/core-data';
9
9
  import { store as editorStore } from '../store';
10
10
  export default {
11
11
  name: 'core/post-meta',
12
- getPlaceholder({
13
- args
14
- }) {
15
- return args.key;
16
- },
17
12
  getValues({
18
13
  registry,
19
14
  context,
@@ -22,7 +17,8 @@ export default {
22
17
  const meta = registry.select(coreDataStore).getEditedEntityRecord('postType', context?.postType, context?.postId)?.meta;
23
18
  const newValues = {};
24
19
  for (const [attributeName, source] of Object.entries(bindings)) {
25
- newValues[attributeName] = meta?.[source.args.key];
20
+ // Use the key if the value is not set.
21
+ newValues[attributeName] = meta?.[source.args.key] || source.args.key;
26
22
  }
27
23
  return newValues;
28
24
  },
@@ -59,8 +55,14 @@ export default {
59
55
  }
60
56
 
61
57
  // Check that the custom field is not protected and available in the REST API.
62
- const isFieldExposed = !!select(coreDataStore).getEntityRecord('postType', postType, context?.postId)?.meta?.[args.key];
63
- if (!isFieldExposed) {
58
+ // Empty string or `false` could be a valid value, so we need to check if the field value is undefined.
59
+ const fieldValue = select(coreDataStore).getEntityRecord('postType', postType, context?.postId)?.meta?.[args.key];
60
+ if (fieldValue === undefined) {
61
+ return false;
62
+ }
63
+ // Check that custom fields metabox is not enabled.
64
+ const areCustomFieldsEnabled = select(editorStore).getEditorSettings().enableCustomFields;
65
+ if (areCustomFieldsEnabled) {
64
66
  return false;
65
67
  }
66
68
 
@@ -84,8 +86,8 @@ export default {
84
86
  return null;
85
87
  }
86
88
 
87
- // Remove footnotes from the list of fields
88
- return Object.fromEntries(Object.entries(metaFields).filter(([key]) => key !== 'footnotes'));
89
+ // Remove footnotes or private keys from the list of fields.
90
+ return Object.fromEntries(Object.entries(metaFields).filter(([key]) => key !== 'footnotes' && key.charAt(0) !== '_'));
89
91
  }
90
92
  };
91
93
  //# sourceMappingURL=post-meta.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["store","coreDataStore","editorStore","name","getPlaceholder","args","key","getValues","registry","context","bindings","meta","select","getEditedEntityRecord","postType","postId","newValues","attributeName","source","Object","entries","setValues","newMeta","values","forEach","newValue","dispatch","editEntityRecord","canUserEditValue","query","queryId","getCurrentPostType","isFieldExposed","getEntityRecord","canUserEdit","canUser","kind","id","getFieldsList","metaFields","keys","length","fromEntries","filter"],"sources":["@wordpress/editor/src/bindings/post-meta.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreDataStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../store';\n\nexport default {\n\tname: 'core/post-meta',\n\tgetPlaceholder( { args } ) {\n\t\treturn args.key;\n\t},\n\tgetValues( { registry, context, bindings } ) {\n\t\tconst meta = registry\n\t\t\t.select( coreDataStore )\n\t\t\t.getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tcontext?.postType,\n\t\t\t\tcontext?.postId\n\t\t\t)?.meta;\n\t\tconst newValues = {};\n\t\tfor ( const [ attributeName, source ] of Object.entries( bindings ) ) {\n\t\t\tnewValues[ attributeName ] = meta?.[ source.args.key ];\n\t\t}\n\t\treturn newValues;\n\t},\n\tsetValues( { registry, context, bindings } ) {\n\t\tconst newMeta = {};\n\t\tObject.values( bindings ).forEach( ( { args, newValue } ) => {\n\t\t\tnewMeta[ args.key ] = newValue;\n\t\t} );\n\t\tregistry\n\t\t\t.dispatch( coreDataStore )\n\t\t\t.editEntityRecord( 'postType', context?.postType, context?.postId, {\n\t\t\t\tmeta: newMeta,\n\t\t\t} );\n\t},\n\tcanUserEditValue( { select, context, args } ) {\n\t\t// Lock editing in query loop.\n\t\tif ( context?.query || context?.queryId ) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst postType =\n\t\t\tcontext?.postType || select( editorStore ).getCurrentPostType();\n\n\t\t// Check that editing is happening in the post editor and not a template.\n\t\tif ( postType === 'wp_template' ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Check that the custom field is not protected and available in the REST API.\n\t\tconst isFieldExposed = !! select( coreDataStore ).getEntityRecord(\n\t\t\t'postType',\n\t\t\tpostType,\n\t\t\tcontext?.postId\n\t\t)?.meta?.[ args.key ];\n\n\t\tif ( ! isFieldExposed ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Check that the user has the capability to edit post meta.\n\t\tconst canUserEdit = select( coreDataStore ).canUser( 'update', {\n\t\t\tkind: 'postType',\n\t\t\tname: context?.postType,\n\t\t\tid: context?.postId,\n\t\t} );\n\t\tif ( ! canUserEdit ) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t},\n\tgetFieldsList( { registry, context } ) {\n\t\tconst metaFields = registry\n\t\t\t.select( coreDataStore )\n\t\t\t.getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tcontext?.postType,\n\t\t\t\tcontext?.postId\n\t\t\t).meta;\n\n\t\tif ( ! metaFields || ! Object.keys( metaFields ).length ) {\n\t\t\treturn null;\n\t\t}\n\n\t\t// Remove footnotes from the list of fields\n\t\treturn Object.fromEntries(\n\t\t\tObject.entries( metaFields ).filter(\n\t\t\t\t( [ key ] ) => key !== 'footnotes'\n\t\t\t)\n\t\t);\n\t},\n};\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,aAAa,QAAQ,sBAAsB;;AAE7D;AACA;AACA;AACA,SAASD,KAAK,IAAIE,WAAW,QAAQ,UAAU;AAE/C,eAAe;EACdC,IAAI,EAAE,gBAAgB;EACtBC,cAAcA,CAAE;IAAEC;EAAK,CAAC,EAAG;IAC1B,OAAOA,IAAI,CAACC,GAAG;EAChB,CAAC;EACDC,SAASA,CAAE;IAAEC,QAAQ;IAAEC,OAAO;IAAEC;EAAS,CAAC,EAAG;IAC5C,MAAMC,IAAI,GAAGH,QAAQ,CACnBI,MAAM,CAAEX,aAAc,CAAC,CACvBY,qBAAqB,CACrB,UAAU,EACVJ,OAAO,EAAEK,QAAQ,EACjBL,OAAO,EAAEM,MACV,CAAC,EAAEJ,IAAI;IACR,MAAMK,SAAS,GAAG,CAAC,CAAC;IACpB,KAAM,MAAM,CAAEC,aAAa,EAAEC,MAAM,CAAE,IAAIC,MAAM,CAACC,OAAO,CAAEV,QAAS,CAAC,EAAG;MACrEM,SAAS,CAAEC,aAAa,CAAE,GAAGN,IAAI,GAAIO,MAAM,CAACb,IAAI,CAACC,GAAG,CAAE;IACvD;IACA,OAAOU,SAAS;EACjB,CAAC;EACDK,SAASA,CAAE;IAAEb,QAAQ;IAAEC,OAAO;IAAEC;EAAS,CAAC,EAAG;IAC5C,MAAMY,OAAO,GAAG,CAAC,CAAC;IAClBH,MAAM,CAACI,MAAM,CAAEb,QAAS,CAAC,CAACc,OAAO,CAAE,CAAE;MAAEnB,IAAI;MAAEoB;IAAS,CAAC,KAAM;MAC5DH,OAAO,CAAEjB,IAAI,CAACC,GAAG,CAAE,GAAGmB,QAAQ;IAC/B,CAAE,CAAC;IACHjB,QAAQ,CACNkB,QAAQ,CAAEzB,aAAc,CAAC,CACzB0B,gBAAgB,CAAE,UAAU,EAAElB,OAAO,EAAEK,QAAQ,EAAEL,OAAO,EAAEM,MAAM,EAAE;MAClEJ,IAAI,EAAEW;IACP,CAAE,CAAC;EACL,CAAC;EACDM,gBAAgBA,CAAE;IAAEhB,MAAM;IAAEH,OAAO;IAAEJ;EAAK,CAAC,EAAG;IAC7C;IACA,IAAKI,OAAO,EAAEoB,KAAK,IAAIpB,OAAO,EAAEqB,OAAO,EAAG;MACzC,OAAO,KAAK;IACb;IAEA,MAAMhB,QAAQ,GACbL,OAAO,EAAEK,QAAQ,IAAIF,MAAM,CAAEV,WAAY,CAAC,CAAC6B,kBAAkB,CAAC,CAAC;;IAEhE;IACA,IAAKjB,QAAQ,KAAK,aAAa,EAAG;MACjC,OAAO,KAAK;IACb;;IAEA;IACA,MAAMkB,cAAc,GAAG,CAAC,CAAEpB,MAAM,CAAEX,aAAc,CAAC,CAACgC,eAAe,CAChE,UAAU,EACVnB,QAAQ,EACRL,OAAO,EAAEM,MACV,CAAC,EAAEJ,IAAI,GAAIN,IAAI,CAACC,GAAG,CAAE;IAErB,IAAK,CAAE0B,cAAc,EAAG;MACvB,OAAO,KAAK;IACb;;IAEA;IACA,MAAME,WAAW,GAAGtB,MAAM,CAAEX,aAAc,CAAC,CAACkC,OAAO,CAAE,QAAQ,EAAE;MAC9DC,IAAI,EAAE,UAAU;MAChBjC,IAAI,EAAEM,OAAO,EAAEK,QAAQ;MACvBuB,EAAE,EAAE5B,OAAO,EAAEM;IACd,CAAE,CAAC;IACH,IAAK,CAAEmB,WAAW,EAAG;MACpB,OAAO,KAAK;IACb;IAEA,OAAO,IAAI;EACZ,CAAC;EACDI,aAAaA,CAAE;IAAE9B,QAAQ;IAAEC;EAAQ,CAAC,EAAG;IACtC,MAAM8B,UAAU,GAAG/B,QAAQ,CACzBI,MAAM,CAAEX,aAAc,CAAC,CACvBY,qBAAqB,CACrB,UAAU,EACVJ,OAAO,EAAEK,QAAQ,EACjBL,OAAO,EAAEM,MACV,CAAC,CAACJ,IAAI;IAEP,IAAK,CAAE4B,UAAU,IAAI,CAAEpB,MAAM,CAACqB,IAAI,CAAED,UAAW,CAAC,CAACE,MAAM,EAAG;MACzD,OAAO,IAAI;IACZ;;IAEA;IACA,OAAOtB,MAAM,CAACuB,WAAW,CACxBvB,MAAM,CAACC,OAAO,CAAEmB,UAAW,CAAC,CAACI,MAAM,CAClC,CAAE,CAAErC,GAAG,CAAE,KAAMA,GAAG,KAAK,WACxB,CACD,CAAC;EACF;AACD,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["store","coreDataStore","editorStore","name","getValues","registry","context","bindings","meta","select","getEditedEntityRecord","postType","postId","newValues","attributeName","source","Object","entries","args","key","setValues","newMeta","values","forEach","newValue","dispatch","editEntityRecord","canUserEditValue","query","queryId","getCurrentPostType","fieldValue","getEntityRecord","undefined","areCustomFieldsEnabled","getEditorSettings","enableCustomFields","canUserEdit","canUser","kind","id","getFieldsList","metaFields","keys","length","fromEntries","filter","charAt"],"sources":["@wordpress/editor/src/bindings/post-meta.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreDataStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../store';\n\nexport default {\n\tname: 'core/post-meta',\n\tgetValues( { registry, context, bindings } ) {\n\t\tconst meta = registry\n\t\t\t.select( coreDataStore )\n\t\t\t.getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tcontext?.postType,\n\t\t\t\tcontext?.postId\n\t\t\t)?.meta;\n\t\tconst newValues = {};\n\t\tfor ( const [ attributeName, source ] of Object.entries( bindings ) ) {\n\t\t\t// Use the key if the value is not set.\n\t\t\tnewValues[ attributeName ] =\n\t\t\t\tmeta?.[ source.args.key ] || source.args.key;\n\t\t}\n\t\treturn newValues;\n\t},\n\tsetValues( { registry, context, bindings } ) {\n\t\tconst newMeta = {};\n\t\tObject.values( bindings ).forEach( ( { args, newValue } ) => {\n\t\t\tnewMeta[ args.key ] = newValue;\n\t\t} );\n\t\tregistry\n\t\t\t.dispatch( coreDataStore )\n\t\t\t.editEntityRecord( 'postType', context?.postType, context?.postId, {\n\t\t\t\tmeta: newMeta,\n\t\t\t} );\n\t},\n\tcanUserEditValue( { select, context, args } ) {\n\t\t// Lock editing in query loop.\n\t\tif ( context?.query || context?.queryId ) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst postType =\n\t\t\tcontext?.postType || select( editorStore ).getCurrentPostType();\n\n\t\t// Check that editing is happening in the post editor and not a template.\n\t\tif ( postType === 'wp_template' ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Check that the custom field is not protected and available in the REST API.\n\t\t// Empty string or `false` could be a valid value, so we need to check if the field value is undefined.\n\t\tconst fieldValue = select( coreDataStore ).getEntityRecord(\n\t\t\t'postType',\n\t\t\tpostType,\n\t\t\tcontext?.postId\n\t\t)?.meta?.[ args.key ];\n\n\t\tif ( fieldValue === undefined ) {\n\t\t\treturn false;\n\t\t}\n\t\t// Check that custom fields metabox is not enabled.\n\t\tconst areCustomFieldsEnabled =\n\t\t\tselect( editorStore ).getEditorSettings().enableCustomFields;\n\t\tif ( areCustomFieldsEnabled ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Check that the user has the capability to edit post meta.\n\t\tconst canUserEdit = select( coreDataStore ).canUser( 'update', {\n\t\t\tkind: 'postType',\n\t\t\tname: context?.postType,\n\t\t\tid: context?.postId,\n\t\t} );\n\t\tif ( ! canUserEdit ) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t},\n\tgetFieldsList( { registry, context } ) {\n\t\tconst metaFields = registry\n\t\t\t.select( coreDataStore )\n\t\t\t.getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tcontext?.postType,\n\t\t\t\tcontext?.postId\n\t\t\t).meta;\n\n\t\tif ( ! metaFields || ! Object.keys( metaFields ).length ) {\n\t\t\treturn null;\n\t\t}\n\n\t\t// Remove footnotes or private keys from the list of fields.\n\t\treturn Object.fromEntries(\n\t\t\tObject.entries( metaFields ).filter(\n\t\t\t\t( [ key ] ) => key !== 'footnotes' && key.charAt( 0 ) !== '_'\n\t\t\t)\n\t\t);\n\t},\n};\n"],"mappings":"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","ignoreList":[]}
@@ -49,7 +49,10 @@ function BlockManager({
49
49
  children: [!!numberOfHiddenBlocks && /*#__PURE__*/_jsxs("div", {
50
50
  className: "editor-block-manager__disabled-blocks-count",
51
51
  children: [sprintf( /* translators: %d: number of blocks. */
52
- _n('%d block is hidden.', '%d blocks are hidden.', numberOfHiddenBlocks), numberOfHiddenBlocks), /*#__PURE__*/_jsx(Button, {
52
+ _n('%d block is hidden.', '%d blocks are hidden.', numberOfHiddenBlocks), numberOfHiddenBlocks), /*#__PURE__*/_jsx(Button
53
+ // TODO: Switch to `true` (40px size) if possible
54
+ , {
55
+ __next40pxDefaultSize: false,
53
56
  variant: "link",
54
57
  onClick: () => enableAllBlockTypes(blockTypes),
55
58
  children: __('Reset')
@@ -1 +1 @@
1
- {"version":3,"names":["store","blocksStore","withSelect","withDispatch","SearchControl","Button","__","_n","sprintf","useEffect","useState","useDebounce","compose","speak","preferencesStore","unlock","editorStore","BlockManagerCategory","jsx","_jsx","jsxs","_jsxs","BlockManager","blockTypes","categories","hasBlockSupport","isMatchingSearchTerm","numberOfHiddenBlocks","enableAllBlockTypes","debouncedSpeak","search","setSearch","filter","blockType","parent","includes","count","length","resultsFoundMessage","className","children","variant","onClick","__nextHasNoMarginBottom","label","placeholder","value","onChange","nextSearch","tabIndex","role","map","category","title","slug","select","_get","getBlockTypes","getCategories","get","hiddenBlockTypes","hiddenBlock","some","registeredBlock","name","Array","isArray","dispatch","showBlockTypes","blockNames"],"sources":["@wordpress/editor/src/components/block-manager/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as blocksStore } from '@wordpress/blocks';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { SearchControl, Button } from '@wordpress/components';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport { useEffect, useState } from '@wordpress/element';\nimport { useDebounce, compose } from '@wordpress/compose';\nimport { speak } from '@wordpress/a11y';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editorStore } from '../../store';\nimport BlockManagerCategory from './category';\n\nfunction BlockManager( {\n\tblockTypes,\n\tcategories,\n\thasBlockSupport,\n\tisMatchingSearchTerm,\n\tnumberOfHiddenBlocks,\n\tenableAllBlockTypes,\n} ) {\n\tconst debouncedSpeak = useDebounce( speak, 500 );\n\tconst [ search, setSearch ] = useState( '' );\n\n\t// Filtering occurs here (as opposed to `withSelect`) to avoid\n\t// wasted renders by consequence of `Array#filter` producing\n\t// a new value reference on each call.\n\tblockTypes = blockTypes.filter(\n\t\t( blockType ) =>\n\t\t\thasBlockSupport( blockType, 'inserter', true ) &&\n\t\t\t( ! search || isMatchingSearchTerm( blockType, search ) ) &&\n\t\t\t( ! blockType.parent ||\n\t\t\t\tblockType.parent.includes( 'core/post-content' ) )\n\t);\n\n\t// Announce search results on change\n\tuseEffect( () => {\n\t\tif ( ! search ) {\n\t\t\treturn;\n\t\t}\n\t\tconst count = blockTypes.length;\n\t\tconst resultsFoundMessage = sprintf(\n\t\t\t/* translators: %d: number of results. */\n\t\t\t_n( '%d result found.', '%d results found.', count ),\n\t\t\tcount\n\t\t);\n\t\tdebouncedSpeak( resultsFoundMessage );\n\t}, [ blockTypes.length, search, debouncedSpeak ] );\n\n\treturn (\n\t\t<div className=\"editor-block-manager__content\">\n\t\t\t{ !! numberOfHiddenBlocks && (\n\t\t\t\t<div className=\"editor-block-manager__disabled-blocks-count\">\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %d: number of blocks. */\n\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t'%d block is hidden.',\n\t\t\t\t\t\t\t'%d blocks are hidden.',\n\t\t\t\t\t\t\tnumberOfHiddenBlocks\n\t\t\t\t\t\t),\n\t\t\t\t\t\tnumberOfHiddenBlocks\n\t\t\t\t\t) }\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ () => enableAllBlockTypes( blockTypes ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<SearchControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Search for a block' ) }\n\t\t\t\tplaceholder={ __( 'Search for a block' ) }\n\t\t\t\tvalue={ search }\n\t\t\t\tonChange={ ( nextSearch ) => setSearch( nextSearch ) }\n\t\t\t\tclassName=\"editor-block-manager__search\"\n\t\t\t/>\n\t\t\t<div\n\t\t\t\ttabIndex=\"0\"\n\t\t\t\trole=\"region\"\n\t\t\t\taria-label={ __( 'Available block types' ) }\n\t\t\t\tclassName=\"editor-block-manager__results\"\n\t\t\t>\n\t\t\t\t{ blockTypes.length === 0 && (\n\t\t\t\t\t<p className=\"editor-block-manager__no-results\">\n\t\t\t\t\t\t{ __( 'No blocks found.' ) }\n\t\t\t\t\t</p>\n\t\t\t\t) }\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<BlockManagerCategory\n\t\t\t\t\t\tkey={ category.slug }\n\t\t\t\t\t\ttitle={ category.title }\n\t\t\t\t\t\tblockTypes={ blockTypes.filter(\n\t\t\t\t\t\t\t( blockType ) =>\n\t\t\t\t\t\t\t\tblockType.category === category.slug\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t\t<BlockManagerCategory\n\t\t\t\t\ttitle={ __( 'Uncategorized' ) }\n\t\t\t\t\tblockTypes={ blockTypes.filter(\n\t\t\t\t\t\t( { category } ) => ! category\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetBlockTypes,\n\t\t\tgetCategories,\n\t\t\thasBlockSupport,\n\t\t\tisMatchingSearchTerm,\n\t\t} = select( blocksStore );\n\t\tconst { get } = select( preferencesStore );\n\n\t\t// Some hidden blocks become unregistered\n\t\t// by removing for instance the plugin that registered them, yet\n\t\t// they're still remain as hidden by the user's action.\n\t\t// We consider \"hidden\", blocks which were hidden and\n\t\t// are still registered.\n\t\tconst blockTypes = getBlockTypes();\n\t\tconst hiddenBlockTypes = (\n\t\t\tget( 'core', 'hiddenBlockTypes' ) ?? []\n\t\t).filter( ( hiddenBlock ) => {\n\t\t\treturn blockTypes.some(\n\t\t\t\t( registeredBlock ) => registeredBlock.name === hiddenBlock\n\t\t\t);\n\t\t} );\n\t\tconst numberOfHiddenBlocks =\n\t\t\tArray.isArray( hiddenBlockTypes ) && hiddenBlockTypes.length;\n\n\t\treturn {\n\t\t\tblockTypes,\n\t\t\tcategories: getCategories(),\n\t\t\thasBlockSupport,\n\t\t\tisMatchingSearchTerm,\n\t\t\tnumberOfHiddenBlocks,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { showBlockTypes } = unlock( dispatch( editorStore ) );\n\t\treturn {\n\t\t\tenableAllBlockTypes: ( blockTypes ) => {\n\t\t\t\tconst blockNames = blockTypes.map( ( { name } ) => name );\n\t\t\t\tshowBlockTypes( blockNames );\n\t\t\t},\n\t\t};\n\t} ),\n] )( BlockManager );\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["store","blocksStore","withSelect","withDispatch","SearchControl","Button","__","_n","sprintf","useEffect","useState","useDebounce","compose","speak","preferencesStore","unlock","editorStore","BlockManagerCategory","jsx","_jsx","jsxs","_jsxs","BlockManager","blockTypes","categories","hasBlockSupport","isMatchingSearchTerm","numberOfHiddenBlocks","enableAllBlockTypes","debouncedSpeak","search","setSearch","filter","blockType","parent","includes","count","length","resultsFoundMessage","className","children","__next40pxDefaultSize","variant","onClick","__nextHasNoMarginBottom","label","placeholder","value","onChange","nextSearch","tabIndex","role","map","category","title","slug","select","_get","getBlockTypes","getCategories","get","hiddenBlockTypes","hiddenBlock","some","registeredBlock","name","Array","isArray","dispatch","showBlockTypes","blockNames"],"sources":["@wordpress/editor/src/components/block-manager/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as blocksStore } from '@wordpress/blocks';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { SearchControl, Button } from '@wordpress/components';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport { useEffect, useState } from '@wordpress/element';\nimport { useDebounce, compose } from '@wordpress/compose';\nimport { speak } from '@wordpress/a11y';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editorStore } from '../../store';\nimport BlockManagerCategory from './category';\n\nfunction BlockManager( {\n\tblockTypes,\n\tcategories,\n\thasBlockSupport,\n\tisMatchingSearchTerm,\n\tnumberOfHiddenBlocks,\n\tenableAllBlockTypes,\n} ) {\n\tconst debouncedSpeak = useDebounce( speak, 500 );\n\tconst [ search, setSearch ] = useState( '' );\n\n\t// Filtering occurs here (as opposed to `withSelect`) to avoid\n\t// wasted renders by consequence of `Array#filter` producing\n\t// a new value reference on each call.\n\tblockTypes = blockTypes.filter(\n\t\t( blockType ) =>\n\t\t\thasBlockSupport( blockType, 'inserter', true ) &&\n\t\t\t( ! search || isMatchingSearchTerm( blockType, search ) ) &&\n\t\t\t( ! blockType.parent ||\n\t\t\t\tblockType.parent.includes( 'core/post-content' ) )\n\t);\n\n\t// Announce search results on change\n\tuseEffect( () => {\n\t\tif ( ! search ) {\n\t\t\treturn;\n\t\t}\n\t\tconst count = blockTypes.length;\n\t\tconst resultsFoundMessage = sprintf(\n\t\t\t/* translators: %d: number of results. */\n\t\t\t_n( '%d result found.', '%d results found.', count ),\n\t\t\tcount\n\t\t);\n\t\tdebouncedSpeak( resultsFoundMessage );\n\t}, [ blockTypes.length, search, debouncedSpeak ] );\n\n\treturn (\n\t\t<div className=\"editor-block-manager__content\">\n\t\t\t{ !! numberOfHiddenBlocks && (\n\t\t\t\t<div className=\"editor-block-manager__disabled-blocks-count\">\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %d: number of blocks. */\n\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t'%d block is hidden.',\n\t\t\t\t\t\t\t'%d blocks are hidden.',\n\t\t\t\t\t\t\tnumberOfHiddenBlocks\n\t\t\t\t\t\t),\n\t\t\t\t\t\tnumberOfHiddenBlocks\n\t\t\t\t\t) }\n\t\t\t\t\t<Button\n\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ () => enableAllBlockTypes( blockTypes ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<SearchControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Search for a block' ) }\n\t\t\t\tplaceholder={ __( 'Search for a block' ) }\n\t\t\t\tvalue={ search }\n\t\t\t\tonChange={ ( nextSearch ) => setSearch( nextSearch ) }\n\t\t\t\tclassName=\"editor-block-manager__search\"\n\t\t\t/>\n\t\t\t<div\n\t\t\t\ttabIndex=\"0\"\n\t\t\t\trole=\"region\"\n\t\t\t\taria-label={ __( 'Available block types' ) }\n\t\t\t\tclassName=\"editor-block-manager__results\"\n\t\t\t>\n\t\t\t\t{ blockTypes.length === 0 && (\n\t\t\t\t\t<p className=\"editor-block-manager__no-results\">\n\t\t\t\t\t\t{ __( 'No blocks found.' ) }\n\t\t\t\t\t</p>\n\t\t\t\t) }\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<BlockManagerCategory\n\t\t\t\t\t\tkey={ category.slug }\n\t\t\t\t\t\ttitle={ category.title }\n\t\t\t\t\t\tblockTypes={ blockTypes.filter(\n\t\t\t\t\t\t\t( blockType ) =>\n\t\t\t\t\t\t\t\tblockType.category === category.slug\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t\t<BlockManagerCategory\n\t\t\t\t\ttitle={ __( 'Uncategorized' ) }\n\t\t\t\t\tblockTypes={ blockTypes.filter(\n\t\t\t\t\t\t( { category } ) => ! category\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetBlockTypes,\n\t\t\tgetCategories,\n\t\t\thasBlockSupport,\n\t\t\tisMatchingSearchTerm,\n\t\t} = select( blocksStore );\n\t\tconst { get } = select( preferencesStore );\n\n\t\t// Some hidden blocks become unregistered\n\t\t// by removing for instance the plugin that registered them, yet\n\t\t// they're still remain as hidden by the user's action.\n\t\t// We consider \"hidden\", blocks which were hidden and\n\t\t// are still registered.\n\t\tconst blockTypes = getBlockTypes();\n\t\tconst hiddenBlockTypes = (\n\t\t\tget( 'core', 'hiddenBlockTypes' ) ?? []\n\t\t).filter( ( hiddenBlock ) => {\n\t\t\treturn blockTypes.some(\n\t\t\t\t( registeredBlock ) => registeredBlock.name === hiddenBlock\n\t\t\t);\n\t\t} );\n\t\tconst numberOfHiddenBlocks =\n\t\t\tArray.isArray( hiddenBlockTypes ) && hiddenBlockTypes.length;\n\n\t\treturn {\n\t\t\tblockTypes,\n\t\t\tcategories: getCategories(),\n\t\t\thasBlockSupport,\n\t\t\tisMatchingSearchTerm,\n\t\t\tnumberOfHiddenBlocks,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { showBlockTypes } = unlock( dispatch( editorStore ) );\n\t\treturn {\n\t\t\tenableAllBlockTypes: ( blockTypes ) => {\n\t\t\t\tconst blockNames = blockTypes.map( ( { name } ) => name );\n\t\t\t\tshowBlockTypes( blockNames );\n\t\t\t},\n\t\t};\n\t} ),\n] )( BlockManager );\n"],"mappings":"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","ignoreList":[]}
@@ -5,7 +5,7 @@ import { BlockSettingsMenuControls, __unstableBlockSettingsMenuFirstItem as Bloc
5
5
  import { store as coreStore } from '@wordpress/core-data';
6
6
  import { __experimentalText as Text, MenuItem } from '@wordpress/components';
7
7
  import { useSelect, useDispatch } from '@wordpress/data';
8
- import { __ } from '@wordpress/i18n';
8
+ import { __, _x } from '@wordpress/i18n';
9
9
 
10
10
  /**
11
11
  * Internal dependencies
@@ -106,24 +106,21 @@ function TemplateLockContentOnlyMenuItems({
106
106
  };
107
107
  }, [clientId]);
108
108
  const blockDisplayInformation = useBlockDisplayInformation(contentLockingParent);
109
- // Disable reason: We're using a hook here so it has to be on top-level.
110
- // eslint-disable-next-line @wordpress/no-unused-vars-before-return
111
- const {
112
- modifyContentLockBlock,
113
- selectBlock
114
- } = unlock(useDispatch(blockEditorStore));
109
+ const blockEditorActions = useDispatch(blockEditorStore);
115
110
  if (!blockDisplayInformation?.title) {
116
111
  return null;
117
112
  }
113
+ const {
114
+ modifyContentLockBlock
115
+ } = unlock(blockEditorActions);
118
116
  return /*#__PURE__*/_jsxs(_Fragment, {
119
117
  children: [/*#__PURE__*/_jsx(BlockSettingsMenuFirstItem, {
120
118
  children: /*#__PURE__*/_jsx(MenuItem, {
121
119
  onClick: () => {
122
- selectBlock(contentLockingParent);
123
120
  modifyContentLockBlock(contentLockingParent);
124
121
  onClose();
125
122
  },
126
- children: __('Unlock')
123
+ children: _x('Unlock', 'Unlock content locked blocks')
127
124
  })
128
125
  }), /*#__PURE__*/_jsx(Text, {
129
126
  variant: "muted",
@@ -1 +1 @@
1
- {"version":3,"names":["BlockSettingsMenuControls","__unstableBlockSettingsMenuFirstItem","BlockSettingsMenuFirstItem","store","blockEditorStore","useBlockDisplayInformation","coreStore","__experimentalText","Text","MenuItem","useSelect","useDispatch","__","editorStore","unlock","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ContentOnlySettingsMenuItems","clientId","onClose","entity","onNavigateToEntityRecord","canEditTemplates","select","getBlockEditingMode","getBlockParentsByBlockName","getSettings","getBlockAttributes","contentOnly","patternParent","record","getEntityRecord","ref","getCurrentTemplateId","templateId","getContentLockingParent","_canEditTemplates","canUser","kind","name","TemplateLockContentOnlyMenuItems","isPattern","type","helpText","children","onClick","postId","id","postType","disabled","variant","as","className","contentLockingParent","blockDisplayInformation","modifyContentLockBlock","selectBlock","title","ContentOnlySettingsMenu","selectedClientIds","length"],"sources":["@wordpress/editor/src/components/block-settings-menu/content-only-settings-menu.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockSettingsMenuControls,\n\t__unstableBlockSettingsMenuFirstItem as BlockSettingsMenuFirstItem,\n\tstore as blockEditorStore,\n\tuseBlockDisplayInformation,\n} from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __experimentalText as Text, MenuItem } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nfunction ContentOnlySettingsMenuItems( { clientId, onClose } ) {\n\tconst { entity, onNavigateToEntityRecord, canEditTemplates } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockEditingMode,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t\tgetSettings,\n\t\t\t\tgetBlockAttributes,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst contentOnly =\n\t\t\t\tgetBlockEditingMode( clientId ) === 'contentOnly';\n\t\t\tif ( ! contentOnly ) {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t\tconst patternParent = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/block',\n\t\t\t\ttrue\n\t\t\t)[ 0 ];\n\n\t\t\tlet record;\n\t\t\tif ( patternParent ) {\n\t\t\t\trecord = select( coreStore ).getEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_block',\n\t\t\t\t\tgetBlockAttributes( patternParent ).ref\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tconst { getCurrentTemplateId } = select( editorStore );\n\t\t\t\tconst templateId = getCurrentTemplateId();\n\t\t\t\tconst { getContentLockingParent } = unlock(\n\t\t\t\t\tselect( blockEditorStore )\n\t\t\t\t);\n\t\t\t\tif ( ! getContentLockingParent( clientId ) && templateId ) {\n\t\t\t\t\trecord = select( coreStore ).getEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t'wp_template',\n\t\t\t\t\t\ttemplateId\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst _canEditTemplates = select( coreStore ).canUser( 'create', {\n\t\t\t\tkind: 'postType',\n\t\t\t\tname: 'wp_template',\n\t\t\t} );\n\t\t\treturn {\n\t\t\t\tcanEditTemplates: _canEditTemplates,\n\t\t\t\tentity: record,\n\t\t\t\tonNavigateToEntityRecord:\n\t\t\t\t\tgetSettings().onNavigateToEntityRecord,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tif ( ! entity ) {\n\t\treturn (\n\t\t\t<TemplateLockContentOnlyMenuItems\n\t\t\t\tclientId={ clientId }\n\t\t\t\tonClose={ onClose }\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst isPattern = entity.type === 'wp_block';\n\tlet helpText = isPattern\n\t\t? __(\n\t\t\t\t'Edit the pattern to move, delete, or make further changes to this block.'\n\t\t )\n\t\t: __(\n\t\t\t\t'Edit the template to move, delete, or make further changes to this block.'\n\t\t );\n\n\tif ( ! canEditTemplates ) {\n\t\thelpText = __(\n\t\t\t'Only users with permissions to edit the template can move or delete this block'\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<BlockSettingsMenuFirstItem>\n\t\t\t\t<MenuItem\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tonNavigateToEntityRecord( {\n\t\t\t\t\t\t\tpostId: entity.id,\n\t\t\t\t\t\t\tpostType: entity.type,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdisabled={ ! canEditTemplates }\n\t\t\t\t>\n\t\t\t\t\t{ isPattern ? __( 'Edit pattern' ) : __( 'Edit template' ) }\n\t\t\t\t</MenuItem>\n\t\t\t</BlockSettingsMenuFirstItem>\n\t\t\t<Text\n\t\t\t\tvariant=\"muted\"\n\t\t\t\tas=\"p\"\n\t\t\t\tclassName=\"editor-content-only-settings-menu__description\"\n\t\t\t>\n\t\t\t\t{ helpText }\n\t\t\t</Text>\n\t\t</>\n\t);\n}\n\nfunction TemplateLockContentOnlyMenuItems( { clientId, onClose } ) {\n\tconst { contentLockingParent } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getContentLockingParent } = unlock(\n\t\t\t\tselect( blockEditorStore )\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tcontentLockingParent: getContentLockingParent( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst blockDisplayInformation =\n\t\tuseBlockDisplayInformation( contentLockingParent );\n\t// Disable reason: We're using a hook here so it has to be on top-level.\n\t// eslint-disable-next-line @wordpress/no-unused-vars-before-return\n\tconst { modifyContentLockBlock, selectBlock } = unlock(\n\t\tuseDispatch( blockEditorStore )\n\t);\n\n\tif ( ! blockDisplayInformation?.title ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<BlockSettingsMenuFirstItem>\n\t\t\t\t<MenuItem\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tselectBlock( contentLockingParent );\n\t\t\t\t\t\tmodifyContentLockBlock( contentLockingParent );\n\t\t\t\t\t\tonClose();\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Unlock' ) }\n\t\t\t\t</MenuItem>\n\t\t\t</BlockSettingsMenuFirstItem>\n\t\t\t<Text\n\t\t\t\tvariant=\"muted\"\n\t\t\t\tas=\"p\"\n\t\t\t\tclassName=\"editor-content-only-settings-menu__description\"\n\t\t\t>\n\t\t\t\t{ __(\n\t\t\t\t\t'Temporarily unlock the parent block to edit, delete or make further changes to this block.'\n\t\t\t\t) }\n\t\t\t</Text>\n\t\t</>\n\t);\n}\n\nexport default function ContentOnlySettingsMenu() {\n\treturn (\n\t\t<BlockSettingsMenuControls>\n\t\t\t{ ( { selectedClientIds, onClose } ) =>\n\t\t\t\tselectedClientIds.length === 1 && (\n\t\t\t\t\t<ContentOnlySettingsMenuItems\n\t\t\t\t\t\tclientId={ selectedClientIds[ 0 ] }\n\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t/>\n\t\t\t\t)\n\t\t\t}\n\t\t</BlockSettingsMenuControls>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["BlockSettingsMenuControls","__unstableBlockSettingsMenuFirstItem","BlockSettingsMenuFirstItem","store","blockEditorStore","useBlockDisplayInformation","coreStore","__experimentalText","Text","MenuItem","useSelect","useDispatch","__","_x","editorStore","unlock","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ContentOnlySettingsMenuItems","clientId","onClose","entity","onNavigateToEntityRecord","canEditTemplates","select","getBlockEditingMode","getBlockParentsByBlockName","getSettings","getBlockAttributes","contentOnly","patternParent","record","getEntityRecord","ref","getCurrentTemplateId","templateId","getContentLockingParent","_canEditTemplates","canUser","kind","name","TemplateLockContentOnlyMenuItems","isPattern","type","helpText","children","onClick","postId","id","postType","disabled","variant","as","className","contentLockingParent","blockDisplayInformation","blockEditorActions","title","modifyContentLockBlock","ContentOnlySettingsMenu","selectedClientIds","length"],"sources":["@wordpress/editor/src/components/block-settings-menu/content-only-settings-menu.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockSettingsMenuControls,\n\t__unstableBlockSettingsMenuFirstItem as BlockSettingsMenuFirstItem,\n\tstore as blockEditorStore,\n\tuseBlockDisplayInformation,\n} from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __experimentalText as Text, MenuItem } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nfunction ContentOnlySettingsMenuItems( { clientId, onClose } ) {\n\tconst { entity, onNavigateToEntityRecord, canEditTemplates } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockEditingMode,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t\tgetSettings,\n\t\t\t\tgetBlockAttributes,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst contentOnly =\n\t\t\t\tgetBlockEditingMode( clientId ) === 'contentOnly';\n\t\t\tif ( ! contentOnly ) {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t\tconst patternParent = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/block',\n\t\t\t\ttrue\n\t\t\t)[ 0 ];\n\n\t\t\tlet record;\n\t\t\tif ( patternParent ) {\n\t\t\t\trecord = select( coreStore ).getEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_block',\n\t\t\t\t\tgetBlockAttributes( patternParent ).ref\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tconst { getCurrentTemplateId } = select( editorStore );\n\t\t\t\tconst templateId = getCurrentTemplateId();\n\t\t\t\tconst { getContentLockingParent } = unlock(\n\t\t\t\t\tselect( blockEditorStore )\n\t\t\t\t);\n\t\t\t\tif ( ! getContentLockingParent( clientId ) && templateId ) {\n\t\t\t\t\trecord = select( coreStore ).getEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t'wp_template',\n\t\t\t\t\t\ttemplateId\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst _canEditTemplates = select( coreStore ).canUser( 'create', {\n\t\t\t\tkind: 'postType',\n\t\t\t\tname: 'wp_template',\n\t\t\t} );\n\t\t\treturn {\n\t\t\t\tcanEditTemplates: _canEditTemplates,\n\t\t\t\tentity: record,\n\t\t\t\tonNavigateToEntityRecord:\n\t\t\t\t\tgetSettings().onNavigateToEntityRecord,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tif ( ! entity ) {\n\t\treturn (\n\t\t\t<TemplateLockContentOnlyMenuItems\n\t\t\t\tclientId={ clientId }\n\t\t\t\tonClose={ onClose }\n\t\t\t/>\n\t\t);\n\t}\n\n\tconst isPattern = entity.type === 'wp_block';\n\tlet helpText = isPattern\n\t\t? __(\n\t\t\t\t'Edit the pattern to move, delete, or make further changes to this block.'\n\t\t )\n\t\t: __(\n\t\t\t\t'Edit the template to move, delete, or make further changes to this block.'\n\t\t );\n\n\tif ( ! canEditTemplates ) {\n\t\thelpText = __(\n\t\t\t'Only users with permissions to edit the template can move or delete this block'\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<BlockSettingsMenuFirstItem>\n\t\t\t\t<MenuItem\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tonNavigateToEntityRecord( {\n\t\t\t\t\t\t\tpostId: entity.id,\n\t\t\t\t\t\t\tpostType: entity.type,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdisabled={ ! canEditTemplates }\n\t\t\t\t>\n\t\t\t\t\t{ isPattern ? __( 'Edit pattern' ) : __( 'Edit template' ) }\n\t\t\t\t</MenuItem>\n\t\t\t</BlockSettingsMenuFirstItem>\n\t\t\t<Text\n\t\t\t\tvariant=\"muted\"\n\t\t\t\tas=\"p\"\n\t\t\t\tclassName=\"editor-content-only-settings-menu__description\"\n\t\t\t>\n\t\t\t\t{ helpText }\n\t\t\t</Text>\n\t\t</>\n\t);\n}\n\nfunction TemplateLockContentOnlyMenuItems( { clientId, onClose } ) {\n\tconst { contentLockingParent } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getContentLockingParent } = unlock(\n\t\t\t\tselect( blockEditorStore )\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tcontentLockingParent: getContentLockingParent( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst blockDisplayInformation =\n\t\tuseBlockDisplayInformation( contentLockingParent );\n\tconst blockEditorActions = useDispatch( blockEditorStore );\n\tif ( ! blockDisplayInformation?.title ) {\n\t\treturn null;\n\t}\n\n\tconst { modifyContentLockBlock } = unlock( blockEditorActions );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockSettingsMenuFirstItem>\n\t\t\t\t<MenuItem\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tmodifyContentLockBlock( contentLockingParent );\n\t\t\t\t\t\tonClose();\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ _x( 'Unlock', 'Unlock content locked blocks' ) }\n\t\t\t\t</MenuItem>\n\t\t\t</BlockSettingsMenuFirstItem>\n\t\t\t<Text\n\t\t\t\tvariant=\"muted\"\n\t\t\t\tas=\"p\"\n\t\t\t\tclassName=\"editor-content-only-settings-menu__description\"\n\t\t\t>\n\t\t\t\t{ __(\n\t\t\t\t\t'Temporarily unlock the parent block to edit, delete or make further changes to this block.'\n\t\t\t\t) }\n\t\t\t</Text>\n\t\t</>\n\t);\n}\n\nexport default function ContentOnlySettingsMenu() {\n\treturn (\n\t\t<BlockSettingsMenuControls>\n\t\t\t{ ( { selectedClientIds, onClose } ) =>\n\t\t\t\tselectedClientIds.length === 1 && (\n\t\t\t\t\t<ContentOnlySettingsMenuItems\n\t\t\t\t\t\tclientId={ selectedClientIds[ 0 ] }\n\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t/>\n\t\t\t\t)\n\t\t\t}\n\t\t</BlockSettingsMenuControls>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -100,6 +100,7 @@ export function CreateTemplatePartModalContents({
100
100
  onChange: setTitle,
101
101
  required: true
102
102
  }), /*#__PURE__*/_jsx(BaseControl, {
103
+ __nextHasNoMarginBottom: true,
103
104
  label: __('Area'),
104
105
  id: `editor-create-template-part-modal__area-selection-${instanceId}`,
105
106
  className: "editor-create-template-part-modal__area-base-control",
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","useDispatch","Icon","BaseControl","TextControl","Flex","FlexItem","FlexBlock","Button","Modal","__experimentalRadioGroup","RadioGroup","__experimentalRadio","Radio","__experimentalHStack","HStack","__experimentalVStack","VStack","__","useState","useInstanceId","store","noticesStore","coreStore","check","serialize","editorStore","TEMPLATE_PART_POST_TYPE","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","useExistingTemplateParts","getUniqueTemplatePartTitle","getCleanTemplatePartSlug","jsx","_jsx","jsxs","_jsxs","CreateTemplatePartModal","modalTitle","restProps","defaultModalTitle","select","getPostType","labels","add_new_item","title","onRequestClose","closeModal","overlayClassName","focusOnMount","size","children","CreateTemplatePartModalContents","defaultArea","blocks","confirmLabel","onCreate","onError","defaultTitle","createErrorNotice","saveEntityRecord","existingTemplateParts","setTitle","area","setArea","isSubmitting","setIsSubmitting","instanceId","templatePartAreas","__experimentalGetDefaultTemplatePartAreas","createTemplatePart","uniqueTitle","cleanSlug","templatePart","slug","content","throwOnError","error","errorMessage","message","code","type","onSubmit","event","preventDefault","spacing","__next40pxDefaultSize","__nextHasNoMarginBottom","label","value","onChange","required","id","className","checked","map","icon","description","align","justify","variant","onClick","isBusy"],"sources":["@wordpress/editor/src/components/create-template-part-modal/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tIcon,\n\tBaseControl,\n\tTextControl,\n\tFlex,\n\tFlexItem,\n\tFlexBlock,\n\tButton,\n\tModal,\n\t__experimentalRadioGroup as RadioGroup,\n\t__experimentalRadio as Radio,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { useInstanceId } from '@wordpress/compose';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { check } from '@wordpress/icons';\nimport { serialize } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport {\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n} from '../../store/constants';\nimport {\n\tuseExistingTemplateParts,\n\tgetUniqueTemplatePartTitle,\n\tgetCleanTemplatePartSlug,\n} from './utils';\n\nexport default function CreateTemplatePartModal( {\n\tmodalTitle,\n\t...restProps\n} ) {\n\tconst defaultModalTitle = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getPostType( TEMPLATE_PART_POST_TYPE )?.labels\n\t\t\t\t?.add_new_item,\n\t\t[]\n\t);\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ modalTitle || defaultModalTitle }\n\t\t\tonRequestClose={ restProps.closeModal }\n\t\t\toverlayClassName=\"editor-create-template-part-modal\"\n\t\t\tfocusOnMount=\"firstContentElement\"\n\t\t\tsize=\"medium\"\n\t\t>\n\t\t\t<CreateTemplatePartModalContents { ...restProps } />\n\t\t</Modal>\n\t);\n}\n\nexport function CreateTemplatePartModalContents( {\n\tdefaultArea = TEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n\tblocks = [],\n\tconfirmLabel = __( 'Add' ),\n\tcloseModal,\n\tonCreate,\n\tonError,\n\tdefaultTitle = '',\n} ) {\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst existingTemplateParts = useExistingTemplateParts();\n\n\tconst [ title, setTitle ] = useState( defaultTitle );\n\tconst [ area, setArea ] = useState( defaultArea );\n\tconst [ isSubmitting, setIsSubmitting ] = useState( false );\n\tconst instanceId = useInstanceId( CreateTemplatePartModal );\n\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\tasync function createTemplatePart() {\n\t\tif ( ! title || isSubmitting ) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tsetIsSubmitting( true );\n\t\t\tconst uniqueTitle = getUniqueTemplatePartTitle(\n\t\t\t\ttitle,\n\t\t\t\texistingTemplateParts\n\t\t\t);\n\t\t\tconst cleanSlug = getCleanTemplatePartSlug( uniqueTitle );\n\n\t\t\tconst templatePart = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t\t{\n\t\t\t\t\tslug: cleanSlug,\n\t\t\t\t\ttitle: uniqueTitle,\n\t\t\t\t\tcontent: serialize( blocks ),\n\t\t\t\t\tarea,\n\t\t\t\t},\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\t\t\tawait onCreate( templatePart );\n\n\t\t\t// TODO: Add a success notice?\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __(\n\t\t\t\t\t\t\t'An error occurred while creating the template part.'\n\t\t\t\t\t );\n\n\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\n\t\t\tonError?.();\n\t\t} finally {\n\t\t\tsetIsSubmitting( false );\n\t\t}\n\t}\n\treturn (\n\t\t<form\n\t\t\tonSubmit={ async ( event ) => {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tawait createTemplatePart();\n\t\t\t} }\n\t\t>\n\t\t\t<VStack spacing=\"4\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ title }\n\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\trequired\n\t\t\t\t/>\n\t\t\t\t<BaseControl\n\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\tid={ `editor-create-template-part-modal__area-selection-${ instanceId }` }\n\t\t\t\t\tclassName=\"editor-create-template-part-modal__area-base-control\"\n\t\t\t\t>\n\t\t\t\t\t<RadioGroup\n\t\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\t\tclassName=\"editor-create-template-part-modal__area-radio-group\"\n\t\t\t\t\t\tid={ `editor-create-template-part-modal__area-selection-${ instanceId }` }\n\t\t\t\t\t\tonChange={ setArea }\n\t\t\t\t\t\tchecked={ area }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ templatePartAreas.map(\n\t\t\t\t\t\t\t( { icon, label, area: value, description } ) => (\n\t\t\t\t\t\t\t\t<Radio\n\t\t\t\t\t\t\t\t\tkey={ label }\n\t\t\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t\t\t\tclassName=\"editor-create-template-part-modal__area-radio\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Flex align=\"start\" justify=\"start\">\n\t\t\t\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t\t<FlexBlock className=\"editor-create-template-part-modal__option-label\">\n\t\t\t\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t\t\t\t\t<div>{ description }</div>\n\t\t\t\t\t\t\t\t\t\t</FlexBlock>\n\n\t\t\t\t\t\t\t\t\t\t<FlexItem className=\"editor-create-template-part-modal__checkbox\">\n\t\t\t\t\t\t\t\t\t\t\t{ area === value && (\n\t\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ check } />\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t\t\t</Radio>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) }\n\t\t\t\t\t</RadioGroup>\n\t\t\t\t</BaseControl>\n\t\t\t\t<HStack justify=\"right\">\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={ () => {\n\t\t\t\t\t\t\tcloseModal();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\taria-disabled={ ! title || isSubmitting }\n\t\t\t\t\t\tisBusy={ isSubmitting }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ confirmLabel }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t</form>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useSelect","useDispatch","Icon","BaseControl","TextControl","Flex","FlexItem","FlexBlock","Button","Modal","__experimentalRadioGroup","RadioGroup","__experimentalRadio","Radio","__experimentalHStack","HStack","__experimentalVStack","VStack","__","useState","useInstanceId","store","noticesStore","coreStore","check","serialize","editorStore","TEMPLATE_PART_POST_TYPE","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","useExistingTemplateParts","getUniqueTemplatePartTitle","getCleanTemplatePartSlug","jsx","_jsx","jsxs","_jsxs","CreateTemplatePartModal","modalTitle","restProps","defaultModalTitle","select","getPostType","labels","add_new_item","title","onRequestClose","closeModal","overlayClassName","focusOnMount","size","children","CreateTemplatePartModalContents","defaultArea","blocks","confirmLabel","onCreate","onError","defaultTitle","createErrorNotice","saveEntityRecord","existingTemplateParts","setTitle","area","setArea","isSubmitting","setIsSubmitting","instanceId","templatePartAreas","__experimentalGetDefaultTemplatePartAreas","createTemplatePart","uniqueTitle","cleanSlug","templatePart","slug","content","throwOnError","error","errorMessage","message","code","type","onSubmit","event","preventDefault","spacing","__next40pxDefaultSize","__nextHasNoMarginBottom","label","value","onChange","required","id","className","checked","map","icon","description","align","justify","variant","onClick","isBusy"],"sources":["@wordpress/editor/src/components/create-template-part-modal/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tIcon,\n\tBaseControl,\n\tTextControl,\n\tFlex,\n\tFlexItem,\n\tFlexBlock,\n\tButton,\n\tModal,\n\t__experimentalRadioGroup as RadioGroup,\n\t__experimentalRadio as Radio,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { useInstanceId } from '@wordpress/compose';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { check } from '@wordpress/icons';\nimport { serialize } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport {\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n} from '../../store/constants';\nimport {\n\tuseExistingTemplateParts,\n\tgetUniqueTemplatePartTitle,\n\tgetCleanTemplatePartSlug,\n} from './utils';\n\nexport default function CreateTemplatePartModal( {\n\tmodalTitle,\n\t...restProps\n} ) {\n\tconst defaultModalTitle = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getPostType( TEMPLATE_PART_POST_TYPE )?.labels\n\t\t\t\t?.add_new_item,\n\t\t[]\n\t);\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ modalTitle || defaultModalTitle }\n\t\t\tonRequestClose={ restProps.closeModal }\n\t\t\toverlayClassName=\"editor-create-template-part-modal\"\n\t\t\tfocusOnMount=\"firstContentElement\"\n\t\t\tsize=\"medium\"\n\t\t>\n\t\t\t<CreateTemplatePartModalContents { ...restProps } />\n\t\t</Modal>\n\t);\n}\n\nexport function CreateTemplatePartModalContents( {\n\tdefaultArea = TEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n\tblocks = [],\n\tconfirmLabel = __( 'Add' ),\n\tcloseModal,\n\tonCreate,\n\tonError,\n\tdefaultTitle = '',\n} ) {\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst existingTemplateParts = useExistingTemplateParts();\n\n\tconst [ title, setTitle ] = useState( defaultTitle );\n\tconst [ area, setArea ] = useState( defaultArea );\n\tconst [ isSubmitting, setIsSubmitting ] = useState( false );\n\tconst instanceId = useInstanceId( CreateTemplatePartModal );\n\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\tasync function createTemplatePart() {\n\t\tif ( ! title || isSubmitting ) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tsetIsSubmitting( true );\n\t\t\tconst uniqueTitle = getUniqueTemplatePartTitle(\n\t\t\t\ttitle,\n\t\t\t\texistingTemplateParts\n\t\t\t);\n\t\t\tconst cleanSlug = getCleanTemplatePartSlug( uniqueTitle );\n\n\t\t\tconst templatePart = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t\t{\n\t\t\t\t\tslug: cleanSlug,\n\t\t\t\t\ttitle: uniqueTitle,\n\t\t\t\t\tcontent: serialize( blocks ),\n\t\t\t\t\tarea,\n\t\t\t\t},\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\t\t\tawait onCreate( templatePart );\n\n\t\t\t// TODO: Add a success notice?\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __(\n\t\t\t\t\t\t\t'An error occurred while creating the template part.'\n\t\t\t\t\t );\n\n\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\n\t\t\tonError?.();\n\t\t} finally {\n\t\t\tsetIsSubmitting( false );\n\t\t}\n\t}\n\treturn (\n\t\t<form\n\t\t\tonSubmit={ async ( event ) => {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tawait createTemplatePart();\n\t\t\t} }\n\t\t>\n\t\t\t<VStack spacing=\"4\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ title }\n\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\trequired\n\t\t\t\t/>\n\t\t\t\t<BaseControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\tid={ `editor-create-template-part-modal__area-selection-${ instanceId }` }\n\t\t\t\t\tclassName=\"editor-create-template-part-modal__area-base-control\"\n\t\t\t\t>\n\t\t\t\t\t<RadioGroup\n\t\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\t\tclassName=\"editor-create-template-part-modal__area-radio-group\"\n\t\t\t\t\t\tid={ `editor-create-template-part-modal__area-selection-${ instanceId }` }\n\t\t\t\t\t\tonChange={ setArea }\n\t\t\t\t\t\tchecked={ area }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ templatePartAreas.map(\n\t\t\t\t\t\t\t( { icon, label, area: value, description } ) => (\n\t\t\t\t\t\t\t\t<Radio\n\t\t\t\t\t\t\t\t\tkey={ label }\n\t\t\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t\t\t\tclassName=\"editor-create-template-part-modal__area-radio\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Flex align=\"start\" justify=\"start\">\n\t\t\t\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t\t<FlexBlock className=\"editor-create-template-part-modal__option-label\">\n\t\t\t\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t\t\t\t\t<div>{ description }</div>\n\t\t\t\t\t\t\t\t\t\t</FlexBlock>\n\n\t\t\t\t\t\t\t\t\t\t<FlexItem className=\"editor-create-template-part-modal__checkbox\">\n\t\t\t\t\t\t\t\t\t\t\t{ area === value && (\n\t\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ check } />\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t\t\t</Radio>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) }\n\t\t\t\t\t</RadioGroup>\n\t\t\t\t</BaseControl>\n\t\t\t\t<HStack justify=\"right\">\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={ () => {\n\t\t\t\t\t\t\tcloseModal();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\taria-disabled={ ! title || isSubmitting }\n\t\t\t\t\t\tisBusy={ isSubmitting }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ confirmLabel }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t</form>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -101,9 +101,9 @@ export default function DocumentBar(props) {
101
101
  const entityTitle = isTemplate ? templateTitle : documentTitle;
102
102
  const title = props.title || entityTitle;
103
103
  const icon = props.icon || templateIcon;
104
- const mounted = useRef(false);
104
+ const mountedRef = useRef(false);
105
105
  useEffect(() => {
106
- mounted.current = true;
106
+ mountedRef.current = true;
107
107
  }, []);
108
108
  return /*#__PURE__*/_jsxs("div", {
109
109
  className: clsx('editor-document-bar', {
@@ -119,7 +119,7 @@ export default function DocumentBar(props) {
119
119
  onNavigateToPreviousEntityRecord();
120
120
  },
121
121
  size: "compact",
122
- initial: mounted.current ? {
122
+ initial: mountedRef.current ? {
123
123
  opacity: 0,
124
124
  transform: 'translateX(15%)'
125
125
  } : false // Don't show entry animation when DocumentBar mounts.
@@ -148,7 +148,7 @@ export default function DocumentBar(props) {
148
148
  // Force entry animation when the back button is added or removed.
149
149
  ,
150
150
 
151
- initial: mounted.current ? {
151
+ initial: mountedRef.current ? {
152
152
  opacity: 0,
153
153
  transform: hasBackButton ? 'translateX(15%)' : 'translateX(-15%)'
154
154
  } : false // Don't show entry animation when DocumentBar mounts.
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","__","isRTL","sprintf","useSelect","useDispatch","Button","__experimentalText","Text","__unstableMotion","motion","__unstableAnimatePresence","AnimatePresence","BlockIcon","chevronLeftSmall","chevronRightSmall","displayShortcut","store","coreStore","commandsStore","useRef","useEffect","useReducedMotion","decodeEntities","TEMPLATE_POST_TYPES","GLOBAL_POST_TYPES","editorStore","unlock","jsx","_jsx","jsxs","_jsxs","TYPE_LABELS","wp_pattern","wp_navigation","wp_template","wp_template_part","MotionButton","DocumentBar","props","postType","documentTitle","isNotFound","isUnsyncedPattern","templateIcon","templateTitle","onNavigateToPreviousEntityRecord","select","getCurrentPostType","getCurrentPostId","getEditorSettings","__experimentalGetTemplateInfo","getTemplateInfo","getEditedEntityRecord","isResolving","isResolvingSelector","_postType","_postId","_document","_templateInfo","title","wp_pattern_sync_status","getPostIcon","area","open","openCommandCenter","isReducedMotion","isTemplate","includes","isGlobalEntity","hasBackButton","entityTitle","icon","mounted","current","className","children","onClick","event","stopPropagation","size","initial","opacity","transform","animate","exit","transition","duration","undefined","div","as","primary"],"sources":["@wordpress/editor/src/components/document-bar/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, isRTL, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\t__experimentalText as Text,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n} from '@wordpress/components';\nimport { BlockIcon } from '@wordpress/block-editor';\nimport { chevronLeftSmall, chevronRightSmall } from '@wordpress/icons';\nimport { displayShortcut } from '@wordpress/keycodes';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as commandsStore } from '@wordpress/commands';\nimport { useRef, useEffect } from '@wordpress/element';\nimport { useReducedMotion } from '@wordpress/compose';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_POST_TYPES, GLOBAL_POST_TYPES } from '../../store/constants';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst TYPE_LABELS = {\n\t// translators: 1: Pattern title.\n\twp_pattern: __( 'Editing pattern: %s' ),\n\t// translators: 1: Navigation menu title.\n\twp_navigation: __( 'Editing navigation menu: %s' ),\n\t// translators: 1: Template title.\n\twp_template: __( 'Editing template: %s' ),\n\t// translators: 1: Template part title.\n\twp_template_part: __( 'Editing template part: %s' ),\n};\n\nconst MotionButton = motion( Button );\n\n/**\n * This component renders a navigation bar at the top of the editor. It displays the title of the current document,\n * a back button (if applicable), and a command center button. It also handles different states of the document,\n * such as \"not found\" or \"unsynced\".\n *\n * @example\n * ```jsx\n * <DocumentBar />\n * ```\n * @param {Object} props The component props.\n * @param {string} props.title A title for the document, defaulting to the document or\n * template title currently being edited.\n * @param {import(\"@wordpress/components\").IconType} props.icon An icon for the document, defaulting to an icon for document\n * or template currently being edited.\n *\n * @return {JSX.Element} The rendered DocumentBar component.\n */\nexport default function DocumentBar( props ) {\n\tconst {\n\t\tpostType,\n\t\tdocumentTitle,\n\t\tisNotFound,\n\t\tisUnsyncedPattern,\n\t\ttemplateIcon,\n\t\ttemplateTitle,\n\t\tonNavigateToPreviousEntityRecord,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetCurrentPostType,\n\t\t\tgetCurrentPostId,\n\t\t\tgetEditorSettings,\n\t\t\t__experimentalGetTemplateInfo: getTemplateInfo,\n\t\t} = select( editorStore );\n\t\tconst { getEditedEntityRecord, isResolving: isResolvingSelector } =\n\t\t\tselect( coreStore );\n\t\tconst _postType = getCurrentPostType();\n\t\tconst _postId = getCurrentPostId();\n\t\tconst _document = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\t_postType,\n\t\t\t_postId\n\t\t);\n\t\tconst _templateInfo = getTemplateInfo( _document );\n\t\treturn {\n\t\t\tpostType: _postType,\n\t\t\tdocumentTitle: _document.title,\n\t\t\tisNotFound:\n\t\t\t\t! _document &&\n\t\t\t\t! isResolvingSelector(\n\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\t'postType',\n\t\t\t\t\t_postType,\n\t\t\t\t\t_postId\n\t\t\t\t),\n\t\t\tisUnsyncedPattern: _document?.wp_pattern_sync_status === 'unsynced',\n\t\t\ttemplateIcon: unlock( select( editorStore ) ).getPostIcon(\n\t\t\t\t_postType,\n\t\t\t\t{\n\t\t\t\t\tarea: _document?.area,\n\t\t\t\t}\n\t\t\t),\n\t\t\ttemplateTitle: _templateInfo.title,\n\t\t\tonNavigateToPreviousEntityRecord:\n\t\t\t\tgetEditorSettings().onNavigateToPreviousEntityRecord,\n\t\t};\n\t}, [] );\n\n\tconst { open: openCommandCenter } = useDispatch( commandsStore );\n\tconst isReducedMotion = useReducedMotion();\n\n\tconst isTemplate = TEMPLATE_POST_TYPES.includes( postType );\n\tconst isGlobalEntity = GLOBAL_POST_TYPES.includes( postType );\n\tconst hasBackButton = !! onNavigateToPreviousEntityRecord;\n\tconst entityTitle = isTemplate ? templateTitle : documentTitle;\n\tconst title = props.title || entityTitle;\n\tconst icon = props.icon || templateIcon;\n\n\tconst mounted = useRef( false );\n\tuseEffect( () => {\n\t\tmounted.current = true;\n\t}, [] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx( 'editor-document-bar', {\n\t\t\t\t'has-back-button': hasBackButton,\n\t\t\t\t'is-global': isGlobalEntity && ! isUnsyncedPattern,\n\t\t\t} ) }\n\t\t>\n\t\t\t<AnimatePresence>\n\t\t\t\t{ hasBackButton && (\n\t\t\t\t\t<MotionButton\n\t\t\t\t\t\tclassName=\"editor-document-bar__back\"\n\t\t\t\t\t\ticon={ isRTL() ? chevronRightSmall : chevronLeftSmall }\n\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t\tonNavigateToPreviousEntityRecord();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\tinitial={\n\t\t\t\t\t\t\tmounted.current\n\t\t\t\t\t\t\t\t? { opacity: 0, transform: 'translateX(15%)' }\n\t\t\t\t\t\t\t\t: false // Don't show entry animation when DocumentBar mounts.\n\t\t\t\t\t\t}\n\t\t\t\t\t\tanimate={ { opacity: 1, transform: 'translateX(0%)' } }\n\t\t\t\t\t\texit={ { opacity: 0, transform: 'translateX(15%)' } }\n\t\t\t\t\t\ttransition={\n\t\t\t\t\t\t\tisReducedMotion ? { duration: 0 } : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t\t</MotionButton>\n\t\t\t\t) }\n\t\t\t</AnimatePresence>\n\t\t\t{ isNotFound ? (\n\t\t\t\t<Text>{ __( 'Document not found' ) }</Text>\n\t\t\t) : (\n\t\t\t\t<Button\n\t\t\t\t\tclassName=\"editor-document-bar__command\"\n\t\t\t\t\tonClick={ () => openCommandCenter() }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName=\"editor-document-bar__title\"\n\t\t\t\t\t\t// Force entry animation when the back button is added or removed.\n\t\t\t\t\t\tkey={ hasBackButton }\n\t\t\t\t\t\tinitial={\n\t\t\t\t\t\t\tmounted.current\n\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t\t\t\ttransform: hasBackButton\n\t\t\t\t\t\t\t\t\t\t\t? 'translateX(15%)'\n\t\t\t\t\t\t\t\t\t\t\t: 'translateX(-15%)',\n\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t: false // Don't show entry animation when DocumentBar mounts.\n\t\t\t\t\t\t}\n\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\t\ttransform: 'translateX(0%)',\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ttransition={\n\t\t\t\t\t\t\tisReducedMotion ? { duration: 0 } : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockIcon icon={ icon } />\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tsize=\"body\"\n\t\t\t\t\t\t\tas=\"h1\"\n\t\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\t\t! props.title && TYPE_LABELS[ postType ]\n\t\t\t\t\t\t\t\t\t? // eslint-disable-next-line @wordpress/valid-sprintf\n\t\t\t\t\t\t\t\t\t sprintf( TYPE_LABELS[ postType ], title )\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ title\n\t\t\t\t\t\t\t\t? decodeEntities( title )\n\t\t\t\t\t\t\t\t: __( 'No title' ) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</motion.div>\n\t\t\t\t\t<span className=\"editor-document-bar__shortcut\">\n\t\t\t\t\t\t{ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t</span>\n\t\t\t\t</Button>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","__","isRTL","sprintf","useSelect","useDispatch","Button","__experimentalText","Text","__unstableMotion","motion","__unstableAnimatePresence","AnimatePresence","BlockIcon","chevronLeftSmall","chevronRightSmall","displayShortcut","store","coreStore","commandsStore","useRef","useEffect","useReducedMotion","decodeEntities","TEMPLATE_POST_TYPES","GLOBAL_POST_TYPES","editorStore","unlock","jsx","_jsx","jsxs","_jsxs","TYPE_LABELS","wp_pattern","wp_navigation","wp_template","wp_template_part","MotionButton","DocumentBar","props","postType","documentTitle","isNotFound","isUnsyncedPattern","templateIcon","templateTitle","onNavigateToPreviousEntityRecord","select","getCurrentPostType","getCurrentPostId","getEditorSettings","__experimentalGetTemplateInfo","getTemplateInfo","getEditedEntityRecord","isResolving","isResolvingSelector","_postType","_postId","_document","_templateInfo","title","wp_pattern_sync_status","getPostIcon","area","open","openCommandCenter","isReducedMotion","isTemplate","includes","isGlobalEntity","hasBackButton","entityTitle","icon","mountedRef","current","className","children","onClick","event","stopPropagation","size","initial","opacity","transform","animate","exit","transition","duration","undefined","div","as","primary"],"sources":["@wordpress/editor/src/components/document-bar/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, isRTL, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\t__experimentalText as Text,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n} from '@wordpress/components';\nimport { BlockIcon } from '@wordpress/block-editor';\nimport { chevronLeftSmall, chevronRightSmall } from '@wordpress/icons';\nimport { displayShortcut } from '@wordpress/keycodes';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as commandsStore } from '@wordpress/commands';\nimport { useRef, useEffect } from '@wordpress/element';\nimport { useReducedMotion } from '@wordpress/compose';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_POST_TYPES, GLOBAL_POST_TYPES } from '../../store/constants';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst TYPE_LABELS = {\n\t// translators: 1: Pattern title.\n\twp_pattern: __( 'Editing pattern: %s' ),\n\t// translators: 1: Navigation menu title.\n\twp_navigation: __( 'Editing navigation menu: %s' ),\n\t// translators: 1: Template title.\n\twp_template: __( 'Editing template: %s' ),\n\t// translators: 1: Template part title.\n\twp_template_part: __( 'Editing template part: %s' ),\n};\n\nconst MotionButton = motion( Button );\n\n/**\n * This component renders a navigation bar at the top of the editor. It displays the title of the current document,\n * a back button (if applicable), and a command center button. It also handles different states of the document,\n * such as \"not found\" or \"unsynced\".\n *\n * @example\n * ```jsx\n * <DocumentBar />\n * ```\n * @param {Object} props The component props.\n * @param {string} props.title A title for the document, defaulting to the document or\n * template title currently being edited.\n * @param {import(\"@wordpress/components\").IconType} props.icon An icon for the document, defaulting to an icon for document\n * or template currently being edited.\n *\n * @return {JSX.Element} The rendered DocumentBar component.\n */\nexport default function DocumentBar( props ) {\n\tconst {\n\t\tpostType,\n\t\tdocumentTitle,\n\t\tisNotFound,\n\t\tisUnsyncedPattern,\n\t\ttemplateIcon,\n\t\ttemplateTitle,\n\t\tonNavigateToPreviousEntityRecord,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetCurrentPostType,\n\t\t\tgetCurrentPostId,\n\t\t\tgetEditorSettings,\n\t\t\t__experimentalGetTemplateInfo: getTemplateInfo,\n\t\t} = select( editorStore );\n\t\tconst { getEditedEntityRecord, isResolving: isResolvingSelector } =\n\t\t\tselect( coreStore );\n\t\tconst _postType = getCurrentPostType();\n\t\tconst _postId = getCurrentPostId();\n\t\tconst _document = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\t_postType,\n\t\t\t_postId\n\t\t);\n\t\tconst _templateInfo = getTemplateInfo( _document );\n\t\treturn {\n\t\t\tpostType: _postType,\n\t\t\tdocumentTitle: _document.title,\n\t\t\tisNotFound:\n\t\t\t\t! _document &&\n\t\t\t\t! isResolvingSelector(\n\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\t'postType',\n\t\t\t\t\t_postType,\n\t\t\t\t\t_postId\n\t\t\t\t),\n\t\t\tisUnsyncedPattern: _document?.wp_pattern_sync_status === 'unsynced',\n\t\t\ttemplateIcon: unlock( select( editorStore ) ).getPostIcon(\n\t\t\t\t_postType,\n\t\t\t\t{\n\t\t\t\t\tarea: _document?.area,\n\t\t\t\t}\n\t\t\t),\n\t\t\ttemplateTitle: _templateInfo.title,\n\t\t\tonNavigateToPreviousEntityRecord:\n\t\t\t\tgetEditorSettings().onNavigateToPreviousEntityRecord,\n\t\t};\n\t}, [] );\n\n\tconst { open: openCommandCenter } = useDispatch( commandsStore );\n\tconst isReducedMotion = useReducedMotion();\n\n\tconst isTemplate = TEMPLATE_POST_TYPES.includes( postType );\n\tconst isGlobalEntity = GLOBAL_POST_TYPES.includes( postType );\n\tconst hasBackButton = !! onNavigateToPreviousEntityRecord;\n\tconst entityTitle = isTemplate ? templateTitle : documentTitle;\n\tconst title = props.title || entityTitle;\n\tconst icon = props.icon || templateIcon;\n\n\tconst mountedRef = useRef( false );\n\tuseEffect( () => {\n\t\tmountedRef.current = true;\n\t}, [] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx( 'editor-document-bar', {\n\t\t\t\t'has-back-button': hasBackButton,\n\t\t\t\t'is-global': isGlobalEntity && ! isUnsyncedPattern,\n\t\t\t} ) }\n\t\t>\n\t\t\t<AnimatePresence>\n\t\t\t\t{ hasBackButton && (\n\t\t\t\t\t<MotionButton\n\t\t\t\t\t\tclassName=\"editor-document-bar__back\"\n\t\t\t\t\t\ticon={ isRTL() ? chevronRightSmall : chevronLeftSmall }\n\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t\tonNavigateToPreviousEntityRecord();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\tinitial={\n\t\t\t\t\t\t\tmountedRef.current\n\t\t\t\t\t\t\t\t? { opacity: 0, transform: 'translateX(15%)' }\n\t\t\t\t\t\t\t\t: false // Don't show entry animation when DocumentBar mounts.\n\t\t\t\t\t\t}\n\t\t\t\t\t\tanimate={ { opacity: 1, transform: 'translateX(0%)' } }\n\t\t\t\t\t\texit={ { opacity: 0, transform: 'translateX(15%)' } }\n\t\t\t\t\t\ttransition={\n\t\t\t\t\t\t\tisReducedMotion ? { duration: 0 } : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t\t</MotionButton>\n\t\t\t\t) }\n\t\t\t</AnimatePresence>\n\t\t\t{ isNotFound ? (\n\t\t\t\t<Text>{ __( 'Document not found' ) }</Text>\n\t\t\t) : (\n\t\t\t\t<Button\n\t\t\t\t\tclassName=\"editor-document-bar__command\"\n\t\t\t\t\tonClick={ () => openCommandCenter() }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName=\"editor-document-bar__title\"\n\t\t\t\t\t\t// Force entry animation when the back button is added or removed.\n\t\t\t\t\t\tkey={ hasBackButton }\n\t\t\t\t\t\tinitial={\n\t\t\t\t\t\t\tmountedRef.current\n\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t\t\t\ttransform: hasBackButton\n\t\t\t\t\t\t\t\t\t\t\t? 'translateX(15%)'\n\t\t\t\t\t\t\t\t\t\t\t: 'translateX(-15%)',\n\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t: false // Don't show entry animation when DocumentBar mounts.\n\t\t\t\t\t\t}\n\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\t\ttransform: 'translateX(0%)',\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ttransition={\n\t\t\t\t\t\t\tisReducedMotion ? { duration: 0 } : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockIcon icon={ icon } />\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tsize=\"body\"\n\t\t\t\t\t\t\tas=\"h1\"\n\t\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\t\t! props.title && TYPE_LABELS[ postType ]\n\t\t\t\t\t\t\t\t\t? // eslint-disable-next-line @wordpress/valid-sprintf\n\t\t\t\t\t\t\t\t\t sprintf( TYPE_LABELS[ postType ], title )\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ title\n\t\t\t\t\t\t\t\t? decodeEntities( title )\n\t\t\t\t\t\t\t\t: __( 'No title' ) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</motion.div>\n\t\t\t\t\t<span className=\"editor-document-bar__shortcut\">\n\t\t\t\t\t\t{ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t</span>\n\t\t\t\t</Button>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}