@wordpress/edit-site 5.21.1-next.f8d8eceb.0 → 5.23.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 (375) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/components/actions/index.js +86 -4
  3. package/build/components/actions/index.js.map +1 -1
  4. package/build/components/add-new-template/new-template.js +0 -7
  5. package/build/components/add-new-template/new-template.js.map +1 -1
  6. package/build/components/block-editor/use-site-editor-settings.js +54 -63
  7. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  8. package/build/components/dataviews/add-filter.js +90 -0
  9. package/build/components/dataviews/add-filter.js.map +1 -0
  10. package/build/components/dataviews/dataviews.js +23 -4
  11. package/build/components/dataviews/dataviews.js.map +1 -1
  12. package/build/components/dataviews/filters.js +36 -32
  13. package/build/components/dataviews/filters.js.map +1 -1
  14. package/build/components/dataviews/in-filter.js +22 -20
  15. package/build/components/dataviews/in-filter.js.map +1 -1
  16. package/build/components/dataviews/index.js +9 -2
  17. package/build/components/dataviews/index.js.map +1 -1
  18. package/build/components/dataviews/item-actions.js +81 -13
  19. package/build/components/dataviews/item-actions.js.map +1 -1
  20. package/build/components/dataviews/pagination.js +3 -2
  21. package/build/components/dataviews/pagination.js.map +1 -1
  22. package/build/components/dataviews/reset-filters.js +33 -0
  23. package/build/components/dataviews/reset-filters.js.map +1 -0
  24. package/build/components/dataviews/search.js +1 -0
  25. package/build/components/dataviews/search.js.map +1 -1
  26. package/build/components/dataviews/view-actions.js +27 -10
  27. package/build/components/dataviews/view-actions.js.map +1 -1
  28. package/build/components/dataviews/view-list.js +126 -5
  29. package/build/components/dataviews/view-list.js.map +1 -1
  30. package/build/components/dataviews/view-side-by-side.js +20 -0
  31. package/build/components/dataviews/view-side-by-side.js.map +1 -0
  32. package/build/components/editor/index.js +53 -53
  33. package/build/components/editor/index.js.map +1 -1
  34. package/build/components/global-styles/screen-revisions/index.js +42 -21
  35. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  36. package/build/components/global-styles/screen-root.js +3 -3
  37. package/build/components/global-styles/screen-root.js.map +1 -1
  38. package/build/components/global-styles/ui.js +3 -3
  39. package/build/components/global-styles/ui.js.map +1 -1
  40. package/build/components/global-styles-renderer/index.js +1 -1
  41. package/build/components/global-styles-renderer/index.js.map +1 -1
  42. package/build/components/header-edit-mode/document-tools/index.js +160 -0
  43. package/build/components/header-edit-mode/document-tools/index.js.map +1 -0
  44. package/build/components/header-edit-mode/index.js +48 -116
  45. package/build/components/header-edit-mode/index.js.map +1 -1
  46. package/build/components/header-edit-mode/more-menu/site-export.js +2 -6
  47. package/build/components/header-edit-mode/more-menu/site-export.js.map +1 -1
  48. package/build/components/layout/index.js +4 -19
  49. package/build/components/layout/index.js.map +1 -1
  50. package/build/components/list/added-by.js +1 -0
  51. package/build/components/list/added-by.js.map +1 -1
  52. package/build/components/page-content-focus-manager/back-to-page-notification.js +5 -10
  53. package/build/components/page-content-focus-manager/back-to-page-notification.js.map +1 -1
  54. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +36 -23
  55. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
  56. package/build/components/page-main/index.js +2 -1
  57. package/build/components/page-main/index.js.map +1 -1
  58. package/build/components/page-pages/index.js +133 -78
  59. package/build/components/page-pages/index.js.map +1 -1
  60. package/build/components/page-pages/side-editor.js +25 -0
  61. package/build/components/page-pages/side-editor.js.map +1 -0
  62. package/build/components/page-patterns/grid-item.js +2 -2
  63. package/build/components/page-patterns/grid-item.js.map +1 -1
  64. package/build/components/page-patterns/patterns-list.js +3 -3
  65. package/build/components/page-patterns/patterns-list.js.map +1 -1
  66. package/build/components/page-patterns/rename-category-menu-item.js +27 -9
  67. package/build/components/page-patterns/rename-category-menu-item.js.map +1 -1
  68. package/build/components/page-patterns/use-patterns.js +1 -1
  69. package/build/components/page-patterns/use-patterns.js.map +1 -1
  70. package/build/components/page-templates/dataviews-templates.js +201 -0
  71. package/build/components/page-templates/dataviews-templates.js.map +1 -0
  72. package/build/components/page-templates/template-actions.js +168 -0
  73. package/build/components/page-templates/template-actions.js.map +1 -0
  74. package/build/components/save-button/index.js +4 -2
  75. package/build/components/save-button/index.js.map +1 -1
  76. package/build/components/sidebar/index.js +1 -2
  77. package/build/components/sidebar/index.js.map +1 -1
  78. package/build/components/sidebar-dataviews/add-new-view.js +124 -0
  79. package/build/components/sidebar-dataviews/add-new-view.js.map +1 -0
  80. package/build/components/sidebar-dataviews/custom-dataviews-list.js +189 -0
  81. package/build/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -0
  82. package/build/components/sidebar-dataviews/dataview-item.js +71 -0
  83. package/build/components/sidebar-dataviews/dataview-item.js.map +1 -0
  84. package/build/components/sidebar-dataviews/default-views.js +60 -0
  85. package/build/components/sidebar-dataviews/default-views.js.map +1 -0
  86. package/build/components/sidebar-dataviews/index.js +22 -37
  87. package/build/components/sidebar-dataviews/index.js.map +1 -1
  88. package/build/components/sidebar-edit-mode/default-sidebar.js +2 -6
  89. package/build/components/sidebar-edit-mode/default-sidebar.js.map +1 -1
  90. package/build/components/sidebar-edit-mode/page-panels/edit-template.js +11 -11
  91. package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  92. package/build/components/sidebar-edit-mode/page-panels/page-summary.js +2 -1
  93. package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  94. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js +4 -12
  95. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
  96. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js +4 -12
  97. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -1
  98. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js +2 -6
  99. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
  100. package/build/components/sidebar-edit-mode/template-panel/hooks.js +3 -3
  101. package/build/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -1
  102. package/build/components/sidebar-navigation-screen-global-styles/index.js +1 -1
  103. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  104. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +1 -1
  105. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -1
  106. package/build/components/sidebar-navigation-screen-page/page-details.js +4 -12
  107. package/build/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  108. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +1 -1
  109. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  110. package/build/components/site-hub/index.js +18 -6
  111. package/build/components/site-hub/index.js.map +1 -1
  112. package/build/components/start-template-options/index.js +12 -16
  113. package/build/components/start-template-options/index.js.map +1 -1
  114. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +112 -49
  115. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  116. package/build/components/template-part-converter/convert-to-regular.js +1 -1
  117. package/build/components/template-part-converter/convert-to-regular.js.map +1 -1
  118. package/build/hooks/push-changes-to-global-styles/index.js +3 -1
  119. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  120. package/build/hooks/template-part-edit.js +6 -2
  121. package/build/hooks/template-part-edit.js.map +1 -1
  122. package/build/index.js +0 -3
  123. package/build/index.js.map +1 -1
  124. package/build/store/actions.js +35 -82
  125. package/build/store/actions.js.map +1 -1
  126. package/build/store/selectors.js +25 -63
  127. package/build/store/selectors.js.map +1 -1
  128. package/build/utils/constants.js +3 -3
  129. package/build/utils/constants.js.map +1 -1
  130. package/build/utils/use-activate-theme.js +8 -0
  131. package/build/utils/use-activate-theme.js.map +1 -1
  132. package/build-module/components/actions/index.js +85 -5
  133. package/build-module/components/actions/index.js.map +1 -1
  134. package/build-module/components/add-new-template/new-template.js +0 -7
  135. package/build-module/components/add-new-template/new-template.js.map +1 -1
  136. package/build-module/components/block-editor/use-site-editor-settings.js +54 -62
  137. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  138. package/build-module/components/dataviews/add-filter.js +83 -0
  139. package/build-module/components/dataviews/add-filter.js.map +1 -0
  140. package/build-module/components/dataviews/dataviews.js +22 -4
  141. package/build-module/components/dataviews/dataviews.js.map +1 -1
  142. package/build-module/components/dataviews/filters.js +34 -32
  143. package/build-module/components/dataviews/filters.js.map +1 -1
  144. package/build-module/components/dataviews/in-filter.js +20 -19
  145. package/build-module/components/dataviews/in-filter.js.map +1 -1
  146. package/build-module/components/dataviews/index.js +1 -1
  147. package/build-module/components/dataviews/index.js.map +1 -1
  148. package/build-module/components/dataviews/item-actions.js +84 -16
  149. package/build-module/components/dataviews/item-actions.js.map +1 -1
  150. package/build-module/components/dataviews/pagination.js +3 -2
  151. package/build-module/components/dataviews/pagination.js.map +1 -1
  152. package/build-module/components/dataviews/reset-filters.js +26 -0
  153. package/build-module/components/dataviews/reset-filters.js.map +1 -0
  154. package/build-module/components/dataviews/search.js +1 -0
  155. package/build-module/components/dataviews/search.js.map +1 -1
  156. package/build-module/components/dataviews/view-actions.js +28 -11
  157. package/build-module/components/dataviews/view-actions.js.map +1 -1
  158. package/build-module/components/dataviews/view-list.js +128 -7
  159. package/build-module/components/dataviews/view-list.js.map +1 -1
  160. package/build-module/components/dataviews/view-side-by-side.js +12 -0
  161. package/build-module/components/dataviews/view-side-by-side.js.map +1 -0
  162. package/build-module/components/editor/index.js +57 -57
  163. package/build-module/components/editor/index.js.map +1 -1
  164. package/build-module/components/global-styles/screen-revisions/index.js +42 -21
  165. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  166. package/build-module/components/global-styles/screen-root.js +3 -3
  167. package/build-module/components/global-styles/screen-root.js.map +1 -1
  168. package/build-module/components/global-styles/ui.js +3 -3
  169. package/build-module/components/global-styles/ui.js.map +1 -1
  170. package/build-module/components/global-styles-renderer/index.js +1 -1
  171. package/build-module/components/global-styles-renderer/index.js.map +1 -1
  172. package/build-module/components/header-edit-mode/document-tools/index.js +152 -0
  173. package/build-module/components/header-edit-mode/document-tools/index.js.map +1 -0
  174. package/build-module/components/header-edit-mode/index.js +52 -120
  175. package/build-module/components/header-edit-mode/index.js.map +1 -1
  176. package/build-module/components/header-edit-mode/more-menu/site-export.js +2 -6
  177. package/build-module/components/header-edit-mode/more-menu/site-export.js.map +1 -1
  178. package/build-module/components/layout/index.js +5 -20
  179. package/build-module/components/layout/index.js.map +1 -1
  180. package/build-module/components/list/added-by.js +1 -1
  181. package/build-module/components/list/added-by.js.map +1 -1
  182. package/build-module/components/page-content-focus-manager/back-to-page-notification.js +5 -10
  183. package/build-module/components/page-content-focus-manager/back-to-page-notification.js.map +1 -1
  184. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js +36 -23
  185. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
  186. package/build-module/components/page-main/index.js +2 -1
  187. package/build-module/components/page-main/index.js.map +1 -1
  188. package/build-module/components/page-pages/index.js +137 -80
  189. package/build-module/components/page-pages/index.js.map +1 -1
  190. package/build-module/components/page-pages/side-editor.js +17 -0
  191. package/build-module/components/page-pages/side-editor.js.map +1 -0
  192. package/build-module/components/page-patterns/grid-item.js +2 -2
  193. package/build-module/components/page-patterns/grid-item.js.map +1 -1
  194. package/build-module/components/page-patterns/patterns-list.js +4 -4
  195. package/build-module/components/page-patterns/patterns-list.js.map +1 -1
  196. package/build-module/components/page-patterns/rename-category-menu-item.js +25 -9
  197. package/build-module/components/page-patterns/rename-category-menu-item.js.map +1 -1
  198. package/build-module/components/page-patterns/use-patterns.js +2 -2
  199. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  200. package/build-module/components/page-templates/dataviews-templates.js +193 -0
  201. package/build-module/components/page-templates/dataviews-templates.js.map +1 -0
  202. package/build-module/components/page-templates/template-actions.js +157 -0
  203. package/build-module/components/page-templates/template-actions.js.map +1 -0
  204. package/build-module/components/save-button/index.js +4 -2
  205. package/build-module/components/save-button/index.js.map +1 -1
  206. package/build-module/components/sidebar/index.js +1 -2
  207. package/build-module/components/sidebar/index.js.map +1 -1
  208. package/build-module/components/sidebar-dataviews/add-new-view.js +116 -0
  209. package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -0
  210. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js +180 -0
  211. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -0
  212. package/build-module/components/sidebar-dataviews/dataview-item.js +63 -0
  213. package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -0
  214. package/build-module/components/sidebar-dataviews/default-views.js +52 -0
  215. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -0
  216. package/build-module/components/sidebar-dataviews/index.js +23 -38
  217. package/build-module/components/sidebar-dataviews/index.js.map +1 -1
  218. package/build-module/components/sidebar-edit-mode/default-sidebar.js +2 -6
  219. package/build-module/components/sidebar-edit-mode/default-sidebar.js.map +1 -1
  220. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +12 -12
  221. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  222. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +3 -1
  223. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  224. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js +5 -13
  225. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
  226. package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js +5 -13
  227. package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -1
  228. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js +2 -6
  229. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
  230. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js +4 -4
  231. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -1
  232. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +1 -1
  233. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  234. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +1 -1
  235. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -1
  236. package/build-module/components/sidebar-navigation-screen-page/page-details.js +4 -12
  237. package/build-module/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  238. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +2 -2
  239. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  240. package/build-module/components/site-hub/index.js +19 -7
  241. package/build-module/components/site-hub/index.js.map +1 -1
  242. package/build-module/components/start-template-options/index.js +13 -16
  243. package/build-module/components/start-template-options/index.js.map +1 -1
  244. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +112 -50
  245. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  246. package/build-module/components/template-part-converter/convert-to-regular.js +1 -1
  247. package/build-module/components/template-part-converter/convert-to-regular.js.map +1 -1
  248. package/build-module/hooks/push-changes-to-global-styles/index.js +4 -2
  249. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  250. package/build-module/hooks/template-part-edit.js +6 -2
  251. package/build-module/hooks/template-part-edit.js.map +1 -1
  252. package/build-module/index.js +0 -3
  253. package/build-module/index.js.map +1 -1
  254. package/build-module/store/actions.js +33 -79
  255. package/build-module/store/actions.js.map +1 -1
  256. package/build-module/store/selectors.js +19 -58
  257. package/build-module/store/selectors.js.map +1 -1
  258. package/build-module/utils/constants.js +1 -1
  259. package/build-module/utils/constants.js.map +1 -1
  260. package/build-module/utils/use-activate-theme.js +8 -0
  261. package/build-module/utils/use-activate-theme.js.map +1 -1
  262. package/build-style/style-rtl.css +69 -119
  263. package/build-style/style.css +69 -119
  264. package/package.json +41 -41
  265. package/src/components/actions/index.js +113 -5
  266. package/src/components/add-new-template/new-template.js +0 -5
  267. package/src/components/block-editor/style.scss +0 -87
  268. package/src/components/block-editor/use-site-editor-settings.js +68 -89
  269. package/src/components/dataviews/README.md +77 -83
  270. package/src/components/dataviews/add-filter.js +111 -0
  271. package/src/components/dataviews/dataviews.js +20 -2
  272. package/src/components/dataviews/filters.js +56 -49
  273. package/src/components/dataviews/in-filter.js +35 -17
  274. package/src/components/dataviews/index.js +1 -1
  275. package/src/components/dataviews/item-actions.js +95 -20
  276. package/src/components/dataviews/pagination.js +5 -4
  277. package/src/components/dataviews/reset-filters.js +26 -0
  278. package/src/components/dataviews/search.js +1 -0
  279. package/src/components/dataviews/style.scss +5 -1
  280. package/src/components/dataviews/view-actions.js +39 -9
  281. package/src/components/dataviews/view-list.js +174 -3
  282. package/src/components/dataviews/view-side-by-side.js +9 -0
  283. package/src/components/editor/index.js +149 -121
  284. package/src/components/global-styles/screen-revisions/index.js +52 -25
  285. package/src/components/global-styles/screen-root.js +2 -1
  286. package/src/components/global-styles/ui.js +1 -1
  287. package/src/components/global-styles-renderer/index.js +1 -1
  288. package/src/components/header-edit-mode/document-tools/index.js +201 -0
  289. package/src/components/header-edit-mode/index.js +86 -184
  290. package/src/components/header-edit-mode/more-menu/site-export.js +2 -6
  291. package/src/components/header-edit-mode/style.scss +35 -2
  292. package/src/components/layout/index.js +4 -11
  293. package/src/components/layout/style.scss +6 -18
  294. package/src/components/list/added-by.js +1 -1
  295. package/src/components/page-content-focus-manager/back-to-page-notification.js +4 -15
  296. package/src/components/page-content-focus-manager/disable-non-page-content-blocks.js +38 -33
  297. package/src/components/page-main/index.js +6 -1
  298. package/src/components/page-pages/index.js +162 -81
  299. package/src/components/page-pages/side-editor.js +14 -0
  300. package/src/components/page-patterns/grid-item.js +3 -3
  301. package/src/components/page-patterns/patterns-list.js +10 -4
  302. package/src/components/page-patterns/rename-category-menu-item.js +29 -12
  303. package/src/components/page-patterns/use-patterns.js +3 -2
  304. package/src/components/page-templates/dataviews-templates.js +224 -0
  305. package/src/components/page-templates/template-actions.js +209 -0
  306. package/src/components/save-button/index.js +10 -5
  307. package/src/components/sidebar/index.js +1 -2
  308. package/src/components/sidebar-dataviews/add-new-view.js +141 -0
  309. package/src/components/sidebar-dataviews/custom-dataviews-list.js +227 -0
  310. package/src/components/sidebar-dataviews/dataview-item.js +67 -0
  311. package/src/components/sidebar-dataviews/default-views.js +54 -0
  312. package/src/components/sidebar-dataviews/index.js +36 -44
  313. package/src/components/sidebar-dataviews/style.scss +22 -0
  314. package/src/components/sidebar-edit-mode/default-sidebar.js +6 -6
  315. package/src/components/sidebar-edit-mode/page-panels/edit-template.js +14 -21
  316. package/src/components/sidebar-edit-mode/page-panels/page-summary.js +3 -0
  317. package/src/components/sidebar-edit-mode/page-panels/reset-default-template.js +10 -9
  318. package/src/components/sidebar-edit-mode/page-panels/style.scss +5 -0
  319. package/src/components/sidebar-edit-mode/page-panels/swap-template-button.js +10 -9
  320. package/src/components/sidebar-edit-mode/plugin-sidebar/index.js +6 -6
  321. package/src/components/sidebar-edit-mode/template-panel/hooks.js +11 -7
  322. package/src/components/sidebar-navigation-screen-global-styles/index.js +1 -1
  323. package/src/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +1 -1
  324. package/src/components/sidebar-navigation-screen-page/page-details.js +7 -18
  325. package/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +2 -2
  326. package/src/components/site-hub/index.js +9 -8
  327. package/src/components/start-template-options/index.js +14 -12
  328. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +117 -50
  329. package/src/components/template-part-converter/convert-to-regular.js +1 -1
  330. package/src/hooks/push-changes-to-global-styles/index.js +13 -6
  331. package/src/hooks/template-part-edit.js +4 -2
  332. package/src/index.js +0 -8
  333. package/src/store/actions.js +37 -95
  334. package/src/store/selectors.js +31 -91
  335. package/src/store/test/actions.js +11 -137
  336. package/src/store/test/selectors.js +0 -82
  337. package/src/style.scss +1 -0
  338. package/src/utils/constants.js +1 -1
  339. package/src/utils/use-activate-theme.js +5 -0
  340. package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js +0 -77
  341. package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +0 -1
  342. package/build/components/block-editor/block-editor-provider/index.js +0 -31
  343. package/build/components/block-editor/block-editor-provider/index.js.map +0 -1
  344. package/build/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +0 -110
  345. package/build/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +0 -1
  346. package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js +0 -84
  347. package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +0 -1
  348. package/build/components/block-editor/index.js +0 -30
  349. package/build/components/block-editor/index.js.map +0 -1
  350. package/build/components/dataviews/context.js +0 -15
  351. package/build/components/dataviews/context.js.map +0 -1
  352. package/build/components/page-pages/default-views.js +0 -60
  353. package/build/components/page-pages/default-views.js.map +0 -1
  354. package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js +0 -69
  355. package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +0 -1
  356. package/build-module/components/block-editor/block-editor-provider/index.js +0 -23
  357. package/build-module/components/block-editor/block-editor-provider/index.js.map +0 -1
  358. package/build-module/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +0 -102
  359. package/build-module/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +0 -1
  360. package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js +0 -78
  361. package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +0 -1
  362. package/build-module/components/block-editor/index.js +0 -22
  363. package/build-module/components/block-editor/index.js.map +0 -1
  364. package/build-module/components/dataviews/context.js +0 -7
  365. package/build-module/components/dataviews/context.js.map +0 -1
  366. package/build-module/components/page-pages/default-views.js +0 -53
  367. package/build-module/components/page-pages/default-views.js.map +0 -1
  368. package/src/components/block-editor/block-editor-provider/default-block-editor-provider.js +0 -75
  369. package/src/components/block-editor/block-editor-provider/index.js +0 -29
  370. package/src/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +0 -114
  371. package/src/components/block-editor/block-editor-provider/test/use-page-content-blocks.js +0 -116
  372. package/src/components/block-editor/block-editor-provider/use-page-content-blocks.js +0 -90
  373. package/src/components/block-editor/index.js +0 -28
  374. package/src/components/dataviews/context.js +0 -7
  375. package/src/components/page-pages/default-views.js +0 -58
@@ -1 +1 @@
1
- {"version":3,"names":["_router","require","_pagePatterns","_interopRequireDefault","_pageTemplateParts","_pageTemplates","_pagePages","_lockUnlock","useLocation","unlock","routerPrivateApis","PageMain","params","path","_react","createElement","default","window","__experimentalAdminViews"],"sources":["@wordpress/edit-site/src/components/page-main/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport PagePatterns from '../page-patterns';\nimport PageTemplateParts from '../page-template-parts';\nimport PageTemplates from '../page-templates';\nimport PagePages from '../page-pages';\nimport { unlock } from '../../lock-unlock';\n\nconst { useLocation } = unlock( routerPrivateApis );\n\nexport default function PageMain() {\n\tconst {\n\t\tparams: { path },\n\t} = useLocation();\n\n\tif ( path === '/wp_template/all' ) {\n\t\treturn <PageTemplates />;\n\t} else if ( path === '/wp_template_part/all' ) {\n\t\treturn <PageTemplateParts />;\n\t} else if ( path === '/patterns' ) {\n\t\treturn <PagePatterns />;\n\t} else if ( window?.__experimentalAdminViews && path === '/pages' ) {\n\t\treturn <PagePages />;\n\t}\n\n\treturn null;\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,OAAA,GAAAC,OAAA;AAKA,IAAAC,aAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,cAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,UAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,WAAA,GAAAN,OAAA;AAZA;AACA;AACA;;AAGA;AACA;AACA;;AAOA,MAAM;EAAEO;AAAY,CAAC,GAAG,IAAAC,kBAAM,EAAEC,mBAAkB,CAAC;AAEpC,SAASC,QAAQA,CAAA,EAAG;EAClC,MAAM;IACLC,MAAM,EAAE;MAAEC;IAAK;EAChB,CAAC,GAAGL,WAAW,CAAC,CAAC;EAEjB,IAAKK,IAAI,KAAK,kBAAkB,EAAG;IAClC,OAAO,IAAAC,MAAA,CAAAC,aAAA,EAACV,cAAA,CAAAW,OAAa,MAAE,CAAC;EACzB,CAAC,MAAM,IAAKH,IAAI,KAAK,uBAAuB,EAAG;IAC9C,OAAO,IAAAC,MAAA,CAAAC,aAAA,EAACX,kBAAA,CAAAY,OAAiB,MAAE,CAAC;EAC7B,CAAC,MAAM,IAAKH,IAAI,KAAK,WAAW,EAAG;IAClC,OAAO,IAAAC,MAAA,CAAAC,aAAA,EAACb,aAAA,CAAAc,OAAY,MAAE,CAAC;EACxB,CAAC,MAAM,IAAKC,MAAM,EAAEC,wBAAwB,IAAIL,IAAI,KAAK,QAAQ,EAAG;IACnE,OAAO,IAAAC,MAAA,CAAAC,aAAA,EAACT,UAAA,CAAAU,OAAS,MAAE,CAAC;EACrB;EAEA,OAAO,IAAI;AACZ"}
1
+ {"version":3,"names":["_router","require","_pagePatterns","_interopRequireDefault","_pageTemplateParts","_pageTemplates","_dataviewsTemplates","_pagePages","_lockUnlock","useLocation","unlock","routerPrivateApis","PageMain","params","path","window","__experimentalAdminViews","_react","createElement","default"],"sources":["@wordpress/edit-site/src/components/page-main/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport PagePatterns from '../page-patterns';\nimport PageTemplateParts from '../page-template-parts';\nimport PageTemplates from '../page-templates';\nimport DataviewsTemplates from '../page-templates/dataviews-templates';\nimport PagePages from '../page-pages';\nimport { unlock } from '../../lock-unlock';\n\nconst { useLocation } = unlock( routerPrivateApis );\n\nexport default function PageMain() {\n\tconst {\n\t\tparams: { path },\n\t} = useLocation();\n\n\tif ( path === '/wp_template/all' ) {\n\t\treturn window?.__experimentalAdminViews ? (\n\t\t\t<DataviewsTemplates />\n\t\t) : (\n\t\t\t<PageTemplates />\n\t\t);\n\t} else if ( path === '/wp_template_part/all' ) {\n\t\treturn <PageTemplateParts />;\n\t} else if ( path === '/patterns' ) {\n\t\treturn <PagePatterns />;\n\t} else if ( window?.__experimentalAdminViews && path === '/pages' ) {\n\t\treturn <PagePages />;\n\t}\n\n\treturn null;\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,OAAA,GAAAC,OAAA;AAKA,IAAAC,aAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,cAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,mBAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,UAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,WAAA,GAAAP,OAAA;AAbA;AACA;AACA;;AAGA;AACA;AACA;;AAQA,MAAM;EAAEQ;AAAY,CAAC,GAAG,IAAAC,kBAAM,EAAEC,mBAAkB,CAAC;AAEpC,SAASC,QAAQA,CAAA,EAAG;EAClC,MAAM;IACLC,MAAM,EAAE;MAAEC;IAAK;EAChB,CAAC,GAAGL,WAAW,CAAC,CAAC;EAEjB,IAAKK,IAAI,KAAK,kBAAkB,EAAG;IAClC,OAAOC,MAAM,EAAEC,wBAAwB,GACtC,IAAAC,MAAA,CAAAC,aAAA,EAACZ,mBAAA,CAAAa,OAAkB,MAAE,CAAC,GAEtB,IAAAF,MAAA,CAAAC,aAAA,EAACb,cAAA,CAAAc,OAAa,MAAE,CAChB;EACF,CAAC,MAAM,IAAKL,IAAI,KAAK,uBAAuB,EAAG;IAC9C,OAAO,IAAAG,MAAA,CAAAC,aAAA,EAACd,kBAAA,CAAAe,OAAiB,MAAE,CAAC;EAC7B,CAAC,MAAM,IAAKL,IAAI,KAAK,WAAW,EAAG;IAClC,OAAO,IAAAG,MAAA,CAAAC,aAAA,EAAChB,aAAA,CAAAiB,OAAY,MAAE,CAAC;EACxB,CAAC,MAAM,IAAKJ,MAAM,EAAEC,wBAAwB,IAAIF,IAAI,KAAK,QAAQ,EAAG;IACnE,OAAO,IAAAG,MAAA,CAAAC,aAAA,EAACX,UAAA,CAAAY,OAAS,MAAE,CAAC;EACrB;EAEA,OAAO,IAAI;AACZ"}
@@ -13,15 +13,15 @@ var _htmlEntities = require("@wordpress/html-entities");
13
13
  var _element = require("@wordpress/element");
14
14
  var _date = require("@wordpress/date");
15
15
  var _router = require("@wordpress/router");
16
+ var _data = require("@wordpress/data");
16
17
  var _page = _interopRequireDefault(require("../page"));
17
18
  var _link = _interopRequireDefault(require("../routes/link"));
18
19
  var _dataviews = require("../dataviews");
19
- var _defaultViews = _interopRequireWildcard(require("./default-views"));
20
+ var _defaultViews = _interopRequireDefault(require("../sidebar-dataviews/default-views"));
20
21
  var _actions = require("../actions");
22
+ var _sideEditor = _interopRequireDefault(require("./side-editor"));
21
23
  var _media = _interopRequireDefault(require("../media"));
22
24
  var _lockUnlock = require("../../lock-unlock");
23
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
24
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
25
25
  /**
26
26
  * WordPress dependencies
27
27
  */
@@ -40,71 +40,113 @@ const defaultConfigPerViewType = {
40
40
  mediaField: 'featured-image'
41
41
  }
42
42
  };
43
- function PagePages() {
43
+ function useView(type) {
44
44
  const {
45
45
  params: {
46
- path,
47
- activeView = 'all'
46
+ activeView = 'all',
47
+ isCustom = 'false'
48
48
  }
49
49
  } = useLocation();
50
- const initialView = _defaultViews.default.find(({
50
+ const selectedDefaultView = isCustom === 'false' && _defaultViews.default[type].find(({
51
51
  slug
52
- }) => slug === activeView).view;
53
- const [view, setView] = (0, _element.useState)(initialView);
52
+ }) => slug === activeView)?.view;
53
+ const [view, setView] = (0, _element.useState)(selectedDefaultView);
54
54
  (0, _element.useEffect)(() => {
55
- setView(_defaultViews.default.find(({
56
- slug
57
- }) => slug === activeView).view);
58
- }, [path, activeView]);
59
- // Request post statuses to get the proper labels.
55
+ if (selectedDefaultView) {
56
+ setView(selectedDefaultView);
57
+ }
58
+ }, [selectedDefaultView]);
59
+ const editedViewRecord = (0, _data.useSelect)(select => {
60
+ if (isCustom !== 'true') {
61
+ return;
62
+ }
63
+ const {
64
+ getEditedEntityRecord
65
+ } = select(_coreData.store);
66
+ const dataviewRecord = getEditedEntityRecord('postType', 'wp_dataviews', Number(activeView));
67
+ return dataviewRecord;
68
+ }, [activeView, isCustom]);
60
69
  const {
61
- records: statuses
62
- } = (0, _coreData.useEntityRecords)('root', 'status');
63
- const defaultStatuses = (0, _element.useMemo)(() => {
64
- return statuses === null ? _defaultViews.DEFAULT_STATUSES : statuses.filter(({
65
- slug
66
- }) => slug !== 'trash').map(({
67
- slug
68
- }) => slug).sort().join();
69
- }, [statuses]);
70
- (0, _element.useEffect)(() => {
71
- // Only update the view if the statuses received from the endpoint
72
- // are different from the DEFAULT_STATUSES provided initially.
73
- //
74
- // The pages endpoint depends on the status endpoint via the status filter.
75
- // Initially, this code filters the pages request by DEFAULT_STATUTES,
76
- // instead of using the default (publish).
77
- // https://developer.wordpress.org/rest-api/reference/pages/#list-pages
78
- //
79
- // By doing so, it avoids a second request to the pages endpoint
80
- // upon receiving the statuses when they are the same (most common scenario).
81
- if (_defaultViews.DEFAULT_STATUSES !== defaultStatuses) {
82
- setView({
83
- ...view,
84
- filters: {
85
- ...view.filters,
86
- status: defaultStatuses
87
- }
88
- });
70
+ editEntityRecord
71
+ } = (0, _data.useDispatch)(_coreData.store);
72
+ const customView = (0, _element.useMemo)(() => {
73
+ return editedViewRecord?.content && JSON.parse(editedViewRecord?.content);
74
+ }, [editedViewRecord?.content]);
75
+ const setCustomView = (0, _element.useCallback)(viewToSet => {
76
+ editEntityRecord('postType', 'wp_dataviews', editedViewRecord?.id, {
77
+ content: JSON.stringify(viewToSet)
78
+ });
79
+ }, [editEntityRecord, editedViewRecord?.id]);
80
+ if (isCustom === 'false') {
81
+ return [view, setView];
82
+ } else if (isCustom === 'true' && customView) {
83
+ return [customView, setCustomView];
84
+ }
85
+ // Loading state where no the view was not found on custom views or default views.
86
+ return [_defaultViews.default[type][0].view, setView];
87
+ }
88
+
89
+ // See https://github.com/WordPress/gutenberg/issues/55886
90
+ // We do not support custom statutes at the moment.
91
+ const STATUSES = [{
92
+ value: 'draft',
93
+ label: (0, _i18n.__)('Draft')
94
+ }, {
95
+ value: 'future',
96
+ label: (0, _i18n.__)('Scheduled')
97
+ }, {
98
+ value: 'pending',
99
+ label: (0, _i18n.__)('Pending Review')
100
+ }, {
101
+ value: 'private',
102
+ label: (0, _i18n.__)('Private')
103
+ }, {
104
+ value: 'publish',
105
+ label: (0, _i18n.__)('Published')
106
+ }, {
107
+ value: 'trash',
108
+ label: (0, _i18n.__)('Trash')
109
+ }];
110
+ const DEFAULT_STATUSES = 'draft,future,pending,private,publish'; // All but 'trash'.
111
+
112
+ function PagePages() {
113
+ const postType = 'page';
114
+ const [view, setView] = useView(postType);
115
+ const [selection, setSelection] = (0, _element.useState)([]);
116
+ const queryArgs = (0, _element.useMemo)(() => {
117
+ const filters = {};
118
+ view.filters.forEach(filter => {
119
+ if (filter.field === 'status' && filter.operator === 'in') {
120
+ filters.status = filter.value;
121
+ }
122
+ if (filter.field === 'author' && filter.operator === 'in') {
123
+ filters.author = filter.value;
124
+ }
125
+ });
126
+ // We want to provide a different default item for the status filter
127
+ // than the REST API provides.
128
+ if (!filters.status || filters.status === '') {
129
+ filters.status = DEFAULT_STATUSES;
89
130
  }
90
- }, [defaultStatuses]);
91
- const queryArgs = (0, _element.useMemo)(() => ({
92
- per_page: view.perPage,
93
- page: view.page,
94
- _embed: 'author',
95
- order: view.sort?.direction,
96
- orderby: view.sort?.field,
97
- search: view.search,
98
- ...view.filters
99
- }), [view]);
131
+ return {
132
+ per_page: view.perPage,
133
+ page: view.page,
134
+ _embed: 'author',
135
+ order: view.sort?.direction,
136
+ orderby: view.sort?.field,
137
+ search: view.search,
138
+ ...filters
139
+ };
140
+ }, [view]);
100
141
  const {
101
142
  records: pages,
102
143
  isResolving: isLoadingPages,
103
144
  totalItems,
104
145
  totalPages
105
- } = (0, _coreData.useEntityRecords)('postType', 'page', queryArgs);
146
+ } = (0, _coreData.useEntityRecords)('postType', postType, queryArgs);
106
147
  const {
107
- records: authors
148
+ records: authors,
149
+ isResolving: isLoadingAuthors
108
150
  } = (0, _coreData.useEntityRecords)('root', 'user');
109
151
  const paginationInfo = (0, _element.useMemo)(() => ({
110
152
  totalItems,
@@ -132,7 +174,10 @@ function PagePages() {
132
174
  item
133
175
  }) => item.title?.rendered || item.slug,
134
176
  render: ({
135
- item
177
+ item,
178
+ view: {
179
+ type
180
+ }
136
181
  }) => {
137
182
  return (0, _react.createElement)(_components.__experimentalVStack, {
138
183
  spacing: 1
@@ -144,11 +189,16 @@ function PagePages() {
144
189
  postId: item.id,
145
190
  postType: item.type,
146
191
  canvas: 'edit'
192
+ },
193
+ onClick: event => {
194
+ if (_dataviews.viewTypeSupportsMap[type].preview) {
195
+ event.preventDefault();
196
+ setSelection([item.id]);
197
+ }
147
198
  }
148
199
  }, (0, _htmlEntities.decodeEntities)(item.title?.rendered || item.slug) || (0, _i18n.__)('(no title)'))));
149
200
  },
150
201
  maxWidth: 400,
151
- sortingFn: 'alphanumeric',
152
202
  enableHiding: false
153
203
  }, {
154
204
  header: (0, _i18n.__)('Author'),
@@ -164,7 +214,7 @@ function PagePages() {
164
214
  href: `user-edit.php?user_id=${author.id}`
165
215
  }, author.name);
166
216
  },
167
- filters: ['enumeration'],
217
+ filters: ['in'],
168
218
  elements: authors?.map(({
169
219
  id,
170
220
  name
@@ -178,23 +228,13 @@ function PagePages() {
178
228
  getValue: ({
179
229
  item
180
230
  }) => {
181
- var _statuses$find$name;
182
- return (_statuses$find$name = statuses?.find(({
183
- slug
184
- }) => slug === item.status)?.name) !== null && _statuses$find$name !== void 0 ? _statuses$find$name : item.status;
231
+ var _STATUSES$find$label;
232
+ return (_STATUSES$find$label = STATUSES.find(({
233
+ value
234
+ }) => value === item.status)?.label) !== null && _STATUSES$find$label !== void 0 ? _STATUSES$find$label : item.status;
185
235
  },
186
- filters: [{
187
- type: 'enumeration',
188
- id: 'status',
189
- resetValue: defaultStatuses
190
- }],
191
- elements: statuses?.map(({
192
- slug,
193
- name
194
- }) => ({
195
- value: slug,
196
- label: name
197
- })) || [],
236
+ filters: ['in'],
237
+ elements: STATUSES,
198
238
  enableSorting: false
199
239
  }, {
200
240
  header: (0, _i18n.__)('Date'),
@@ -208,10 +248,12 @@ function PagePages() {
208
248
  const formattedDate = (0, _date.dateI18n)((0, _date.getSettings)().formats.datetimeAbbreviated, (0, _date.getDate)(item.date));
209
249
  return (0, _react.createElement)("time", null, formattedDate);
210
250
  }
211
- }], [defaultStatuses, statuses, authors]);
251
+ }], [authors]);
212
252
  const trashPostAction = (0, _actions.useTrashPostAction)();
253
+ const permanentlyDeletePostAction = (0, _actions.usePermanentlyDeletePostAction)();
254
+ const restorePostAction = (0, _actions.useRestorePostAction)();
213
255
  const editPostAction = (0, _actions.useEditPostAction)();
214
- const actions = (0, _element.useMemo)(() => [_actions.viewPostAction, trashPostAction, editPostAction, _actions.postRevisionsAction], [trashPostAction, editPostAction]);
256
+ const actions = (0, _element.useMemo)(() => [_actions.viewPostAction, trashPostAction, restorePostAction, permanentlyDeletePostAction, editPostAction, _actions.postRevisionsAction], [trashPostAction, permanentlyDeletePostAction, restorePostAction, editPostAction]);
215
257
  const onChangeView = (0, _element.useCallback)(viewUpdater => {
216
258
  let updatedView = typeof viewUpdater === 'function' ? viewUpdater(view) : viewUpdater;
217
259
  if (updatedView.type !== view.type) {
@@ -226,16 +268,29 @@ function PagePages() {
226
268
  }, [view, setView]);
227
269
 
228
270
  // TODO: we need to handle properly `data={ data || EMPTY_ARRAY }` for when `isLoading`.
229
- return (0, _react.createElement)(_page.default, {
271
+ return (0, _react.createElement)(_react.Fragment, null, (0, _react.createElement)(_page.default, {
230
272
  title: (0, _i18n.__)('Pages')
231
273
  }, (0, _react.createElement)(_dataviews.DataViews, {
232
274
  paginationInfo: paginationInfo,
233
275
  fields: fields,
234
276
  actions: actions,
235
277
  data: pages || EMPTY_ARRAY,
236
- isLoading: isLoadingPages,
278
+ isLoading: isLoadingPages || isLoadingAuthors,
237
279
  view: view,
238
280
  onChangeView: onChangeView
239
- }));
281
+ })), _dataviews.viewTypeSupportsMap[view.type].preview && (0, _react.createElement)(_page.default, null, (0, _react.createElement)("div", {
282
+ className: "edit-site-page-pages-preview"
283
+ }, selection.length === 1 && (0, _react.createElement)(_sideEditor.default, {
284
+ postId: selection[0],
285
+ postType: postType
286
+ }), selection.length !== 1 && (0, _react.createElement)("div", {
287
+ style: {
288
+ display: 'flex',
289
+ flexDirection: 'column',
290
+ justifyContent: 'center',
291
+ textAlign: 'center',
292
+ height: '100%'
293
+ }
294
+ }, (0, _react.createElement)("p", null, (0, _i18n.__)('Select a page to preview'))))));
240
295
  }
241
296
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_i18n","_coreData","_htmlEntities","_element","_date","_router","_page","_interopRequireDefault","_link","_dataviews","_defaultViews","_interopRequireWildcard","_actions","_media","_lockUnlock","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","useLocation","unlock","routerPrivateApis","EMPTY_ARRAY","defaultConfigPerViewType","list","grid","mediaField","PagePages","params","path","activeView","initialView","DEFAULT_VIEWS","find","slug","view","setView","useState","useEffect","records","statuses","useEntityRecords","defaultStatuses","useMemo","DEFAULT_STATUSES","filter","map","sort","join","filters","status","queryArgs","per_page","perPage","page","_embed","order","direction","orderby","field","search","pages","isResolving","isLoadingPages","totalItems","totalPages","authors","paginationInfo","fields","id","header","__","getValue","item","featured_media","render","currentView","_react","createElement","className","size","type","enableSorting","title","rendered","__experimentalVStack","spacing","__experimentalHeading","as","level","postId","postType","canvas","decodeEntities","maxWidth","sortingFn","enableHiding","_embedded","author","name","href","elements","value","label","_statuses$find$name","resetValue","date","formattedDate","dateI18n","getSettings","formats","datetimeAbbreviated","getDate","trashPostAction","useTrashPostAction","editPostAction","useEditPostAction","actions","viewPostAction","postRevisionsAction","onChangeView","useCallback","viewUpdater","updatedView","layout","DataViews","data","isLoading"],"sources":["@wordpress/edit-site/src/components/page-pages/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHeading as Heading,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { dateI18n, getDate, getSettings } from '@wordpress/date';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport Link from '../routes/link';\nimport { DataViews } from '../dataviews';\nimport { DEFAULT_STATUSES, default as DEFAULT_VIEWS } from './default-views';\nimport {\n\tuseTrashPostAction,\n\tpostRevisionsAction,\n\tviewPostAction,\n\tuseEditPostAction,\n} from '../actions';\nimport Media from '../media';\nimport { unlock } from '../../lock-unlock';\nconst { useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\nconst defaultConfigPerViewType = {\n\tlist: {},\n\tgrid: {\n\t\tmediaField: 'featured-image',\n\t},\n};\n\nexport default function PagePages() {\n\tconst {\n\t\tparams: { path, activeView = 'all' },\n\t} = useLocation();\n\tconst initialView = DEFAULT_VIEWS.find(\n\t\t( { slug } ) => slug === activeView\n\t).view;\n\tconst [ view, setView ] = useState( initialView );\n\tuseEffect( () => {\n\t\tsetView(\n\t\t\tDEFAULT_VIEWS.find( ( { slug } ) => slug === activeView ).view\n\t\t);\n\t}, [ path, activeView ] );\n\t// Request post statuses to get the proper labels.\n\tconst { records: statuses } = useEntityRecords( 'root', 'status' );\n\tconst defaultStatuses = useMemo( () => {\n\t\treturn statuses === null\n\t\t\t? DEFAULT_STATUSES\n\t\t\t: statuses\n\t\t\t\t\t.filter( ( { slug } ) => slug !== 'trash' )\n\t\t\t\t\t.map( ( { slug } ) => slug )\n\t\t\t\t\t.sort()\n\t\t\t\t\t.join();\n\t}, [ statuses ] );\n\n\tuseEffect( () => {\n\t\t// Only update the view if the statuses received from the endpoint\n\t\t// are different from the DEFAULT_STATUSES provided initially.\n\t\t//\n\t\t// The pages endpoint depends on the status endpoint via the status filter.\n\t\t// Initially, this code filters the pages request by DEFAULT_STATUTES,\n\t\t// instead of using the default (publish).\n\t\t// https://developer.wordpress.org/rest-api/reference/pages/#list-pages\n\t\t//\n\t\t// By doing so, it avoids a second request to the pages endpoint\n\t\t// upon receiving the statuses when they are the same (most common scenario).\n\t\tif ( DEFAULT_STATUSES !== defaultStatuses ) {\n\t\t\tsetView( {\n\t\t\t\t...view,\n\t\t\t\tfilters: {\n\t\t\t\t\t...view.filters,\n\t\t\t\t\tstatus: defaultStatuses,\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t}, [ defaultStatuses ] );\n\n\tconst queryArgs = useMemo(\n\t\t() => ( {\n\t\t\tper_page: view.perPage,\n\t\t\tpage: view.page,\n\t\t\t_embed: 'author',\n\t\t\torder: view.sort?.direction,\n\t\t\torderby: view.sort?.field,\n\t\t\tsearch: view.search,\n\t\t\t...view.filters,\n\t\t} ),\n\t\t[ view ]\n\t);\n\tconst {\n\t\trecords: pages,\n\t\tisResolving: isLoadingPages,\n\t\ttotalItems,\n\t\ttotalPages,\n\t} = useEntityRecords( 'postType', 'page', queryArgs );\n\n\tconst { records: authors } = useEntityRecords( 'root', 'user' );\n\n\tconst paginationInfo = useMemo(\n\t\t() => ( {\n\t\t\ttotalItems,\n\t\t\ttotalPages,\n\t\t} ),\n\t\t[ totalItems, totalPages ]\n\t);\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tid: 'featured-image',\n\t\t\t\theader: __( 'Featured Image' ),\n\t\t\t\tgetValue: ( { item } ) => item.featured_media,\n\t\t\t\trender: ( { item, view: currentView } ) =>\n\t\t\t\t\t!! item.featured_media ? (\n\t\t\t\t\t\t<Media\n\t\t\t\t\t\t\tclassName=\"edit-site-page-pages__featured-image\"\n\t\t\t\t\t\t\tid={ item.featured_media }\n\t\t\t\t\t\t\tsize={\n\t\t\t\t\t\t\t\tcurrentView.type === 'list'\n\t\t\t\t\t\t\t\t\t? [ 'thumbnail', 'medium', 'large', 'full' ]\n\t\t\t\t\t\t\t\t\t: [ 'large', 'full', 'medium', 'thumbnail' ]\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : null,\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\tgetValue: ( { item } ) => item.title?.rendered || item.slug,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<VStack spacing={ 1 }>\n\t\t\t\t\t\t\t<Heading as=\"h3\" level={ 5 }>\n\t\t\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\t\t\tpostId: item.id,\n\t\t\t\t\t\t\t\t\t\tpostType: item.type,\n\t\t\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\t\t\titem.title?.rendered || item.slug\n\t\t\t\t\t\t\t\t\t) || __( '(no title)' ) }\n\t\t\t\t\t\t\t\t</Link>\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t</VStack>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tsortingFn: 'alphanumeric',\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item._embedded?.author[ 0 ]?.name,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst author = item._embedded?.author[ 0 ];\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<a href={ `user-edit.php?user_id=${ author.id }` }>\n\t\t\t\t\t\t\t{ author.name }\n\t\t\t\t\t\t</a>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tfilters: [ 'enumeration' ],\n\t\t\t\telements:\n\t\t\t\t\tauthors?.map( ( { id, name } ) => ( {\n\t\t\t\t\t\tvalue: id,\n\t\t\t\t\t\tlabel: name,\n\t\t\t\t\t} ) ) || [],\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Status' ),\n\t\t\t\tid: 'status',\n\t\t\t\tgetValue: ( { item } ) =>\n\t\t\t\t\tstatuses?.find( ( { slug } ) => slug === item.status )\n\t\t\t\t\t\t?.name ?? item.status,\n\t\t\t\tfilters: [\n\t\t\t\t\t{\n\t\t\t\t\t\ttype: 'enumeration',\n\t\t\t\t\t\tid: 'status',\n\t\t\t\t\t\tresetValue: defaultStatuses,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\telements:\n\t\t\t\t\tstatuses?.map( ( { slug, name } ) => ( {\n\t\t\t\t\t\tvalue: slug,\n\t\t\t\t\t\tlabel: name,\n\t\t\t\t\t} ) ) || [],\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Date' ),\n\t\t\t\tid: 'date',\n\t\t\t\tgetValue: ( { item } ) => item.date,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst formattedDate = dateI18n(\n\t\t\t\t\t\tgetSettings().formats.datetimeAbbreviated,\n\t\t\t\t\t\tgetDate( item.date )\n\t\t\t\t\t);\n\t\t\t\t\treturn <time>{ formattedDate }</time>;\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t\t[ defaultStatuses, statuses, authors ]\n\t);\n\n\tconst trashPostAction = useTrashPostAction();\n\tconst editPostAction = useEditPostAction();\n\tconst actions = useMemo(\n\t\t() => [\n\t\t\tviewPostAction,\n\t\t\ttrashPostAction,\n\t\t\teditPostAction,\n\t\t\tpostRevisionsAction,\n\t\t],\n\t\t[ trashPostAction, editPostAction ]\n\t);\n\tconst onChangeView = useCallback(\n\t\t( viewUpdater ) => {\n\t\t\tlet updatedView =\n\t\t\t\ttypeof viewUpdater === 'function'\n\t\t\t\t\t? viewUpdater( view )\n\t\t\t\t\t: viewUpdater;\n\t\t\tif ( updatedView.type !== view.type ) {\n\t\t\t\tupdatedView = {\n\t\t\t\t\t...updatedView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ updatedView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tsetView( updatedView );\n\t\t},\n\t\t[ view, setView ]\n\t);\n\n\t// TODO: we need to handle properly `data={ data || EMPTY_ARRAY }` for when `isLoading`.\n\treturn (\n\t\t<Page title={ __( 'Pages' ) }>\n\t\t\t<DataViews\n\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\tfields={ fields }\n\t\t\t\tactions={ actions }\n\t\t\t\tdata={ pages || EMPTY_ARRAY }\n\t\t\t\tisLoading={ isLoadingPages }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_components","require","_i18n","_coreData","_htmlEntities","_element","_date","_router","_data","_page","_interopRequireDefault","_link","_dataviews","_defaultViews","_actions","_sideEditor","_media","_lockUnlock","useLocation","unlock","routerPrivateApis","EMPTY_ARRAY","defaultConfigPerViewType","list","grid","mediaField","useView","type","params","activeView","isCustom","selectedDefaultView","DEFAULT_VIEWS","find","slug","view","setView","useState","useEffect","editedViewRecord","useSelect","select","getEditedEntityRecord","coreStore","dataviewRecord","Number","editEntityRecord","useDispatch","customView","useMemo","content","JSON","parse","setCustomView","useCallback","viewToSet","id","stringify","STATUSES","value","label","__","DEFAULT_STATUSES","PagePages","postType","selection","setSelection","queryArgs","filters","forEach","filter","field","operator","status","author","per_page","perPage","page","_embed","order","sort","direction","orderby","search","records","pages","isResolving","isLoadingPages","totalItems","totalPages","useEntityRecords","authors","isLoadingAuthors","paginationInfo","fields","header","getValue","item","featured_media","render","currentView","_react","createElement","default","className","size","enableSorting","title","rendered","__experimentalVStack","spacing","__experimentalHeading","as","level","postId","canvas","onClick","event","viewTypeSupportsMap","preview","preventDefault","decodeEntities","maxWidth","enableHiding","_embedded","name","href","elements","map","_STATUSES$find$label","date","formattedDate","dateI18n","getSettings","formats","datetimeAbbreviated","getDate","trashPostAction","useTrashPostAction","permanentlyDeletePostAction","usePermanentlyDeletePostAction","restorePostAction","useRestorePostAction","editPostAction","useEditPostAction","actions","viewPostAction","postRevisionsAction","onChangeView","viewUpdater","updatedView","layout","Fragment","DataViews","data","isLoading","length","style","display","flexDirection","justifyContent","textAlign","height"],"sources":["@wordpress/edit-site/src/components/page-pages/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHeading as Heading,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useEntityRecords, store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { dateI18n, getDate, getSettings } from '@wordpress/date';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport Link from '../routes/link';\nimport { DataViews, viewTypeSupportsMap } from '../dataviews';\nimport { default as DEFAULT_VIEWS } from '../sidebar-dataviews/default-views';\nimport {\n\tuseTrashPostAction,\n\tusePermanentlyDeletePostAction,\n\tuseRestorePostAction,\n\tpostRevisionsAction,\n\tviewPostAction,\n\tuseEditPostAction,\n} from '../actions';\nimport SideEditor from './side-editor';\nimport Media from '../media';\nimport { unlock } from '../../lock-unlock';\nconst { useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\nconst defaultConfigPerViewType = {\n\tlist: {},\n\tgrid: {\n\t\tmediaField: 'featured-image',\n\t},\n};\n\nfunction useView( type ) {\n\tconst {\n\t\tparams: { activeView = 'all', isCustom = 'false' },\n\t} = useLocation();\n\tconst selectedDefaultView =\n\t\tisCustom === 'false' &&\n\t\tDEFAULT_VIEWS[ type ].find( ( { slug } ) => slug === activeView )?.view;\n\tconst [ view, setView ] = useState( selectedDefaultView );\n\n\tuseEffect( () => {\n\t\tif ( selectedDefaultView ) {\n\t\t\tsetView( selectedDefaultView );\n\t\t}\n\t}, [ selectedDefaultView ] );\n\tconst editedViewRecord = useSelect(\n\t\t( select ) => {\n\t\t\tif ( isCustom !== 'true' ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { getEditedEntityRecord } = select( coreStore );\n\t\t\tconst dataviewRecord = getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_dataviews',\n\t\t\t\tNumber( activeView )\n\t\t\t);\n\t\t\treturn dataviewRecord;\n\t\t},\n\t\t[ activeView, isCustom ]\n\t);\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst customView = useMemo( () => {\n\t\treturn (\n\t\t\teditedViewRecord?.content && JSON.parse( editedViewRecord?.content )\n\t\t);\n\t}, [ editedViewRecord?.content ] );\n\tconst setCustomView = useCallback(\n\t\t( viewToSet ) => {\n\t\t\teditEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_dataviews',\n\t\t\t\teditedViewRecord?.id,\n\t\t\t\t{\n\t\t\t\t\tcontent: JSON.stringify( viewToSet ),\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\t\t[ editEntityRecord, editedViewRecord?.id ]\n\t);\n\n\tif ( isCustom === 'false' ) {\n\t\treturn [ view, setView ];\n\t} else if ( isCustom === 'true' && customView ) {\n\t\treturn [ customView, setCustomView ];\n\t}\n\t// Loading state where no the view was not found on custom views or default views.\n\treturn [ DEFAULT_VIEWS[ type ][ 0 ].view, setView ];\n}\n\n// See https://github.com/WordPress/gutenberg/issues/55886\n// We do not support custom statutes at the moment.\nconst STATUSES = [\n\t{ value: 'draft', label: __( 'Draft' ) },\n\t{ value: 'future', label: __( 'Scheduled' ) },\n\t{ value: 'pending', label: __( 'Pending Review' ) },\n\t{ value: 'private', label: __( 'Private' ) },\n\t{ value: 'publish', label: __( 'Published' ) },\n\t{ value: 'trash', label: __( 'Trash' ) },\n];\nconst DEFAULT_STATUSES = 'draft,future,pending,private,publish'; // All but 'trash'.\n\nexport default function PagePages() {\n\tconst postType = 'page';\n\tconst [ view, setView ] = useView( postType );\n\tconst [ selection, setSelection ] = useState( [] );\n\n\tconst queryArgs = useMemo( () => {\n\t\tconst filters = {};\n\t\tview.filters.forEach( ( filter ) => {\n\t\t\tif ( filter.field === 'status' && filter.operator === 'in' ) {\n\t\t\t\tfilters.status = filter.value;\n\t\t\t}\n\t\t\tif ( filter.field === 'author' && filter.operator === 'in' ) {\n\t\t\t\tfilters.author = filter.value;\n\t\t\t}\n\t\t} );\n\t\t// We want to provide a different default item for the status filter\n\t\t// than the REST API provides.\n\t\tif ( ! filters.status || filters.status === '' ) {\n\t\t\tfilters.status = DEFAULT_STATUSES;\n\t\t}\n\n\t\treturn {\n\t\t\tper_page: view.perPage,\n\t\t\tpage: view.page,\n\t\t\t_embed: 'author',\n\t\t\torder: view.sort?.direction,\n\t\t\torderby: view.sort?.field,\n\t\t\tsearch: view.search,\n\t\t\t...filters,\n\t\t};\n\t}, [ view ] );\n\tconst {\n\t\trecords: pages,\n\t\tisResolving: isLoadingPages,\n\t\ttotalItems,\n\t\ttotalPages,\n\t} = useEntityRecords( 'postType', postType, queryArgs );\n\n\tconst { records: authors, isResolving: isLoadingAuthors } =\n\t\tuseEntityRecords( 'root', 'user' );\n\n\tconst paginationInfo = useMemo(\n\t\t() => ( {\n\t\t\ttotalItems,\n\t\t\ttotalPages,\n\t\t} ),\n\t\t[ totalItems, totalPages ]\n\t);\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tid: 'featured-image',\n\t\t\t\theader: __( 'Featured Image' ),\n\t\t\t\tgetValue: ( { item } ) => item.featured_media,\n\t\t\t\trender: ( { item, view: currentView } ) =>\n\t\t\t\t\t!! item.featured_media ? (\n\t\t\t\t\t\t<Media\n\t\t\t\t\t\t\tclassName=\"edit-site-page-pages__featured-image\"\n\t\t\t\t\t\t\tid={ item.featured_media }\n\t\t\t\t\t\t\tsize={\n\t\t\t\t\t\t\t\tcurrentView.type === 'list'\n\t\t\t\t\t\t\t\t\t? [ 'thumbnail', 'medium', 'large', 'full' ]\n\t\t\t\t\t\t\t\t\t: [ 'large', 'full', 'medium', 'thumbnail' ]\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : null,\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\tgetValue: ( { item } ) => item.title?.rendered || item.slug,\n\t\t\t\trender: ( { item, view: { type } } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<VStack spacing={ 1 }>\n\t\t\t\t\t\t\t<Heading as=\"h3\" level={ 5 }>\n\t\t\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\t\t\tpostId: item.id,\n\t\t\t\t\t\t\t\t\t\tpostType: item.type,\n\t\t\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\tviewTypeSupportsMap[ type ].preview\n\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\t\t\tsetSelection( [ item.id ] );\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\t\t\titem.title?.rendered || item.slug\n\t\t\t\t\t\t\t\t\t) || __( '(no title)' ) }\n\t\t\t\t\t\t\t\t</Link>\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t</VStack>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item._embedded?.author[ 0 ]?.name,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst author = item._embedded?.author[ 0 ];\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<a href={ `user-edit.php?user_id=${ author.id }` }>\n\t\t\t\t\t\t\t{ author.name }\n\t\t\t\t\t\t</a>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tfilters: [ 'in' ],\n\t\t\t\telements:\n\t\t\t\t\tauthors?.map( ( { id, name } ) => ( {\n\t\t\t\t\t\tvalue: id,\n\t\t\t\t\t\tlabel: name,\n\t\t\t\t\t} ) ) || [],\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Status' ),\n\t\t\t\tid: 'status',\n\t\t\t\tgetValue: ( { item } ) =>\n\t\t\t\t\tSTATUSES.find( ( { value } ) => value === item.status )\n\t\t\t\t\t\t?.label ?? item.status,\n\t\t\t\tfilters: [ 'in' ],\n\t\t\t\telements: STATUSES,\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Date' ),\n\t\t\t\tid: 'date',\n\t\t\t\tgetValue: ( { item } ) => item.date,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst formattedDate = dateI18n(\n\t\t\t\t\t\tgetSettings().formats.datetimeAbbreviated,\n\t\t\t\t\t\tgetDate( item.date )\n\t\t\t\t\t);\n\t\t\t\t\treturn <time>{ formattedDate }</time>;\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t\t[ authors ]\n\t);\n\n\tconst trashPostAction = useTrashPostAction();\n\tconst permanentlyDeletePostAction = usePermanentlyDeletePostAction();\n\tconst restorePostAction = useRestorePostAction();\n\tconst editPostAction = useEditPostAction();\n\tconst actions = useMemo(\n\t\t() => [\n\t\t\tviewPostAction,\n\t\t\ttrashPostAction,\n\t\t\trestorePostAction,\n\t\t\tpermanentlyDeletePostAction,\n\t\t\teditPostAction,\n\t\t\tpostRevisionsAction,\n\t\t],\n\t\t[\n\t\t\ttrashPostAction,\n\t\t\tpermanentlyDeletePostAction,\n\t\t\trestorePostAction,\n\t\t\teditPostAction,\n\t\t]\n\t);\n\tconst onChangeView = useCallback(\n\t\t( viewUpdater ) => {\n\t\t\tlet updatedView =\n\t\t\t\ttypeof viewUpdater === 'function'\n\t\t\t\t\t? viewUpdater( view )\n\t\t\t\t\t: viewUpdater;\n\t\t\tif ( updatedView.type !== view.type ) {\n\t\t\t\tupdatedView = {\n\t\t\t\t\t...updatedView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ updatedView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tsetView( updatedView );\n\t\t},\n\t\t[ view, setView ]\n\t);\n\n\t// TODO: we need to handle properly `data={ data || EMPTY_ARRAY }` for when `isLoading`.\n\treturn (\n\t\t<>\n\t\t\t<Page title={ __( 'Pages' ) }>\n\t\t\t\t<DataViews\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tfields={ fields }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ pages || EMPTY_ARRAY }\n\t\t\t\t\tisLoading={ isLoadingPages || isLoadingAuthors }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t/>\n\t\t\t</Page>\n\t\t\t{ viewTypeSupportsMap[ view.type ].preview && (\n\t\t\t\t<Page>\n\t\t\t\t\t<div className=\"edit-site-page-pages-preview\">\n\t\t\t\t\t\t{ selection.length === 1 && (\n\t\t\t\t\t\t\t<SideEditor\n\t\t\t\t\t\t\t\tpostId={ selection[ 0 ] }\n\t\t\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ selection.length !== 1 && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\t\t\t\t\tflexDirection: 'column',\n\t\t\t\t\t\t\t\t\tjustifyContent: 'center',\n\t\t\t\t\t\t\t\t\ttextAlign: 'center',\n\t\t\t\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<p>{ __( 'Select a page to preview' ) }</p>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t</Page>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = SideEditor;
8
+ var _react = require("react");
9
+ var _editor = _interopRequireDefault(require("../editor"));
10
+ var _useInitEditedEntityFromUrl = require("../sync-state-with-url/use-init-edited-entity-from-url");
11
+ /**
12
+ * Internal dependencies
13
+ */
14
+
15
+ function SideEditor({
16
+ postType,
17
+ postId
18
+ }) {
19
+ (0, _useInitEditedEntityFromUrl.useInitEditedEntity)({
20
+ postId,
21
+ postType
22
+ });
23
+ return (0, _react.createElement)(_editor.default, null);
24
+ }
25
+ //# sourceMappingURL=side-editor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_editor","_interopRequireDefault","require","_useInitEditedEntityFromUrl","SideEditor","postType","postId","useInitEditedEntity","_react","createElement","default"],"sources":["@wordpress/edit-site/src/components/page-pages/side-editor.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport Editor from '../editor';\nimport { useInitEditedEntity } from '../sync-state-with-url/use-init-edited-entity-from-url';\n\nexport default function SideEditor( { postType, postId } ) {\n\tuseInitEditedEntity( {\n\t\tpostId,\n\t\tpostType,\n\t} );\n\n\treturn <Editor />;\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,2BAAA,GAAAD,OAAA;AAJA;AACA;AACA;;AAIe,SAASE,UAAUA,CAAE;EAAEC,QAAQ;EAAEC;AAAO,CAAC,EAAG;EAC1D,IAAAC,+CAAmB,EAAE;IACpBD,MAAM;IACND;EACD,CAAE,CAAC;EAEH,OAAO,IAAAG,MAAA,CAAAC,aAAA,EAACT,OAAA,CAAAU,OAAM,MAAE,CAAC;AAClB"}
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = void 0;
8
8
  var _react = require("react");
9
9
  var _classnames = _interopRequireDefault(require("classnames"));
10
- var _downloadjs = _interopRequireDefault(require("downloadjs"));
11
10
  var _changeCase = require("change-case");
12
11
  var _blockEditor = require("@wordpress/block-editor");
13
12
  var _components = require("@wordpress/components");
@@ -17,6 +16,7 @@ var _i18n = require("@wordpress/i18n");
17
16
  var _icons = require("@wordpress/icons");
18
17
  var _notices = require("@wordpress/notices");
19
18
  var _reusableBlocks = require("@wordpress/reusable-blocks");
19
+ var _blob = require("@wordpress/blob");
20
20
  var _renameMenuItem = _interopRequireDefault(require("./rename-menu-item"));
21
21
  var _duplicateMenuItem = _interopRequireDefault(require("./duplicate-menu-item"));
22
22
  var _constants = require("../../utils/constants");
@@ -104,7 +104,7 @@ function GridItem({
104
104
  content: item.patternBlock.content.raw,
105
105
  syncStatus: item.patternBlock.wp_pattern_sync_status
106
106
  };
107
- return (0, _downloadjs.default)(JSON.stringify(json, null, 2), `${(0, _changeCase.paramCase)(item.title || item.name)}.json`, 'application/json');
107
+ return (0, _blob.downloadBlob)(`${(0, _changeCase.paramCase)(item.title || item.name)}.json`, JSON.stringify(json, null, 2), 'application/json');
108
108
  };
109
109
 
110
110
  // Only custom patterns or custom template parts can be renamed or deleted.
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_downloadjs","_changeCase","_blockEditor","_components","_data","_element","_i18n","_icons","_notices","_reusableBlocks","_renameMenuItem","_duplicateMenuItem","_constants","_store","_link","_lockUnlock","useGlobalStyle","unlock","blockEditorPrivateApis","templatePartIcons","header","footer","uncategorized","GridItem","categoryId","item","props","descriptionId","useId","isDeleteDialogOpen","setIsDeleteDialogOpen","useState","backgroundColor","removeTemplate","useDispatch","editSiteStore","__experimentalDeleteReusableBlock","reusableBlocksStore","createErrorNotice","createSuccessNotice","noticesStore","isUserPattern","type","PATTERN_TYPES","user","isNonUserPattern","theme","isTemplatePart","TEMPLATE_PART_POST_TYPE","onClick","useLink","postType","postId","id","name","categoryType","isEmpty","blocks","length","patternClassNames","classnames","previewClassNames","deletePattern","sprintf","__","title","error","errorMessage","message","code","deleteItem","exportAsJSON","json","__file","content","patternBlock","raw","syncStatus","wp_pattern_sync_status","downloadjs","JSON","stringify","kebabCase","isCustomPattern","isCustom","hasThemeFile","templatePart","has_theme_file","ariaDescriptions","push","description","itemIcon","PATTERN_SYNC_TYPES","full","symbol","undefined","confirmButtonText","confirmPrompt","additionalStyles","css","_react","createElement","className","map","_","index","join","BlockPreview","ariaDescription","key","hidden","__experimentalHStack","justify","alignment","spacing","Tooltip","placement","text","Icon","icon","Flex","as","gap","__experimentalHeading","level","Button","variant","tabIndex","lockSmall","size","DropdownMenu","moreVertical","label","popoverProps","toggleProps","describedBy","onClose","MenuGroup","default","MenuItem","isDestructive","__experimentalConfirmDialog","onConfirm","onCancel","_default","memo","exports"],"sources":["@wordpress/edit-site/src/components/page-patterns/grid-item.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport downloadjs from 'downloadjs';\nimport { paramCase as kebabCase } from 'change-case';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tButton,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n\t__experimentalHeading as Heading,\n\t__experimentalHStack as HStack,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\nimport { useDispatch } from '@wordpress/data';\nimport { useState, useId, memo } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tIcon,\n\theader,\n\tfooter,\n\tsymbolFilled as uncategorized,\n\tsymbol,\n\tmoreVertical,\n\tlockSmall,\n} from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\n\n/**\n * Internal dependencies\n */\nimport RenameMenuItem from './rename-menu-item';\nimport DuplicateMenuItem from './duplicate-menu-item';\nimport {\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_SYNC_TYPES,\n} from '../../utils/constants';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport { unlock } from '../../lock-unlock';\n\nconst { useGlobalStyle } = unlock( blockEditorPrivateApis );\n\nconst templatePartIcons = { header, footer, uncategorized };\n\nfunction GridItem( { categoryId, item, ...props } ) {\n\tconst descriptionId = useId();\n\tconst [ isDeleteDialogOpen, setIsDeleteDialogOpen ] = useState( false );\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\n\tconst { removeTemplate } = useDispatch( editSiteStore );\n\tconst { __experimentalDeleteReusableBlock } =\n\t\tuseDispatch( reusableBlocksStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isNonUserPattern = item.type === PATTERN_TYPES.theme;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t} );\n\n\tconst isEmpty = ! item.blocks?.length;\n\tconst patternClassNames = classnames( 'edit-site-patterns__pattern', {\n\t\t'is-placeholder': isEmpty,\n\t} );\n\tconst previewClassNames = classnames( 'edit-site-patterns__preview', {\n\t\t'is-inactive': isNonUserPattern,\n\t} );\n\n\tconst deletePattern = async () => {\n\t\ttry {\n\t\t\tawait __experimentalDeleteReusableBlock( item.id );\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: The pattern's title e.g. 'Call to action'.\n\t\t\t\t\t__( '\"%s\" deleted.' ),\n\t\t\t\t\titem.title\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar', id: 'edit-site-patterns-success' }\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: __( 'An error occurred while deleting the pattern.' );\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'edit-site-patterns-error',\n\t\t\t} );\n\t\t}\n\t};\n\tconst deleteItem = () =>\n\t\tisTemplatePart ? removeTemplate( item ) : deletePattern();\n\tconst exportAsJSON = () => {\n\t\tconst json = {\n\t\t\t__file: item.type,\n\t\t\ttitle: item.title || item.name,\n\t\t\tcontent: item.patternBlock.content.raw,\n\t\t\tsyncStatus: item.patternBlock.wp_pattern_sync_status,\n\t\t};\n\n\t\treturn downloadjs(\n\t\t\tJSON.stringify( json, null, 2 ),\n\t\t\t`${ kebabCase( item.title || item.name ) }.json`,\n\t\t\t'application/json'\n\t\t);\n\t};\n\n\t// Only custom patterns or custom template parts can be renamed or deleted.\n\tconst isCustomPattern =\n\t\tisUserPattern || ( isTemplatePart && item.isCustom );\n\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\tconst ariaDescriptions = [];\n\n\tif ( isCustomPattern ) {\n\t\t// User patterns don't have descriptions, but can be edited and deleted, so include some help text.\n\t\tariaDescriptions.push(\n\t\t\t__( 'Press Enter to edit, or Delete to delete the pattern.' )\n\t\t);\n\t} else if ( item.description ) {\n\t\tariaDescriptions.push( item.description );\n\t}\n\n\tif ( isNonUserPattern ) {\n\t\tariaDescriptions.push(\n\t\t\t__( 'Theme & plugin patterns cannot be edited.' )\n\t\t);\n\t}\n\n\tlet itemIcon;\n\tif ( ! isUserPattern && templatePartIcons[ categoryId ] ) {\n\t\titemIcon = templatePartIcons[ categoryId ];\n\t} else {\n\t\titemIcon =\n\t\t\titem.syncStatus === PATTERN_SYNC_TYPES.full ? symbol : undefined;\n\t}\n\n\tconst confirmButtonText = hasThemeFile ? __( 'Clear' ) : __( 'Delete' );\n\tconst confirmPrompt = hasThemeFile\n\t\t? __( 'Are you sure you want to clear these customizations?' )\n\t\t: sprintf(\n\t\t\t\t// translators: %s: The pattern or template part's title e.g. 'Call to action'.\n\t\t\t\t__( 'Are you sure you want to delete \"%s\"?' ),\n\t\t\t\titem.title || item.name\n\t\t );\n\n\tconst additionalStyles = ! backgroundColor\n\t\t? [ { css: 'body { background: #fff; }' } ]\n\t\t: undefined;\n\n\treturn (\n\t\t<li className={ patternClassNames }>\n\t\t\t<button\n\t\t\t\tclassName={ previewClassNames }\n\t\t\t\t// Even though still incomplete, passing ids helps performance.\n\t\t\t\t// @see https://reakit.io/docs/composite/#performance.\n\t\t\t\tid={ `edit-site-patterns-${ item.name }` }\n\t\t\t\ttype=\"button\"\n\t\t\t\t{ ...props }\n\t\t\t\tonClick={\n\t\t\t\t\titem.type !== PATTERN_TYPES.theme ? onClick : undefined\n\t\t\t\t}\n\t\t\t\taria-disabled={\n\t\t\t\t\titem.type !== PATTERN_TYPES.theme ? 'false' : 'true'\n\t\t\t\t}\n\t\t\t\taria-label={ item.title }\n\t\t\t\taria-describedby={\n\t\t\t\t\tariaDescriptions.length\n\t\t\t\t\t\t? ariaDescriptions\n\t\t\t\t\t\t\t\t.map(\n\t\t\t\t\t\t\t\t\t( _, index ) =>\n\t\t\t\t\t\t\t\t\t\t`${ descriptionId }-${ index }`\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t.join( ' ' )\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{ isEmpty && isTemplatePart && __( 'Empty template part' ) }\n\t\t\t\t{ isEmpty && ! isTemplatePart && __( 'Empty pattern' ) }\n\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\tblocks={ item.blocks }\n\t\t\t\t\t\tadditionalStyles={ additionalStyles }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</button>\n\t\t\t{ ariaDescriptions.map( ( ariaDescription, index ) => (\n\t\t\t\t<div\n\t\t\t\t\tkey={ index }\n\t\t\t\t\thidden\n\t\t\t\t\tid={ `${ descriptionId }-${ index }` }\n\t\t\t\t>\n\t\t\t\t\t{ ariaDescription }\n\t\t\t\t</div>\n\t\t\t) ) }\n\t\t\t<HStack\n\t\t\t\tclassName=\"edit-site-patterns__footer\"\n\t\t\t\tjustify=\"space-between\"\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\talignment=\"center\"\n\t\t\t\t\tjustify=\"left\"\n\t\t\t\t\tspacing={ 3 }\n\t\t\t\t\tclassName=\"edit-site-patterns__pattern-title\"\n\t\t\t\t>\n\t\t\t\t\t{ itemIcon && ! isNonUserPattern && (\n\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\t\t\ttext={ __(\n\t\t\t\t\t\t\t\t'Editing this pattern will also update anywhere it is used'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-icon\"\n\t\t\t\t\t\t\t\ticon={ itemIcon }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t) }\n\t\t\t\t\t<Flex as=\"span\" gap={ 0 } justify=\"left\">\n\t\t\t\t\t\t{ item.type === PATTERN_TYPES.theme ? (\n\t\t\t\t\t\t\titem.title\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<Heading level={ 5 }>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t\t\t\t// Required for the grid's roving tab index system.\n\t\t\t\t\t\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/51898#discussion_r1243399243.\n\t\t\t\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ item.title || item.name }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ item.type === PATTERN_TYPES.theme && (\n\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\t\t\t\ttext={ __( 'This pattern cannot be edited.' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-lock-icon\"\n\t\t\t\t\t\t\t\t\ticon={ lockSmall }\n\t\t\t\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Flex>\n\t\t\t\t</HStack>\n\t\t\t\t<DropdownMenu\n\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\tclassName=\"edit-site-patterns__dropdown\"\n\t\t\t\t\tpopoverProps={ { placement: 'bottom-end' } }\n\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\tclassName: 'edit-site-patterns__button',\n\t\t\t\t\t\tdescribedBy: sprintf(\n\t\t\t\t\t\t\t/* translators: %s: pattern name */\n\t\t\t\t\t\t\t__( 'Action menu for %s pattern' ),\n\t\t\t\t\t\t\titem.title\n\t\t\t\t\t\t),\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t{ isCustomPattern && ! hasThemeFile && (\n\t\t\t\t\t\t\t\t<RenameMenuItem\n\t\t\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<DuplicateMenuItem\n\t\t\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\tlabel={ __( 'Duplicate' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ item.type === PATTERN_TYPES.user && (\n\t\t\t\t\t\t\t\t<MenuItem onClick={ () => exportAsJSON() }>\n\t\t\t\t\t\t\t\t\t{ __( 'Export as JSON' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t\t{ isCustomPattern && (\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tisDestructive={ ! hasThemeFile }\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\tsetIsDeleteDialogOpen( true )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasThemeFile\n\t\t\t\t\t\t\t\t\t\t? __( 'Clear customizations' )\n\t\t\t\t\t\t\t\t\t\t: __( 'Delete' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t</DropdownMenu>\n\t\t\t</HStack>\n\n\t\t\t{ isDeleteDialogOpen && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tconfirmButtonText={ confirmButtonText }\n\t\t\t\t\tonConfirm={ deleteItem }\n\t\t\t\t\tonCancel={ () => setIsDeleteDialogOpen( false ) }\n\t\t\t\t>\n\t\t\t\t\t{ confirmPrompt }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t</li>\n\t);\n}\n\nexport default memo( GridItem );\n"],"mappings":"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"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_changeCase","_blockEditor","_components","_data","_element","_i18n","_icons","_notices","_reusableBlocks","_blob","_renameMenuItem","_duplicateMenuItem","_constants","_store","_link","_lockUnlock","useGlobalStyle","unlock","blockEditorPrivateApis","templatePartIcons","header","footer","uncategorized","GridItem","categoryId","item","props","descriptionId","useId","isDeleteDialogOpen","setIsDeleteDialogOpen","useState","backgroundColor","removeTemplate","useDispatch","editSiteStore","__experimentalDeleteReusableBlock","reusableBlocksStore","createErrorNotice","createSuccessNotice","noticesStore","isUserPattern","type","PATTERN_TYPES","user","isNonUserPattern","theme","isTemplatePart","TEMPLATE_PART_POST_TYPE","onClick","useLink","postType","postId","id","name","categoryType","isEmpty","blocks","length","patternClassNames","classnames","previewClassNames","deletePattern","sprintf","__","title","error","errorMessage","message","code","deleteItem","exportAsJSON","json","__file","content","patternBlock","raw","syncStatus","wp_pattern_sync_status","downloadBlob","kebabCase","JSON","stringify","isCustomPattern","isCustom","hasThemeFile","templatePart","has_theme_file","ariaDescriptions","push","description","itemIcon","PATTERN_SYNC_TYPES","full","symbol","undefined","confirmButtonText","confirmPrompt","additionalStyles","css","_react","createElement","className","map","_","index","join","BlockPreview","ariaDescription","key","hidden","__experimentalHStack","justify","alignment","spacing","Tooltip","placement","text","Icon","icon","Flex","as","gap","__experimentalHeading","level","Button","variant","tabIndex","lockSmall","size","DropdownMenu","moreVertical","label","popoverProps","toggleProps","describedBy","onClose","MenuGroup","default","MenuItem","isDestructive","__experimentalConfirmDialog","onConfirm","onCancel","_default","memo","exports"],"sources":["@wordpress/edit-site/src/components/page-patterns/grid-item.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { paramCase as kebabCase } from 'change-case';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tButton,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n\t__experimentalHeading as Heading,\n\t__experimentalHStack as HStack,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\nimport { useDispatch } from '@wordpress/data';\nimport { useState, useId, memo } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tIcon,\n\theader,\n\tfooter,\n\tsymbolFilled as uncategorized,\n\tsymbol,\n\tmoreVertical,\n\tlockSmall,\n} from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\nimport { downloadBlob } from '@wordpress/blob';\n\n/**\n * Internal dependencies\n */\nimport RenameMenuItem from './rename-menu-item';\nimport DuplicateMenuItem from './duplicate-menu-item';\nimport {\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_SYNC_TYPES,\n} from '../../utils/constants';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport { unlock } from '../../lock-unlock';\n\nconst { useGlobalStyle } = unlock( blockEditorPrivateApis );\n\nconst templatePartIcons = { header, footer, uncategorized };\n\nfunction GridItem( { categoryId, item, ...props } ) {\n\tconst descriptionId = useId();\n\tconst [ isDeleteDialogOpen, setIsDeleteDialogOpen ] = useState( false );\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\n\tconst { removeTemplate } = useDispatch( editSiteStore );\n\tconst { __experimentalDeleteReusableBlock } =\n\t\tuseDispatch( reusableBlocksStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isNonUserPattern = item.type === PATTERN_TYPES.theme;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t} );\n\n\tconst isEmpty = ! item.blocks?.length;\n\tconst patternClassNames = classnames( 'edit-site-patterns__pattern', {\n\t\t'is-placeholder': isEmpty,\n\t} );\n\tconst previewClassNames = classnames( 'edit-site-patterns__preview', {\n\t\t'is-inactive': isNonUserPattern,\n\t} );\n\n\tconst deletePattern = async () => {\n\t\ttry {\n\t\t\tawait __experimentalDeleteReusableBlock( item.id );\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: The pattern's title e.g. 'Call to action'.\n\t\t\t\t\t__( '\"%s\" deleted.' ),\n\t\t\t\t\titem.title\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar', id: 'edit-site-patterns-success' }\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: __( 'An error occurred while deleting the pattern.' );\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'edit-site-patterns-error',\n\t\t\t} );\n\t\t}\n\t};\n\tconst deleteItem = () =>\n\t\tisTemplatePart ? removeTemplate( item ) : deletePattern();\n\tconst exportAsJSON = () => {\n\t\tconst json = {\n\t\t\t__file: item.type,\n\t\t\ttitle: item.title || item.name,\n\t\t\tcontent: item.patternBlock.content.raw,\n\t\t\tsyncStatus: item.patternBlock.wp_pattern_sync_status,\n\t\t};\n\n\t\treturn downloadBlob(\n\t\t\t`${ kebabCase( item.title || item.name ) }.json`,\n\t\t\tJSON.stringify( json, null, 2 ),\n\t\t\t'application/json'\n\t\t);\n\t};\n\n\t// Only custom patterns or custom template parts can be renamed or deleted.\n\tconst isCustomPattern =\n\t\tisUserPattern || ( isTemplatePart && item.isCustom );\n\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\tconst ariaDescriptions = [];\n\n\tif ( isCustomPattern ) {\n\t\t// User patterns don't have descriptions, but can be edited and deleted, so include some help text.\n\t\tariaDescriptions.push(\n\t\t\t__( 'Press Enter to edit, or Delete to delete the pattern.' )\n\t\t);\n\t} else if ( item.description ) {\n\t\tariaDescriptions.push( item.description );\n\t}\n\n\tif ( isNonUserPattern ) {\n\t\tariaDescriptions.push(\n\t\t\t__( 'Theme & plugin patterns cannot be edited.' )\n\t\t);\n\t}\n\n\tlet itemIcon;\n\tif ( ! isUserPattern && templatePartIcons[ categoryId ] ) {\n\t\titemIcon = templatePartIcons[ categoryId ];\n\t} else {\n\t\titemIcon =\n\t\t\titem.syncStatus === PATTERN_SYNC_TYPES.full ? symbol : undefined;\n\t}\n\n\tconst confirmButtonText = hasThemeFile ? __( 'Clear' ) : __( 'Delete' );\n\tconst confirmPrompt = hasThemeFile\n\t\t? __( 'Are you sure you want to clear these customizations?' )\n\t\t: sprintf(\n\t\t\t\t// translators: %s: The pattern or template part's title e.g. 'Call to action'.\n\t\t\t\t__( 'Are you sure you want to delete \"%s\"?' ),\n\t\t\t\titem.title || item.name\n\t\t );\n\n\tconst additionalStyles = ! backgroundColor\n\t\t? [ { css: 'body { background: #fff; }' } ]\n\t\t: undefined;\n\n\treturn (\n\t\t<li className={ patternClassNames }>\n\t\t\t<button\n\t\t\t\tclassName={ previewClassNames }\n\t\t\t\t// Even though still incomplete, passing ids helps performance.\n\t\t\t\t// @see https://reakit.io/docs/composite/#performance.\n\t\t\t\tid={ `edit-site-patterns-${ item.name }` }\n\t\t\t\ttype=\"button\"\n\t\t\t\t{ ...props }\n\t\t\t\tonClick={\n\t\t\t\t\titem.type !== PATTERN_TYPES.theme ? onClick : undefined\n\t\t\t\t}\n\t\t\t\taria-disabled={\n\t\t\t\t\titem.type !== PATTERN_TYPES.theme ? 'false' : 'true'\n\t\t\t\t}\n\t\t\t\taria-label={ item.title }\n\t\t\t\taria-describedby={\n\t\t\t\t\tariaDescriptions.length\n\t\t\t\t\t\t? ariaDescriptions\n\t\t\t\t\t\t\t\t.map(\n\t\t\t\t\t\t\t\t\t( _, index ) =>\n\t\t\t\t\t\t\t\t\t\t`${ descriptionId }-${ index }`\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t.join( ' ' )\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{ isEmpty && isTemplatePart && __( 'Empty template part' ) }\n\t\t\t\t{ isEmpty && ! isTemplatePart && __( 'Empty pattern' ) }\n\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\tblocks={ item.blocks }\n\t\t\t\t\t\tadditionalStyles={ additionalStyles }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</button>\n\t\t\t{ ariaDescriptions.map( ( ariaDescription, index ) => (\n\t\t\t\t<div\n\t\t\t\t\tkey={ index }\n\t\t\t\t\thidden\n\t\t\t\t\tid={ `${ descriptionId }-${ index }` }\n\t\t\t\t>\n\t\t\t\t\t{ ariaDescription }\n\t\t\t\t</div>\n\t\t\t) ) }\n\t\t\t<HStack\n\t\t\t\tclassName=\"edit-site-patterns__footer\"\n\t\t\t\tjustify=\"space-between\"\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\talignment=\"center\"\n\t\t\t\t\tjustify=\"left\"\n\t\t\t\t\tspacing={ 3 }\n\t\t\t\t\tclassName=\"edit-site-patterns__pattern-title\"\n\t\t\t\t>\n\t\t\t\t\t{ itemIcon && ! isNonUserPattern && (\n\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\t\t\ttext={ __(\n\t\t\t\t\t\t\t\t'Editing this pattern will also update anywhere it is used'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-icon\"\n\t\t\t\t\t\t\t\ticon={ itemIcon }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t) }\n\t\t\t\t\t<Flex as=\"span\" gap={ 0 } justify=\"left\">\n\t\t\t\t\t\t{ item.type === PATTERN_TYPES.theme ? (\n\t\t\t\t\t\t\titem.title\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<Heading level={ 5 }>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t\t\t\t// Required for the grid's roving tab index system.\n\t\t\t\t\t\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/51898#discussion_r1243399243.\n\t\t\t\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ item.title || item.name }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ item.type === PATTERN_TYPES.theme && (\n\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\t\t\t\ttext={ __( 'This pattern cannot be edited.' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-lock-icon\"\n\t\t\t\t\t\t\t\t\ticon={ lockSmall }\n\t\t\t\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Flex>\n\t\t\t\t</HStack>\n\t\t\t\t<DropdownMenu\n\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\tclassName=\"edit-site-patterns__dropdown\"\n\t\t\t\t\tpopoverProps={ { placement: 'bottom-end' } }\n\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\tclassName: 'edit-site-patterns__button',\n\t\t\t\t\t\tdescribedBy: sprintf(\n\t\t\t\t\t\t\t/* translators: %s: pattern name */\n\t\t\t\t\t\t\t__( 'Action menu for %s pattern' ),\n\t\t\t\t\t\t\titem.title\n\t\t\t\t\t\t),\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t{ isCustomPattern && ! hasThemeFile && (\n\t\t\t\t\t\t\t\t<RenameMenuItem\n\t\t\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<DuplicateMenuItem\n\t\t\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\tlabel={ __( 'Duplicate' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ item.type === PATTERN_TYPES.user && (\n\t\t\t\t\t\t\t\t<MenuItem onClick={ () => exportAsJSON() }>\n\t\t\t\t\t\t\t\t\t{ __( 'Export as JSON' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t\t{ isCustomPattern && (\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tisDestructive={ ! hasThemeFile }\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\tsetIsDeleteDialogOpen( true )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasThemeFile\n\t\t\t\t\t\t\t\t\t\t? __( 'Clear customizations' )\n\t\t\t\t\t\t\t\t\t\t: __( 'Delete' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t</DropdownMenu>\n\t\t\t</HStack>\n\n\t\t\t{ isDeleteDialogOpen && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tconfirmButtonText={ confirmButtonText }\n\t\t\t\t\tonConfirm={ deleteItem }\n\t\t\t\t\tonCancel={ () => setIsDeleteDialogOpen( false ) }\n\t\t\t\t>\n\t\t\t\t\t{ confirmPrompt }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t</li>\n\t);\n}\n\nexport default memo( GridItem );\n"],"mappings":"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"}
@@ -34,9 +34,9 @@ const {
34
34
  useHistory
35
35
  } = (0, _lockUnlock.unlock)(_router.privateApis);
36
36
  const SYNC_FILTERS = {
37
- all: (0, _i18n.__)('All'),
38
- [_constants.PATTERN_SYNC_TYPES.full]: (0, _i18n.__)('Synced'),
39
- [_constants.PATTERN_SYNC_TYPES.unsynced]: (0, _i18n.__)('Not synced')
37
+ all: (0, _i18n._x)('All', 'Option that shows all patterns'),
38
+ [_constants.PATTERN_SYNC_TYPES.full]: (0, _i18n._x)('Synced', 'Option that shows all synchronized patterns'),
39
+ [_constants.PATTERN_SYNC_TYPES.unsynced]: (0, _i18n._x)('Not synced', 'Option that shows all patterns that are not synchronized')
40
40
  };
41
41
  const SYNC_DESCRIPTIONS = {
42
42
  all: '',