@wordpress/edit-site 6.2.0 → 6.4.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 (368) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/components/add-new-pattern/index.js +8 -2
  3. package/build/components/add-new-pattern/index.js.map +1 -1
  4. package/build/components/{add-new-page → add-new-post}/index.js +21 -17
  5. package/build/components/add-new-post/index.js.map +1 -0
  6. package/build/components/add-new-template/index.js +3 -1
  7. package/build/components/add-new-template/index.js.map +1 -1
  8. package/build/components/block-editor/use-site-editor-settings.js +6 -85
  9. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  10. package/build/components/editor/index.js +21 -3
  11. package/build/components/editor/index.js.map +1 -1
  12. package/build/components/global-styles/background-panel.js +0 -5
  13. package/build/components/global-styles/background-panel.js.map +1 -1
  14. package/build/components/global-styles/block-preview-panel.js +14 -5
  15. package/build/components/global-styles/block-preview-panel.js.map +1 -1
  16. package/build/components/global-styles/font-families.js +42 -23
  17. package/build/components/global-styles/font-families.js.map +1 -1
  18. package/build/components/global-styles/font-library-modal/font-collection.js +13 -30
  19. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  20. package/build/components/global-styles/font-library-modal/index.js +4 -4
  21. package/build/components/global-styles/font-library-modal/index.js.map +1 -1
  22. package/build/components/global-styles/font-library-modal/installed-fonts.js +60 -12
  23. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  24. package/build/components/global-styles/font-sizes/confirm-delete-font-size-dialog.js +39 -0
  25. package/build/components/global-styles/font-sizes/confirm-delete-font-size-dialog.js.map +1 -0
  26. package/build/components/global-styles/font-sizes/confirm-reset-font-sizes-dialog.js +39 -0
  27. package/build/components/global-styles/font-sizes/confirm-reset-font-sizes-dialog.js.map +1 -0
  28. package/build/components/global-styles/font-sizes/font-size-preview.js +44 -0
  29. package/build/components/global-styles/font-sizes/font-size-preview.js.map +1 -0
  30. package/build/components/global-styles/font-sizes/font-size.js +213 -0
  31. package/build/components/global-styles/font-sizes/font-size.js.map +1 -0
  32. package/build/components/global-styles/font-sizes/font-sizes-count.js +50 -0
  33. package/build/components/global-styles/font-sizes/font-sizes-count.js.map +1 -0
  34. package/build/components/global-styles/font-sizes/font-sizes.js +163 -0
  35. package/build/components/global-styles/font-sizes/font-sizes.js.map +1 -0
  36. package/build/components/global-styles/font-sizes/rename-font-size-dialog.js +67 -0
  37. package/build/components/global-styles/font-sizes/rename-font-size-dialog.js.map +1 -0
  38. package/build/components/global-styles/hooks.js +0 -40
  39. package/build/components/global-styles/hooks.js.map +1 -1
  40. package/build/components/global-styles/preview-typography.js +47 -0
  41. package/build/components/global-styles/preview-typography.js.map +1 -0
  42. package/build/components/global-styles/screen-block.js +17 -1
  43. package/build/components/global-styles/screen-block.js.map +1 -1
  44. package/build/components/global-styles/screen-layout.js +5 -1
  45. package/build/components/global-styles/screen-layout.js.map +1 -1
  46. package/build/components/global-styles/screen-revisions/revisions-buttons.js +1 -1
  47. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  48. package/build/components/global-styles/screen-style-variations.js +2 -2
  49. package/build/components/global-styles/screen-style-variations.js.map +1 -1
  50. package/build/components/global-styles/screen-typography.js +3 -2
  51. package/build/components/global-styles/screen-typography.js.map +1 -1
  52. package/build/components/global-styles/shadows-edit-panel.js +1 -2
  53. package/build/components/global-styles/shadows-edit-panel.js.map +1 -1
  54. package/build/components/global-styles/size-control/index.js +85 -0
  55. package/build/components/global-styles/size-control/index.js.map +1 -0
  56. package/build/components/global-styles/style-variations-container.js +8 -5
  57. package/build/components/global-styles/style-variations-container.js.map +1 -1
  58. package/build/components/global-styles/typography-elements.js +0 -2
  59. package/build/components/global-styles/typography-elements.js.map +1 -1
  60. package/build/components/global-styles/ui.js +8 -0
  61. package/build/components/global-styles/ui.js.map +1 -1
  62. package/build/components/global-styles/variations/variation.js +4 -4
  63. package/build/components/global-styles/variations/variation.js.map +1 -1
  64. package/build/components/global-styles/variations/variations-color.js +4 -3
  65. package/build/components/global-styles/variations/variations-color.js.map +1 -1
  66. package/build/components/global-styles/variations/variations-typography.js +15 -29
  67. package/build/components/global-styles/variations/variations-typography.js.map +1 -1
  68. package/build/components/global-styles-sidebar/index.js +2 -2
  69. package/build/components/global-styles-sidebar/index.js.map +1 -1
  70. package/build/components/layout/index.js +22 -8
  71. package/build/components/layout/index.js.map +1 -1
  72. package/build/components/layout/router.js +30 -43
  73. package/build/components/layout/router.js.map +1 -1
  74. package/build/components/page-patterns/header.js +1 -1
  75. package/build/components/page-patterns/header.js.map +1 -1
  76. package/build/components/page-patterns/index.js +65 -49
  77. package/build/components/page-patterns/index.js.map +1 -1
  78. package/build/components/page-patterns/search-items.js +29 -4
  79. package/build/components/page-patterns/search-items.js.map +1 -1
  80. package/build/components/page-patterns/use-patterns.js +22 -55
  81. package/build/components/page-patterns/use-patterns.js.map +1 -1
  82. package/build/components/page-templates/index.js +56 -50
  83. package/build/components/page-templates/index.js.map +1 -1
  84. package/build/components/pagination/index.js +4 -4
  85. package/build/components/pagination/index.js.map +1 -1
  86. package/build/components/post-edit/index.js +105 -0
  87. package/build/components/post-edit/index.js.map +1 -0
  88. package/build/components/post-fields/index.js +314 -0
  89. package/build/components/post-fields/index.js.map +1 -0
  90. package/build/components/post-list/index.js +281 -0
  91. package/build/components/post-list/index.js.map +1 -0
  92. package/build/components/posts-app/index.js +11 -17
  93. package/build/components/posts-app/index.js.map +1 -1
  94. package/build/components/posts-app/router.js +85 -0
  95. package/build/components/posts-app/router.js.map +1 -0
  96. package/build/components/revisions/index.js +10 -7
  97. package/build/components/revisions/index.js.map +1 -1
  98. package/build/components/save-panel/index.js +1 -1
  99. package/build/components/save-panel/index.js.map +1 -1
  100. package/build/components/sidebar-dataviews/add-new-view.js +4 -1
  101. package/build/components/sidebar-dataviews/add-new-view.js.map +1 -1
  102. package/build/components/sidebar-dataviews/custom-dataviews-list.js +6 -2
  103. package/build/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
  104. package/build/components/sidebar-dataviews/default-views.js +119 -93
  105. package/build/components/sidebar-dataviews/default-views.js.map +1 -1
  106. package/build/components/sidebar-dataviews/index.js +44 -2
  107. package/build/components/sidebar-dataviews/index.js.map +1 -1
  108. package/build/components/sidebar-navigation-screen-global-styles/content.js +64 -0
  109. package/build/components/sidebar-navigation-screen-global-styles/content.js.map +1 -0
  110. package/build/components/sidebar-navigation-screen-global-styles/index.js +2 -47
  111. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  112. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +3 -2
  113. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -1
  114. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +3 -2
  115. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  116. package/build/components/site-hub/index.js +81 -1
  117. package/build/components/site-hub/index.js.map +1 -1
  118. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +3 -1
  119. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  120. package/build/hooks/push-changes-to-global-styles/index.js +2 -2
  121. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  122. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +65 -42
  123. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  124. package/build/index.js +10 -0
  125. package/build/index.js.map +1 -1
  126. package/build/posts.js +57 -2
  127. package/build/posts.js.map +1 -1
  128. package/build/store/private-actions.js +7 -2
  129. package/build/store/private-actions.js.map +1 -1
  130. package/build/store/selectors.js +34 -6
  131. package/build/store/selectors.js.map +1 -1
  132. package/build/utils/get-filtered-template-parts.js +64 -0
  133. package/build/utils/get-filtered-template-parts.js.map +1 -0
  134. package/build-module/components/add-new-pattern/index.js +8 -2
  135. package/build-module/components/add-new-pattern/index.js.map +1 -1
  136. package/build-module/components/{add-new-page → add-new-post}/index.js +21 -17
  137. package/build-module/components/add-new-post/index.js.map +1 -0
  138. package/build-module/components/add-new-template/index.js +3 -1
  139. package/build-module/components/add-new-template/index.js.map +1 -1
  140. package/build-module/components/block-editor/use-site-editor-settings.js +6 -85
  141. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  142. package/build-module/components/editor/index.js +21 -3
  143. package/build-module/components/editor/index.js.map +1 -1
  144. package/build-module/components/global-styles/background-panel.js +0 -5
  145. package/build-module/components/global-styles/background-panel.js.map +1 -1
  146. package/build-module/components/global-styles/block-preview-panel.js +14 -5
  147. package/build-module/components/global-styles/block-preview-panel.js.map +1 -1
  148. package/build-module/components/global-styles/font-families.js +44 -25
  149. package/build-module/components/global-styles/font-families.js.map +1 -1
  150. package/build-module/components/global-styles/font-library-modal/font-collection.js +14 -31
  151. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  152. package/build-module/components/global-styles/font-library-modal/index.js +4 -4
  153. package/build-module/components/global-styles/font-library-modal/index.js.map +1 -1
  154. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +63 -15
  155. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  156. package/build-module/components/global-styles/font-sizes/confirm-delete-font-size-dialog.js +32 -0
  157. package/build-module/components/global-styles/font-sizes/confirm-delete-font-size-dialog.js.map +1 -0
  158. package/build-module/components/global-styles/font-sizes/confirm-reset-font-sizes-dialog.js +32 -0
  159. package/build-module/components/global-styles/font-sizes/confirm-reset-font-sizes-dialog.js.map +1 -0
  160. package/build-module/components/global-styles/font-sizes/font-size-preview.js +37 -0
  161. package/build-module/components/global-styles/font-sizes/font-size-preview.js.map +1 -0
  162. package/build-module/components/global-styles/font-sizes/font-size.js +207 -0
  163. package/build-module/components/global-styles/font-sizes/font-size.js.map +1 -0
  164. package/build-module/components/global-styles/font-sizes/font-sizes-count.js +43 -0
  165. package/build-module/components/global-styles/font-sizes/font-sizes-count.js.map +1 -0
  166. package/build-module/components/global-styles/font-sizes/font-sizes.js +157 -0
  167. package/build-module/components/global-styles/font-sizes/font-sizes.js.map +1 -0
  168. package/build-module/components/global-styles/font-sizes/rename-font-size-dialog.js +61 -0
  169. package/build-module/components/global-styles/font-sizes/rename-font-size-dialog.js.map +1 -0
  170. package/build-module/components/global-styles/hooks.js +0 -38
  171. package/build-module/components/global-styles/hooks.js.map +1 -1
  172. package/build-module/components/global-styles/preview-typography.js +39 -0
  173. package/build-module/components/global-styles/preview-typography.js.map +1 -0
  174. package/build-module/components/global-styles/screen-block.js +18 -1
  175. package/build-module/components/global-styles/screen-block.js.map +1 -1
  176. package/build-module/components/global-styles/screen-layout.js +5 -1
  177. package/build-module/components/global-styles/screen-layout.js.map +1 -1
  178. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +1 -1
  179. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  180. package/build-module/components/global-styles/screen-style-variations.js +2 -2
  181. package/build-module/components/global-styles/screen-style-variations.js.map +1 -1
  182. package/build-module/components/global-styles/screen-typography.js +3 -2
  183. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  184. package/build-module/components/global-styles/shadows-edit-panel.js +1 -2
  185. package/build-module/components/global-styles/shadows-edit-panel.js.map +1 -1
  186. package/build-module/components/global-styles/size-control/index.js +79 -0
  187. package/build-module/components/global-styles/size-control/index.js.map +1 -0
  188. package/build-module/components/global-styles/style-variations-container.js +9 -6
  189. package/build-module/components/global-styles/style-variations-container.js.map +1 -1
  190. package/build-module/components/global-styles/typography-elements.js +0 -2
  191. package/build-module/components/global-styles/typography-elements.js.map +1 -1
  192. package/build-module/components/global-styles/ui.js +8 -0
  193. package/build-module/components/global-styles/ui.js.map +1 -1
  194. package/build-module/components/global-styles/variations/variation.js +5 -5
  195. package/build-module/components/global-styles/variations/variation.js.map +1 -1
  196. package/build-module/components/global-styles/variations/variations-color.js +5 -4
  197. package/build-module/components/global-styles/variations/variations-color.js.map +1 -1
  198. package/build-module/components/global-styles/variations/variations-typography.js +16 -30
  199. package/build-module/components/global-styles/variations/variations-typography.js.map +1 -1
  200. package/build-module/components/global-styles-sidebar/index.js +2 -2
  201. package/build-module/components/global-styles-sidebar/index.js.map +1 -1
  202. package/build-module/components/layout/index.js +20 -8
  203. package/build-module/components/layout/index.js.map +1 -1
  204. package/build-module/components/layout/router.js +30 -43
  205. package/build-module/components/layout/router.js.map +1 -1
  206. package/build-module/components/page-patterns/header.js +1 -1
  207. package/build-module/components/page-patterns/header.js.map +1 -1
  208. package/build-module/components/page-patterns/index.js +66 -50
  209. package/build-module/components/page-patterns/index.js.map +1 -1
  210. package/build-module/components/page-patterns/search-items.js +28 -4
  211. package/build-module/components/page-patterns/search-items.js.map +1 -1
  212. package/build-module/components/page-patterns/use-patterns.js +23 -56
  213. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  214. package/build-module/components/page-templates/index.js +58 -53
  215. package/build-module/components/page-templates/index.js.map +1 -1
  216. package/build-module/components/pagination/index.js +4 -4
  217. package/build-module/components/pagination/index.js.map +1 -1
  218. package/build-module/components/post-edit/index.js +98 -0
  219. package/build-module/components/post-edit/index.js.map +1 -0
  220. package/build-module/components/post-fields/index.js +306 -0
  221. package/build-module/components/post-fields/index.js.map +1 -0
  222. package/build-module/components/post-list/index.js +275 -0
  223. package/build-module/components/post-list/index.js.map +1 -0
  224. package/build-module/components/posts-app/index.js +11 -17
  225. package/build-module/components/posts-app/index.js.map +1 -1
  226. package/build-module/components/posts-app/router.js +77 -0
  227. package/build-module/components/posts-app/router.js.map +1 -0
  228. package/build-module/components/revisions/index.js +10 -7
  229. package/build-module/components/revisions/index.js.map +1 -1
  230. package/build-module/components/save-panel/index.js +1 -1
  231. package/build-module/components/save-panel/index.js.map +1 -1
  232. package/build-module/components/sidebar-dataviews/add-new-view.js +4 -1
  233. package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -1
  234. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js +6 -2
  235. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
  236. package/build-module/components/sidebar-dataviews/default-views.js +117 -92
  237. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
  238. package/build-module/components/sidebar-dataviews/index.js +47 -5
  239. package/build-module/components/sidebar-dataviews/index.js.map +1 -1
  240. package/build-module/components/sidebar-navigation-screen-global-styles/content.js +57 -0
  241. package/build-module/components/sidebar-navigation-screen-global-styles/content.js.map +1 -0
  242. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +2 -47
  243. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  244. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +3 -2
  245. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -1
  246. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +3 -2
  247. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  248. package/build-module/components/site-hub/index.js +81 -1
  249. package/build-module/components/site-hub/index.js.map +1 -1
  250. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +3 -1
  251. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  252. package/build-module/hooks/push-changes-to-global-styles/index.js +2 -2
  253. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  254. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +61 -38
  255. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  256. package/build-module/index.js +11 -2
  257. package/build-module/index.js.map +1 -1
  258. package/build-module/posts.js +57 -2
  259. package/build-module/posts.js.map +1 -1
  260. package/build-module/store/private-actions.js +7 -2
  261. package/build-module/store/private-actions.js.map +1 -1
  262. package/build-module/store/selectors.js +35 -7
  263. package/build-module/store/selectors.js.map +1 -1
  264. package/build-module/utils/get-filtered-template-parts.js +57 -0
  265. package/build-module/utils/get-filtered-template-parts.js.map +1 -0
  266. package/build-style/posts-rtl.css +668 -510
  267. package/build-style/posts.css +668 -510
  268. package/build-style/style-rtl.css +772 -702
  269. package/build-style/style.css +772 -702
  270. package/package.json +41 -41
  271. package/src/components/add-new-pattern/index.js +8 -2
  272. package/src/components/{add-new-page → add-new-post}/index.js +28 -22
  273. package/src/components/add-new-template/index.js +4 -1
  274. package/src/components/add-new-template/style.scss +4 -6
  275. package/src/components/block-editor/use-site-editor-settings.js +10 -101
  276. package/src/components/editor/index.js +21 -5
  277. package/src/components/global-styles/background-panel.js +0 -8
  278. package/src/components/global-styles/block-preview-panel.js +22 -9
  279. package/src/components/global-styles/font-families.js +66 -31
  280. package/src/components/global-styles/font-library-modal/font-collection.js +17 -32
  281. package/src/components/global-styles/font-library-modal/index.js +4 -2
  282. package/src/components/global-styles/font-library-modal/installed-fonts.js +94 -13
  283. package/src/components/global-styles/font-library-modal/style.scss +26 -10
  284. package/src/components/global-styles/font-sizes/confirm-delete-font-size-dialog.js +43 -0
  285. package/src/components/global-styles/font-sizes/confirm-reset-font-sizes-dialog.js +37 -0
  286. package/src/components/global-styles/font-sizes/font-size-preview.js +43 -0
  287. package/src/components/global-styles/font-sizes/font-size.js +250 -0
  288. package/src/components/global-styles/font-sizes/font-sizes-count.js +40 -0
  289. package/src/components/global-styles/font-sizes/font-sizes.js +263 -0
  290. package/src/components/global-styles/font-sizes/rename-font-size-dialog.js +70 -0
  291. package/src/components/global-styles/hooks.js +0 -41
  292. package/src/components/global-styles/preview-typography.js +39 -0
  293. package/src/components/global-styles/screen-block.js +20 -0
  294. package/src/components/global-styles/screen-layout.js +5 -1
  295. package/src/components/global-styles/screen-revisions/revisions-buttons.js +1 -1
  296. package/src/components/global-styles/screen-style-variations.js +2 -2
  297. package/src/components/global-styles/screen-typography.js +3 -2
  298. package/src/components/global-styles/shadows-edit-panel.js +1 -2
  299. package/src/components/global-styles/size-control/index.js +86 -0
  300. package/src/components/global-styles/style-variations-container.js +14 -7
  301. package/src/components/global-styles/style.scss +13 -3
  302. package/src/components/global-styles/typography-elements.js +0 -4
  303. package/src/components/global-styles/ui.js +10 -0
  304. package/src/components/global-styles/variations/variation.js +5 -5
  305. package/src/components/global-styles/variations/variations-color.js +6 -4
  306. package/src/components/global-styles/variations/variations-typography.js +15 -33
  307. package/src/components/global-styles-sidebar/index.js +2 -2
  308. package/src/components/layout/index.js +24 -4
  309. package/src/components/layout/router.js +29 -37
  310. package/src/components/layout/style.scss +38 -8
  311. package/src/components/page-patterns/header.js +1 -1
  312. package/src/components/page-patterns/index.js +62 -64
  313. package/src/components/page-patterns/search-items.js +37 -3
  314. package/src/components/page-patterns/style.scss +1 -8
  315. package/src/components/page-patterns/use-patterns.js +43 -82
  316. package/src/components/page-templates/index.js +67 -64
  317. package/src/components/page-templates/style.scss +6 -9
  318. package/src/components/pagination/index.js +4 -4
  319. package/src/components/post-edit/index.js +96 -0
  320. package/src/components/post-edit/style.scss +9 -0
  321. package/src/components/post-fields/index.js +345 -0
  322. package/src/components/post-list/index.js +326 -0
  323. package/src/components/{page-pages → post-list}/style.scss +25 -8
  324. package/src/components/posts-app/index.js +9 -11
  325. package/src/components/posts-app/router.js +69 -0
  326. package/src/components/revisions/index.js +9 -1
  327. package/src/components/save-panel/index.js +1 -1
  328. package/src/components/sidebar/style.scss +6 -0
  329. package/src/components/sidebar-dataviews/add-new-view.js +2 -1
  330. package/src/components/sidebar-dataviews/custom-dataviews-list.js +6 -2
  331. package/src/components/sidebar-dataviews/default-views.js +131 -106
  332. package/src/components/sidebar-dataviews/index.js +39 -4
  333. package/src/components/sidebar-navigation-screen-global-styles/content.js +55 -0
  334. package/src/components/sidebar-navigation-screen-global-styles/index.js +1 -54
  335. package/src/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +2 -1
  336. package/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +10 -2
  337. package/src/components/site-hub/index.js +84 -1
  338. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +3 -2
  339. package/src/hooks/push-changes-to-global-styles/index.js +2 -2
  340. package/src/hooks/use-theme-style-variations/test/use-theme-style-variations-by-property.js +28 -24
  341. package/src/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +72 -47
  342. package/src/index.js +14 -1
  343. package/src/posts.js +63 -2
  344. package/src/posts.scss +9 -0
  345. package/src/store/private-actions.js +7 -3
  346. package/src/store/selectors.js +53 -14
  347. package/src/store/test/selectors.js +1 -26
  348. package/src/style.scss +2 -2
  349. package/src/utils/get-filtered-template-parts.js +61 -0
  350. package/src/utils/test/get-filtered-template-parts.js +127 -0
  351. package/build/components/add-new-page/index.js.map +0 -1
  352. package/build/components/global-styles/screen-background.js +0 -36
  353. package/build/components/global-styles/screen-background.js.map +0 -1
  354. package/build/components/page-pages/index.js +0 -473
  355. package/build/components/page-pages/index.js.map +0 -1
  356. package/build/components/table/index.js +0 -35
  357. package/build/components/table/index.js.map +0 -1
  358. package/build-module/components/add-new-page/index.js.map +0 -1
  359. package/build-module/components/global-styles/screen-background.js +0 -30
  360. package/build-module/components/global-styles/screen-background.js.map +0 -1
  361. package/build-module/components/page-pages/index.js +0 -465
  362. package/build-module/components/page-pages/index.js.map +0 -1
  363. package/build-module/components/table/index.js +0 -30
  364. package/build-module/components/table/index.js.map +0 -1
  365. package/src/components/global-styles/screen-background.js +0 -29
  366. package/src/components/page-pages/index.js +0 -564
  367. package/src/components/table/index.js +0 -33
  368. package/src/components/table/style.scss +0 -38
@@ -1,465 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { Button, __experimentalHStack as HStack } from '@wordpress/components';
5
- import { __, sprintf } from '@wordpress/i18n';
6
- import { useEntityRecords, store as coreStore } from '@wordpress/core-data';
7
- import { decodeEntities } from '@wordpress/html-entities';
8
- import { createInterpolateElement, useState, useMemo, useCallback, useEffect } from '@wordpress/element';
9
- import { dateI18n, getDate, getSettings } from '@wordpress/date';
10
- import { privateApis as routerPrivateApis } from '@wordpress/router';
11
- import { useSelect, useDispatch } from '@wordpress/data';
12
- import { DataViews } from '@wordpress/dataviews';
13
- import { privateApis as editorPrivateApis } from '@wordpress/editor';
14
-
15
- /**
16
- * Internal dependencies
17
- */
18
- import Page from '../page';
19
- import { default as Link, useLink } from '../routes/link';
20
- import { DEFAULT_VIEWS, DEFAULT_CONFIG_PER_VIEW_TYPE } from '../sidebar-dataviews/default-views';
21
- import { LAYOUT_GRID, LAYOUT_TABLE, LAYOUT_LIST, OPERATOR_IS_ANY, OPERATOR_IS_NONE } from '../../utils/constants';
22
- import AddNewPageModal from '../add-new-page';
23
- import Media from '../media';
24
- import { unlock } from '../../lock-unlock';
25
- import { useEditPostAction } from '../dataviews-actions';
26
- import { usePrevious } from '@wordpress/compose';
27
- import { jsx as _jsx } from "react/jsx-runtime";
28
- import { jsxs as _jsxs } from "react/jsx-runtime";
29
- import { Fragment as _Fragment } from "react/jsx-runtime";
30
- const {
31
- usePostActions
32
- } = unlock(editorPrivateApis);
33
- const {
34
- useLocation,
35
- useHistory
36
- } = unlock(routerPrivateApis);
37
- const EMPTY_ARRAY = [];
38
- const getFormattedDate = dateToDisplay => dateI18n(getSettings().formats.datetimeAbbreviated, getDate(dateToDisplay));
39
- function useView(postType) {
40
- const {
41
- params: {
42
- activeView = 'all',
43
- isCustom = 'false',
44
- layout
45
- }
46
- } = useLocation();
47
- const history = useHistory();
48
- const selectedDefaultView = useMemo(() => {
49
- const defaultView = isCustom === 'false' && DEFAULT_VIEWS[postType].find(({
50
- slug
51
- }) => slug === activeView)?.view;
52
- if (isCustom === 'false' && layout) {
53
- return {
54
- ...defaultView,
55
- type: layout,
56
- layout: {
57
- ...(DEFAULT_CONFIG_PER_VIEW_TYPE[layout] || {})
58
- }
59
- };
60
- }
61
- return defaultView;
62
- }, [isCustom, activeView, layout, postType]);
63
- const [view, setView] = useState(selectedDefaultView);
64
- useEffect(() => {
65
- if (selectedDefaultView) {
66
- setView(selectedDefaultView);
67
- }
68
- }, [selectedDefaultView]);
69
- const editedViewRecord = useSelect(select => {
70
- if (isCustom !== 'true') {
71
- return;
72
- }
73
- const {
74
- getEditedEntityRecord
75
- } = select(coreStore);
76
- const dataviewRecord = getEditedEntityRecord('postType', 'wp_dataviews', Number(activeView));
77
- return dataviewRecord;
78
- }, [activeView, isCustom]);
79
- const {
80
- editEntityRecord
81
- } = useDispatch(coreStore);
82
- const customView = useMemo(() => {
83
- const storedView = editedViewRecord?.content && JSON.parse(editedViewRecord?.content);
84
- if (!storedView) {
85
- return storedView;
86
- }
87
- return {
88
- ...storedView,
89
- layout: {
90
- ...(DEFAULT_CONFIG_PER_VIEW_TYPE[storedView?.type] || {})
91
- }
92
- };
93
- }, [editedViewRecord?.content]);
94
- const setCustomView = useCallback(viewToSet => {
95
- editEntityRecord('postType', 'wp_dataviews', editedViewRecord?.id, {
96
- content: JSON.stringify(viewToSet)
97
- });
98
- }, [editEntityRecord, editedViewRecord?.id]);
99
- const setDefaultViewAndUpdateUrl = useCallback(viewToSet => {
100
- if (viewToSet.type !== view?.type) {
101
- const {
102
- params
103
- } = history.getLocationWithParams();
104
- history.push({
105
- ...params,
106
- layout: viewToSet.type
107
- });
108
- }
109
- setView(viewToSet);
110
- }, [history, view?.type]);
111
- if (isCustom === 'false') {
112
- return [view, setDefaultViewAndUpdateUrl];
113
- } else if (isCustom === 'true' && customView) {
114
- return [customView, setCustomView];
115
- }
116
- // Loading state where no the view was not found on custom views or default views.
117
- return [DEFAULT_VIEWS[postType][0].view, setDefaultViewAndUpdateUrl];
118
- }
119
-
120
- // See https://github.com/WordPress/gutenberg/issues/55886
121
- // We do not support custom statutes at the moment.
122
- const STATUSES = [{
123
- value: 'draft',
124
- label: __('Draft')
125
- }, {
126
- value: 'future',
127
- label: __('Scheduled')
128
- }, {
129
- value: 'pending',
130
- label: __('Pending Review')
131
- }, {
132
- value: 'private',
133
- label: __('Private')
134
- }, {
135
- value: 'publish',
136
- label: __('Published')
137
- }, {
138
- value: 'trash',
139
- label: __('Trash')
140
- }];
141
- const DEFAULT_STATUSES = 'draft,future,pending,private,publish'; // All but 'trash'.
142
-
143
- function FeaturedImage({
144
- item,
145
- viewType
146
- }) {
147
- const isDisabled = item.status === 'trash';
148
- const {
149
- onClick
150
- } = useLink({
151
- postId: item.id,
152
- postType: item.type,
153
- canvas: 'edit'
154
- });
155
- const hasMedia = !!item.featured_media;
156
- const size = viewType === LAYOUT_GRID ? ['large', 'full', 'medium', 'thumbnail'] : ['thumbnail', 'medium', 'large', 'full'];
157
- const media = hasMedia ? /*#__PURE__*/_jsx(Media, {
158
- className: "edit-site-page-pages__featured-image",
159
- id: item.featured_media,
160
- size: size
161
- }) : null;
162
- const renderButton = viewType !== LAYOUT_LIST && !isDisabled;
163
- return /*#__PURE__*/_jsx("div", {
164
- className: `edit-site-page-pages__featured-image-wrapper is-layout-${viewType}`,
165
- children: renderButton ? /*#__PURE__*/_jsx("button", {
166
- className: "page-pages-preview-field__button",
167
- type: "button",
168
- onClick: onClick,
169
- "aria-label": item.title?.rendered || __('(no title)'),
170
- children: media
171
- }) : media
172
- });
173
- }
174
- function getItemId(item) {
175
- return item.id.toString();
176
- }
177
- export default function PagePages() {
178
- var _pages$map, _usePrevious;
179
- const postType = 'page';
180
- const [view, setView] = useView(postType);
181
- const history = useHistory();
182
- const {
183
- params: {
184
- postId
185
- }
186
- } = useLocation();
187
- const [selection, setSelection] = useState([postId]);
188
- const onSelectionChange = useCallback(items => {
189
- var _params$isCustom;
190
- const {
191
- params
192
- } = history.getLocationWithParams();
193
- if (((_params$isCustom = params.isCustom) !== null && _params$isCustom !== void 0 ? _params$isCustom : 'false') === 'false' && view?.type === LAYOUT_LIST) {
194
- history.push({
195
- ...params,
196
- postId: items.length === 1 ? items[0].id : undefined
197
- });
198
- }
199
- }, [history, view?.type]);
200
- const queryArgs = useMemo(() => {
201
- const filters = {};
202
- view.filters.forEach(filter => {
203
- if (filter.field === 'status' && filter.operator === OPERATOR_IS_ANY) {
204
- filters.status = filter.value;
205
- }
206
- if (filter.field === 'author' && filter.operator === OPERATOR_IS_ANY) {
207
- filters.author = filter.value;
208
- } else if (filter.field === 'author' && filter.operator === OPERATOR_IS_NONE) {
209
- filters.author_exclude = filter.value;
210
- }
211
- });
212
- // We want to provide a different default item for the status filter
213
- // than the REST API provides.
214
- if (!filters.status || filters.status === '') {
215
- filters.status = DEFAULT_STATUSES;
216
- }
217
- return {
218
- per_page: view.perPage,
219
- page: view.page,
220
- _embed: 'author',
221
- order: view.sort?.direction,
222
- orderby: view.sort?.field,
223
- search: view.search,
224
- ...filters
225
- };
226
- }, [view]);
227
- const {
228
- records: pages,
229
- isResolving: isLoadingPages,
230
- totalItems,
231
- totalPages
232
- } = useEntityRecords('postType', postType, queryArgs);
233
- const ids = (_pages$map = pages?.map(page => getItemId(page))) !== null && _pages$map !== void 0 ? _pages$map : [];
234
- const prevIds = (_usePrevious = usePrevious(ids)) !== null && _usePrevious !== void 0 ? _usePrevious : [];
235
- const deletedIds = prevIds.filter(id => !ids.includes(id));
236
- const postIdWasDeleted = deletedIds.includes(postId);
237
- useEffect(() => {
238
- if (postIdWasDeleted) {
239
- history.push({
240
- ...history.getLocationWithParams().params,
241
- postId: undefined
242
- });
243
- }
244
- }, [postIdWasDeleted, history]);
245
- const {
246
- records: authors,
247
- isResolving: isLoadingAuthors
248
- } = useEntityRecords('root', 'user', {
249
- per_page: -1
250
- });
251
- const paginationInfo = useMemo(() => ({
252
- totalItems,
253
- totalPages
254
- }), [totalItems, totalPages]);
255
- const {
256
- frontPageId,
257
- postsPageId,
258
- addNewLabel,
259
- canCreatePage
260
- } = useSelect(select => {
261
- const {
262
- getEntityRecord,
263
- getPostType,
264
- canUser
265
- } = select(coreStore);
266
- const siteSettings = getEntityRecord('root', 'site');
267
- return {
268
- frontPageId: siteSettings?.page_on_front,
269
- postsPageId: siteSettings?.page_for_posts,
270
- addNewLabel: getPostType('page')?.labels?.add_new_item,
271
- canCreatePage: canUser('create', 'pages')
272
- };
273
- });
274
- const fields = useMemo(() => [{
275
- id: 'featured-image',
276
- header: __('Featured Image'),
277
- getValue: ({
278
- item
279
- }) => item.featured_media,
280
- render: ({
281
- item
282
- }) => /*#__PURE__*/_jsx(FeaturedImage, {
283
- item: item,
284
- viewType: view.type
285
- }),
286
- enableSorting: false,
287
- width: '1%'
288
- }, {
289
- header: __('Title'),
290
- id: 'title',
291
- getValue: ({
292
- item
293
- }) => item.title?.rendered,
294
- render: ({
295
- item
296
- }) => {
297
- const addLink = [LAYOUT_TABLE, LAYOUT_GRID].includes(view.type) && item.status !== 'trash';
298
- const title = addLink ? /*#__PURE__*/_jsx(Link, {
299
- params: {
300
- postId: item.id,
301
- postType: item.type,
302
- canvas: 'edit'
303
- },
304
- children: decodeEntities(item.title?.rendered) || __('(no title)')
305
- }) : /*#__PURE__*/_jsx("span", {
306
- children: decodeEntities(item.title?.rendered) || __('(no title)')
307
- });
308
- let suffix = '';
309
- if (item.id === frontPageId) {
310
- suffix = /*#__PURE__*/_jsx("span", {
311
- className: "edit-site-page-pages__title-badge",
312
- children: __('Front Page')
313
- });
314
- } else if (item.id === postsPageId) {
315
- suffix = /*#__PURE__*/_jsx("span", {
316
- className: "edit-site-page-pages__title-badge",
317
- children: __('Posts Page')
318
- });
319
- }
320
- return /*#__PURE__*/_jsxs(HStack, {
321
- className: "edit-site-page-pages-title",
322
- alignment: "center",
323
- justify: "flex-start",
324
- children: [title, suffix]
325
- });
326
- },
327
- maxWidth: 300,
328
- enableHiding: false
329
- }, {
330
- header: __('Author'),
331
- id: 'author',
332
- getValue: ({
333
- item
334
- }) => item._embedded?.author[0]?.name,
335
- elements: authors?.map(({
336
- id,
337
- name
338
- }) => ({
339
- value: id,
340
- label: name
341
- })) || []
342
- }, {
343
- header: __('Status'),
344
- id: 'status',
345
- getValue: ({
346
- item
347
- }) => {
348
- var _STATUSES$find$label;
349
- return (_STATUSES$find$label = STATUSES.find(({
350
- value
351
- }) => value === item.status)?.label) !== null && _STATUSES$find$label !== void 0 ? _STATUSES$find$label : item.status;
352
- },
353
- elements: STATUSES,
354
- enableSorting: false,
355
- filterBy: {
356
- operators: [OPERATOR_IS_ANY]
357
- }
358
- }, {
359
- header: __('Date'),
360
- id: 'date',
361
- render: ({
362
- item
363
- }) => {
364
- const isDraftOrPrivate = ['draft', 'private'].includes(item.status);
365
- if (isDraftOrPrivate) {
366
- return createInterpolateElement(sprintf( /* translators: %s: page creation date */
367
- __('<span>Modified: <time>%s</time></span>'), getFormattedDate(item.date)), {
368
- span: /*#__PURE__*/_jsx("span", {}),
369
- time: /*#__PURE__*/_jsx("time", {})
370
- });
371
- }
372
- const isScheduled = item.status === 'future';
373
- if (isScheduled) {
374
- return createInterpolateElement(sprintf( /* translators: %s: page creation date */
375
- __('<span>Scheduled: <time>%s</time></span>'), getFormattedDate(item.date)), {
376
- span: /*#__PURE__*/_jsx("span", {}),
377
- time: /*#__PURE__*/_jsx("time", {})
378
- });
379
- }
380
-
381
- // Pending & Published posts show the modified date if it's newer.
382
- const dateToDisplay = getDate(item.modified) > getDate(item.date) ? item.modified : item.date;
383
- const isPending = item.status === 'pending';
384
- if (isPending) {
385
- return createInterpolateElement(sprintf( /* translators: %s: the newest of created or modified date for the page */
386
- __('<span>Modified: <time>%s</time></span>'), getFormattedDate(dateToDisplay)), {
387
- span: /*#__PURE__*/_jsx("span", {}),
388
- time: /*#__PURE__*/_jsx("time", {})
389
- });
390
- }
391
- const isPublished = item.status === 'publish';
392
- if (isPublished) {
393
- return createInterpolateElement(sprintf( /* translators: %s: the newest of created or modified date for the page */
394
- __('<span>Published: <time>%s</time></span>'), getFormattedDate(dateToDisplay)), {
395
- span: /*#__PURE__*/_jsx("span", {}),
396
- time: /*#__PURE__*/_jsx("time", {})
397
- });
398
- }
399
-
400
- // Unknow status.
401
- return /*#__PURE__*/_jsx("time", {
402
- children: getFormattedDate(item.date)
403
- });
404
- }
405
- }], [authors, view.type, frontPageId, postsPageId]);
406
- const postTypeActions = usePostActions({
407
- postType: 'page',
408
- context: 'list'
409
- });
410
- const editAction = useEditPostAction();
411
- const actions = useMemo(() => [editAction, ...postTypeActions], [postTypeActions, editAction]);
412
- const onChangeView = useCallback(newView => {
413
- if (newView.type !== view.type) {
414
- newView = {
415
- ...newView,
416
- layout: {
417
- ...DEFAULT_CONFIG_PER_VIEW_TYPE[newView.type]
418
- }
419
- };
420
- }
421
- setView(newView);
422
- }, [view.type, setView]);
423
- const [showAddPageModal, setShowAddPageModal] = useState(false);
424
- const openModal = () => setShowAddPageModal(true);
425
- const closeModal = () => setShowAddPageModal(false);
426
- const handleNewPage = ({
427
- type,
428
- id
429
- }) => {
430
- history.push({
431
- postId: id,
432
- postType: type,
433
- canvas: 'edit'
434
- });
435
- closeModal();
436
- };
437
- return /*#__PURE__*/_jsx(Page, {
438
- title: __('Pages'),
439
- actions: addNewLabel && canCreatePage && /*#__PURE__*/_jsxs(_Fragment, {
440
- children: [/*#__PURE__*/_jsx(Button, {
441
- variant: "primary",
442
- onClick: openModal,
443
- __next40pxDefaultSize: true,
444
- children: addNewLabel
445
- }), showAddPageModal && /*#__PURE__*/_jsx(AddNewPageModal, {
446
- onSave: handleNewPage,
447
- onClose: closeModal
448
- })]
449
- }),
450
- children: /*#__PURE__*/_jsx(DataViews, {
451
- paginationInfo: paginationInfo,
452
- fields: fields,
453
- actions: actions,
454
- data: pages || EMPTY_ARRAY,
455
- isLoading: isLoadingPages || isLoadingAuthors,
456
- view: view,
457
- onChangeView: onChangeView,
458
- selection: selection,
459
- setSelection: setSelection,
460
- onSelectionChange: onSelectionChange,
461
- getItemId: getItemId
462
- })
463
- });
464
- }
465
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["Button","__experimentalHStack","HStack","__","sprintf","useEntityRecords","store","coreStore","decodeEntities","createInterpolateElement","useState","useMemo","useCallback","useEffect","dateI18n","getDate","getSettings","privateApis","routerPrivateApis","useSelect","useDispatch","DataViews","editorPrivateApis","Page","default","Link","useLink","DEFAULT_VIEWS","DEFAULT_CONFIG_PER_VIEW_TYPE","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","OPERATOR_IS_ANY","OPERATOR_IS_NONE","AddNewPageModal","Media","unlock","useEditPostAction","usePrevious","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","usePostActions","useLocation","useHistory","EMPTY_ARRAY","getFormattedDate","dateToDisplay","formats","datetimeAbbreviated","useView","postType","params","activeView","isCustom","layout","history","selectedDefaultView","defaultView","find","slug","view","type","setView","editedViewRecord","select","getEditedEntityRecord","dataviewRecord","Number","editEntityRecord","customView","storedView","content","JSON","parse","setCustomView","viewToSet","id","stringify","setDefaultViewAndUpdateUrl","getLocationWithParams","push","STATUSES","value","label","DEFAULT_STATUSES","FeaturedImage","item","viewType","isDisabled","status","onClick","postId","canvas","hasMedia","featured_media","size","media","className","renderButton","children","title","rendered","getItemId","toString","PagePages","_pages$map","_usePrevious","selection","setSelection","onSelectionChange","items","_params$isCustom","length","undefined","queryArgs","filters","forEach","filter","field","operator","author","author_exclude","per_page","perPage","page","_embed","order","sort","direction","orderby","search","records","pages","isResolving","isLoadingPages","totalItems","totalPages","ids","map","prevIds","deletedIds","includes","postIdWasDeleted","authors","isLoadingAuthors","paginationInfo","frontPageId","postsPageId","addNewLabel","canCreatePage","getEntityRecord","getPostType","canUser","siteSettings","page_on_front","page_for_posts","labels","add_new_item","fields","header","getValue","render","enableSorting","width","addLink","suffix","alignment","justify","maxWidth","enableHiding","_embedded","name","elements","_STATUSES$find$label","filterBy","operators","isDraftOrPrivate","date","span","time","isScheduled","modified","isPending","isPublished","postTypeActions","context","editAction","actions","onChangeView","newView","showAddPageModal","setShowAddPageModal","openModal","closeModal","handleNewPage","variant","__next40pxDefaultSize","onSave","onClose","data","isLoading"],"sources":["@wordpress/edit-site/src/components/page-pages/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, __experimentalHStack as HStack } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useEntityRecords, store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport {\n\tcreateInterpolateElement,\n\tuseState,\n\tuseMemo,\n\tuseCallback,\n\tuseEffect,\n} from '@wordpress/element';\nimport { dateI18n, getDate, getSettings } from '@wordpress/date';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { DataViews } from '@wordpress/dataviews';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport { default as Link, useLink } from '../routes/link';\nimport {\n\tDEFAULT_VIEWS,\n\tDEFAULT_CONFIG_PER_VIEW_TYPE,\n} from '../sidebar-dataviews/default-views';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n\tOPERATOR_IS_ANY,\n\tOPERATOR_IS_NONE,\n} from '../../utils/constants';\n\nimport AddNewPageModal from '../add-new-page';\nimport Media from '../media';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\nimport { usePrevious } from '@wordpress/compose';\n\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\nconst EMPTY_ARRAY = [];\n\nconst getFormattedDate = ( dateToDisplay ) =>\n\tdateI18n(\n\t\tgetSettings().formats.datetimeAbbreviated,\n\t\tgetDate( dateToDisplay )\n\t);\n\nfunction useView( postType ) {\n\tconst {\n\t\tparams: { activeView = 'all', isCustom = 'false', layout },\n\t} = useLocation();\n\tconst history = useHistory();\n\tconst selectedDefaultView = useMemo( () => {\n\t\tconst defaultView =\n\t\t\tisCustom === 'false' &&\n\t\t\tDEFAULT_VIEWS[ postType ].find(\n\t\t\t\t( { slug } ) => slug === activeView\n\t\t\t)?.view;\n\t\tif ( isCustom === 'false' && layout ) {\n\t\t\treturn {\n\t\t\t\t...defaultView,\n\t\t\t\ttype: layout,\n\t\t\t\tlayout: {\n\t\t\t\t\t...( DEFAULT_CONFIG_PER_VIEW_TYPE[ layout ] || {} ),\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t\treturn defaultView;\n\t}, [ isCustom, activeView, layout, postType ] );\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\tconst storedView =\n\t\t\teditedViewRecord?.content &&\n\t\t\tJSON.parse( editedViewRecord?.content );\n\t\tif ( ! storedView ) {\n\t\t\treturn storedView;\n\t\t}\n\n\t\treturn {\n\t\t\t...storedView,\n\t\t\tlayout: {\n\t\t\t\t...( DEFAULT_CONFIG_PER_VIEW_TYPE[ storedView?.type ] || {} ),\n\t\t\t},\n\t\t};\n\t}, [ editedViewRecord?.content ] );\n\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\tconst setDefaultViewAndUpdateUrl = useCallback(\n\t\t( viewToSet ) => {\n\t\t\tif ( viewToSet.type !== view?.type ) {\n\t\t\t\tconst { params } = history.getLocationWithParams();\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tlayout: viewToSet.type,\n\t\t\t\t} );\n\t\t\t}\n\t\t\tsetView( viewToSet );\n\t\t},\n\t\t[ history, view?.type ]\n\t);\n\n\tif ( isCustom === 'false' ) {\n\t\treturn [ view, setDefaultViewAndUpdateUrl ];\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[ postType ][ 0 ].view, setDefaultViewAndUpdateUrl ];\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\nfunction FeaturedImage( { item, viewType } ) {\n\tconst isDisabled = item.status === 'trash';\n\tconst { onClick } = useLink( {\n\t\tpostId: item.id,\n\t\tpostType: item.type,\n\t\tcanvas: 'edit',\n\t} );\n\tconst hasMedia = !! item.featured_media;\n\tconst size =\n\t\tviewType === LAYOUT_GRID\n\t\t\t? [ 'large', 'full', 'medium', 'thumbnail' ]\n\t\t\t: [ 'thumbnail', 'medium', 'large', 'full' ];\n\tconst media = hasMedia ? (\n\t\t<Media\n\t\t\tclassName=\"edit-site-page-pages__featured-image\"\n\t\t\tid={ item.featured_media }\n\t\t\tsize={ size }\n\t\t/>\n\t) : null;\n\tconst renderButton = viewType !== LAYOUT_LIST && ! isDisabled;\n\treturn (\n\t\t<div\n\t\t\tclassName={ `edit-site-page-pages__featured-image-wrapper is-layout-${ viewType }` }\n\t\t>\n\t\t\t{ renderButton ? (\n\t\t\t\t<button\n\t\t\t\t\tclassName=\"page-pages-preview-field__button\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\taria-label={ item.title?.rendered || __( '(no title)' ) }\n\t\t\t\t>\n\t\t\t\t\t{ media }\n\t\t\t\t</button>\n\t\t\t) : (\n\t\t\t\tmedia\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction getItemId( item ) {\n\treturn item.id.toString();\n}\n\nexport default function PagePages() {\n\tconst postType = 'page';\n\tconst [ view, setView ] = useView( postType );\n\tconst history = useHistory();\n\tconst {\n\t\tparams: { postId },\n\t} = useLocation();\n\tconst [ selection, setSelection ] = useState( [ postId ] );\n\n\tconst onSelectionChange = useCallback(\n\t\t( items ) => {\n\t\t\tconst { params } = history.getLocationWithParams();\n\t\t\tif (\n\t\t\t\t( params.isCustom ?? 'false' ) === 'false' &&\n\t\t\t\tview?.type === LAYOUT_LIST\n\t\t\t) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ].id : undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history, view?.type ]\n\t);\n\n\tconst queryArgs = useMemo( () => {\n\t\tconst filters = {};\n\t\tview.filters.forEach( ( filter ) => {\n\t\t\tif (\n\t\t\t\tfilter.field === 'status' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_ANY\n\t\t\t) {\n\t\t\t\tfilters.status = filter.value;\n\t\t\t}\n\t\t\tif (\n\t\t\t\tfilter.field === 'author' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_ANY\n\t\t\t) {\n\t\t\t\tfilters.author = filter.value;\n\t\t\t} else if (\n\t\t\t\tfilter.field === 'author' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_NONE\n\t\t\t) {\n\t\t\t\tfilters.author_exclude = 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 ids = pages?.map( ( page ) => getItemId( page ) ) ?? [];\n\tconst prevIds = usePrevious( ids ) ?? [];\n\tconst deletedIds = prevIds.filter( ( id ) => ! ids.includes( id ) );\n\tconst postIdWasDeleted = deletedIds.includes( postId );\n\n\tuseEffect( () => {\n\t\tif ( postIdWasDeleted ) {\n\t\t\thistory.push( {\n\t\t\t\t...history.getLocationWithParams().params,\n\t\t\t\tpostId: undefined,\n\t\t\t} );\n\t\t}\n\t}, [ postIdWasDeleted, history ] );\n\n\tconst { records: authors, isResolving: isLoadingAuthors } =\n\t\tuseEntityRecords( 'root', 'user', { per_page: -1 } );\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 { frontPageId, postsPageId, addNewLabel, canCreatePage } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord, getPostType, canUser } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst siteSettings = getEntityRecord( 'root', 'site' );\n\t\t\treturn {\n\t\t\t\tfrontPageId: siteSettings?.page_on_front,\n\t\t\t\tpostsPageId: siteSettings?.page_for_posts,\n\t\t\t\taddNewLabel: getPostType( 'page' )?.labels?.add_new_item,\n\t\t\t\tcanCreatePage: canUser( 'create', 'pages' ),\n\t\t\t};\n\t\t}\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 } ) => (\n\t\t\t\t\t<FeaturedImage item={ item } viewType={ view.type } />\n\t\t\t\t),\n\t\t\t\tenableSorting: false,\n\t\t\t\twidth: '1%',\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,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst addLink =\n\t\t\t\t\t\t[ LAYOUT_TABLE, LAYOUT_GRID ].includes( view.type ) &&\n\t\t\t\t\t\titem.status !== 'trash';\n\t\t\t\t\tconst title = addLink ? (\n\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\tpostId: item.id,\n\t\t\t\t\t\t\t\tpostType: item.type,\n\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities( item.title?.rendered ) ||\n\t\t\t\t\t\t\t\t__( '(no title)' ) }\n\t\t\t\t\t\t</Link>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t{ decodeEntities( item.title?.rendered ) ||\n\t\t\t\t\t\t\t\t__( '(no title)' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t);\n\n\t\t\t\t\tlet suffix = '';\n\t\t\t\t\tif ( item.id === frontPageId ) {\n\t\t\t\t\t\tsuffix = (\n\t\t\t\t\t\t\t<span className=\"edit-site-page-pages__title-badge\">\n\t\t\t\t\t\t\t\t{ __( 'Front Page' ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( item.id === postsPageId ) {\n\t\t\t\t\t\tsuffix = (\n\t\t\t\t\t\t\t<span className=\"edit-site-page-pages__title-badge\">\n\t\t\t\t\t\t\t\t{ __( 'Posts Page' ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<HStack\n\t\t\t\t\t\t\tclassName=\"edit-site-page-pages-title\"\n\t\t\t\t\t\t\talignment=\"center\"\n\t\t\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t\t{ suffix }\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tmaxWidth: 300,\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\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\telements: STATUSES,\n\t\t\t\tenableSorting: false,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [ OPERATOR_IS_ANY ],\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Date' ),\n\t\t\t\tid: 'date',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst isDraftOrPrivate = [ 'draft', 'private' ].includes(\n\t\t\t\t\t\titem.status\n\t\t\t\t\t);\n\t\t\t\t\tif ( isDraftOrPrivate ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: page creation date */\n\t\t\t\t\t\t\t\t__( '<span>Modified: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( item.date )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst isScheduled = item.status === 'future';\n\t\t\t\t\tif ( isScheduled ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: page creation date */\n\t\t\t\t\t\t\t\t__( '<span>Scheduled: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( item.date )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Pending & Published posts show the modified date if it's newer.\n\t\t\t\t\tconst dateToDisplay =\n\t\t\t\t\t\tgetDate( item.modified ) > getDate( item.date )\n\t\t\t\t\t\t\t? item.modified\n\t\t\t\t\t\t\t: item.date;\n\n\t\t\t\t\tconst isPending = item.status === 'pending';\n\t\t\t\t\tif ( isPending ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: the newest of created or modified date for the page */\n\t\t\t\t\t\t\t\t__( '<span>Modified: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( dateToDisplay )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst isPublished = item.status === 'publish';\n\t\t\t\t\tif ( isPublished ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: the newest of created or modified date for the page */\n\t\t\t\t\t\t\t\t__( '<span>Published: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( dateToDisplay )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Unknow status.\n\t\t\t\t\treturn <time>{ getFormattedDate( item.date ) }</time>;\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t\t[ authors, view.type, frontPageId, postsPageId ]\n\t);\n\n\tconst postTypeActions = usePostActions( {\n\t\tpostType: 'page',\n\t\tcontext: 'list',\n\t} );\n\tconst editAction = useEditPostAction();\n\tconst actions = useMemo(\n\t\t() => [ editAction, ...postTypeActions ],\n\t\t[ postTypeActions, editAction ]\n\t);\n\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...DEFAULT_CONFIG_PER_VIEW_TYPE[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView ]\n\t);\n\n\tconst [ showAddPageModal, setShowAddPageModal ] = useState( false );\n\n\tconst openModal = () => setShowAddPageModal( true );\n\tconst closeModal = () => setShowAddPageModal( false );\n\tconst handleNewPage = ( { type, id } ) => {\n\t\thistory.push( {\n\t\t\tpostId: id,\n\t\t\tpostType: type,\n\t\t\tcanvas: 'edit',\n\t\t} );\n\t\tcloseModal();\n\t};\n\n\treturn (\n\t\t<Page\n\t\t\ttitle={ __( 'Pages' ) }\n\t\t\tactions={\n\t\t\t\taddNewLabel &&\n\t\t\t\tcanCreatePage && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tonClick={ openModal }\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ addNewLabel }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t{ showAddPageModal && (\n\t\t\t\t\t\t\t<AddNewPageModal\n\t\t\t\t\t\t\t\tonSave={ handleNewPage }\n\t\t\t\t\t\t\t\tonClose={ closeModal }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t)\n\t\t\t}\n\t\t>\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 || isLoadingAuthors }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\tselection={ selection }\n\t\t\t\tsetSelection={ setSelection }\n\t\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\t\tgetItemId={ getItemId }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,30 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { jsxs as _jsxs } from "react/jsx-runtime";
3
- export default function Table({
4
- data,
5
- columns
6
- }) {
7
- return /*#__PURE__*/_jsx("div", {
8
- className: "edit-site-table-wrapper",
9
- children: /*#__PURE__*/_jsxs("table", {
10
- className: "edit-site-table",
11
- children: [/*#__PURE__*/_jsx("thead", {
12
- children: /*#__PURE__*/_jsx("tr", {
13
- children: columns.map(column => /*#__PURE__*/_jsx("th", {
14
- children: column.header
15
- }, column.header))
16
- })
17
- }), /*#__PURE__*/_jsx("tbody", {
18
- children: data.map((row, rowIndex) => /*#__PURE__*/_jsx("tr", {
19
- children: columns.map((column, columnIndex) => /*#__PURE__*/_jsx("td", {
20
- style: {
21
- maxWidth: column.maxWidth ? column.maxWidth : undefined
22
- },
23
- children: column.cell(row)
24
- }, columnIndex))
25
- }, rowIndex))
26
- })]
27
- })
28
- });
29
- }
30
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["Table","data","columns","_jsx","className","children","_jsxs","map","column","header","row","rowIndex","columnIndex","style","maxWidth","undefined","cell"],"sources":["@wordpress/edit-site/src/components/table/index.js"],"sourcesContent":["export default function Table( { data, columns } ) {\n\treturn (\n\t\t<div className=\"edit-site-table-wrapper\">\n\t\t\t<table className=\"edit-site-table\">\n\t\t\t\t<thead>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t{ columns.map( ( column ) => (\n\t\t\t\t\t\t\t<th key={ column.header }>{ column.header }</th>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t\t<tbody>\n\t\t\t\t\t{ data.map( ( row, rowIndex ) => (\n\t\t\t\t\t\t<tr key={ rowIndex }>\n\t\t\t\t\t\t\t{ columns.map( ( column, columnIndex ) => (\n\t\t\t\t\t\t\t\t<td\n\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\tmaxWidth: column.maxWidth\n\t\t\t\t\t\t\t\t\t\t\t? column.maxWidth\n\t\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tkey={ columnIndex }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ column.cell( row ) }\n\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t) ) }\n\t\t\t\t</tbody>\n\t\t\t</table>\n\t\t</div>\n\t);\n}\n"],"mappings":";;AAAA,eAAe,SAASA,KAAKA,CAAE;EAAEC,IAAI;EAAEC;AAAQ,CAAC,EAAG;EAClD,oBACCC,IAAA;IAAKC,SAAS,EAAC,yBAAyB;IAAAC,QAAA,eACvCC,KAAA;MAAOF,SAAS,EAAC,iBAAiB;MAAAC,QAAA,gBACjCF,IAAA;QAAAE,QAAA,eACCF,IAAA;UAAAE,QAAA,EACGH,OAAO,CAACK,GAAG,CAAIC,MAAM,iBACtBL,IAAA;YAAAE,QAAA,EAA4BG,MAAM,CAACC;UAAM,GAA/BD,MAAM,CAACC,MAA8B,CAC9C;QAAC,CACA;MAAC,CACC,CAAC,eACRN,IAAA;QAAAE,QAAA,EACGJ,IAAI,CAACM,GAAG,CAAE,CAAEG,GAAG,EAAEC,QAAQ,kBAC1BR,IAAA;UAAAE,QAAA,EACGH,OAAO,CAACK,GAAG,CAAE,CAAEC,MAAM,EAAEI,WAAW,kBACnCT,IAAA;YACCU,KAAK,EAAG;cACPC,QAAQ,EAAEN,MAAM,CAACM,QAAQ,GACtBN,MAAM,CAACM,QAAQ,GACfC;YACJ,CAAG;YAAAV,QAAA,EAGDG,MAAM,CAACQ,IAAI,CAAEN,GAAI;UAAC,GAFdE,WAGH,CACH;QAAC,GAZMD,QAaN,CACH;MAAC,CACG,CAAC;IAAA,CACF;EAAC,CACJ,CAAC;AAER","ignoreList":[]}
@@ -1,29 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { __ } from '@wordpress/i18n';
5
- import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
6
-
7
- /**
8
- * Internal dependencies
9
- */
10
- import BackgroundPanel from './background-panel';
11
- import ScreenHeader from './header';
12
- import { unlock } from '../../lock-unlock';
13
-
14
- const { useHasBackgroundPanel, useGlobalSetting } = unlock(
15
- blockEditorPrivateApis
16
- );
17
-
18
- function ScreenBackground() {
19
- const [ settings ] = useGlobalSetting( '' );
20
- const hasBackgroundPanel = useHasBackgroundPanel( settings );
21
- return (
22
- <>
23
- <ScreenHeader title={ __( 'Background image' ) } />
24
- { hasBackgroundPanel && <BackgroundPanel /> }
25
- </>
26
- );
27
- }
28
-
29
- export default ScreenBackground;