@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 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_i18n","_element","_coreData","_htmlEntities","_blocks","_blockEditor","_dataviews","_router","_editor","_async","_page","_link","_interopRequireWildcard","_addNewTemplate","_hooks","_constants","_usePatternSettings","_lockUnlock","_dataviewsActions","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","usePostActions","unlock","editorPrivateApis","ExperimentalBlockEditorProvider","useGlobalStyle","blockEditorPrivateApis","useHistory","useLocation","routerPrivateApis","EMPTY_ARRAY","defaultConfigPerViewType","LAYOUT_TABLE","primaryField","LAYOUT_GRID","mediaField","columnFields","LAYOUT_LIST","DEFAULT_VIEW","type","search","page","perPage","sort","field","direction","hiddenFields","layout","filters","Title","item","viewType","decodeEntities","title","rendered","__","linkProps","params","postId","id","postType","canvas","jsx","children","AuthorField","isImageLoaded","setIsImageLoaded","useState","text","icon","imageUrl","useAddedBy","withIcon","jsxs","__experimentalHStack","alignment","spacing","className","clsx","onLoad","alt","src","Icon","Preview","settings","usePatternSettings","backgroundColor","blocks","useMemo","parse","content","raw","onClick","useLink","isEmpty","length","style","Async","BlockPreview","PageTemplates","activeView","selection","setSelection","defaultView","usedType","operator","value","view","setView","useEffect","currentView","OPERATOR_IS_ANY","records","isResolving","isLoadingData","useEntityRecords","TEMPLATE_POST_TYPE","per_page","history","onSelectionChange","useCallback","items","push","undefined","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","author","label","fields","header","render","minWidth","maxWidth","enableSorting","getValue","enableHiding","enableGlobalSearch","description","Fragment","__experimentalText","variant","VisuallyHidden","elements","width","data","paginationInfo","filterSortAndPaginate","postTypeActions","context","editAction","useEditPostAction","actions","onChangeView","newView","DataViews","isLoading"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tIcon,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { parse } from '@wordpress/blocks';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { Async } from '../async';\nimport Page from '../page';\nimport { default as Link, useLink } from '../routes/link';\nimport AddNewTemplate from '../add-new-template';\nimport { useAddedBy } from './hooks';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tOPERATOR_IS_ANY,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\n\nimport usePatternSettings from '../page-patterns/use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\n\nconst { usePostActions } = unlock( editorPrivateApis );\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t\tcolumnFields: [ 'description' ],\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tprimaryField: 'title',\n\t\tmediaField: 'preview',\n\t},\n};\n\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\tsort: {\n\t\tfield: 'title',\n\t\tdirection: 'asc',\n\t},\n\t// All fields are visible by default, so it's\n\t// better to keep track of the hidden ones.\n\thiddenFields: [ 'preview' ],\n\tlayout: defaultConfigPerViewType[ LAYOUT_GRID ],\n\tfilters: [],\n};\n\nfunction Title( { item, viewType } ) {\n\tif ( viewType === LAYOUT_LIST ) {\n\t\treturn decodeEntities( item.title?.rendered ) || __( '(no title)' );\n\t}\n\tconst linkProps = {\n\t\tparams: {\n\t\t\tpostId: item.id,\n\t\t\tpostType: item.type,\n\t\t\tcanvas: 'edit',\n\t\t},\n\t};\n\treturn (\n\t\t<Link { ...linkProps }>\n\t\t\t{ decodeEntities( item.title?.rendered ) || __( '(no title)' ) }\n\t\t</Link>\n\t);\n}\n\nfunction AuthorField( { item, viewType } ) {\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\tconst withIcon = viewType !== LAYOUT_LIST;\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 1 }>\n\t\t\t{ withIcon && imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx( 'page-templates-author-field__avatar', {\n\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ withIcon && ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Preview( { item, viewType } ) {\n\tconst settings = usePatternSettings();\n\tconst [ backgroundColor = 'white' ] = useGlobalStyle( 'color.background' );\n\tconst blocks = useMemo( () => {\n\t\treturn parse( item.content.raw );\n\t}, [ item.content.raw ] );\n\tconst { onClick } = useLink( {\n\t\tpostId: item.id,\n\t\tpostType: item.type,\n\t\tcanvas: 'edit',\n\t} );\n\n\tconst isEmpty = ! blocks?.length;\n\t// Wrap everything in a block editor provider to ensure 'styles' that are needed\n\t// for the previews are synced between the site editor store and the block editor store.\n\t// Additionally we need to have the `__experimentalBlockPatterns` setting in order to\n\t// render patterns inside the previews.\n\t// TODO: Same approach is used in the patterns list and it becomes obvious that some of\n\t// the block editor settings are needed in context where we don't have the block editor.\n\t// Explore how we can solve this in a better way.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<div\n\t\t\t\tclassName={ `page-templates-preview-field is-viewtype-${ viewType }` }\n\t\t\t\tstyle={ { backgroundColor } }\n\t\t\t>\n\t\t\t\t{ viewType === LAYOUT_LIST && ! isEmpty && (\n\t\t\t\t\t<Async>\n\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t</Async>\n\t\t\t\t) }\n\t\t\t\t{ viewType !== LAYOUT_LIST && (\n\t\t\t\t\t<button\n\t\t\t\t\t\tclassName=\"page-templates-preview-field__button\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\taria-label={ item.title?.rendered || item.title }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isEmpty && __( 'Empty template' ) }\n\t\t\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t\t\t<Async>\n\t\t\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t\t\t</Async>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</button>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n\nexport default function PageTemplates() {\n\tconst { params } = useLocation();\n\tconst { activeView = 'all', layout, postId } = params;\n\tconst [ selection, setSelection ] = useState( [ postId ] );\n\n\tconst defaultView = useMemo( () => {\n\t\tconst usedType = layout ?? DEFAULT_VIEW.type;\n\t\treturn {\n\t\t\t...DEFAULT_VIEW,\n\t\t\ttype: usedType,\n\t\t\tlayout: defaultConfigPerViewType[ usedType ],\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: 'isAny',\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: OPERATOR_IS_ANY,\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t} ) );\n\t}, [ activeView ] );\n\n\tconst { records, isResolving: isLoadingData } = useEntityRecords(\n\t\t'postType',\n\t\tTEMPLATE_POST_TYPE,\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\tconst history = useHistory();\n\tconst onSelectionChange = useCallback(\n\t\t( items ) => {\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\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, params, view?.type ]\n\t);\n\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <Preview item={ item } viewType={ view.type } />;\n\t\t\t\t},\n\t\t\t\tminWidth: 120,\n\t\t\t\tmaxWidth: 120,\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Template' ),\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\t<Title item={ item } viewType={ view.type } />\n\t\t\t\t),\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tenableHiding: false,\n\t\t\t\tenableGlobalSearch: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Description' ),\n\t\t\t\tid: 'description',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn item.description ? (\n\t\t\t\t\t\t<span className=\"page-templates-description\">\n\t\t\t\t\t\t\t{ decodeEntities( item.description ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tview.type === LAYOUT_TABLE && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Text variant=\"muted\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t&#8212;\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t<VisuallyHidden>\n\t\t\t\t\t\t\t\t\t{ __( 'No description.' ) }\n\t\t\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tminWidth: 320,\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableGlobalSearch: true,\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.author_text,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <AuthorField viewType={ view.type } item={ item } />;\n\t\t\t\t},\n\t\t\t\telements: authors,\n\t\t\t\twidth: '1%',\n\t\t\t},\n\t\t],\n\t\t[ authors, view.type ]\n\t);\n\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\treturn filterSortAndPaginate( records, view, fields );\n\t}, [ records, view, fields ] );\n\n\tconst postTypeActions = usePostActions( {\n\t\tpostType: TEMPLATE_POST_TYPE,\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...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView, history, params ]\n\t);\n\n\treturn (\n\t\t<Page\n\t\t\tclassName=\"edit-site-page-templates\"\n\t\t\ttitle={ __( 'Templates' ) }\n\t\t\tactions={ <AddNewTemplate /> }\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={ data }\n\t\t\t\tisLoading={ isLoadingData }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\t\tselection={ selection }\n\t\t\t\tsetSelection={ setSelection }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,WAAA,GAAAD,OAAA;AAMA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,aAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AAIA,IAAAQ,UAAA,GAAAR,OAAA;AACA,IAAAS,OAAA,GAAAT,OAAA;AACA,IAAAU,OAAA,GAAAV,OAAA;AAKA,IAAAW,MAAA,GAAAX,OAAA;AACA,IAAAY,KAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,KAAA,GAAAC,uBAAA,CAAAd,OAAA;AACA,IAAAe,eAAA,GAAAhB,sBAAA,CAAAC,OAAA;AACA,IAAAgB,MAAA,GAAAhB,OAAA;AACA,IAAAiB,UAAA,GAAAjB,OAAA;AAQA,IAAAkB,mBAAA,GAAAnB,sBAAA,CAAAC,OAAA;AACA,IAAAmB,WAAA,GAAAnB,OAAA;AACA,IAAAoB,iBAAA,GAAApB,OAAA;AAAyD,IAAAqB,WAAA,GAAArB,OAAA;AAAA,SAAAsB,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAT,wBAAAS,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AA7CzD;AACA;AACA;;AAGA;AACA;AACA;;AAoBA;AACA;AACA;;AAkBA,MAAM;EAAEW;AAAe,CAAC,GAAG,IAAAC,kBAAM,EAAEC,mBAAkB,CAAC;AAEtD,MAAM;EAAEC,+BAA+B;EAAEC;AAAe,CAAC,GAAG,IAAAH,kBAAM,EACjEI,wBACD,CAAC;AACD,MAAM;EAAEC,UAAU;EAAEC;AAAY,CAAC,GAAG,IAAAN,kBAAM,EAAEO,mBAAkB,CAAC;AAE/D,MAAMC,WAAW,GAAG,EAAE;AAEtB,MAAMC,wBAAwB,GAAG;EAChC,CAAEC,uBAAY,GAAI;IACjBC,YAAY,EAAE;EACf,CAAC;EACD,CAAEC,sBAAW,GAAI;IAChBC,UAAU,EAAE,SAAS;IACrBF,YAAY,EAAE,OAAO;IACrBG,YAAY,EAAE,CAAE,aAAa;EAC9B,CAAC;EACD,CAAEC,sBAAW,GAAI;IAChBJ,YAAY,EAAE,OAAO;IACrBE,UAAU,EAAE;EACb;AACD,CAAC;AAED,MAAMG,YAAY,GAAG;EACpBC,IAAI,EAAEL,sBAAW;EACjBM,MAAM,EAAE,EAAE;EACVC,IAAI,EAAE,CAAC;EACPC,OAAO,EAAE,EAAE;EACXC,IAAI,EAAE;IACLC,KAAK,EAAE,OAAO;IACdC,SAAS,EAAE;EACZ,CAAC;EACD;EACA;EACAC,YAAY,EAAE,CAAE,SAAS,CAAE;EAC3BC,MAAM,EAAEhB,wBAAwB,CAAEG,sBAAW,CAAE;EAC/Cc,OAAO,EAAE;AACV,CAAC;AAED,SAASC,KAAKA,CAAE;EAAEC,IAAI;EAAEC;AAAS,CAAC,EAAG;EACpC,IAAKA,QAAQ,KAAKd,sBAAW,EAAG;IAC/B,OAAO,IAAAe,4BAAc,EAAEF,IAAI,CAACG,KAAK,EAAEC,QAAS,CAAC,IAAI,IAAAC,QAAE,EAAE,YAAa,CAAC;EACpE;EACA,MAAMC,SAAS,GAAG;IACjBC,MAAM,EAAE;MACPC,MAAM,EAAER,IAAI,CAACS,EAAE;MACfC,QAAQ,EAAEV,IAAI,CAACX,IAAI;MACnBsB,MAAM,EAAE;IACT;EACD,CAAC;EACD,oBACC,IAAA7D,WAAA,CAAA8D,GAAA,EAACtE,KAAA,CAAAe,OAAI;IAAA,GAAMiD,SAAS;IAAAO,QAAA,EACjB,IAAAX,4BAAc,EAAEF,IAAI,CAACG,KAAK,EAAEC,QAAS,CAAC,IAAI,IAAAC,QAAE,EAAE,YAAa;EAAC,CACzD,CAAC;AAET;AAEA,SAASS,WAAWA,CAAE;EAAEd,IAAI;EAAEC;AAAS,CAAC,EAAG;EAC1C,MAAM,CAAEc,aAAa,EAAEC,gBAAgB,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EAC7D,MAAM;IAAEC,IAAI;IAAEC,IAAI;IAAEC;EAAS,CAAC,GAAG,IAAAC,iBAAU,EAAErB,IAAI,CAACX,IAAI,EAAEW,IAAI,CAACS,EAAG,CAAC;EACjE,MAAMa,QAAQ,GAAGrB,QAAQ,KAAKd,sBAAW;EAEzC,oBACC,IAAArC,WAAA,CAAAyE,IAAA,EAAC7F,WAAA,CAAA8F,oBAAM;IAACC,SAAS,EAAC,MAAM;IAACC,OAAO,EAAG,CAAG;IAAAb,QAAA,GACnCS,QAAQ,IAAIF,QAAQ,iBACrB,IAAAtE,WAAA,CAAA8D,GAAA;MACCe,SAAS,EAAG,IAAAC,aAAI,EAAE,qCAAqC,EAAE;QACxD,WAAW,EAAEb;MACd,CAAE,CAAG;MAAAF,QAAA,eAEL,IAAA/D,WAAA,CAAA8D,GAAA;QACCiB,MAAM,EAAGA,CAAA,KAAMb,gBAAgB,CAAE,IAAK,CAAG;QACzCc,GAAG,EAAC,EAAE;QACNC,GAAG,EAAGX;MAAU,CAChB;IAAC,CACE,CACL,EACCE,QAAQ,IAAI,CAAEF,QAAQ,iBACvB,IAAAtE,WAAA,CAAA8D,GAAA;MAAKe,SAAS,EAAC,mCAAmC;MAAAd,QAAA,eACjD,IAAA/D,WAAA,CAAA8D,GAAA,EAAClF,WAAA,CAAAsG,IAAI;QAACb,IAAI,EAAGA;MAAM,CAAE;IAAC,CAClB,CACL,eACD,IAAArE,WAAA,CAAA8D,GAAA;MAAMe,SAAS,EAAC,mCAAmC;MAAAd,QAAA,EAAGK;IAAI,CAAQ,CAAC;EAAA,CAC5D,CAAC;AAEX;AAEA,SAASe,OAAOA,CAAE;EAAEjC,IAAI;EAAEC;AAAS,CAAC,EAAG;EACtC,MAAMiC,QAAQ,GAAG,IAAAC,2BAAkB,EAAC,CAAC;EACrC,MAAM,CAAEC,eAAe,GAAG,OAAO,CAAE,GAAG7D,cAAc,CAAE,kBAAmB,CAAC;EAC1E,MAAM8D,MAAM,GAAG,IAAAC,gBAAO,EAAE,MAAM;IAC7B,OAAO,IAAAC,aAAK,EAAEvC,IAAI,CAACwC,OAAO,CAACC,GAAI,CAAC;EACjC,CAAC,EAAE,CAAEzC,IAAI,CAACwC,OAAO,CAACC,GAAG,CAAG,CAAC;EACzB,MAAM;IAAEC;EAAQ,CAAC,GAAG,IAAAC,aAAO,EAAE;IAC5BnC,MAAM,EAAER,IAAI,CAACS,EAAE;IACfC,QAAQ,EAAEV,IAAI,CAACX,IAAI;IACnBsB,MAAM,EAAE;EACT,CAAE,CAAC;EAEH,MAAMiC,OAAO,GAAG,CAAEP,MAAM,EAAEQ,MAAM;EAChC;EACA;EACA;EACA;EACA;EACA;EACA;EACA,oBACC,IAAA/F,WAAA,CAAA8D,GAAA,EAACtC,+BAA+B;IAAC4D,QAAQ,EAAGA,QAAU;IAAArB,QAAA,eACrD,IAAA/D,WAAA,CAAAyE,IAAA;MACCI,SAAS,EAAI,4CAA4C1B,QAAU,EAAG;MACtE6C,KAAK,EAAG;QAAEV;MAAgB,CAAG;MAAAvB,QAAA,GAE3BZ,QAAQ,KAAKd,sBAAW,IAAI,CAAEyD,OAAO,iBACtC,IAAA9F,WAAA,CAAA8D,GAAA,EAACxE,MAAA,CAAA2G,KAAK;QAAAlC,QAAA,eACL,IAAA/D,WAAA,CAAA8D,GAAA,EAAC5E,YAAA,CAAAgH,YAAY;UAACX,MAAM,EAAGA;QAAQ,CAAE;MAAC,CAC5B,CACP,EACCpC,QAAQ,KAAKd,sBAAW,iBACzB,IAAArC,WAAA,CAAAyE,IAAA;QACCI,SAAS,EAAC,sCAAsC;QAChDtC,IAAI,EAAC,QAAQ;QACbqD,OAAO,EAAGA,OAAS;QACnB,cAAa1C,IAAI,CAACG,KAAK,EAAEC,QAAQ,IAAIJ,IAAI,CAACG,KAAO;QAAAU,QAAA,GAE/C+B,OAAO,IAAI,IAAAvC,QAAE,EAAE,gBAAiB,CAAC,EACjC,CAAEuC,OAAO,iBACV,IAAA9F,WAAA,CAAA8D,GAAA,EAACxE,MAAA,CAAA2G,KAAK;UAAAlC,QAAA,eACL,IAAA/D,WAAA,CAAA8D,GAAA,EAAC5E,YAAA,CAAAgH,YAAY;YAACX,MAAM,EAAGA;UAAQ,CAAE;QAAC,CAC5B,CACP;MAAA,CACM,CACR;IAAA,CACG;EAAC,CAC0B,CAAC;AAEpC;AAEe,SAASY,aAAaA,CAAA,EAAG;EACvC,MAAM;IAAE1C;EAAO,CAAC,GAAG7B,WAAW,CAAC,CAAC;EAChC,MAAM;IAAEwE,UAAU,GAAG,KAAK;IAAErD,MAAM;IAAEW;EAAO,CAAC,GAAGD,MAAM;EACrD,MAAM,CAAE4C,SAAS,EAAEC,YAAY,CAAE,GAAG,IAAAnC,iBAAQ,EAAE,CAAET,MAAM,CAAG,CAAC;EAE1D,MAAM6C,WAAW,GAAG,IAAAf,gBAAO,EAAE,MAAM;IAClC,MAAMgB,QAAQ,GAAGzD,MAAM,aAANA,MAAM,cAANA,MAAM,GAAIT,YAAY,CAACC,IAAI;IAC5C,OAAO;MACN,GAAGD,YAAY;MACfC,IAAI,EAAEiE,QAAQ;MACdzD,MAAM,EAAEhB,wBAAwB,CAAEyE,QAAQ,CAAE;MAC5CxD,OAAO,EACNoD,UAAU,KAAK,KAAK,GACjB,CACA;QACCxD,KAAK,EAAE,QAAQ;QACf6D,QAAQ,EAAE,OAAO;QACjBC,KAAK,EAAE,CAAEN,UAAU;MACpB,CAAC,CACA,GACD;IACL,CAAC;EACF,CAAC,EAAE,CAAErD,MAAM,EAAEqD,UAAU,CAAG,CAAC;EAC3B,MAAM,CAAEO,IAAI,EAAEC,OAAO,CAAE,GAAG,IAAAzC,iBAAQ,EAAEoC,WAAY,CAAC;EACjD,IAAAM,kBAAS,EAAE,MAAM;IAChBD,OAAO,CAAIE,WAAW,KAAQ;MAC7B,GAAGA,WAAW;MACd9D,OAAO,EACNoD,UAAU,KAAK,KAAK,GACjB,CACA;QACCxD,KAAK,EAAE,QAAQ;QACf6D,QAAQ,EAAEM,0BAAe;QACzBL,KAAK,EAAE,CAAEN,UAAU;MACpB,CAAC,CACA,GACD;IACL,CAAC,CAAG,CAAC;EACN,CAAC,EAAE,CAAEA,UAAU,CAAG,CAAC;EAEnB,MAAM;IAAEY,OAAO;IAAEC,WAAW,EAAEC;EAAc,CAAC,GAAG,IAAAC,0BAAgB,EAC/D,UAAU,EACVC,6BAAkB,EAClB;IACCC,QAAQ,EAAE,CAAC;EACZ,CACD,CAAC;EACD,MAAMC,OAAO,GAAG3F,UAAU,CAAC,CAAC;EAC5B,MAAM4F,iBAAiB,GAAG,IAAAC,oBAAW,EAClCC,KAAK,IAAM;IACZ,IAAKd,IAAI,EAAEpE,IAAI,KAAKF,sBAAW,EAAG;MACjCiF,OAAO,CAACI,IAAI,CAAE;QACb,GAAGjE,MAAM;QACTC,MAAM,EAAE+D,KAAK,CAAC1B,MAAM,KAAK,CAAC,GAAG0B,KAAK,CAAE,CAAC,CAAE,CAAC9D,EAAE,GAAGgE;MAC9C,CAAE,CAAC;IACJ;EACD,CAAC,EACD,CAAEL,OAAO,EAAE7D,MAAM,EAAEkD,IAAI,EAAEpE,IAAI,CAC9B,CAAC;EAED,MAAMqF,OAAO,GAAG,IAAApC,gBAAO,EAAE,MAAM;IAC9B,IAAK,CAAEwB,OAAO,EAAG;MAChB,OAAOlF,WAAW;IACnB;IACA,MAAM+F,UAAU,GAAG,IAAIC,GAAG,CAAC,CAAC;IAC5Bd,OAAO,CAACe,OAAO,CAAIC,QAAQ,IAAM;MAChCH,UAAU,CAACI,GAAG,CAAED,QAAQ,CAACE,WAAY,CAAC;IACvC,CAAE,CAAC;IACH,OAAOC,KAAK,CAACC,IAAI,CAAEP,UAAW,CAAC,CAACQ,GAAG,CAAIC,MAAM,KAAQ;MACpD5B,KAAK,EAAE4B,MAAM;MACbC,KAAK,EAAED;IACR,CAAC,CAAG,CAAC;EACN,CAAC,EAAE,CAAEtB,OAAO,CAAG,CAAC;EAEhB,MAAMwB,MAAM,GAAG,IAAAhD,gBAAO,EACrB,MAAM,CACL;IACCiD,MAAM,EAAE,IAAAlF,QAAE,EAAE,SAAU,CAAC;IACvBI,EAAE,EAAE,SAAS;IACb+E,MAAM,EAAEA,CAAE;MAAExF;IAAK,CAAC,KAAM;MACvB,oBAAO,IAAAlD,WAAA,CAAA8D,GAAA,EAACqB,OAAO;QAACjC,IAAI,EAAGA,IAAM;QAACC,QAAQ,EAAGwD,IAAI,CAACpE;MAAM,CAAE,CAAC;IACxD,CAAC;IACDoG,QAAQ,EAAE,GAAG;IACbC,QAAQ,EAAE,GAAG;IACbC,aAAa,EAAE;EAChB,CAAC,EACD;IACCJ,MAAM,EAAE,IAAAlF,QAAE,EAAE,UAAW,CAAC;IACxBI,EAAE,EAAE,OAAO;IACXmF,QAAQ,EAAEA,CAAE;MAAE5F;IAAK,CAAC,KAAMA,IAAI,CAACG,KAAK,EAAEC,QAAQ;IAC9CoF,MAAM,EAAEA,CAAE;MAAExF;IAAK,CAAC,kBACjB,IAAAlD,WAAA,CAAA8D,GAAA,EAACb,KAAK;MAACC,IAAI,EAAGA,IAAM;MAACC,QAAQ,EAAGwD,IAAI,CAACpE;IAAM,CAAE,CAC7C;IACDqG,QAAQ,EAAE,GAAG;IACbG,YAAY,EAAE,KAAK;IACnBC,kBAAkB,EAAE;EACrB,CAAC,EACD;IACCP,MAAM,EAAE,IAAAlF,QAAE,EAAE,aAAc,CAAC;IAC3BI,EAAE,EAAE,aAAa;IACjB+E,MAAM,EAAEA,CAAE;MAAExF;IAAK,CAAC,KAAM;MACvB,OAAOA,IAAI,CAAC+F,WAAW,gBACtB,IAAAjJ,WAAA,CAAA8D,GAAA;QAAMe,SAAS,EAAC,4BAA4B;QAAAd,QAAA,EACzC,IAAAX,4BAAc,EAAEF,IAAI,CAAC+F,WAAY;MAAC,CAC/B,CAAC,GAEPtC,IAAI,CAACpE,IAAI,KAAKP,uBAAY,iBACzB,IAAAhC,WAAA,CAAAyE,IAAA,EAAAzE,WAAA,CAAAkJ,QAAA;QAAAnF,QAAA,gBACC,IAAA/D,WAAA,CAAA8D,GAAA,EAAClF,WAAA,CAAAuK,kBAAI;UAACC,OAAO,EAAC,OAAO;UAAC,eAAY,MAAM;UAAArF,QAAA,EAAC;QAEzC,CAAM,CAAC,eACP,IAAA/D,WAAA,CAAA8D,GAAA,EAAClF,WAAA,CAAAyK,cAAc;UAAAtF,QAAA,EACZ,IAAAR,QAAE,EAAE,iBAAkB;QAAC,CACV,CAAC;MAAA,CAChB,CAEH;IACF,CAAC;IACDqF,QAAQ,EAAE,GAAG;IACbD,QAAQ,EAAE,GAAG;IACbE,aAAa,EAAE,KAAK;IACpBG,kBAAkB,EAAE;EACrB,CAAC,EACD;IACCP,MAAM,EAAE,IAAAlF,QAAE,EAAE,QAAS,CAAC;IACtBI,EAAE,EAAE,QAAQ;IACZmF,QAAQ,EAAEA,CAAE;MAAE5F;IAAK,CAAC,KAAMA,IAAI,CAACgF,WAAW;IAC1CQ,MAAM,EAAEA,CAAE;MAAExF;IAAK,CAAC,KAAM;MACvB,oBAAO,IAAAlD,WAAA,CAAA8D,GAAA,EAACE,WAAW;QAACb,QAAQ,EAAGwD,IAAI,CAACpE,IAAM;QAACW,IAAI,EAAGA;MAAM,CAAE,CAAC;IAC5D,CAAC;IACDoG,QAAQ,EAAE1B,OAAO;IACjB2B,KAAK,EAAE;EACR,CAAC,CACD,EACD,CAAE3B,OAAO,EAAEjB,IAAI,CAACpE,IAAI,CACrB,CAAC;EAED,MAAM;IAAEiH,IAAI;IAAEC;EAAe,CAAC,GAAG,IAAAjE,gBAAO,EAAE,MAAM;IAC/C,OAAO,IAAAkE,gCAAqB,EAAE1C,OAAO,EAAEL,IAAI,EAAE6B,MAAO,CAAC;EACtD,CAAC,EAAE,CAAExB,OAAO,EAAEL,IAAI,EAAE6B,MAAM,CAAG,CAAC;EAE9B,MAAMmB,eAAe,GAAGtI,cAAc,CAAE;IACvCuC,QAAQ,EAAEwD,6BAAkB;IAC5BwC,OAAO,EAAE;EACV,CAAE,CAAC;EACH,MAAMC,UAAU,GAAG,IAAAC,mCAAiB,EAAC,CAAC;EACtC,MAAMC,OAAO,GAAG,IAAAvE,gBAAO,EACtB,MAAM,CAAEqE,UAAU,EAAE,GAAGF,eAAe,CAAE,EACxC,CAAEA,eAAe,EAAEE,UAAU,CAC9B,CAAC;EAED,MAAMG,YAAY,GAAG,IAAAxC,oBAAW,EAC7ByC,OAAO,IAAM;IACd,IAAKA,OAAO,CAAC1H,IAAI,KAAKoE,IAAI,CAACpE,IAAI,EAAG;MACjC0H,OAAO,GAAG;QACT,GAAGA,OAAO;QACVlH,MAAM,EAAE;UACP,GAAGhB,wBAAwB,CAAEkI,OAAO,CAAC1H,IAAI;QAC1C;MACD,CAAC;MAED+E,OAAO,CAACI,IAAI,CAAE;QACb,GAAGjE,MAAM;QACTV,MAAM,EAAEkH,OAAO,CAAC1H;MACjB,CAAE,CAAC;IACJ;IAEAqE,OAAO,CAAEqD,OAAQ,CAAC;EACnB,CAAC,EACD,CAAEtD,IAAI,CAACpE,IAAI,EAAEqE,OAAO,EAAEU,OAAO,EAAE7D,MAAM,CACtC,CAAC;EAED,oBACC,IAAAzD,WAAA,CAAA8D,GAAA,EAACvE,KAAA,CAAAgB,OAAI;IACJsE,SAAS,EAAC,0BAA0B;IACpCxB,KAAK,EAAG,IAAAE,QAAE,EAAE,WAAY,CAAG;IAC3BwG,OAAO,eAAG,IAAA/J,WAAA,CAAA8D,GAAA,EAACpE,eAAA,CAAAa,OAAc,IAAE,CAAG;IAAAwD,QAAA,eAE9B,IAAA/D,WAAA,CAAA8D,GAAA,EAAC3E,UAAA,CAAA+K,SAAS;MACTT,cAAc,EAAGA,cAAgB;MACjCjB,MAAM,EAAGA,MAAQ;MACjBuB,OAAO,EAAGA,OAAS;MACnBP,IAAI,EAAGA,IAAM;MACbW,SAAS,EAAGjD,aAAe;MAC3BP,IAAI,EAAGA,IAAM;MACbqD,YAAY,EAAGA,YAAc;MAC7BzC,iBAAiB,EAAGA,iBAAmB;MACvClB,SAAS,EAAGA,SAAW;MACvBC,YAAY,EAAGA;IAAc,CAC7B;EAAC,CACG,CAAC;AAET","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_i18n","_element","_coreData","_htmlEntities","_blocks","_blockEditor","_dataviews","_router","_editor","_async","_page","_link","_interopRequireWildcard","_addNewTemplate","_hooks","_constants","_usePatternSettings","_lockUnlock","_dataviewsActions","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","usePostActions","unlock","editorPrivateApis","useGlobalStyle","blockEditorPrivateApis","useHistory","useLocation","routerPrivateApis","EMPTY_ARRAY","defaultLayouts","LAYOUT_TABLE","fields","layout","primaryField","combinedFields","id","label","__","children","direction","styles","template","maxWidth","minWidth","preview","author","width","LAYOUT_GRID","mediaField","columnFields","LAYOUT_LIST","DEFAULT_VIEW","type","search","page","perPage","sort","field","filters","Title","item","viewType","decodeEntities","title","rendered","linkProps","params","postId","postType","canvas","jsx","AuthorField","isImageLoaded","setIsImageLoaded","useState","text","icon","imageUrl","useAddedBy","jsxs","__experimentalHStack","alignment","spacing","className","clsx","onLoad","alt","src","Icon","Preview","settings","usePatternSettings","backgroundColor","blocks","useMemo","parse","content","raw","onClick","useLink","isEmpty","length","EditorProvider","post","style","Async","BlockPreview","PageTemplates","activeView","selection","setSelection","defaultView","usedType","operator","value","view","setView","useEffect","currentView","OPERATOR_IS_ANY","records","isResolving","isLoadingData","useEntityRecords","TEMPLATE_POST_TYPE","per_page","history","onChangeSelection","useCallback","items","push","undefined","authors","authorsSet","Set","forEach","add","author_text","Array","from","map","render","enableSorting","getValue","enableHiding","enableGlobalSearch","description","elements","data","paginationInfo","filterSortAndPaginate","postTypeActions","context","editAction","useEditPostAction","actions","onChangeView","newView","DataViews","isLoading"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { Icon, __experimentalHStack as HStack } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { parse } from '@wordpress/blocks';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport {\n\tprivateApis as editorPrivateApis,\n\tEditorProvider,\n} from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { Async } from '../async';\nimport Page from '../page';\nimport { default as Link, useLink } from '../routes/link';\nimport AddNewTemplate from '../add-new-template';\nimport { useAddedBy } from './hooks';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tOPERATOR_IS_ANY,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\n\nimport usePatternSettings from '../page-patterns/use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\n\nconst { usePostActions } = unlock( editorPrivateApis );\n\nconst { useGlobalStyle } = unlock( blockEditorPrivateApis );\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst defaultLayouts = {\n\t[ LAYOUT_TABLE ]: {\n\t\tfields: [ 'template', 'author' ],\n\t\tlayout: {\n\t\t\tprimaryField: 'title',\n\t\t\tcombinedFields: [\n\t\t\t\t{\n\t\t\t\t\tid: 'template',\n\t\t\t\t\tlabel: __( 'Template' ),\n\t\t\t\t\tchildren: [ 'title', 'description' ],\n\t\t\t\t\tdirection: 'vertical',\n\t\t\t\t},\n\t\t\t],\n\t\t\tstyles: {\n\t\t\t\ttemplate: {\n\t\t\t\t\tmaxWidth: 400,\n\t\t\t\t\tminWidth: 320,\n\t\t\t\t},\n\t\t\t\tpreview: {\n\t\t\t\t\tminWidth: 120,\n\t\t\t\t\tmaxWidth: 120,\n\t\t\t\t},\n\t\t\t\tauthor: {\n\t\t\t\t\twidth: '1%',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tfields: [ 'title', 'description', 'author' ],\n\t\tlayout: {\n\t\t\tmediaField: 'preview',\n\t\t\tprimaryField: 'title',\n\t\t\tcolumnFields: [ 'description' ],\n\t\t},\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tfields: [ 'title', 'description', 'author' ],\n\t\tlayout: {\n\t\t\tprimaryField: 'title',\n\t\t\tmediaField: 'preview',\n\t\t},\n\t},\n};\n\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\tsort: {\n\t\tfield: 'title',\n\t\tdirection: 'asc',\n\t},\n\tfields: defaultLayouts[ LAYOUT_GRID ].fields,\n\tlayout: defaultLayouts[ LAYOUT_GRID ].layout,\n\tfilters: [],\n};\n\nfunction Title( { item, viewType } ) {\n\tif ( viewType === LAYOUT_LIST ) {\n\t\treturn decodeEntities( item.title?.rendered ) || __( '(no title)' );\n\t}\n\tconst linkProps = {\n\t\tparams: {\n\t\t\tpostId: item.id,\n\t\t\tpostType: item.type,\n\t\t\tcanvas: 'edit',\n\t\t},\n\t};\n\treturn (\n\t\t<Link { ...linkProps }>\n\t\t\t{ decodeEntities( item.title?.rendered ) || __( '(no title)' ) }\n\t\t</Link>\n\t);\n}\n\nfunction AuthorField( { item } ) {\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 0 }>\n\t\t\t{ imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx( 'page-templates-author-field__avatar', {\n\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Preview( { item, viewType } ) {\n\tconst settings = usePatternSettings();\n\tconst [ backgroundColor = 'white' ] = useGlobalStyle( 'color.background' );\n\tconst blocks = useMemo( () => {\n\t\treturn parse( item.content.raw );\n\t}, [ item.content.raw ] );\n\tconst { onClick } = useLink( {\n\t\tpostId: item.id,\n\t\tpostType: item.type,\n\t\tcanvas: 'edit',\n\t} );\n\n\tconst isEmpty = ! blocks?.length;\n\t// Wrap everything in a block editor provider to ensure 'styles' that are needed\n\t// for the previews are synced between the site editor store and the block editor store.\n\t// Additionally we need to have the `__experimentalBlockPatterns` setting in order to\n\t// render patterns inside the previews.\n\t// TODO: Same approach is used in the patterns list and it becomes obvious that some of\n\t// the block editor settings are needed in context where we don't have the block editor.\n\t// Explore how we can solve this in a better way.\n\treturn (\n\t\t<EditorProvider post={ item } settings={ settings }>\n\t\t\t<div\n\t\t\t\tclassName={ `page-templates-preview-field is-viewtype-${ viewType }` }\n\t\t\t\tstyle={ { backgroundColor } }\n\t\t\t>\n\t\t\t\t{ viewType === LAYOUT_LIST && ! isEmpty && (\n\t\t\t\t\t<Async>\n\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t</Async>\n\t\t\t\t) }\n\t\t\t\t{ viewType !== LAYOUT_LIST && (\n\t\t\t\t\t<button\n\t\t\t\t\t\tclassName=\"page-templates-preview-field__button\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\taria-label={ item.title?.rendered || item.title }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isEmpty && __( 'Empty template' ) }\n\t\t\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t\t\t<Async>\n\t\t\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t\t\t</Async>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</button>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</EditorProvider>\n\t);\n}\n\nexport default function PageTemplates() {\n\tconst { params } = useLocation();\n\tconst { activeView = 'all', layout, postId } = params;\n\tconst [ selection, setSelection ] = useState( [ postId ] );\n\n\tconst defaultView = useMemo( () => {\n\t\tconst usedType = layout ?? DEFAULT_VIEW.type;\n\t\treturn {\n\t\t\t...DEFAULT_VIEW,\n\t\t\ttype: usedType,\n\t\t\tlayout: defaultLayouts[ usedType ].layout,\n\t\t\tfields: defaultLayouts[ usedType ].fields,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: 'isAny',\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: OPERATOR_IS_ANY,\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t} ) );\n\t}, [ activeView ] );\n\n\tconst { records, isResolving: isLoadingData } = useEntityRecords(\n\t\t'postType',\n\t\tTEMPLATE_POST_TYPE,\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\tconst history = useHistory();\n\tconst onChangeSelection = useCallback(\n\t\t( items ) => {\n\t\t\tsetSelection( items );\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ] : undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history, params, view?.type ]\n\t);\n\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tlabel: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <Preview item={ item } viewType={ view.type } />;\n\t\t\t\t},\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: __( 'Template' ),\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\t<Title item={ item } viewType={ view.type } />\n\t\t\t\t),\n\t\t\t\tenableHiding: false,\n\t\t\t\tenableGlobalSearch: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: __( 'Description' ),\n\t\t\t\tid: 'description',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\titem.description && (\n\t\t\t\t\t\t\t<span className=\"page-templates-description\">\n\t\t\t\t\t\t\t\t{ decodeEntities( item.description ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableGlobalSearch: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item.author_text,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <AuthorField viewType={ view.type } item={ item } />;\n\t\t\t\t},\n\t\t\t\telements: authors,\n\t\t\t},\n\t\t],\n\t\t[ authors, view.type ]\n\t);\n\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\treturn filterSortAndPaginate( records, view, fields );\n\t}, [ records, view, fields ] );\n\n\tconst postTypeActions = usePostActions( {\n\t\tpostType: TEMPLATE_POST_TYPE,\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\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView, history, params ]\n\t);\n\n\treturn (\n\t\t<Page\n\t\t\tclassName=\"edit-site-page-templates\"\n\t\t\ttitle={ __( 'Templates' ) }\n\t\t\tactions={ <AddNewTemplate /> }\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={ data }\n\t\t\t\tisLoading={ isLoadingData }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\tonChangeSelection={ onChangeSelection }\n\t\t\t\tselection={ selection }\n\t\t\t\tdefaultLayouts={ defaultLayouts }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -49,7 +49,7 @@ function Pagination({
49
49
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
50
50
  variant: buttonVariant,
51
51
  onClick: () => changePage(1),
52
- __experimentalIsFocusable: true,
52
+ accessibleWhenDisabled: true,
53
53
  disabled: disabled || currentPage === 1,
54
54
  label: (0, _i18n.__)('First page'),
55
55
  icon: _icons.previous,
@@ -57,7 +57,7 @@ function Pagination({
57
57
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
58
58
  variant: buttonVariant,
59
59
  onClick: () => changePage(currentPage - 1),
60
- __experimentalIsFocusable: true,
60
+ accessibleWhenDisabled: true,
61
61
  disabled: disabled || currentPage === 1,
62
62
  label: (0, _i18n.__)('Previous page'),
63
63
  icon: _icons.chevronLeft,
@@ -74,7 +74,7 @@ function Pagination({
74
74
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
75
75
  variant: buttonVariant,
76
76
  onClick: () => changePage(currentPage + 1),
77
- __experimentalIsFocusable: true,
77
+ accessibleWhenDisabled: true,
78
78
  disabled: disabled || currentPage === numPages,
79
79
  label: (0, _i18n.__)('Next page'),
80
80
  icon: _icons.chevronRight,
@@ -82,7 +82,7 @@ function Pagination({
82
82
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
83
83
  variant: buttonVariant,
84
84
  onClick: () => changePage(numPages),
85
- __experimentalIsFocusable: true,
85
+ accessibleWhenDisabled: true,
86
86
  disabled: disabled || currentPage === numPages,
87
87
  label: (0, _i18n.__)('Last page'),
88
88
  icon: _icons.next,
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_i18n","_icons","_jsxRuntime","Pagination","currentPage","numPages","changePage","totalItems","className","disabled","buttonVariant","label","__","jsxs","__experimentalHStack","expanded","as","spacing","justify","clsx","children","jsx","__experimentalText","variant","sprintf","_n","Button","onClick","__experimentalIsFocusable","icon","previous","size","chevronLeft","_x","chevronRight","next"],"sources":["@wordpress/edit-site/src/components/pagination/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalText as Text,\n\tButton,\n} from '@wordpress/components';\nimport { __, _x, _n, sprintf } from '@wordpress/i18n';\nimport { previous, chevronLeft, chevronRight, next } from '@wordpress/icons';\n\nexport default function Pagination( {\n\tcurrentPage,\n\tnumPages,\n\tchangePage,\n\ttotalItems,\n\tclassName,\n\tdisabled = false,\n\tbuttonVariant = 'tertiary',\n\tlabel = __( 'Pagination Navigation' ),\n} ) {\n\treturn (\n\t\t<HStack\n\t\t\texpanded={ false }\n\t\t\tas=\"nav\"\n\t\t\taria-label={ label }\n\t\t\tspacing={ 3 }\n\t\t\tjustify=\"flex-start\"\n\t\t\tclassName={ clsx( 'edit-site-pagination', className ) }\n\t\t>\n\t\t\t<Text variant=\"muted\" className=\"edit-site-pagination__total\">\n\t\t\t\t{\n\t\t\t\t\t// translators: %s: Total number of patterns.\n\t\t\t\t\tsprintf(\n\t\t\t\t\t\t// translators: %s: Total number of patterns.\n\t\t\t\t\t\t_n( '%s item', '%s items', totalItems ),\n\t\t\t\t\t\ttotalItems\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t</Text>\n\t\t\t<HStack expanded={ false } spacing={ 1 }>\n\t\t\t\t<Button\n\t\t\t\t\tvariant={ buttonVariant }\n\t\t\t\t\tonClick={ () => changePage( 1 ) }\n\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\tdisabled={ disabled || currentPage === 1 }\n\t\t\t\t\tlabel={ __( 'First page' ) }\n\t\t\t\t\ticon={ previous }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t/>\n\t\t\t\t<Button\n\t\t\t\t\tvariant={ buttonVariant }\n\t\t\t\t\tonClick={ () => changePage( currentPage - 1 ) }\n\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\tdisabled={ disabled || currentPage === 1 }\n\t\t\t\t\tlabel={ __( 'Previous page' ) }\n\t\t\t\t\ticon={ chevronLeft }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t\t<Text variant=\"muted\">\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: %1$s: Current page number, %2$s: Total number of pages.\n\t\t\t\t\t_x( '%1$s of %2$s', 'paging' ),\n\t\t\t\t\tcurrentPage,\n\t\t\t\t\tnumPages\n\t\t\t\t) }\n\t\t\t</Text>\n\t\t\t<HStack expanded={ false } spacing={ 1 }>\n\t\t\t\t<Button\n\t\t\t\t\tvariant={ buttonVariant }\n\t\t\t\t\tonClick={ () => changePage( currentPage + 1 ) }\n\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\tdisabled={ disabled || currentPage === numPages }\n\t\t\t\t\tlabel={ __( 'Next page' ) }\n\t\t\t\t\ticon={ chevronRight }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t/>\n\t\t\t\t<Button\n\t\t\t\t\tvariant={ buttonVariant }\n\t\t\t\t\tonClick={ () => changePage( numPages ) }\n\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\tdisabled={ disabled || currentPage === numPages }\n\t\t\t\t\tlabel={ __( 'Last page' ) }\n\t\t\t\t\ticon={ next }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t</HStack>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_i18n","_icons","_jsxRuntime","Pagination","currentPage","numPages","changePage","totalItems","className","disabled","buttonVariant","label","__","jsxs","__experimentalHStack","expanded","as","spacing","justify","clsx","children","jsx","__experimentalText","variant","sprintf","_n","Button","onClick","accessibleWhenDisabled","icon","previous","size","chevronLeft","_x","chevronRight","next"],"sources":["@wordpress/edit-site/src/components/pagination/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalText as Text,\n\tButton,\n} from '@wordpress/components';\nimport { __, _x, _n, sprintf } from '@wordpress/i18n';\nimport { previous, chevronLeft, chevronRight, next } from '@wordpress/icons';\n\nexport default function Pagination( {\n\tcurrentPage,\n\tnumPages,\n\tchangePage,\n\ttotalItems,\n\tclassName,\n\tdisabled = false,\n\tbuttonVariant = 'tertiary',\n\tlabel = __( 'Pagination Navigation' ),\n} ) {\n\treturn (\n\t\t<HStack\n\t\t\texpanded={ false }\n\t\t\tas=\"nav\"\n\t\t\taria-label={ label }\n\t\t\tspacing={ 3 }\n\t\t\tjustify=\"flex-start\"\n\t\t\tclassName={ clsx( 'edit-site-pagination', className ) }\n\t\t>\n\t\t\t<Text variant=\"muted\" className=\"edit-site-pagination__total\">\n\t\t\t\t{\n\t\t\t\t\t// translators: %s: Total number of patterns.\n\t\t\t\t\tsprintf(\n\t\t\t\t\t\t// translators: %s: Total number of patterns.\n\t\t\t\t\t\t_n( '%s item', '%s items', totalItems ),\n\t\t\t\t\t\ttotalItems\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t</Text>\n\t\t\t<HStack expanded={ false } spacing={ 1 }>\n\t\t\t\t<Button\n\t\t\t\t\tvariant={ buttonVariant }\n\t\t\t\t\tonClick={ () => changePage( 1 ) }\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tdisabled={ disabled || currentPage === 1 }\n\t\t\t\t\tlabel={ __( 'First page' ) }\n\t\t\t\t\ticon={ previous }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t/>\n\t\t\t\t<Button\n\t\t\t\t\tvariant={ buttonVariant }\n\t\t\t\t\tonClick={ () => changePage( currentPage - 1 ) }\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tdisabled={ disabled || currentPage === 1 }\n\t\t\t\t\tlabel={ __( 'Previous page' ) }\n\t\t\t\t\ticon={ chevronLeft }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t\t<Text variant=\"muted\">\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: %1$s: Current page number, %2$s: Total number of pages.\n\t\t\t\t\t_x( '%1$s of %2$s', 'paging' ),\n\t\t\t\t\tcurrentPage,\n\t\t\t\t\tnumPages\n\t\t\t\t) }\n\t\t\t</Text>\n\t\t\t<HStack expanded={ false } spacing={ 1 }>\n\t\t\t\t<Button\n\t\t\t\t\tvariant={ buttonVariant }\n\t\t\t\t\tonClick={ () => changePage( currentPage + 1 ) }\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tdisabled={ disabled || currentPage === numPages }\n\t\t\t\t\tlabel={ __( 'Next page' ) }\n\t\t\t\t\ticon={ chevronRight }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t/>\n\t\t\t\t<Button\n\t\t\t\t\tvariant={ buttonVariant }\n\t\t\t\t\tonClick={ () => changePage( numPages ) }\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tdisabled={ disabled || currentPage === numPages }\n\t\t\t\t\tlabel={ __( 'Last page' ) }\n\t\t\t\t\ticon={ next }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t</HStack>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.PostEdit = PostEdit;
8
+ var _clsx = _interopRequireDefault(require("clsx"));
9
+ var _i18n = require("@wordpress/i18n");
10
+ var _dataviews = require("@wordpress/dataviews");
11
+ var _data = require("@wordpress/data");
12
+ var _coreData = require("@wordpress/core-data");
13
+ var _components = require("@wordpress/components");
14
+ var _element = require("@wordpress/element");
15
+ var _page = _interopRequireDefault(require("../page"));
16
+ var _postFields = _interopRequireDefault(require("../post-fields"));
17
+ var _jsxRuntime = require("react/jsx-runtime");
18
+ /**
19
+ * External dependencies
20
+ */
21
+
22
+ /**
23
+ * WordPress dependencies
24
+ */
25
+
26
+ /**
27
+ * Internal dependencies
28
+ */
29
+
30
+ function PostEditForm({
31
+ postType,
32
+ postId
33
+ }) {
34
+ const ids = (0, _element.useMemo)(() => postId.split(','), [postId]);
35
+ const {
36
+ initialEdits
37
+ } = (0, _data.useSelect)(select => {
38
+ if (ids.length !== 1) {}
39
+ return {
40
+ initialEdits: ids.length === 1 ? select(_coreData.store).getEntityRecord('postType', postType, ids[0]) : null
41
+ };
42
+ }, [postType, ids]);
43
+ const registry = (0, _data.useRegistry)();
44
+ const {
45
+ saveEntityRecord
46
+ } = (0, _data.useDispatch)(_coreData.store);
47
+ const {
48
+ fields
49
+ } = (0, _postFields.default)();
50
+ const form = {
51
+ visibleFields: ['title']
52
+ };
53
+ const [edits, setEdits] = (0, _element.useState)({});
54
+ const itemWithEdits = (0, _element.useMemo)(() => {
55
+ return {
56
+ ...initialEdits,
57
+ ...edits
58
+ };
59
+ }, [initialEdits, edits]);
60
+ const onSubmit = async event => {
61
+ event.preventDefault();
62
+ const {
63
+ getEntityRecord
64
+ } = registry.resolveSelect(_coreData.store);
65
+ for (const id of ids) {
66
+ const item = await getEntityRecord('postType', postType, id);
67
+ saveEntityRecord('postType', postType, {
68
+ ...item,
69
+ ...edits
70
+ });
71
+ }
72
+ setEdits({});
73
+ };
74
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("form", {
75
+ onSubmit: onSubmit,
76
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_dataviews.DataForm, {
77
+ data: itemWithEdits,
78
+ fields: fields,
79
+ form: form,
80
+ onChange: setEdits
81
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
82
+ variant: "primary",
83
+ type: "submit",
84
+ children: (0, _i18n.__)('Update')
85
+ })]
86
+ });
87
+ }
88
+ function PostEdit({
89
+ postType,
90
+ postId
91
+ }) {
92
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_page.default, {
93
+ className: (0, _clsx.default)('edit-site-post-edit', {
94
+ 'is-empty': !postId
95
+ }),
96
+ label: (0, _i18n.__)('Post Edit'),
97
+ children: [postId && /*#__PURE__*/(0, _jsxRuntime.jsx)(PostEditForm, {
98
+ postType: postType,
99
+ postId: postId
100
+ }), !postId && /*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
101
+ children: (0, _i18n.__)('Select a page to edit')
102
+ })]
103
+ });
104
+ }
105
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_dataviews","_data","_coreData","_components","_element","_page","_postFields","_jsxRuntime","PostEditForm","postType","postId","ids","useMemo","split","initialEdits","useSelect","select","length","coreDataStore","getEntityRecord","registry","useRegistry","saveEntityRecord","useDispatch","fields","usePostFields","form","visibleFields","edits","setEdits","useState","itemWithEdits","onSubmit","event","preventDefault","resolveSelect","id","item","jsxs","children","jsx","DataForm","data","onChange","Button","variant","type","__","PostEdit","default","className","clsx","label"],"sources":["@wordpress/edit-site/src/components/post-edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { DataForm } from '@wordpress/dataviews';\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport { store as coreDataStore } from '@wordpress/core-data';\nimport { Button } from '@wordpress/components';\nimport { useState, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport usePostFields from '../post-fields';\n\nfunction PostEditForm( { postType, postId } ) {\n\tconst ids = useMemo( () => postId.split( ',' ), [ postId ] );\n\tconst { initialEdits } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ids.length !== 1 ) {\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tinitialEdits:\n\t\t\t\t\tids.length === 1\n\t\t\t\t\t\t? select( coreDataStore ).getEntityRecord(\n\t\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\t\tpostType,\n\t\t\t\t\t\t\t\tids[ 0 ]\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: null,\n\t\t\t};\n\t\t},\n\t\t[ postType, ids ]\n\t);\n\tconst registry = useRegistry();\n\tconst { saveEntityRecord } = useDispatch( coreDataStore );\n\tconst { fields } = usePostFields();\n\tconst form = {\n\t\tvisibleFields: [ 'title' ],\n\t};\n\tconst [ edits, setEdits ] = useState( {} );\n\tconst itemWithEdits = useMemo( () => {\n\t\treturn {\n\t\t\t...initialEdits,\n\t\t\t...edits,\n\t\t};\n\t}, [ initialEdits, edits ] );\n\tconst onSubmit = async ( event ) => {\n\t\tevent.preventDefault();\n\t\tconst { getEntityRecord } = registry.resolveSelect( coreDataStore );\n\t\tfor ( const id of ids ) {\n\t\t\tconst item = await getEntityRecord( 'postType', postType, id );\n\t\t\tsaveEntityRecord( 'postType', postType, {\n\t\t\t\t...item,\n\t\t\t\t...edits,\n\t\t\t} );\n\t\t}\n\t\tsetEdits( {} );\n\t};\n\n\treturn (\n\t\t<form onSubmit={ onSubmit }>\n\t\t\t<DataForm\n\t\t\t\tdata={ itemWithEdits }\n\t\t\t\tfields={ fields }\n\t\t\t\tform={ form }\n\t\t\t\tonChange={ setEdits }\n\t\t\t/>\n\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t{ __( 'Update' ) }\n\t\t\t</Button>\n\t\t</form>\n\t);\n}\n\nexport function PostEdit( { postType, postId } ) {\n\treturn (\n\t\t<Page\n\t\t\tclassName={ clsx( 'edit-site-post-edit', {\n\t\t\t\t'is-empty': ! postId,\n\t\t\t} ) }\n\t\t\tlabel={ __( 'Post Edit' ) }\n\t\t>\n\t\t\t{ postId && (\n\t\t\t\t<PostEditForm postType={ postType } postId={ postId } />\n\t\t\t) }\n\t\t\t{ ! postId && <p>{ __( 'Select a page to edit' ) }</p> }\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,314 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _clsx = _interopRequireDefault(require("clsx"));
9
+ var _i18n = require("@wordpress/i18n");
10
+ var _htmlEntities = require("@wordpress/html-entities");
11
+ var _element = require("@wordpress/element");
12
+ var _date = require("@wordpress/date");
13
+ var _icons = require("@wordpress/icons");
14
+ var _components = require("@wordpress/components");
15
+ var _data = require("@wordpress/data");
16
+ var _coreData = require("@wordpress/core-data");
17
+ var _constants = require("../../utils/constants");
18
+ var _link = _interopRequireWildcard(require("../routes/link"));
19
+ var _media = _interopRequireDefault(require("../media"));
20
+ var _jsxRuntime = require("react/jsx-runtime");
21
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
22
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
23
+ /**
24
+ * External dependencies
25
+ */
26
+
27
+ /**
28
+ * WordPress dependencies
29
+ */
30
+
31
+ /**
32
+ * Internal dependencies
33
+ */
34
+
35
+ // See https://github.com/WordPress/gutenberg/issues/55886
36
+ // We do not support custom statutes at the moment.
37
+ const STATUSES = [{
38
+ value: 'draft',
39
+ label: (0, _i18n.__)('Draft'),
40
+ icon: _icons.drafts
41
+ }, {
42
+ value: 'future',
43
+ label: (0, _i18n.__)('Scheduled'),
44
+ icon: _icons.scheduled
45
+ }, {
46
+ value: 'pending',
47
+ label: (0, _i18n.__)('Pending Review'),
48
+ icon: _icons.pending
49
+ }, {
50
+ value: 'private',
51
+ label: (0, _i18n.__)('Private'),
52
+ icon: _icons.notAllowed
53
+ }, {
54
+ value: 'publish',
55
+ label: (0, _i18n.__)('Published'),
56
+ icon: _icons.published
57
+ }, {
58
+ value: 'trash',
59
+ label: (0, _i18n.__)('Trash'),
60
+ icon: _icons.trash
61
+ }];
62
+ const getFormattedDate = dateToDisplay => (0, _date.dateI18n)((0, _date.getSettings)().formats.datetimeAbbreviated, (0, _date.getDate)(dateToDisplay));
63
+ function FeaturedImage({
64
+ item,
65
+ viewType
66
+ }) {
67
+ const isDisabled = item.status === 'trash';
68
+ const {
69
+ onClick
70
+ } = (0, _link.useLink)({
71
+ postId: item.id,
72
+ postType: item.type,
73
+ canvas: 'edit'
74
+ });
75
+ const hasMedia = !!item.featured_media;
76
+ const size = viewType === _constants.LAYOUT_GRID ? ['large', 'full', 'medium', 'thumbnail'] : ['thumbnail', 'medium', 'large', 'full'];
77
+ const media = hasMedia ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_media.default, {
78
+ className: "edit-site-post-list__featured-image",
79
+ id: item.featured_media,
80
+ size: size
81
+ }) : null;
82
+ const renderButton = viewType !== _constants.LAYOUT_LIST && !isDisabled;
83
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
84
+ className: `edit-site-post-list__featured-image-wrapper is-layout-${viewType}`,
85
+ children: renderButton ? /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
86
+ className: "edit-site-post-list__featured-image-button",
87
+ type: "button",
88
+ onClick: onClick,
89
+ "aria-label": item.title?.rendered || (0, _i18n.__)('(no title)'),
90
+ children: media
91
+ }) : media
92
+ });
93
+ }
94
+ function PostStatusField({
95
+ item
96
+ }) {
97
+ const status = STATUSES.find(({
98
+ value
99
+ }) => value === item.status);
100
+ const label = status?.label || item.status;
101
+ const icon = status?.icon;
102
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
103
+ alignment: "left",
104
+ spacing: 0,
105
+ children: [icon && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
106
+ className: "edit-site-post-list__status-icon",
107
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
108
+ icon: icon
109
+ })
110
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
111
+ children: label
112
+ })]
113
+ });
114
+ }
115
+ function PostAuthorField({
116
+ item
117
+ }) {
118
+ const {
119
+ text,
120
+ imageUrl
121
+ } = (0, _data.useSelect)(select => {
122
+ const {
123
+ getUser
124
+ } = select(_coreData.store);
125
+ const user = getUser(item.author);
126
+ return {
127
+ imageUrl: user?.avatar_urls?.[48],
128
+ text: user?.name
129
+ };
130
+ }, [item]);
131
+ const [isImageLoaded, setIsImageLoaded] = (0, _element.useState)(false);
132
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
133
+ alignment: "left",
134
+ spacing: 0,
135
+ children: [!!imageUrl && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
136
+ className: (0, _clsx.default)('page-templates-author-field__avatar', {
137
+ 'is-loaded': isImageLoaded
138
+ }),
139
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("img", {
140
+ onLoad: () => setIsImageLoaded(true),
141
+ alt: (0, _i18n.__)('Author avatar'),
142
+ src: imageUrl
143
+ })
144
+ }), !imageUrl && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
145
+ className: "page-templates-author-field__icon",
146
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
147
+ icon: _icons.commentAuthorAvatar
148
+ })
149
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
150
+ className: "page-templates-author-field__name",
151
+ children: text
152
+ })]
153
+ });
154
+ }
155
+ function usePostFields(viewType) {
156
+ const {
157
+ records: authors,
158
+ isResolving: isLoadingAuthors
159
+ } = (0, _coreData.useEntityRecords)('root', 'user', {
160
+ per_page: -1
161
+ });
162
+ const {
163
+ frontPageId,
164
+ postsPageId
165
+ } = (0, _data.useSelect)(select => {
166
+ const {
167
+ getEntityRecord
168
+ } = select(_coreData.store);
169
+ const siteSettings = getEntityRecord('root', 'site');
170
+ return {
171
+ frontPageId: siteSettings?.page_on_front,
172
+ postsPageId: siteSettings?.page_for_posts
173
+ };
174
+ }, []);
175
+ const fields = (0, _element.useMemo)(() => [{
176
+ id: 'featured-image',
177
+ label: (0, _i18n.__)('Featured Image'),
178
+ getValue: ({
179
+ item
180
+ }) => item.featured_media,
181
+ render: ({
182
+ item
183
+ }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(FeaturedImage, {
184
+ item: item,
185
+ viewType: viewType
186
+ }),
187
+ enableSorting: false
188
+ }, {
189
+ label: (0, _i18n.__)('Title'),
190
+ id: 'title',
191
+ type: 'text',
192
+ getValue: ({
193
+ item
194
+ }) => typeof item.title === 'string' ? item.title : item.title?.raw,
195
+ render: ({
196
+ item
197
+ }) => {
198
+ const addLink = [_constants.LAYOUT_TABLE, _constants.LAYOUT_GRID].includes(viewType) && item.status !== 'trash';
199
+ const title = addLink ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_link.default, {
200
+ params: {
201
+ postId: item.id,
202
+ postType: item.type,
203
+ canvas: 'edit'
204
+ },
205
+ children: (0, _htmlEntities.decodeEntities)(item.title?.rendered) || (0, _i18n.__)('(no title)')
206
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
207
+ children: (0, _htmlEntities.decodeEntities)(item.title?.rendered) || (0, _i18n.__)('(no title)')
208
+ });
209
+ let suffix = '';
210
+ if (item.id === frontPageId) {
211
+ suffix = /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
212
+ className: "edit-site-post-list__title-badge",
213
+ children: (0, _i18n.__)('Homepage')
214
+ });
215
+ } else if (item.id === postsPageId) {
216
+ suffix = /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
217
+ className: "edit-site-post-list__title-badge",
218
+ children: (0, _i18n.__)('Posts Page')
219
+ });
220
+ }
221
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
222
+ className: "edit-site-post-list__title",
223
+ alignment: "center",
224
+ justify: "flex-start",
225
+ children: [title, suffix]
226
+ });
227
+ },
228
+ enableHiding: false
229
+ }, {
230
+ label: (0, _i18n.__)('Author'),
231
+ id: 'author',
232
+ getValue: ({
233
+ item
234
+ }) => item._embedded?.author[0]?.name,
235
+ elements: authors?.map(({
236
+ id,
237
+ name
238
+ }) => ({
239
+ value: id,
240
+ label: name
241
+ })) || [],
242
+ render: PostAuthorField
243
+ }, {
244
+ label: (0, _i18n.__)('Status'),
245
+ id: 'status',
246
+ getValue: ({
247
+ item
248
+ }) => {
249
+ var _STATUSES$find$label;
250
+ return (_STATUSES$find$label = STATUSES.find(({
251
+ value
252
+ }) => value === item.status)?.label) !== null && _STATUSES$find$label !== void 0 ? _STATUSES$find$label : item.status;
253
+ },
254
+ elements: STATUSES,
255
+ render: PostStatusField,
256
+ enableSorting: false,
257
+ filterBy: {
258
+ operators: [_constants.OPERATOR_IS_ANY]
259
+ }
260
+ }, {
261
+ label: (0, _i18n.__)('Date'),
262
+ id: 'date',
263
+ render: ({
264
+ item
265
+ }) => {
266
+ const isDraftOrPrivate = ['draft', 'private'].includes(item.status);
267
+ if (isDraftOrPrivate) {
268
+ return (0, _element.createInterpolateElement)((0, _i18n.sprintf)( /* translators: %s: page creation date */
269
+ (0, _i18n.__)('<span>Modified: <time>%s</time></span>'), getFormattedDate(item.date)), {
270
+ span: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {}),
271
+ time: /*#__PURE__*/(0, _jsxRuntime.jsx)("time", {})
272
+ });
273
+ }
274
+ const isScheduled = item.status === 'future';
275
+ if (isScheduled) {
276
+ return (0, _element.createInterpolateElement)((0, _i18n.sprintf)( /* translators: %s: page creation date */
277
+ (0, _i18n.__)('<span>Scheduled: <time>%s</time></span>'), getFormattedDate(item.date)), {
278
+ span: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {}),
279
+ time: /*#__PURE__*/(0, _jsxRuntime.jsx)("time", {})
280
+ });
281
+ }
282
+
283
+ // Pending & Published posts show the modified date if it's newer.
284
+ const dateToDisplay = (0, _date.getDate)(item.modified) > (0, _date.getDate)(item.date) ? item.modified : item.date;
285
+ const isPending = item.status === 'pending';
286
+ if (isPending) {
287
+ return (0, _element.createInterpolateElement)((0, _i18n.sprintf)( /* translators: %s: the newest of created or modified date for the page */
288
+ (0, _i18n.__)('<span>Modified: <time>%s</time></span>'), getFormattedDate(dateToDisplay)), {
289
+ span: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {}),
290
+ time: /*#__PURE__*/(0, _jsxRuntime.jsx)("time", {})
291
+ });
292
+ }
293
+ const isPublished = item.status === 'publish';
294
+ if (isPublished) {
295
+ return (0, _element.createInterpolateElement)((0, _i18n.sprintf)( /* translators: %s: the newest of created or modified date for the page */
296
+ (0, _i18n.__)('<span>Published: <time>%s</time></span>'), getFormattedDate(dateToDisplay)), {
297
+ span: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {}),
298
+ time: /*#__PURE__*/(0, _jsxRuntime.jsx)("time", {})
299
+ });
300
+ }
301
+
302
+ // Unknow status.
303
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("time", {
304
+ children: getFormattedDate(item.date)
305
+ });
306
+ }
307
+ }], [authors, viewType, frontPageId, postsPageId]);
308
+ return {
309
+ isLoading: isLoadingAuthors,
310
+ fields
311
+ };
312
+ }
313
+ var _default = exports.default = usePostFields;
314
+ //# sourceMappingURL=index.js.map