@wordpress/edit-site 5.18.1-next.5a1d1283.0 → 5.19.1

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 (687) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/add-new-pattern/index.js +65 -4
  3. package/build/components/add-new-pattern/index.js.map +1 -1
  4. package/build/components/add-new-template/index.js +3 -2
  5. package/build/components/add-new-template/index.js.map +1 -1
  6. package/build/components/add-new-template/new-template.js +6 -1
  7. package/build/components/add-new-template/new-template.js.map +1 -1
  8. package/build/components/add-new-template/utils.js +6 -1
  9. package/build/components/add-new-template/utils.js.map +1 -1
  10. package/build/components/app/index.js +2 -7
  11. package/build/components/app/index.js.map +1 -1
  12. package/build/components/block-editor/back-button.js +3 -2
  13. package/build/components/block-editor/back-button.js.map +1 -1
  14. package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js +73 -0
  15. package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +1 -0
  16. package/build/components/block-editor/block-editor-provider/index.js +31 -0
  17. package/build/components/block-editor/block-editor-provider/index.js.map +1 -0
  18. package/build/components/block-editor/{providers → block-editor-provider}/navigation-block-editor-provider.js +2 -1
  19. package/build/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +1 -0
  20. package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js +76 -0
  21. package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +1 -0
  22. package/build/components/block-editor/editor-canvas.js +20 -16
  23. package/build/components/block-editor/editor-canvas.js.map +1 -1
  24. package/build/components/block-editor/index.js +2 -9
  25. package/build/components/block-editor/index.js.map +1 -1
  26. package/build/components/block-editor/site-editor-canvas.js +2 -4
  27. package/build/components/block-editor/site-editor-canvas.js.map +1 -1
  28. package/build/components/block-editor/use-site-editor-settings.js +8 -4
  29. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  30. package/build/components/canvas-loader/index.js +18 -1
  31. package/build/components/canvas-loader/index.js.map +1 -1
  32. package/build/components/create-template-part-modal/index.js +8 -12
  33. package/build/components/create-template-part-modal/index.js.map +1 -1
  34. package/build/components/editor/index.js +7 -9
  35. package/build/components/editor/index.js.map +1 -1
  36. package/build/components/global-styles/dimensions-panel.js +5 -4
  37. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  38. package/build/components/global-styles/font-families.js +68 -0
  39. package/build/components/global-styles/font-families.js.map +1 -0
  40. package/build/components/global-styles/font-family-item.js +47 -0
  41. package/build/components/global-styles/font-family-item.js.map +1 -0
  42. package/build/components/global-styles/font-library-modal/collection-font-details.js +49 -0
  43. package/build/components/global-styles/font-library-modal/collection-font-details.js.map +1 -0
  44. package/build/components/global-styles/font-library-modal/collection-font-variant.js +55 -0
  45. package/build/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -0
  46. package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js +31 -0
  47. package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -0
  48. package/build/components/global-styles/font-library-modal/context.js +309 -0
  49. package/build/components/global-styles/font-library-modal/context.js.map +1 -0
  50. package/build/components/global-styles/font-library-modal/font-card.js +61 -0
  51. package/build/components/global-styles/font-library-modal/font-card.js.map +1 -0
  52. package/build/components/global-styles/font-library-modal/font-collection.js +172 -0
  53. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -0
  54. package/build/components/global-styles/font-library-modal/font-demo.js +86 -0
  55. package/build/components/global-styles/font-library-modal/font-demo.js.map +1 -0
  56. package/build/components/global-styles/font-library-modal/font-variant.js +51 -0
  57. package/build/components/global-styles/font-library-modal/font-variant.js.map +1 -0
  58. package/build/components/global-styles/font-library-modal/fonts-grid.js +54 -0
  59. package/build/components/global-styles/font-library-modal/fonts-grid.js.map +1 -0
  60. package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +41 -0
  61. package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -0
  62. package/build/components/global-styles/font-library-modal/index.js +65 -0
  63. package/build/components/global-styles/font-library-modal/index.js.map +1 -0
  64. package/build/components/global-styles/font-library-modal/installed-fonts.js +128 -0
  65. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -0
  66. package/build/components/global-styles/font-library-modal/library-font-card.js +39 -0
  67. package/build/components/global-styles/font-library-modal/library-font-card.js.map +1 -0
  68. package/build/components/global-styles/font-library-modal/library-font-details.js +44 -0
  69. package/build/components/global-styles/font-library-modal/library-font-details.js.map +1 -0
  70. package/build/components/global-styles/font-library-modal/library-font-variant.js +59 -0
  71. package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -0
  72. package/build/components/global-styles/font-library-modal/local-fonts.js +143 -0
  73. package/build/components/global-styles/font-library-modal/local-fonts.js.map +1 -0
  74. package/build/components/global-styles/font-library-modal/resolvers.js +53 -0
  75. package/build/components/global-styles/font-library-modal/resolvers.js.map +1 -0
  76. package/build/components/global-styles/font-library-modal/tab-layout.js +45 -0
  77. package/build/components/global-styles/font-library-modal/tab-layout.js.map +1 -0
  78. package/build/components/global-styles/font-library-modal/utils/constants.js +31 -0
  79. package/build/components/global-styles/font-library-modal/utils/constants.js.map +1 -0
  80. package/build/components/global-styles/font-library-modal/utils/filter-fonts.js +21 -0
  81. package/build/components/global-styles/font-library-modal/utils/filter-fonts.js.map +1 -0
  82. package/build/components/global-styles/font-library-modal/utils/fonts-outline.js +20 -0
  83. package/build/components/global-styles/font-library-modal/utils/fonts-outline.js.map +1 -0
  84. package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +58 -0
  85. package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -0
  86. package/build/components/global-styles/font-library-modal/utils/index.js +155 -0
  87. package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -0
  88. package/build/components/global-styles/font-library-modal/utils/make-families-from-faces.js +22 -0
  89. package/build/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +1 -0
  90. package/build/components/global-styles/font-library-modal/utils/preview-styles.js +76 -0
  91. package/build/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -0
  92. package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js +36 -0
  93. package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -0
  94. package/build/components/global-styles/font-library-modal/utils/toggleFont.js +92 -0
  95. package/build/components/global-styles/font-library-modal/utils/toggleFont.js.map +1 -0
  96. package/build/components/global-styles/global-styles-provider.js +7 -12
  97. package/build/components/global-styles/global-styles-provider.js.map +1 -1
  98. package/build/components/global-styles/screen-block.js +34 -21
  99. package/build/components/global-styles/screen-block.js.map +1 -1
  100. package/build/components/global-styles/screen-revisions/index.js +1 -3
  101. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  102. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
  103. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  104. package/build/components/global-styles/screen-typography.js +4 -72
  105. package/build/components/global-styles/screen-typography.js.map +1 -1
  106. package/build/components/global-styles/style-variations-container.js +3 -5
  107. package/build/components/global-styles/style-variations-container.js.map +1 -1
  108. package/build/components/global-styles/typogrphy-elements.js +96 -0
  109. package/build/components/global-styles/typogrphy-elements.js.map +1 -0
  110. package/build/components/header-edit-mode/document-actions/index.js +9 -8
  111. package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
  112. package/build/components/header-edit-mode/index.js +4 -1
  113. package/build/components/header-edit-mode/index.js.map +1 -1
  114. package/build/components/layout/index.js +5 -1
  115. package/build/components/layout/index.js.map +1 -1
  116. package/build/components/list/added-by.js +13 -8
  117. package/build/components/list/added-by.js.map +1 -1
  118. package/build/components/list/index.js +2 -1
  119. package/build/components/list/index.js.map +1 -1
  120. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +2 -3
  121. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
  122. package/build/components/page-patterns/duplicate-menu-item.js +56 -20
  123. package/build/components/page-patterns/duplicate-menu-item.js.map +1 -1
  124. package/build/components/page-patterns/grid-item.js +48 -22
  125. package/build/components/page-patterns/grid-item.js.map +1 -1
  126. package/build/components/page-patterns/header.js +3 -7
  127. package/build/components/page-patterns/header.js.map +1 -1
  128. package/build/components/page-patterns/index.js +3 -3
  129. package/build/components/page-patterns/index.js.map +1 -1
  130. package/build/components/page-patterns/patterns-list.js +7 -7
  131. package/build/components/page-patterns/patterns-list.js.map +1 -1
  132. package/build/components/page-patterns/rename-menu-item.js +6 -5
  133. package/build/components/page-patterns/rename-menu-item.js.map +1 -1
  134. package/build/components/page-patterns/search-items.js +8 -2
  135. package/build/components/page-patterns/search-items.js.map +1 -1
  136. package/build/components/page-patterns/use-patterns.js +71 -51
  137. package/build/components/page-patterns/use-patterns.js.map +1 -1
  138. package/build/components/page-patterns/utils.js +1 -20
  139. package/build/components/page-patterns/utils.js.map +1 -1
  140. package/build/components/page-template-parts/add-new-template-part.js +3 -2
  141. package/build/components/page-template-parts/add-new-template-part.js.map +1 -1
  142. package/build/components/page-template-parts/index.js +2 -1
  143. package/build/components/page-template-parts/index.js.map +1 -1
  144. package/build/components/page-templates/index.js +3 -2
  145. package/build/components/page-templates/index.js.map +1 -1
  146. package/build/components/save-hub/index.js +2 -1
  147. package/build/components/save-hub/index.js.map +1 -1
  148. package/build/components/secondary-sidebar/list-view-sidebar.js +24 -17
  149. package/build/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
  150. package/build/components/sidebar-edit-mode/page-panels/edit-template.js +53 -26
  151. package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  152. package/build/components/sidebar-edit-mode/page-panels/hooks.js +65 -0
  153. package/build/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -0
  154. package/build/components/sidebar-edit-mode/page-panels/index.js +1 -4
  155. package/build/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  156. package/build/components/sidebar-edit-mode/page-panels/page-summary.js +2 -1
  157. package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  158. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js +56 -0
  159. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -0
  160. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js +91 -0
  161. package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -0
  162. package/build/components/sidebar-edit-mode/settings-header/index.js +2 -6
  163. package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
  164. package/build/components/sidebar-edit-mode/template-panel/index.js +11 -9
  165. package/build/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  166. package/build/components/sidebar-edit-mode/template-panel/last-revision.js +6 -4
  167. package/build/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
  168. package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js +218 -0
  169. package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -0
  170. package/build/components/sidebar-navigation-screen/index.js +6 -4
  171. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  172. package/build/components/sidebar-navigation-screen-details-footer/index.js +32 -4
  173. package/build/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
  174. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +4 -2
  175. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
  176. package/build/components/sidebar-navigation-screen-global-styles/index.js +4 -31
  177. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  178. package/build/components/sidebar-navigation-screen-navigation-menu/edit-button.js +2 -1
  179. package/build/components/sidebar-navigation-screen-navigation-menu/edit-button.js.map +1 -1
  180. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +2 -1
  181. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  182. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +3 -2
  183. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  184. package/build/components/sidebar-navigation-screen-page/index.js +3 -3
  185. package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
  186. package/build/components/sidebar-navigation-screen-page/page-details.js +2 -1
  187. package/build/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  188. package/build/components/sidebar-navigation-screen-pages/index.js +5 -4
  189. package/build/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  190. package/build/components/sidebar-navigation-screen-pattern/index.js +20 -9
  191. package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
  192. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +3 -2
  193. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
  194. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -1
  195. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
  196. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +2 -1
  197. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
  198. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +41 -11
  199. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  200. package/build/components/sidebar-navigation-screen-patterns/index.js +9 -37
  201. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  202. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +44 -5
  203. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  204. package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +7 -2
  205. package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -1
  206. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +2 -1
  207. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  208. package/build/components/sidebar-navigation-screen-template/home-template-details.js +2 -1
  209. package/build/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
  210. package/build/components/sidebar-navigation-screen-template/index.js +2 -2
  211. package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
  212. package/build/components/sidebar-navigation-screen-templates/index.js +5 -4
  213. package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  214. package/build/components/sidebar-navigation-screen-templates-browse/index.js +3 -2
  215. package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  216. package/build/components/start-template-options/index.js +20 -2
  217. package/build/components/start-template-options/index.js.map +1 -1
  218. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +5 -4
  219. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  220. package/build/components/sync-state-with-url/use-sync-path-with-url.js +4 -3
  221. package/build/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
  222. package/build/components/template-actions/index.js +8 -4
  223. package/build/components/template-actions/index.js.map +1 -1
  224. package/build/components/template-actions/rename-menu-item.js +9 -3
  225. package/build/components/template-actions/rename-menu-item.js.map +1 -1
  226. package/build/components/welcome-guide/styles.js +2 -2
  227. package/build/components/welcome-guide/styles.js.map +1 -1
  228. package/build/hooks/commands/use-edit-mode-commands.js +4 -3
  229. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  230. package/build/hooks/navigation-menu-edit.js +2 -1
  231. package/build/hooks/navigation-menu-edit.js.map +1 -1
  232. package/build/hooks/push-changes-to-global-styles/index.js +5 -37
  233. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  234. package/build/hooks/template-part-edit.js +2 -1
  235. package/build/hooks/template-part-edit.js.map +1 -1
  236. package/build/store/actions.js +38 -14
  237. package/build/store/actions.js.map +1 -1
  238. package/build/store/constants.js +1 -9
  239. package/build/store/constants.js.map +1 -1
  240. package/build/store/private-actions.js +21 -1
  241. package/build/store/private-actions.js.map +1 -1
  242. package/build/store/private-selectors.js +23 -0
  243. package/build/store/private-selectors.js.map +1 -1
  244. package/build/store/reducer.js +19 -1
  245. package/build/store/reducer.js.map +1 -1
  246. package/build/store/selectors.js +3 -2
  247. package/build/store/selectors.js.map +1 -1
  248. package/build/utils/constants.js +64 -2
  249. package/build/utils/constants.js.map +1 -1
  250. package/build/utils/is-template-removable.js +6 -1
  251. package/build/utils/is-template-removable.js.map +1 -1
  252. package/build/utils/is-template-revertable.js +6 -1
  253. package/build/utils/is-template-revertable.js.map +1 -1
  254. package/build/utils/template-part-create.js +6 -1
  255. package/build/utils/template-part-create.js.map +1 -1
  256. package/build-module/components/add-new-pattern/index.js +69 -8
  257. package/build-module/components/add-new-pattern/index.js.map +1 -1
  258. package/build-module/components/add-new-template/index.js +3 -2
  259. package/build-module/components/add-new-template/index.js.map +1 -1
  260. package/build-module/components/add-new-template/new-template.js +6 -1
  261. package/build-module/components/add-new-template/new-template.js.map +1 -1
  262. package/build-module/components/add-new-template/utils.js +6 -1
  263. package/build-module/components/add-new-template/utils.js.map +1 -1
  264. package/build-module/components/app/index.js +2 -7
  265. package/build-module/components/app/index.js.map +1 -1
  266. package/build-module/components/block-editor/back-button.js +3 -2
  267. package/build-module/components/block-editor/back-button.js.map +1 -1
  268. package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js +65 -0
  269. package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +1 -0
  270. package/build-module/components/block-editor/block-editor-provider/index.js +23 -0
  271. package/build-module/components/block-editor/block-editor-provider/index.js.map +1 -0
  272. package/build-module/components/block-editor/{providers → block-editor-provider}/navigation-block-editor-provider.js +2 -1
  273. package/build-module/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +1 -0
  274. package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js +70 -0
  275. package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +1 -0
  276. package/build-module/components/block-editor/editor-canvas.js +21 -17
  277. package/build-module/components/block-editor/editor-canvas.js.map +1 -1
  278. package/build-module/components/block-editor/index.js +1 -8
  279. package/build-module/components/block-editor/index.js.map +1 -1
  280. package/build-module/components/block-editor/site-editor-canvas.js +5 -7
  281. package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
  282. package/build-module/components/block-editor/use-site-editor-settings.js +8 -4
  283. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  284. package/build-module/components/canvas-loader/index.js +18 -1
  285. package/build-module/components/canvas-loader/index.js.map +1 -1
  286. package/build-module/components/create-template-part-modal/index.js +8 -12
  287. package/build-module/components/create-template-part-modal/index.js.map +1 -1
  288. package/build-module/components/editor/index.js +7 -9
  289. package/build-module/components/editor/index.js.map +1 -1
  290. package/build-module/components/global-styles/dimensions-panel.js +5 -4
  291. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  292. package/build-module/components/global-styles/font-families.js +58 -0
  293. package/build-module/components/global-styles/font-families.js.map +1 -0
  294. package/build-module/components/global-styles/font-family-item.js +40 -0
  295. package/build-module/components/global-styles/font-family-item.js.map +1 -0
  296. package/build-module/components/global-styles/font-library-modal/collection-font-details.js +40 -0
  297. package/build-module/components/global-styles/font-library-modal/collection-font-details.js.map +1 -0
  298. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js +45 -0
  299. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -0
  300. package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js +23 -0
  301. package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -0
  302. package/build-module/components/global-styles/font-library-modal/context.js +300 -0
  303. package/build-module/components/global-styles/font-library-modal/context.js.map +1 -0
  304. package/build-module/components/global-styles/font-library-modal/font-card.js +52 -0
  305. package/build-module/components/global-styles/font-library-modal/font-card.js.map +1 -0
  306. package/build-module/components/global-styles/font-library-modal/font-collection.js +164 -0
  307. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -0
  308. package/build-module/components/global-styles/font-library-modal/font-demo.js +79 -0
  309. package/build-module/components/global-styles/font-library-modal/font-demo.js.map +1 -0
  310. package/build-module/components/global-styles/font-library-modal/font-variant.js +42 -0
  311. package/build-module/components/global-styles/font-library-modal/font-variant.js.map +1 -0
  312. package/build-module/components/global-styles/font-library-modal/fonts-grid.js +47 -0
  313. package/build-module/components/global-styles/font-library-modal/fonts-grid.js.map +1 -0
  314. package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +33 -0
  315. package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -0
  316. package/build-module/components/global-styles/font-library-modal/index.js +57 -0
  317. package/build-module/components/global-styles/font-library-modal/index.js.map +1 -0
  318. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +120 -0
  319. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -0
  320. package/build-module/components/global-styles/font-library-modal/library-font-card.js +31 -0
  321. package/build-module/components/global-styles/font-library-modal/library-font-card.js.map +1 -0
  322. package/build-module/components/global-styles/font-library-modal/library-font-details.js +35 -0
  323. package/build-module/components/global-styles/font-library-modal/library-font-details.js.map +1 -0
  324. package/build-module/components/global-styles/font-library-modal/library-font-variant.js +50 -0
  325. package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +1 -0
  326. package/build-module/components/global-styles/font-library-modal/local-fonts.js +135 -0
  327. package/build-module/components/global-styles/font-library-modal/local-fonts.js.map +1 -0
  328. package/build-module/components/global-styles/font-library-modal/resolvers.js +42 -0
  329. package/build-module/components/global-styles/font-library-modal/resolvers.js.map +1 -0
  330. package/build-module/components/global-styles/font-library-modal/tab-layout.js +37 -0
  331. package/build-module/components/global-styles/font-library-modal/tab-layout.js.map +1 -0
  332. package/build-module/components/global-styles/font-library-modal/utils/constants.js +21 -0
  333. package/build-module/components/global-styles/font-library-modal/utils/constants.js.map +1 -0
  334. package/build-module/components/global-styles/font-library-modal/utils/filter-fonts.js +15 -0
  335. package/build-module/components/global-styles/font-library-modal/utils/filter-fonts.js.map +1 -0
  336. package/build-module/components/global-styles/font-library-modal/utils/fonts-outline.js +13 -0
  337. package/build-module/components/global-styles/font-library-modal/utils/fonts-outline.js.map +1 -0
  338. package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +52 -0
  339. package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -0
  340. package/build-module/components/global-styles/font-library-modal/utils/index.js +141 -0
  341. package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -0
  342. package/build-module/components/global-styles/font-library-modal/utils/make-families-from-faces.js +16 -0
  343. package/build-module/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +1 -0
  344. package/build-module/components/global-styles/font-library-modal/utils/preview-styles.js +68 -0
  345. package/build-module/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -0
  346. package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js +30 -0
  347. package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -0
  348. package/build-module/components/global-styles/font-library-modal/utils/toggleFont.js +86 -0
  349. package/build-module/components/global-styles/font-library-modal/utils/toggleFont.js.map +1 -0
  350. package/build-module/components/global-styles/global-styles-provider.js +7 -12
  351. package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
  352. package/build-module/components/global-styles/screen-block.js +34 -21
  353. package/build-module/components/global-styles/screen-block.js.map +1 -1
  354. package/build-module/components/global-styles/screen-revisions/index.js +1 -3
  355. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  356. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
  357. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  358. package/build-module/components/global-styles/screen-typography.js +6 -74
  359. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  360. package/build-module/components/global-styles/style-variations-container.js +3 -5
  361. package/build-module/components/global-styles/style-variations-container.js.map +1 -1
  362. package/build-module/components/global-styles/typogrphy-elements.js +87 -0
  363. package/build-module/components/global-styles/typogrphy-elements.js.map +1 -0
  364. package/build-module/components/header-edit-mode/document-actions/index.js +9 -8
  365. package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
  366. package/build-module/components/header-edit-mode/index.js +4 -1
  367. package/build-module/components/header-edit-mode/index.js.map +1 -1
  368. package/build-module/components/layout/index.js +5 -1
  369. package/build-module/components/layout/index.js.map +1 -1
  370. package/build-module/components/list/added-by.js +13 -8
  371. package/build-module/components/list/added-by.js.map +1 -1
  372. package/build-module/components/list/index.js +2 -1
  373. package/build-module/components/list/index.js.map +1 -1
  374. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js +2 -3
  375. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
  376. package/build-module/components/page-patterns/duplicate-menu-item.js +55 -20
  377. package/build-module/components/page-patterns/duplicate-menu-item.js.map +1 -1
  378. package/build-module/components/page-patterns/grid-item.js +49 -23
  379. package/build-module/components/page-patterns/grid-item.js.map +1 -1
  380. package/build-module/components/page-patterns/header.js +3 -7
  381. package/build-module/components/page-patterns/header.js.map +1 -1
  382. package/build-module/components/page-patterns/index.js +3 -3
  383. package/build-module/components/page-patterns/index.js.map +1 -1
  384. package/build-module/components/page-patterns/patterns-list.js +7 -7
  385. package/build-module/components/page-patterns/patterns-list.js.map +1 -1
  386. package/build-module/components/page-patterns/rename-menu-item.js +6 -5
  387. package/build-module/components/page-patterns/rename-menu-item.js.map +1 -1
  388. package/build-module/components/page-patterns/search-items.js +8 -2
  389. package/build-module/components/page-patterns/search-items.js.map +1 -1
  390. package/build-module/components/page-patterns/use-patterns.js +71 -52
  391. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  392. package/build-module/components/page-patterns/utils.js +0 -11
  393. package/build-module/components/page-patterns/utils.js.map +1 -1
  394. package/build-module/components/page-template-parts/add-new-template-part.js +3 -2
  395. package/build-module/components/page-template-parts/add-new-template-part.js.map +1 -1
  396. package/build-module/components/page-template-parts/index.js +2 -1
  397. package/build-module/components/page-template-parts/index.js.map +1 -1
  398. package/build-module/components/page-templates/index.js +3 -2
  399. package/build-module/components/page-templates/index.js.map +1 -1
  400. package/build-module/components/save-hub/index.js +2 -1
  401. package/build-module/components/save-hub/index.js.map +1 -1
  402. package/build-module/components/secondary-sidebar/list-view-sidebar.js +26 -19
  403. package/build-module/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
  404. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +54 -29
  405. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  406. package/build-module/components/sidebar-edit-mode/page-panels/hooks.js +55 -0
  407. package/build-module/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -0
  408. package/build-module/components/sidebar-edit-mode/page-panels/index.js +1 -4
  409. package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  410. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +2 -1
  411. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  412. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js +49 -0
  413. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -0
  414. package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js +85 -0
  415. package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -0
  416. package/build-module/components/sidebar-edit-mode/settings-header/index.js +2 -6
  417. package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
  418. package/build-module/components/sidebar-edit-mode/template-panel/index.js +12 -10
  419. package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  420. package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js +8 -6
  421. package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
  422. package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js +209 -0
  423. package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -0
  424. package/build-module/components/sidebar-navigation-screen/index.js +6 -4
  425. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  426. package/build-module/components/sidebar-navigation-screen-details-footer/index.js +32 -5
  427. package/build-module/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
  428. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +4 -2
  429. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
  430. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +6 -33
  431. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  432. package/build-module/components/sidebar-navigation-screen-navigation-menu/edit-button.js +2 -1
  433. package/build-module/components/sidebar-navigation-screen-navigation-menu/edit-button.js.map +1 -1
  434. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +3 -1
  435. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  436. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +3 -2
  437. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  438. package/build-module/components/sidebar-navigation-screen-page/index.js +3 -3
  439. package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
  440. package/build-module/components/sidebar-navigation-screen-page/page-details.js +2 -1
  441. package/build-module/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  442. package/build-module/components/sidebar-navigation-screen-pages/index.js +5 -4
  443. package/build-module/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  444. package/build-module/components/sidebar-navigation-screen-pattern/index.js +21 -10
  445. package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
  446. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +3 -2
  447. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
  448. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -1
  449. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
  450. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +2 -1
  451. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
  452. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +41 -11
  453. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  454. package/build-module/components/sidebar-navigation-screen-patterns/index.js +12 -40
  455. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  456. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +44 -5
  457. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  458. package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +7 -2
  459. package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -1
  460. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +3 -2
  461. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  462. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js +2 -1
  463. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
  464. package/build-module/components/sidebar-navigation-screen-template/index.js +2 -2
  465. package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
  466. package/build-module/components/sidebar-navigation-screen-templates/index.js +5 -4
  467. package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  468. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +3 -2
  469. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  470. package/build-module/components/start-template-options/index.js +20 -2
  471. package/build-module/components/start-template-options/index.js.map +1 -1
  472. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +5 -4
  473. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  474. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js +4 -3
  475. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
  476. package/build-module/components/template-actions/index.js +8 -4
  477. package/build-module/components/template-actions/index.js.map +1 -1
  478. package/build-module/components/template-actions/rename-menu-item.js +9 -3
  479. package/build-module/components/template-actions/rename-menu-item.js.map +1 -1
  480. package/build-module/components/welcome-guide/styles.js +2 -2
  481. package/build-module/components/welcome-guide/styles.js.map +1 -1
  482. package/build-module/hooks/commands/use-edit-mode-commands.js +4 -3
  483. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  484. package/build-module/hooks/navigation-menu-edit.js +2 -1
  485. package/build-module/hooks/navigation-menu-edit.js.map +1 -1
  486. package/build-module/hooks/push-changes-to-global-styles/index.js +5 -37
  487. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  488. package/build-module/hooks/template-part-edit.js +2 -1
  489. package/build-module/hooks/template-part-edit.js.map +1 -1
  490. package/build-module/store/actions.js +39 -16
  491. package/build-module/store/actions.js.map +1 -1
  492. package/build-module/store/constants.js +0 -4
  493. package/build-module/store/constants.js.map +1 -1
  494. package/build-module/store/private-actions.js +19 -0
  495. package/build-module/store/private-actions.js.map +1 -1
  496. package/build-module/store/private-selectors.js +22 -0
  497. package/build-module/store/private-selectors.js.map +1 -1
  498. package/build-module/store/reducer.js +18 -1
  499. package/build-module/store/reducer.js.map +1 -1
  500. package/build-module/store/selectors.js +3 -3
  501. package/build-module/store/selectors.js.map +1 -1
  502. package/build-module/utils/constants.js +51 -1
  503. package/build-module/utils/constants.js.map +1 -1
  504. package/build-module/utils/is-template-removable.js +6 -1
  505. package/build-module/utils/is-template-removable.js.map +1 -1
  506. package/build-module/utils/is-template-revertable.js +6 -1
  507. package/build-module/utils/is-template-revertable.js.map +1 -1
  508. package/build-module/utils/template-part-create.js +6 -1
  509. package/build-module/utils/template-part-create.js.map +1 -1
  510. package/build-style/style-rtl.css +267 -37
  511. package/build-style/style.css +267 -37
  512. package/lib/inflate.js +4082 -0
  513. package/lib/lib-font.browser.js +3831 -0
  514. package/lib/unbrotli.js +2679 -0
  515. package/package.json +40 -40
  516. package/src/components/add-new-pattern/index.js +86 -8
  517. package/src/components/add-new-template/index.js +3 -2
  518. package/src/components/add-new-template/new-template.js +6 -1
  519. package/src/components/add-new-template/utils.js +12 -3
  520. package/src/components/app/index.js +9 -12
  521. package/src/components/block-editor/back-button.js +6 -2
  522. package/src/components/block-editor/block-editor-provider/default-block-editor-provider.js +70 -0
  523. package/src/components/block-editor/block-editor-provider/index.js +29 -0
  524. package/src/components/block-editor/{providers → block-editor-provider}/navigation-block-editor-provider.js +2 -1
  525. package/src/components/block-editor/block-editor-provider/test/use-page-content-blocks.js +87 -0
  526. package/src/components/block-editor/block-editor-provider/use-page-content-blocks.js +77 -0
  527. package/src/components/block-editor/editor-canvas.js +31 -19
  528. package/src/components/block-editor/index.js +1 -14
  529. package/src/components/block-editor/site-editor-canvas.js +7 -12
  530. package/src/components/block-editor/style.scss +88 -1
  531. package/src/components/block-editor/use-site-editor-settings.js +26 -19
  532. package/src/components/canvas-loader/index.js +12 -1
  533. package/src/components/canvas-loader/style.scss +1 -1
  534. package/src/components/create-template-part-modal/index.js +11 -12
  535. package/src/components/editor/index.js +9 -10
  536. package/src/components/global-styles/dimensions-panel.js +8 -4
  537. package/src/components/global-styles/font-families.js +71 -0
  538. package/src/components/global-styles/font-family-item.js +44 -0
  539. package/src/components/global-styles/font-library-modal/collection-font-details.js +56 -0
  540. package/src/components/global-styles/font-library-modal/collection-font-variant.js +45 -0
  541. package/src/components/global-styles/font-library-modal/confirm-delete-dialog.js +33 -0
  542. package/src/components/global-styles/font-library-modal/context.js +378 -0
  543. package/src/components/global-styles/font-library-modal/font-card.js +75 -0
  544. package/src/components/global-styles/font-library-modal/font-collection.js +257 -0
  545. package/src/components/global-styles/font-library-modal/font-demo.js +83 -0
  546. package/src/components/global-styles/font-library-modal/font-variant.js +53 -0
  547. package/src/components/global-styles/font-library-modal/fonts-grid.js +55 -0
  548. package/src/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +50 -0
  549. package/src/components/global-styles/font-library-modal/index.js +67 -0
  550. package/src/components/global-styles/font-library-modal/installed-fonts.js +174 -0
  551. package/src/components/global-styles/font-library-modal/library-font-card.js +33 -0
  552. package/src/components/global-styles/font-library-modal/library-font-details.js +45 -0
  553. package/src/components/global-styles/font-library-modal/library-font-variant.js +54 -0
  554. package/src/components/global-styles/font-library-modal/local-fonts.js +160 -0
  555. package/src/components/global-styles/font-library-modal/resolvers.js +45 -0
  556. package/src/components/global-styles/font-library-modal/style.scss +139 -0
  557. package/src/components/global-styles/font-library-modal/tab-layout.js +50 -0
  558. package/src/components/global-styles/font-library-modal/utils/constants.js +23 -0
  559. package/src/components/global-styles/font-library-modal/utils/filter-fonts.js +18 -0
  560. package/src/components/global-styles/font-library-modal/utils/fonts-outline.js +21 -0
  561. package/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +58 -0
  562. package/src/components/global-styles/font-library-modal/utils/index.js +153 -0
  563. package/src/components/global-styles/font-library-modal/utils/make-families-from-faces.js +15 -0
  564. package/src/components/global-styles/font-library-modal/utils/preview-styles.js +86 -0
  565. package/src/components/global-styles/font-library-modal/utils/sort-font-faces.js +33 -0
  566. package/src/components/global-styles/font-library-modal/utils/test/filter-fonts.spec.js +69 -0
  567. package/src/components/global-styles/font-library-modal/utils/test/fonts-outline.spec.js +109 -0
  568. package/src/components/global-styles/font-library-modal/utils/test/getDisplaySrcFromFontFace.spec.js +53 -0
  569. package/src/components/global-styles/font-library-modal/utils/test/getFontFaceVariantName.spec.js +30 -0
  570. package/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js +240 -0
  571. package/src/components/global-styles/font-library-modal/utils/test/isUrlEncoded.spec.js +31 -0
  572. package/src/components/global-styles/font-library-modal/utils/test/makeFamiliesFromFaces.spec.js +57 -0
  573. package/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js +62 -0
  574. package/src/components/global-styles/font-library-modal/utils/test/mergeFontFaces.spec.js +56 -0
  575. package/src/components/global-styles/font-library-modal/utils/test/mergeFontFamilies.spec.js +108 -0
  576. package/src/components/global-styles/font-library-modal/utils/test/preview-styles.spec.js +161 -0
  577. package/src/components/global-styles/font-library-modal/utils/test/setUIValuesNeeded.spec.js +41 -0
  578. package/src/components/global-styles/font-library-modal/utils/test/sort-font-faces.js +74 -0
  579. package/src/components/global-styles/font-library-modal/utils/test/toggleFont.spec.js +141 -0
  580. package/src/components/global-styles/font-library-modal/utils/toggleFont.js +90 -0
  581. package/src/components/global-styles/global-styles-provider.js +2 -7
  582. package/src/components/global-styles/screen-block.js +42 -20
  583. package/src/components/global-styles/screen-revisions/index.js +0 -2
  584. package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
  585. package/src/components/global-styles/screen-typography.js +9 -95
  586. package/src/components/global-styles/style-variations-container.js +0 -2
  587. package/src/components/global-styles/typogrphy-elements.js +110 -0
  588. package/src/components/header-edit-mode/document-actions/index.js +17 -8
  589. package/src/components/header-edit-mode/index.js +2 -1
  590. package/src/components/layout/index.js +10 -1
  591. package/src/components/list/added-by.js +29 -11
  592. package/src/components/list/index.js +7 -1
  593. package/src/components/list/style.scss +2 -0
  594. package/src/components/page-content-focus-manager/disable-non-page-content-blocks.js +2 -8
  595. package/src/components/page-patterns/duplicate-menu-item.js +67 -24
  596. package/src/components/page-patterns/grid-item.js +80 -33
  597. package/src/components/page-patterns/header.js +3 -12
  598. package/src/components/page-patterns/index.js +3 -3
  599. package/src/components/page-patterns/patterns-list.js +7 -7
  600. package/src/components/page-patterns/rename-menu-item.js +18 -7
  601. package/src/components/page-patterns/search-items.js +20 -2
  602. package/src/components/page-patterns/style.scss +1 -5
  603. package/src/components/page-patterns/use-patterns.js +217 -127
  604. package/src/components/page-patterns/utils.js +0 -19
  605. package/src/components/page-template-parts/add-new-template-part.js +5 -2
  606. package/src/components/page-template-parts/index.js +2 -1
  607. package/src/components/page-templates/index.js +3 -2
  608. package/src/components/save-hub/index.js +2 -1
  609. package/src/components/secondary-sidebar/list-view-sidebar.js +31 -26
  610. package/src/components/sidebar-edit-mode/page-panels/edit-template.js +94 -52
  611. package/src/components/sidebar-edit-mode/page-panels/hooks.js +88 -0
  612. package/src/components/sidebar-edit-mode/page-panels/index.js +0 -4
  613. package/src/components/sidebar-edit-mode/page-panels/page-summary.js +2 -0
  614. package/src/components/sidebar-edit-mode/page-panels/reset-default-template.js +44 -0
  615. package/src/components/sidebar-edit-mode/page-panels/style.scss +46 -9
  616. package/src/components/sidebar-edit-mode/page-panels/swap-template-button.js +82 -0
  617. package/src/components/sidebar-edit-mode/settings-header/index.js +4 -7
  618. package/src/components/sidebar-edit-mode/template-panel/index.js +28 -24
  619. package/src/components/sidebar-edit-mode/template-panel/last-revision.js +19 -15
  620. package/src/components/sidebar-edit-mode/template-panel/pattern-categories.js +277 -0
  621. package/src/components/sidebar-navigation-screen/index.js +4 -9
  622. package/src/components/sidebar-navigation-screen/style.scss +7 -1
  623. package/src/components/sidebar-navigation-screen-details-footer/index.js +38 -10
  624. package/src/components/sidebar-navigation-screen-details-footer/style.scss +10 -3
  625. package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -0
  626. package/src/components/sidebar-navigation-screen-global-styles/index.js +6 -44
  627. package/src/components/sidebar-navigation-screen-navigation-menu/edit-button.js +2 -1
  628. package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +3 -1
  629. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +3 -2
  630. package/src/components/sidebar-navigation-screen-navigation-menus/style.scss +0 -4
  631. package/src/components/sidebar-navigation-screen-page/index.js +3 -3
  632. package/src/components/sidebar-navigation-screen-page/page-details.js +2 -1
  633. package/src/components/sidebar-navigation-screen-pages/index.js +5 -4
  634. package/src/components/sidebar-navigation-screen-pattern/index.js +22 -8
  635. package/src/components/sidebar-navigation-screen-pattern/style.scss +0 -3
  636. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +8 -2
  637. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +7 -1
  638. package/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +2 -1
  639. package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +63 -20
  640. package/src/components/sidebar-navigation-screen-patterns/index.js +20 -51
  641. package/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +61 -6
  642. package/src/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +12 -2
  643. package/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +3 -5
  644. package/src/components/sidebar-navigation-screen-template/home-template-details.js +2 -1
  645. package/src/components/sidebar-navigation-screen-template/index.js +2 -4
  646. package/src/components/sidebar-navigation-screen-templates/index.js +5 -4
  647. package/src/components/sidebar-navigation-screen-templates-browse/index.js +6 -2
  648. package/src/components/start-template-options/index.js +39 -2
  649. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +10 -4
  650. package/src/components/sync-state-with-url/use-sync-path-with-url.js +8 -3
  651. package/src/components/template-actions/index.js +15 -8
  652. package/src/components/template-actions/rename-menu-item.js +21 -5
  653. package/src/components/welcome-guide/styles.js +2 -2
  654. package/src/hooks/commands/use-edit-mode-commands.js +4 -3
  655. package/src/hooks/navigation-menu-edit.js +2 -1
  656. package/src/hooks/push-changes-to-global-styles/index.js +6 -49
  657. package/src/hooks/template-part-edit.js +2 -1
  658. package/src/store/actions.js +56 -22
  659. package/src/store/constants.js +0 -5
  660. package/src/store/private-actions.js +19 -0
  661. package/src/store/private-selectors.js +22 -0
  662. package/src/store/reducer.js +18 -0
  663. package/src/store/selectors.js +6 -3
  664. package/src/store/test/reducer.js +18 -0
  665. package/src/style.scss +1 -1
  666. package/src/utils/constants.js +54 -3
  667. package/src/utils/is-template-removable.js +8 -1
  668. package/src/utils/is-template-revertable.js +8 -1
  669. package/src/utils/template-part-create.js +6 -1
  670. package/build/components/block-editor/get-block-editor-provider.js +0 -35
  671. package/build/components/block-editor/get-block-editor-provider.js.map +0 -1
  672. package/build/components/block-editor/providers/default-block-editor-provider.js +0 -49
  673. package/build/components/block-editor/providers/default-block-editor-provider.js.map +0 -1
  674. package/build/components/block-editor/providers/navigation-block-editor-provider.js.map +0 -1
  675. package/build/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -30
  676. package/build/components/sidebar-navigation-screen-patterns/use-my-patterns.js.map +0 -1
  677. package/build-module/components/block-editor/get-block-editor-provider.js +0 -28
  678. package/build-module/components/block-editor/get-block-editor-provider.js.map +0 -1
  679. package/build-module/components/block-editor/providers/default-block-editor-provider.js +0 -41
  680. package/build-module/components/block-editor/providers/default-block-editor-provider.js.map +0 -1
  681. package/build-module/components/block-editor/providers/navigation-block-editor-provider.js.map +0 -1
  682. package/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -23
  683. package/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.js.map +0 -1
  684. package/src/components/block-editor/get-block-editor-provider.js +0 -29
  685. package/src/components/block-editor/providers/default-block-editor-provider.js +0 -44
  686. package/src/components/sidebar-navigation-screen-global-styles/style.scss +0 -12
  687. package/src/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -24
@@ -2,12 +2,12 @@ import { createElement, Fragment } from "@wordpress/element";
2
2
  /**
3
3
  * WordPress dependencies
4
4
  */
5
- import { __experimentalItemGroup as ItemGroup, __experimentalItem as Item, Flex, Icon, Tooltip, __experimentalHeading as Heading } from '@wordpress/components';
5
+ import { __experimentalItemGroup as ItemGroup, __experimentalItem as Item, __experimentalHeading as Heading } from '@wordpress/components';
6
6
  import { useViewportMatch } from '@wordpress/compose';
7
7
  import { getTemplatePartIcon } from '@wordpress/editor';
8
- import { __, sprintf } from '@wordpress/i18n';
8
+ import { __ } from '@wordpress/i18n';
9
9
  import { getQueryArgs } from '@wordpress/url';
10
- import { file, starFilled, lockSmall } from '@wordpress/icons';
10
+ import { file } from '@wordpress/icons';
11
11
 
12
12
  /**
13
13
  * Internal dependencies
@@ -16,10 +16,9 @@ import AddNewPattern from '../add-new-pattern';
16
16
  import SidebarNavigationItem from '../sidebar-navigation-item';
17
17
  import SidebarNavigationScreen from '../sidebar-navigation-screen';
18
18
  import CategoryItem from './category-item';
19
- import { DEFAULT_CATEGORY, DEFAULT_TYPE } from '../page-patterns/utils';
19
+ import { PATTERN_DEFAULT_CATEGORY, PATTERN_TYPES, TEMPLATE_PART_POST_TYPE } from '../../utils/constants';
20
20
  import { useLink } from '../routes/link';
21
21
  import usePatternCategories from './use-pattern-categories';
22
- import useMyPatterns from './use-my-patterns';
23
22
  import useTemplatePartAreas from './use-template-part-areas';
24
23
  function TemplatePartGroup({
25
24
  areas,
@@ -41,11 +40,11 @@ function TemplatePartGroup({
41
40
  icon: getTemplatePartIcon(area),
42
41
  label: label,
43
42
  id: area,
44
- type: "wp_template_part",
45
- isActive: currentArea === area && currentType === 'wp_template_part'
43
+ type: TEMPLATE_PART_POST_TYPE,
44
+ isActive: currentArea === area && currentType === TEMPLATE_PART_POST_TYPE
46
45
  }))));
47
46
  }
48
- function ThemePatternsGroup({
47
+ function PatternCategoriesGroup({
49
48
  categories,
50
49
  currentCategory,
51
50
  currentType
@@ -55,25 +54,11 @@ function ThemePatternsGroup({
55
54
  }, categories.map(category => createElement(CategoryItem, {
56
55
  key: category.name,
57
56
  count: category.count,
58
- label: createElement(Flex, {
59
- justify: "left",
60
- align: "center",
61
- gap: 0
62
- }, category.label, createElement(Tooltip, {
63
- position: "top center",
64
- text: sprintf(
65
- // translators: %s: The pattern category name.
66
- '"%s" patterns cannot be edited.', category.label)
67
- }, createElement("span", {
68
- className: "edit-site-sidebar-navigation-screen-pattern__lock-icon"
69
- }, createElement(Icon, {
70
- icon: lockSmall,
71
- size: 24
72
- })))),
57
+ label: category.label,
73
58
  icon: file,
74
59
  id: category.name,
75
60
  type: "pattern",
76
- isActive: currentCategory === `${category.name}` && currentType === 'pattern'
61
+ isActive: currentCategory === `${category.name}` && (currentType === PATTERN_TYPES.theme || currentType === PATTERN_TYPES.user)
77
62
  }))));
78
63
  }
79
64
  export default function SidebarNavigationScreenPatterns() {
@@ -82,8 +67,8 @@ export default function SidebarNavigationScreenPatterns() {
82
67
  categoryType,
83
68
  categoryId
84
69
  } = getQueryArgs(window.location.href);
85
- const currentCategory = categoryId || DEFAULT_CATEGORY;
86
- const currentType = categoryType || DEFAULT_TYPE;
70
+ const currentCategory = categoryId || PATTERN_DEFAULT_CATEGORY;
71
+ const currentType = categoryType || PATTERN_TYPES.theme;
87
72
  const {
88
73
  templatePartAreas,
89
74
  hasTemplateParts,
@@ -93,9 +78,6 @@ export default function SidebarNavigationScreenPatterns() {
93
78
  patternCategories,
94
79
  hasPatterns
95
80
  } = usePatternCategories();
96
- const {
97
- myPatterns
98
- } = useMyPatterns();
99
81
  const templatePartsLink = useLink({
100
82
  path: '/wp_template_part/all'
101
83
  });
@@ -114,17 +96,7 @@ export default function SidebarNavigationScreenPatterns() {
114
96
  footer: footer,
115
97
  content: createElement(Fragment, null, isLoading && __('Loading patterns…'), !isLoading && createElement(Fragment, null, !hasTemplateParts && !hasPatterns && createElement(ItemGroup, {
116
98
  className: "edit-site-sidebar-navigation-screen-patterns__group"
117
- }, createElement(Item, null, __('No template parts or patterns found'))), createElement(ItemGroup, {
118
- className: "edit-site-sidebar-navigation-screen-patterns__group"
119
- }, createElement(CategoryItem, {
120
- key: myPatterns.name,
121
- count: !myPatterns.count ? '0' : myPatterns.count,
122
- label: myPatterns.label,
123
- icon: starFilled,
124
- id: myPatterns.name,
125
- type: "wp_block",
126
- isActive: currentCategory === `${myPatterns.name}` && currentType === 'wp_block'
127
- })), hasPatterns && createElement(ThemePatternsGroup, {
99
+ }, createElement(Item, null, __('No template parts or patterns found'))), hasPatterns && createElement(PatternCategoriesGroup, {
128
100
  categories: patternCategories,
129
101
  currentCategory: currentCategory,
130
102
  currentType: currentType
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalItemGroup","ItemGroup","__experimentalItem","Item","Flex","Icon","Tooltip","__experimentalHeading","Heading","useViewportMatch","getTemplatePartIcon","__","sprintf","getQueryArgs","file","starFilled","lockSmall","AddNewPattern","SidebarNavigationItem","SidebarNavigationScreen","CategoryItem","DEFAULT_CATEGORY","DEFAULT_TYPE","useLink","usePatternCategories","useMyPatterns","useTemplatePartAreas","TemplatePartGroup","areas","currentArea","currentType","createElement","Fragment","className","level","Object","entries","map","area","label","templateParts","key","count","length","icon","id","type","isActive","ThemePatternsGroup","categories","currentCategory","category","name","justify","align","gap","position","text","size","SidebarNavigationScreenPatterns","isMobileViewport","categoryType","categoryId","window","location","href","templatePartAreas","hasTemplateParts","isLoading","patternCategories","hasPatterns","myPatterns","templatePartsLink","path","footer","as","withChevron","undefined","title","description","actions","content"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\tFlex,\n\tIcon,\n\tTooltip,\n\t__experimentalHeading as Heading,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { getTemplatePartIcon } from '@wordpress/editor';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { getQueryArgs } from '@wordpress/url';\nimport { file, starFilled, lockSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport AddNewPattern from '../add-new-pattern';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport CategoryItem from './category-item';\nimport { DEFAULT_CATEGORY, DEFAULT_TYPE } from '../page-patterns/utils';\nimport { useLink } from '../routes/link';\nimport usePatternCategories from './use-pattern-categories';\nimport useMyPatterns from './use-my-patterns';\nimport useTemplatePartAreas from './use-template-part-areas';\n\nfunction TemplatePartGroup( { areas, currentArea, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-patterns__group-header\">\n\t\t\t\t<Heading level={ 2 }>{ __( 'Template parts' ) }</Heading>\n\t\t\t</div>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ Object.entries( areas ).map(\n\t\t\t\t\t( [ area, { label, templateParts } ] ) => (\n\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\tkey={ area }\n\t\t\t\t\t\t\tcount={ templateParts?.length }\n\t\t\t\t\t\t\ticon={ getTemplatePartIcon( area ) }\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tid={ area }\n\t\t\t\t\t\t\ttype=\"wp_template_part\"\n\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\tcurrentArea === area &&\n\t\t\t\t\t\t\t\tcurrentType === 'wp_template_part'\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</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ThemePatternsGroup( { categories, currentCategory, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\tcount={ category.count }\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t<Flex justify=\"left\" align=\"center\" gap={ 0 }>\n\t\t\t\t\t\t\t\t{ category.label }\n\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\ttext={ sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The pattern category name.\n\t\t\t\t\t\t\t\t\t\t'\"%s\" patterns cannot be edited.',\n\t\t\t\t\t\t\t\t\t\tcategory.label\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-pattern__lock-icon\">\n\t\t\t\t\t\t\t\t\t\t<Icon icon={ lockSmall } size={ 24 } />\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ticon={ file }\n\t\t\t\t\t\tid={ category.name }\n\t\t\t\t\t\ttype=\"pattern\"\n\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\tcurrentCategory === `${ category.name }` &&\n\t\t\t\t\t\t\tcurrentType === 'pattern'\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nexport default function SidebarNavigationScreenPatterns() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst { categoryType, categoryId } = getQueryArgs( window.location.href );\n\tconst currentCategory = categoryId || DEFAULT_CATEGORY;\n\tconst currentType = categoryType || DEFAULT_TYPE;\n\n\tconst { templatePartAreas, hasTemplateParts, isLoading } =\n\t\tuseTemplatePartAreas();\n\tconst { patternCategories, hasPatterns } = usePatternCategories();\n\tconst { myPatterns } = useMyPatterns();\n\n\tconst templatePartsLink = useLink( { path: '/wp_template_part/all' } );\n\tconst footer = ! isMobileViewport ? (\n\t\t<ItemGroup>\n\t\t\t<SidebarNavigationItem\n\t\t\t\tas=\"a\"\n\t\t\t\thref=\"edit.php?post_type=wp_block\"\n\t\t\t\twithChevron\n\t\t\t>\n\t\t\t\t{ __( 'Manage all of my patterns' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t\t<SidebarNavigationItem withChevron { ...templatePartsLink }>\n\t\t\t\t{ __( 'Manage all template parts' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t</ItemGroup>\n\t) : undefined;\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ __( 'Patterns' ) }\n\t\t\tdescription={ __(\n\t\t\t\t'Manage what patterns are available when editing the site.'\n\t\t\t) }\n\t\t\tactions={ <AddNewPattern /> }\n\t\t\tfooter={ footer }\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ isLoading && __( 'Loading patterns…' ) }\n\t\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! hasTemplateParts && ! hasPatterns && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t<Item>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'No template parts or patterns found'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Item>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\t\t\tkey={ myPatterns.name }\n\t\t\t\t\t\t\t\t\tcount={\n\t\t\t\t\t\t\t\t\t\t! myPatterns.count\n\t\t\t\t\t\t\t\t\t\t\t? '0'\n\t\t\t\t\t\t\t\t\t\t\t: myPatterns.count\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabel={ myPatterns.label }\n\t\t\t\t\t\t\t\t\ticon={ starFilled }\n\t\t\t\t\t\t\t\t\tid={ myPatterns.name }\n\t\t\t\t\t\t\t\t\ttype=\"wp_block\"\n\t\t\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\t\t\tcurrentCategory ===\n\t\t\t\t\t\t\t\t\t\t\t`${ myPatterns.name }` &&\n\t\t\t\t\t\t\t\t\t\tcurrentType === 'wp_block'\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t{ hasPatterns && (\n\t\t\t\t\t\t\t\t<ThemePatternsGroup\n\t\t\t\t\t\t\t\t\tcategories={ patternCategories }\n\t\t\t\t\t\t\t\t\tcurrentCategory={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasTemplateParts && (\n\t\t\t\t\t\t\t\t<TemplatePartGroup\n\t\t\t\t\t\t\t\t\tareas={ templatePartAreas }\n\t\t\t\t\t\t\t\t\tcurrentArea={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t}\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["__experimentalItemGroup","ItemGroup","__experimentalItem","Item","__experimentalHeading","Heading","useViewportMatch","getTemplatePartIcon","__","getQueryArgs","file","AddNewPattern","SidebarNavigationItem","SidebarNavigationScreen","CategoryItem","PATTERN_DEFAULT_CATEGORY","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","useLink","usePatternCategories","useTemplatePartAreas","TemplatePartGroup","areas","currentArea","currentType","createElement","Fragment","className","level","Object","entries","map","area","label","templateParts","key","count","length","icon","id","type","isActive","PatternCategoriesGroup","categories","currentCategory","category","name","theme","user","SidebarNavigationScreenPatterns","isMobileViewport","categoryType","categoryId","window","location","href","templatePartAreas","hasTemplateParts","isLoading","patternCategories","hasPatterns","templatePartsLink","path","footer","as","withChevron","undefined","title","description","actions","content"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\t__experimentalHeading as Heading,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { getTemplatePartIcon } from '@wordpress/editor';\nimport { __ } from '@wordpress/i18n';\nimport { getQueryArgs } from '@wordpress/url';\nimport { file } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport AddNewPattern from '../add-new-pattern';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport CategoryItem from './category-item';\nimport {\n\tPATTERN_DEFAULT_CATEGORY,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n} from '../../utils/constants';\nimport { useLink } from '../routes/link';\nimport usePatternCategories from './use-pattern-categories';\nimport useTemplatePartAreas from './use-template-part-areas';\n\nfunction TemplatePartGroup( { areas, currentArea, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-patterns__group-header\">\n\t\t\t\t<Heading level={ 2 }>{ __( 'Template parts' ) }</Heading>\n\t\t\t</div>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ Object.entries( areas ).map(\n\t\t\t\t\t( [ area, { label, templateParts } ] ) => (\n\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\tkey={ area }\n\t\t\t\t\t\t\tcount={ templateParts?.length }\n\t\t\t\t\t\t\ticon={ getTemplatePartIcon( area ) }\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tid={ area }\n\t\t\t\t\t\t\ttype={ TEMPLATE_PART_POST_TYPE }\n\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\tcurrentArea === area &&\n\t\t\t\t\t\t\t\tcurrentType === TEMPLATE_PART_POST_TYPE\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</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction PatternCategoriesGroup( {\n\tcategories,\n\tcurrentCategory,\n\tcurrentType,\n} ) {\n\treturn (\n\t\t<>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\tcount={ category.count }\n\t\t\t\t\t\tlabel={ category.label }\n\t\t\t\t\t\ticon={ file }\n\t\t\t\t\t\tid={ category.name }\n\t\t\t\t\t\ttype=\"pattern\"\n\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\tcurrentCategory === `${ category.name }` &&\n\t\t\t\t\t\t\t( currentType === PATTERN_TYPES.theme ||\n\t\t\t\t\t\t\t\tcurrentType === PATTERN_TYPES.user )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nexport default function SidebarNavigationScreenPatterns() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst { categoryType, categoryId } = getQueryArgs( window.location.href );\n\tconst currentCategory = categoryId || PATTERN_DEFAULT_CATEGORY;\n\tconst currentType = categoryType || PATTERN_TYPES.theme;\n\n\tconst { templatePartAreas, hasTemplateParts, isLoading } =\n\t\tuseTemplatePartAreas();\n\tconst { patternCategories, hasPatterns } = usePatternCategories();\n\n\tconst templatePartsLink = useLink( { path: '/wp_template_part/all' } );\n\tconst footer = ! isMobileViewport ? (\n\t\t<ItemGroup>\n\t\t\t<SidebarNavigationItem\n\t\t\t\tas=\"a\"\n\t\t\t\thref=\"edit.php?post_type=wp_block\"\n\t\t\t\twithChevron\n\t\t\t>\n\t\t\t\t{ __( 'Manage all of my patterns' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t\t<SidebarNavigationItem withChevron { ...templatePartsLink }>\n\t\t\t\t{ __( 'Manage all template parts' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t</ItemGroup>\n\t) : undefined;\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ __( 'Patterns' ) }\n\t\t\tdescription={ __(\n\t\t\t\t'Manage what patterns are available when editing the site.'\n\t\t\t) }\n\t\t\tactions={ <AddNewPattern /> }\n\t\t\tfooter={ footer }\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ isLoading && __( 'Loading patterns…' ) }\n\t\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! hasTemplateParts && ! hasPatterns && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t<Item>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'No template parts or patterns found'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Item>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasPatterns && (\n\t\t\t\t\t\t\t\t<PatternCategoriesGroup\n\t\t\t\t\t\t\t\t\tcategories={ patternCategories }\n\t\t\t\t\t\t\t\t\tcurrentCategory={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasTemplateParts && (\n\t\t\t\t\t\t\t\t<TemplatePartGroup\n\t\t\t\t\t\t\t\t\tareas={ templatePartAreas }\n\t\t\t\t\t\t\t\t\tcurrentArea={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t}\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
@@ -9,13 +9,19 @@ import { __ } from '@wordpress/i18n';
9
9
  */
10
10
  import useDefaultPatternCategories from './use-default-pattern-categories';
11
11
  import useThemePatterns from './use-theme-patterns';
12
+ import usePatterns from '../page-patterns/use-patterns';
13
+ import { PATTERN_TYPES, PATTERN_DEFAULT_CATEGORY, PATTERN_USER_CATEGORY, TEMPLATE_PART_AREA_DEFAULT_CATEGORY } from '../../utils/constants';
12
14
  export default function usePatternCategories() {
13
15
  const defaultCategories = useDefaultPatternCategories();
14
16
  defaultCategories.push({
15
- name: 'uncategorized',
17
+ name: TEMPLATE_PART_AREA_DEFAULT_CATEGORY,
16
18
  label: __('Uncategorized')
17
19
  });
18
20
  const themePatterns = useThemePatterns();
21
+ const {
22
+ patterns: userPatterns,
23
+ categories: userPatternCategories
24
+ } = usePatterns(PATTERN_TYPES.user);
19
25
  const patternCategories = useMemo(() => {
20
26
  const categoryMap = {};
21
27
  const categoriesWithCounts = [];
@@ -29,6 +35,14 @@ export default function usePatternCategories() {
29
35
  };
30
36
  }
31
37
  });
38
+ userPatternCategories.forEach(category => {
39
+ if (!categoryMap[category.name]) {
40
+ categoryMap[category.name] = {
41
+ ...category,
42
+ count: 0
43
+ };
44
+ }
45
+ });
32
46
 
33
47
  // Update the category counts to reflect theme registered patterns.
34
48
  themePatterns.forEach(pattern => {
@@ -43,14 +57,39 @@ export default function usePatternCategories() {
43
57
  }
44
58
  });
45
59
 
60
+ // Update the category counts to reflect user registered patterns.
61
+ userPatterns.forEach(pattern => {
62
+ pattern.categories?.forEach(category => {
63
+ if (categoryMap[category]) {
64
+ categoryMap[category].count += 1;
65
+ }
66
+ });
67
+ // If the pattern has no categories, add it to uncategorized.
68
+ if (!pattern.categories?.length) {
69
+ categoryMap.uncategorized.count += 1;
70
+ }
71
+ });
72
+
46
73
  // Filter categories so we only have those containing patterns.
47
- defaultCategories.forEach(category => {
48
- if (categoryMap[category.name].count) {
74
+ [...defaultCategories, ...userPatternCategories].forEach(category => {
75
+ if (categoryMap[category.name].count && !categoriesWithCounts.find(cat => cat.name === category.name)) {
49
76
  categoriesWithCounts.push(categoryMap[category.name]);
50
77
  }
51
78
  });
52
- return categoriesWithCounts;
53
- }, [defaultCategories, themePatterns]);
79
+ const sortedCategories = categoriesWithCounts.sort((a, b) => a.label.localeCompare(b.label));
80
+ sortedCategories.unshift({
81
+ name: PATTERN_USER_CATEGORY,
82
+ label: __('My patterns'),
83
+ count: userPatterns.length
84
+ });
85
+ sortedCategories.unshift({
86
+ name: PATTERN_DEFAULT_CATEGORY,
87
+ label: __('All patterns'),
88
+ description: __('A list of all patterns from all sources'),
89
+ count: themePatterns.length + userPatterns.length
90
+ });
91
+ return sortedCategories;
92
+ }, [defaultCategories, themePatterns, userPatternCategories, userPatterns]);
54
93
  return {
55
94
  patternCategories,
56
95
  hasPatterns: !!patternCategories.length
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","__","useDefaultPatternCategories","useThemePatterns","usePatternCategories","defaultCategories","push","name","label","themePatterns","patternCategories","categoryMap","categoriesWithCounts","forEach","category","count","pattern","categories","length","uncategorized","hasPatterns"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport useDefaultPatternCategories from './use-default-pattern-categories';\nimport useThemePatterns from './use-theme-patterns';\n\nexport default function usePatternCategories() {\n\tconst defaultCategories = useDefaultPatternCategories();\n\tdefaultCategories.push( {\n\t\tname: 'uncategorized',\n\t\tlabel: __( 'Uncategorized' ),\n\t} );\n\tconst themePatterns = useThemePatterns();\n\n\tconst patternCategories = useMemo( () => {\n\t\tconst categoryMap = {};\n\t\tconst categoriesWithCounts = [];\n\n\t\t// Create a map for easier counting of patterns in categories.\n\t\tdefaultCategories.forEach( ( category ) => {\n\t\t\tif ( ! categoryMap[ category.name ] ) {\n\t\t\t\tcategoryMap[ category.name ] = { ...category, count: 0 };\n\t\t\t}\n\t\t} );\n\n\t\t// Update the category counts to reflect theme registered patterns.\n\t\tthemePatterns.forEach( ( pattern ) => {\n\t\t\tpattern.categories?.forEach( ( category ) => {\n\t\t\t\tif ( categoryMap[ category ] ) {\n\t\t\t\t\tcategoryMap[ category ].count += 1;\n\t\t\t\t}\n\t\t\t} );\n\t\t\t// If the pattern has no categories, add it to uncategorized.\n\t\t\tif ( ! pattern.categories?.length ) {\n\t\t\t\tcategoryMap.uncategorized.count += 1;\n\t\t\t}\n\t\t} );\n\n\t\t// Filter categories so we only have those containing patterns.\n\t\tdefaultCategories.forEach( ( category ) => {\n\t\t\tif ( categoryMap[ category.name ].count ) {\n\t\t\t\tcategoriesWithCounts.push( categoryMap[ category.name ] );\n\t\t\t}\n\t\t} );\n\n\t\treturn categoriesWithCounts;\n\t}, [ defaultCategories, themePatterns ] );\n\n\treturn { patternCategories, hasPatterns: !! patternCategories.length };\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,2BAA2B,MAAM,kCAAkC;AAC1E,OAAOC,gBAAgB,MAAM,sBAAsB;AAEnD,eAAe,SAASC,oBAAoBA,CAAA,EAAG;EAC9C,MAAMC,iBAAiB,GAAGH,2BAA2B,CAAC,CAAC;EACvDG,iBAAiB,CAACC,IAAI,CAAE;IACvBC,IAAI,EAAE,eAAe;IACrBC,KAAK,EAAEP,EAAE,CAAE,eAAgB;EAC5B,CAAE,CAAC;EACH,MAAMQ,aAAa,GAAGN,gBAAgB,CAAC,CAAC;EAExC,MAAMO,iBAAiB,GAAGV,OAAO,CAAE,MAAM;IACxC,MAAMW,WAAW,GAAG,CAAC,CAAC;IACtB,MAAMC,oBAAoB,GAAG,EAAE;;IAE/B;IACAP,iBAAiB,CAACQ,OAAO,CAAIC,QAAQ,IAAM;MAC1C,IAAK,CAAEH,WAAW,CAAEG,QAAQ,CAACP,IAAI,CAAE,EAAG;QACrCI,WAAW,CAAEG,QAAQ,CAACP,IAAI,CAAE,GAAG;UAAE,GAAGO,QAAQ;UAAEC,KAAK,EAAE;QAAE,CAAC;MACzD;IACD,CAAE,CAAC;;IAEH;IACAN,aAAa,CAACI,OAAO,CAAIG,OAAO,IAAM;MACrCA,OAAO,CAACC,UAAU,EAAEJ,OAAO,CAAIC,QAAQ,IAAM;QAC5C,IAAKH,WAAW,CAAEG,QAAQ,CAAE,EAAG;UAC9BH,WAAW,CAAEG,QAAQ,CAAE,CAACC,KAAK,IAAI,CAAC;QACnC;MACD,CAAE,CAAC;MACH;MACA,IAAK,CAAEC,OAAO,CAACC,UAAU,EAAEC,MAAM,EAAG;QACnCP,WAAW,CAACQ,aAAa,CAACJ,KAAK,IAAI,CAAC;MACrC;IACD,CAAE,CAAC;;IAEH;IACAV,iBAAiB,CAACQ,OAAO,CAAIC,QAAQ,IAAM;MAC1C,IAAKH,WAAW,CAAEG,QAAQ,CAACP,IAAI,CAAE,CAACQ,KAAK,EAAG;QACzCH,oBAAoB,CAACN,IAAI,CAAEK,WAAW,CAAEG,QAAQ,CAACP,IAAI,CAAG,CAAC;MAC1D;IACD,CAAE,CAAC;IAEH,OAAOK,oBAAoB;EAC5B,CAAC,EAAE,CAAEP,iBAAiB,EAAEI,aAAa,CAAG,CAAC;EAEzC,OAAO;IAAEC,iBAAiB;IAAEU,WAAW,EAAE,CAAC,CAAEV,iBAAiB,CAACQ;EAAO,CAAC;AACvE"}
1
+ {"version":3,"names":["useMemo","__","useDefaultPatternCategories","useThemePatterns","usePatterns","PATTERN_TYPES","PATTERN_DEFAULT_CATEGORY","PATTERN_USER_CATEGORY","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","usePatternCategories","defaultCategories","push","name","label","themePatterns","patterns","userPatterns","categories","userPatternCategories","user","patternCategories","categoryMap","categoriesWithCounts","forEach","category","count","pattern","length","uncategorized","find","cat","sortedCategories","sort","a","b","localeCompare","unshift","description","hasPatterns"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport useDefaultPatternCategories from './use-default-pattern-categories';\nimport useThemePatterns from './use-theme-patterns';\nimport usePatterns from '../page-patterns/use-patterns';\nimport {\n\tPATTERN_TYPES,\n\tPATTERN_DEFAULT_CATEGORY,\n\tPATTERN_USER_CATEGORY,\n\tTEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n} from '../../utils/constants';\n\nexport default function usePatternCategories() {\n\tconst defaultCategories = useDefaultPatternCategories();\n\tdefaultCategories.push( {\n\t\tname: TEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n\t\tlabel: __( 'Uncategorized' ),\n\t} );\n\tconst themePatterns = useThemePatterns();\n\tconst { patterns: userPatterns, categories: userPatternCategories } =\n\t\tusePatterns( PATTERN_TYPES.user );\n\n\tconst patternCategories = useMemo( () => {\n\t\tconst categoryMap = {};\n\t\tconst categoriesWithCounts = [];\n\n\t\t// Create a map for easier counting of patterns in categories.\n\t\tdefaultCategories.forEach( ( category ) => {\n\t\t\tif ( ! categoryMap[ category.name ] ) {\n\t\t\t\tcategoryMap[ category.name ] = { ...category, count: 0 };\n\t\t\t}\n\t\t} );\n\t\tuserPatternCategories.forEach( ( category ) => {\n\t\t\tif ( ! categoryMap[ category.name ] ) {\n\t\t\t\tcategoryMap[ category.name ] = { ...category, count: 0 };\n\t\t\t}\n\t\t} );\n\n\t\t// Update the category counts to reflect theme registered patterns.\n\t\tthemePatterns.forEach( ( pattern ) => {\n\t\t\tpattern.categories?.forEach( ( category ) => {\n\t\t\t\tif ( categoryMap[ category ] ) {\n\t\t\t\t\tcategoryMap[ category ].count += 1;\n\t\t\t\t}\n\t\t\t} );\n\t\t\t// If the pattern has no categories, add it to uncategorized.\n\t\t\tif ( ! pattern.categories?.length ) {\n\t\t\t\tcategoryMap.uncategorized.count += 1;\n\t\t\t}\n\t\t} );\n\n\t\t// Update the category counts to reflect user registered patterns.\n\t\tuserPatterns.forEach( ( pattern ) => {\n\t\t\tpattern.categories?.forEach( ( category ) => {\n\t\t\t\tif ( categoryMap[ category ] ) {\n\t\t\t\t\tcategoryMap[ category ].count += 1;\n\t\t\t\t}\n\t\t\t} );\n\t\t\t// If the pattern has no categories, add it to uncategorized.\n\t\t\tif ( ! pattern.categories?.length ) {\n\t\t\t\tcategoryMap.uncategorized.count += 1;\n\t\t\t}\n\t\t} );\n\n\t\t// Filter categories so we only have those containing patterns.\n\t\t[ ...defaultCategories, ...userPatternCategories ].forEach(\n\t\t\t( category ) => {\n\t\t\t\tif (\n\t\t\t\t\tcategoryMap[ category.name ].count &&\n\t\t\t\t\t! categoriesWithCounts.find(\n\t\t\t\t\t\t( cat ) => cat.name === category.name\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\tcategoriesWithCounts.push( categoryMap[ category.name ] );\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t\tconst sortedCategories = categoriesWithCounts.sort( ( a, b ) =>\n\t\t\ta.label.localeCompare( b.label )\n\t\t);\n\n\t\tsortedCategories.unshift( {\n\t\t\tname: PATTERN_USER_CATEGORY,\n\t\t\tlabel: __( 'My patterns' ),\n\t\t\tcount: userPatterns.length,\n\t\t} );\n\n\t\tsortedCategories.unshift( {\n\t\t\tname: PATTERN_DEFAULT_CATEGORY,\n\t\t\tlabel: __( 'All patterns' ),\n\t\t\tdescription: __( 'A list of all patterns from all sources' ),\n\t\t\tcount: themePatterns.length + userPatterns.length,\n\t\t} );\n\n\t\treturn sortedCategories;\n\t}, [\n\t\tdefaultCategories,\n\t\tthemePatterns,\n\t\tuserPatternCategories,\n\t\tuserPatterns,\n\t] );\n\n\treturn { patternCategories, hasPatterns: !! patternCategories.length };\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,2BAA2B,MAAM,kCAAkC;AAC1E,OAAOC,gBAAgB,MAAM,sBAAsB;AACnD,OAAOC,WAAW,MAAM,+BAA+B;AACvD,SACCC,aAAa,EACbC,wBAAwB,EACxBC,qBAAqB,EACrBC,mCAAmC,QAC7B,uBAAuB;AAE9B,eAAe,SAASC,oBAAoBA,CAAA,EAAG;EAC9C,MAAMC,iBAAiB,GAAGR,2BAA2B,CAAC,CAAC;EACvDQ,iBAAiB,CAACC,IAAI,CAAE;IACvBC,IAAI,EAAEJ,mCAAmC;IACzCK,KAAK,EAAEZ,EAAE,CAAE,eAAgB;EAC5B,CAAE,CAAC;EACH,MAAMa,aAAa,GAAGX,gBAAgB,CAAC,CAAC;EACxC,MAAM;IAAEY,QAAQ,EAAEC,YAAY;IAAEC,UAAU,EAAEC;EAAsB,CAAC,GAClEd,WAAW,CAAEC,aAAa,CAACc,IAAK,CAAC;EAElC,MAAMC,iBAAiB,GAAGpB,OAAO,CAAE,MAAM;IACxC,MAAMqB,WAAW,GAAG,CAAC,CAAC;IACtB,MAAMC,oBAAoB,GAAG,EAAE;;IAE/B;IACAZ,iBAAiB,CAACa,OAAO,CAAIC,QAAQ,IAAM;MAC1C,IAAK,CAAEH,WAAW,CAAEG,QAAQ,CAACZ,IAAI,CAAE,EAAG;QACrCS,WAAW,CAAEG,QAAQ,CAACZ,IAAI,CAAE,GAAG;UAAE,GAAGY,QAAQ;UAAEC,KAAK,EAAE;QAAE,CAAC;MACzD;IACD,CAAE,CAAC;IACHP,qBAAqB,CAACK,OAAO,CAAIC,QAAQ,IAAM;MAC9C,IAAK,CAAEH,WAAW,CAAEG,QAAQ,CAACZ,IAAI,CAAE,EAAG;QACrCS,WAAW,CAAEG,QAAQ,CAACZ,IAAI,CAAE,GAAG;UAAE,GAAGY,QAAQ;UAAEC,KAAK,EAAE;QAAE,CAAC;MACzD;IACD,CAAE,CAAC;;IAEH;IACAX,aAAa,CAACS,OAAO,CAAIG,OAAO,IAAM;MACrCA,OAAO,CAACT,UAAU,EAAEM,OAAO,CAAIC,QAAQ,IAAM;QAC5C,IAAKH,WAAW,CAAEG,QAAQ,CAAE,EAAG;UAC9BH,WAAW,CAAEG,QAAQ,CAAE,CAACC,KAAK,IAAI,CAAC;QACnC;MACD,CAAE,CAAC;MACH;MACA,IAAK,CAAEC,OAAO,CAACT,UAAU,EAAEU,MAAM,EAAG;QACnCN,WAAW,CAACO,aAAa,CAACH,KAAK,IAAI,CAAC;MACrC;IACD,CAAE,CAAC;;IAEH;IACAT,YAAY,CAACO,OAAO,CAAIG,OAAO,IAAM;MACpCA,OAAO,CAACT,UAAU,EAAEM,OAAO,CAAIC,QAAQ,IAAM;QAC5C,IAAKH,WAAW,CAAEG,QAAQ,CAAE,EAAG;UAC9BH,WAAW,CAAEG,QAAQ,CAAE,CAACC,KAAK,IAAI,CAAC;QACnC;MACD,CAAE,CAAC;MACH;MACA,IAAK,CAAEC,OAAO,CAACT,UAAU,EAAEU,MAAM,EAAG;QACnCN,WAAW,CAACO,aAAa,CAACH,KAAK,IAAI,CAAC;MACrC;IACD,CAAE,CAAC;;IAEH;IACA,CAAE,GAAGf,iBAAiB,EAAE,GAAGQ,qBAAqB,CAAE,CAACK,OAAO,CACvDC,QAAQ,IAAM;MACf,IACCH,WAAW,CAAEG,QAAQ,CAACZ,IAAI,CAAE,CAACa,KAAK,IAClC,CAAEH,oBAAoB,CAACO,IAAI,CACxBC,GAAG,IAAMA,GAAG,CAAClB,IAAI,KAAKY,QAAQ,CAACZ,IAClC,CAAC,EACA;QACDU,oBAAoB,CAACX,IAAI,CAAEU,WAAW,CAAEG,QAAQ,CAACZ,IAAI,CAAG,CAAC;MAC1D;IACD,CACD,CAAC;IACD,MAAMmB,gBAAgB,GAAGT,oBAAoB,CAACU,IAAI,CAAE,CAAEC,CAAC,EAAEC,CAAC,KACzDD,CAAC,CAACpB,KAAK,CAACsB,aAAa,CAAED,CAAC,CAACrB,KAAM,CAChC,CAAC;IAEDkB,gBAAgB,CAACK,OAAO,CAAE;MACzBxB,IAAI,EAAEL,qBAAqB;MAC3BM,KAAK,EAAEZ,EAAE,CAAE,aAAc,CAAC;MAC1BwB,KAAK,EAAET,YAAY,CAACW;IACrB,CAAE,CAAC;IAEHI,gBAAgB,CAACK,OAAO,CAAE;MACzBxB,IAAI,EAAEN,wBAAwB;MAC9BO,KAAK,EAAEZ,EAAE,CAAE,cAAe,CAAC;MAC3BoC,WAAW,EAAEpC,EAAE,CAAE,yCAA0C,CAAC;MAC5DwB,KAAK,EAAEX,aAAa,CAACa,MAAM,GAAGX,YAAY,CAACW;IAC5C,CAAE,CAAC;IAEH,OAAOI,gBAAgB;EACxB,CAAC,EAAE,CACFrB,iBAAiB,EACjBI,aAAa,EACbI,qBAAqB,EACrBF,YAAY,CACX,CAAC;EAEH,OAAO;IAAEI,iBAAiB;IAAEkB,WAAW,EAAE,CAAC,CAAElB,iBAAiB,CAACO;EAAO,CAAC;AACvE"}
@@ -4,6 +4,11 @@
4
4
  import { useEntityRecords } from '@wordpress/core-data';
5
5
  import { useSelect } from '@wordpress/data';
6
6
  import { store as editorStore } from '@wordpress/editor';
7
+
8
+ /**
9
+ * Internal dependencies
10
+ */
11
+ import { TEMPLATE_PART_AREA_DEFAULT_CATEGORY, TEMPLATE_PART_POST_TYPE } from '../../utils/constants';
7
12
  const useTemplatePartsGroupedByArea = items => {
8
13
  const allItems = items || [];
9
14
  const templatePartAreas = useSelect(select => select(editorStore).__experimentalGetDefaultTemplatePartAreas(), []);
@@ -21,7 +26,7 @@ const useTemplatePartsGroupedByArea = items => {
21
26
  templateParts: []
22
27
  });
23
28
  const groupedByArea = allItems.reduce((accumulator, item) => {
24
- const key = accumulator[item.area] ? item.area : 'uncategorized';
29
+ const key = accumulator[item.area] ? item.area : TEMPLATE_PART_AREA_DEFAULT_CATEGORY;
25
30
  accumulator[key].templateParts.push(item);
26
31
  return accumulator;
27
32
  }, knownAreas);
@@ -31,7 +36,7 @@ export default function useTemplatePartAreas() {
31
36
  const {
32
37
  records: templateParts,
33
38
  isResolving: isLoading
34
- } = useEntityRecords('postType', 'wp_template_part', {
39
+ } = useEntityRecords('postType', TEMPLATE_PART_POST_TYPE, {
35
40
  per_page: -1
36
41
  });
37
42
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["useEntityRecords","useSelect","store","editorStore","useTemplatePartsGroupedByArea","items","allItems","templatePartAreas","select","__experimentalGetDefaultTemplatePartAreas","knownAreas","header","footer","sidebar","uncategorized","forEach","templatePartArea","area","templateParts","groupedByArea","reduce","accumulator","item","key","push","useTemplatePartAreas","records","isResolving","isLoading","per_page","hasTemplateParts","length"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-template-part-areas.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\n\nconst useTemplatePartsGroupedByArea = ( items ) => {\n\tconst allItems = items || [];\n\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\n\t// Create map of template areas ensuring that default areas are displayed before\n\t// any custom registered template part areas.\n\tconst knownAreas = {\n\t\theader: {},\n\t\tfooter: {},\n\t\tsidebar: {},\n\t\tuncategorized: {},\n\t};\n\n\ttemplatePartAreas.forEach(\n\t\t( templatePartArea ) =>\n\t\t\t( knownAreas[ templatePartArea.area ] = {\n\t\t\t\t...templatePartArea,\n\t\t\t\ttemplateParts: [],\n\t\t\t} )\n\t);\n\n\tconst groupedByArea = allItems.reduce( ( accumulator, item ) => {\n\t\tconst key = accumulator[ item.area ] ? item.area : 'uncategorized';\n\t\taccumulator[ key ].templateParts.push( item );\n\t\treturn accumulator;\n\t}, knownAreas );\n\n\treturn groupedByArea;\n};\n\nexport default function useTemplatePartAreas() {\n\tconst { records: templateParts, isResolving: isLoading } = useEntityRecords(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t{ per_page: -1 }\n\t);\n\n\treturn {\n\t\thasTemplateParts: templateParts ? !! templateParts.length : false,\n\t\tisLoading,\n\t\ttemplatePartAreas: useTemplatePartsGroupedByArea( templateParts ),\n\t};\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,gBAAgB,QAAQ,sBAAsB;AACvD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,WAAW,QAAQ,mBAAmB;AAExD,MAAMC,6BAA6B,GAAKC,KAAK,IAAM;EAClD,MAAMC,QAAQ,GAAGD,KAAK,IAAI,EAAE;EAE5B,MAAME,iBAAiB,GAAGN,SAAS,CAChCO,MAAM,IACPA,MAAM,CAAEL,WAAY,CAAC,CAACM,yCAAyC,CAAC,CAAC,EAClE,EACD,CAAC;;EAED;EACA;EACA,MAAMC,UAAU,GAAG;IAClBC,MAAM,EAAE,CAAC,CAAC;IACVC,MAAM,EAAE,CAAC,CAAC;IACVC,OAAO,EAAE,CAAC,CAAC;IACXC,aAAa,EAAE,CAAC;EACjB,CAAC;EAEDP,iBAAiB,CAACQ,OAAO,CACtBC,gBAAgB,IACfN,UAAU,CAAEM,gBAAgB,CAACC,IAAI,CAAE,GAAG;IACvC,GAAGD,gBAAgB;IACnBE,aAAa,EAAE;EAChB,CACF,CAAC;EAED,MAAMC,aAAa,GAAGb,QAAQ,CAACc,MAAM,CAAE,CAAEC,WAAW,EAAEC,IAAI,KAAM;IAC/D,MAAMC,GAAG,GAAGF,WAAW,CAAEC,IAAI,CAACL,IAAI,CAAE,GAAGK,IAAI,CAACL,IAAI,GAAG,eAAe;IAClEI,WAAW,CAAEE,GAAG,CAAE,CAACL,aAAa,CAACM,IAAI,CAAEF,IAAK,CAAC;IAC7C,OAAOD,WAAW;EACnB,CAAC,EAAEX,UAAW,CAAC;EAEf,OAAOS,aAAa;AACrB,CAAC;AAED,eAAe,SAASM,oBAAoBA,CAAA,EAAG;EAC9C,MAAM;IAAEC,OAAO,EAAER,aAAa;IAAES,WAAW,EAAEC;EAAU,CAAC,GAAG5B,gBAAgB,CAC1E,UAAU,EACV,kBAAkB,EAClB;IAAE6B,QAAQ,EAAE,CAAC;EAAE,CAChB,CAAC;EAED,OAAO;IACNC,gBAAgB,EAAEZ,aAAa,GAAG,CAAC,CAAEA,aAAa,CAACa,MAAM,GAAG,KAAK;IACjEH,SAAS;IACTrB,iBAAiB,EAAEH,6BAA6B,CAAEc,aAAc;EACjE,CAAC;AACF"}
1
+ {"version":3,"names":["useEntityRecords","useSelect","store","editorStore","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","TEMPLATE_PART_POST_TYPE","useTemplatePartsGroupedByArea","items","allItems","templatePartAreas","select","__experimentalGetDefaultTemplatePartAreas","knownAreas","header","footer","sidebar","uncategorized","forEach","templatePartArea","area","templateParts","groupedByArea","reduce","accumulator","item","key","push","useTemplatePartAreas","records","isResolving","isLoading","per_page","hasTemplateParts","length"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-template-part-areas.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport {\n\tTEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n\tTEMPLATE_PART_POST_TYPE,\n} from '../../utils/constants';\n\nconst useTemplatePartsGroupedByArea = ( items ) => {\n\tconst allItems = items || [];\n\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\n\t// Create map of template areas ensuring that default areas are displayed before\n\t// any custom registered template part areas.\n\tconst knownAreas = {\n\t\theader: {},\n\t\tfooter: {},\n\t\tsidebar: {},\n\t\tuncategorized: {},\n\t};\n\n\ttemplatePartAreas.forEach(\n\t\t( templatePartArea ) =>\n\t\t\t( knownAreas[ templatePartArea.area ] = {\n\t\t\t\t...templatePartArea,\n\t\t\t\ttemplateParts: [],\n\t\t\t} )\n\t);\n\n\tconst groupedByArea = allItems.reduce( ( accumulator, item ) => {\n\t\tconst key = accumulator[ item.area ]\n\t\t\t? item.area\n\t\t\t: TEMPLATE_PART_AREA_DEFAULT_CATEGORY;\n\t\taccumulator[ key ].templateParts.push( item );\n\t\treturn accumulator;\n\t}, knownAreas );\n\n\treturn groupedByArea;\n};\n\nexport default function useTemplatePartAreas() {\n\tconst { records: templateParts, isResolving: isLoading } = useEntityRecords(\n\t\t'postType',\n\t\tTEMPLATE_PART_POST_TYPE,\n\t\t{ per_page: -1 }\n\t);\n\n\treturn {\n\t\thasTemplateParts: templateParts ? !! templateParts.length : false,\n\t\tisLoading,\n\t\ttemplatePartAreas: useTemplatePartsGroupedByArea( templateParts ),\n\t};\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,gBAAgB,QAAQ,sBAAsB;AACvD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,WAAW,QAAQ,mBAAmB;;AAExD;AACA;AACA;AACA,SACCC,mCAAmC,EACnCC,uBAAuB,QACjB,uBAAuB;AAE9B,MAAMC,6BAA6B,GAAKC,KAAK,IAAM;EAClD,MAAMC,QAAQ,GAAGD,KAAK,IAAI,EAAE;EAE5B,MAAME,iBAAiB,GAAGR,SAAS,CAChCS,MAAM,IACPA,MAAM,CAAEP,WAAY,CAAC,CAACQ,yCAAyC,CAAC,CAAC,EAClE,EACD,CAAC;;EAED;EACA;EACA,MAAMC,UAAU,GAAG;IAClBC,MAAM,EAAE,CAAC,CAAC;IACVC,MAAM,EAAE,CAAC,CAAC;IACVC,OAAO,EAAE,CAAC,CAAC;IACXC,aAAa,EAAE,CAAC;EACjB,CAAC;EAEDP,iBAAiB,CAACQ,OAAO,CACtBC,gBAAgB,IACfN,UAAU,CAAEM,gBAAgB,CAACC,IAAI,CAAE,GAAG;IACvC,GAAGD,gBAAgB;IACnBE,aAAa,EAAE;EAChB,CACF,CAAC;EAED,MAAMC,aAAa,GAAGb,QAAQ,CAACc,MAAM,CAAE,CAAEC,WAAW,EAAEC,IAAI,KAAM;IAC/D,MAAMC,GAAG,GAAGF,WAAW,CAAEC,IAAI,CAACL,IAAI,CAAE,GACjCK,IAAI,CAACL,IAAI,GACTf,mCAAmC;IACtCmB,WAAW,CAAEE,GAAG,CAAE,CAACL,aAAa,CAACM,IAAI,CAAEF,IAAK,CAAC;IAC7C,OAAOD,WAAW;EACnB,CAAC,EAAEX,UAAW,CAAC;EAEf,OAAOS,aAAa;AACrB,CAAC;AAED,eAAe,SAASM,oBAAoBA,CAAA,EAAG;EAC9C,MAAM;IAAEC,OAAO,EAAER,aAAa;IAAES,WAAW,EAAEC;EAAU,CAAC,GAAG9B,gBAAgB,CAC1E,UAAU,EACVK,uBAAuB,EACvB;IAAE0B,QAAQ,EAAE,CAAC;EAAE,CAChB,CAAC;EAED,OAAO;IACNC,gBAAgB,EAAEZ,aAAa,GAAG,CAAC,CAAEA,aAAa,CAACa,MAAM,GAAG,KAAK;IACjEH,SAAS;IACTrB,iBAAiB,EAAEH,6BAA6B,CAAEc,aAAc;EACjE,CAAC;AACF"}
@@ -8,7 +8,8 @@ import { useMemo } from '@wordpress/element';
8
8
  /**
9
9
  * Internal dependencies
10
10
  */
11
- import { CORE_PATTERN_SOURCES, filterOutDuplicatesByName } from '../page-patterns/utils';
11
+ import { filterOutDuplicatesByName } from '../page-patterns/utils';
12
+ import { PATTERN_CORE_SOURCES } from '../../utils/constants';
12
13
  import { unlock } from '../../lock-unlock';
13
14
  import { store as editSiteStore } from '../../store';
14
15
  export default function useThemePatterns() {
@@ -20,7 +21,7 @@ export default function useThemePatterns() {
20
21
  return (_getSettings$__experi = getSettings().__experimentalAdditionalBlockPatterns) !== null && _getSettings$__experi !== void 0 ? _getSettings$__experi : getSettings().__experimentalBlockPatterns;
21
22
  });
22
23
  const restBlockPatterns = useSelect(select => select(coreStore).getBlockPatterns());
23
- const patterns = useMemo(() => [...(blockPatterns || []), ...(restBlockPatterns || [])].filter(pattern => !CORE_PATTERN_SOURCES.includes(pattern.source)).filter(filterOutDuplicatesByName).filter(pattern => pattern.inserter !== false), [blockPatterns, restBlockPatterns]);
24
+ const patterns = useMemo(() => [...(blockPatterns || []), ...(restBlockPatterns || [])].filter(pattern => !PATTERN_CORE_SOURCES.includes(pattern.source)).filter(filterOutDuplicatesByName).filter(pattern => pattern.inserter !== false), [blockPatterns, restBlockPatterns]);
24
25
  return patterns;
25
26
  }
26
27
  //# sourceMappingURL=use-theme-patterns.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["store","coreStore","useSelect","useMemo","CORE_PATTERN_SOURCES","filterOutDuplicatesByName","unlock","editSiteStore","useThemePatterns","blockPatterns","select","_getSettings$__experi","getSettings","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","patterns","filter","pattern","includes","source","inserter"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tCORE_PATTERN_SOURCES,\n\tfilterOutDuplicatesByName,\n} from '../page-patterns/utils';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\n\nexport default function useThemePatterns() {\n\tconst blockPatterns = useSelect( ( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\n\t\treturn (\n\t\t\tgetSettings().__experimentalAdditionalBlockPatterns ??\n\t\t\tgetSettings().__experimentalBlockPatterns\n\t\t);\n\t} );\n\n\tconst restBlockPatterns = useSelect( ( select ) =>\n\t\tselect( coreStore ).getBlockPatterns()\n\t);\n\n\tconst patterns = useMemo(\n\t\t() =>\n\t\t\t[ ...( blockPatterns || [] ), ...( restBlockPatterns || [] ) ]\n\t\t\t\t.filter(\n\t\t\t\t\t( pattern ) =>\n\t\t\t\t\t\t! CORE_PATTERN_SOURCES.includes( pattern.source )\n\t\t\t\t)\n\t\t\t\t.filter( filterOutDuplicatesByName )\n\t\t\t\t.filter( ( pattern ) => pattern.inserter !== false ),\n\t\t[ blockPatterns, restBlockPatterns ]\n\t);\n\n\treturn patterns;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,OAAO,QAAQ,oBAAoB;;AAE5C;AACA;AACA;AACA,SACCC,oBAAoB,EACpBC,yBAAyB,QACnB,wBAAwB;AAC/B,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASN,KAAK,IAAIO,aAAa,QAAQ,aAAa;AAEpD,eAAe,SAASC,gBAAgBA,CAAA,EAAG;EAC1C,MAAMC,aAAa,GAAGP,SAAS,CAAIQ,MAAM,IAAM;IAAA,IAAAC,qBAAA;IAC9C,MAAM;MAAEC;IAAY,CAAC,GAAGN,MAAM,CAAEI,MAAM,CAAEH,aAAc,CAAE,CAAC;IAEzD,QAAAI,qBAAA,GACCC,WAAW,CAAC,CAAC,CAACC,qCAAqC,cAAAF,qBAAA,cAAAA,qBAAA,GACnDC,WAAW,CAAC,CAAC,CAACE,2BAA2B;EAE3C,CAAE,CAAC;EAEH,MAAMC,iBAAiB,GAAGb,SAAS,CAAIQ,MAAM,IAC5CA,MAAM,CAAET,SAAU,CAAC,CAACe,gBAAgB,CAAC,CACtC,CAAC;EAED,MAAMC,QAAQ,GAAGd,OAAO,CACvB,MACC,CAAE,IAAKM,aAAa,IAAI,EAAE,CAAE,EAAE,IAAKM,iBAAiB,IAAI,EAAE,CAAE,CAAE,CAC5DG,MAAM,CACJC,OAAO,IACR,CAAEf,oBAAoB,CAACgB,QAAQ,CAAED,OAAO,CAACE,MAAO,CAClD,CAAC,CACAH,MAAM,CAAEb,yBAA0B,CAAC,CACnCa,MAAM,CAAIC,OAAO,IAAMA,OAAO,CAACG,QAAQ,KAAK,KAAM,CAAC,EACtD,CAAEb,aAAa,EAAEM,iBAAiB,CACnC,CAAC;EAED,OAAOE,QAAQ;AAChB"}
1
+ {"version":3,"names":["store","coreStore","useSelect","useMemo","filterOutDuplicatesByName","PATTERN_CORE_SOURCES","unlock","editSiteStore","useThemePatterns","blockPatterns","select","_getSettings$__experi","getSettings","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","patterns","filter","pattern","includes","source","inserter"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { filterOutDuplicatesByName } from '../page-patterns/utils';\nimport { PATTERN_CORE_SOURCES } from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\n\nexport default function useThemePatterns() {\n\tconst blockPatterns = useSelect( ( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\n\t\treturn (\n\t\t\tgetSettings().__experimentalAdditionalBlockPatterns ??\n\t\t\tgetSettings().__experimentalBlockPatterns\n\t\t);\n\t} );\n\n\tconst restBlockPatterns = useSelect( ( select ) =>\n\t\tselect( coreStore ).getBlockPatterns()\n\t);\n\n\tconst patterns = useMemo(\n\t\t() =>\n\t\t\t[ ...( blockPatterns || [] ), ...( restBlockPatterns || [] ) ]\n\t\t\t\t.filter(\n\t\t\t\t\t( pattern ) =>\n\t\t\t\t\t\t! PATTERN_CORE_SOURCES.includes( pattern.source )\n\t\t\t\t)\n\t\t\t\t.filter( filterOutDuplicatesByName )\n\t\t\t\t.filter( ( pattern ) => pattern.inserter !== false ),\n\t\t[ blockPatterns, restBlockPatterns ]\n\t);\n\n\treturn patterns;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,OAAO,QAAQ,oBAAoB;;AAE5C;AACA;AACA;AACA,SAASC,yBAAyB,QAAQ,wBAAwB;AAClE,SAASC,oBAAoB,QAAQ,uBAAuB;AAC5D,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASN,KAAK,IAAIO,aAAa,QAAQ,aAAa;AAEpD,eAAe,SAASC,gBAAgBA,CAAA,EAAG;EAC1C,MAAMC,aAAa,GAAGP,SAAS,CAAIQ,MAAM,IAAM;IAAA,IAAAC,qBAAA;IAC9C,MAAM;MAAEC;IAAY,CAAC,GAAGN,MAAM,CAAEI,MAAM,CAAEH,aAAc,CAAE,CAAC;IAEzD,QAAAI,qBAAA,GACCC,WAAW,CAAC,CAAC,CAACC,qCAAqC,cAAAF,qBAAA,cAAAA,qBAAA,GACnDC,WAAW,CAAC,CAAC,CAACE,2BAA2B;EAE3C,CAAE,CAAC;EAEH,MAAMC,iBAAiB,GAAGb,SAAS,CAAIQ,MAAM,IAC5CA,MAAM,CAAET,SAAU,CAAC,CAACe,gBAAgB,CAAC,CACtC,CAAC;EAED,MAAMC,QAAQ,GAAGd,OAAO,CACvB,MACC,CAAE,IAAKM,aAAa,IAAI,EAAE,CAAE,EAAE,IAAKM,iBAAiB,IAAI,EAAE,CAAE,CAAE,CAC5DG,MAAM,CACJC,OAAO,IACR,CAAEd,oBAAoB,CAACe,QAAQ,CAAED,OAAO,CAACE,MAAO,CAClD,CAAC,CACAH,MAAM,CAAEd,yBAA0B,CAAC,CACnCc,MAAM,CAAIC,OAAO,IAAMA,OAAO,CAACG,QAAQ,KAAK,KAAM,CAAC,EACtD,CAAEb,aAAa,EAAEM,iBAAiB,CACnC,CAAC;EAED,OAAOE,QAAQ;AAChB"}
@@ -19,6 +19,7 @@ import { unlock } from '../../lock-unlock';
19
19
  import { store as editSiteStore } from '../../store';
20
20
  import { useLink } from '../routes/link';
21
21
  import SidebarNavigationItem from '../sidebar-navigation-item';
22
+ import { TEMPLATE_PART_POST_TYPE } from '../../utils/constants';
22
23
  const EMPTY_OBJECT = {};
23
24
  function TemplateAreaButton({
24
25
  postId,
@@ -31,7 +32,7 @@ function TemplateAreaButton({
31
32
  footer
32
33
  };
33
34
  const linkInfo = useLink({
34
- postType: 'wp_template_part',
35
+ postType: TEMPLATE_PART_POST_TYPE,
35
36
  postId
36
37
  });
37
38
  return createElement(SidebarNavigationItem, {
@@ -1 +1 @@
1
- {"version":3,"names":["__","debounce","useSelect","useDispatch","store","coreStore","CheckboxControl","__experimentalUseNavigator","useNavigator","__experimentalInputControl","InputControl","__experimentalNumberControl","NumberControl","__experimentalTruncate","Truncate","__experimentalItemGroup","ItemGroup","header","footer","layout","useMemo","useState","useEffect","decodeEntities","SidebarNavigationScreenDetailsPanel","SidebarNavigationScreenDetailsPanelRow","unlock","editSiteStore","useLink","SidebarNavigationItem","EMPTY_OBJECT","TemplateAreaButton","postId","icon","title","_icons$icon","icons","linkInfo","postType","createElement","className","withChevron","limit","ellipsizeMode","numberOfLines","HomeTemplateDetails","navigator","params","editEntityRecord","allowCommentsOnNewPosts","templatePartAreas","postsPerPage","postsPageTitle","postsPageId","currentTemplateParts","select","getEntityRecord","siteSettings","getSettings","_currentTemplateParts","getCurrentTemplateTemplateParts","siteEditorSettings","_postsPageRecord","page_for_posts","default_comment_status","rendered","id","posts_per_page","defaultTemplatePartAreas","commentsOnNewPostsValue","setCommentsOnNewPostsValue","postsCountValue","setPostsCountValue","postsPageTitleValue","setPostsPageTitleValue","templateAreas","length","map","templatePart","find","area","setAllowCommentsOnNewPosts","newValue","undefined","setPostsPageTitle","setPostsPerPage","Fragment","spacing","placeholder","size","value","onChange","label","help","spinControls","step","min","checked","theme","slug","key"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-template/home-template-details.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { debounce } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tCheckboxControl,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalInputControl as InputControl,\n\t__experimentalNumberControl as NumberControl,\n\t__experimentalTruncate as Truncate,\n\t__experimentalItemGroup as ItemGroup,\n} from '@wordpress/components';\nimport { header, footer, layout } from '@wordpress/icons';\nimport { useMemo, useState, useEffect } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport {\n\tSidebarNavigationScreenDetailsPanel,\n\tSidebarNavigationScreenDetailsPanelRow,\n} from '../sidebar-navigation-screen-details-panel';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\n\nconst EMPTY_OBJECT = {};\n\nfunction TemplateAreaButton( { postId, icon, title } ) {\n\tconst icons = {\n\t\theader,\n\t\tfooter,\n\t};\n\tconst linkInfo = useLink( {\n\t\tpostType: 'wp_template_part',\n\t\tpostId,\n\t} );\n\n\treturn (\n\t\t<SidebarNavigationItem\n\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template__template-area-button\"\n\t\t\t{ ...linkInfo }\n\t\t\ticon={ icons[ icon ] ?? layout }\n\t\t\twithChevron\n\t\t>\n\t\t\t<Truncate\n\t\t\t\tlimit={ 20 }\n\t\t\t\tellipsizeMode=\"tail\"\n\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template__template-area-label-text\"\n\t\t\t>\n\t\t\t\t{ decodeEntities( title ) }\n\t\t\t</Truncate>\n\t\t</SidebarNavigationItem>\n\t);\n}\n\nexport default function HomeTemplateDetails() {\n\tconst navigator = useNavigator();\n\tconst {\n\t\tparams: { postType, postId },\n\t} = navigator;\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst {\n\t\tallowCommentsOnNewPosts,\n\t\ttemplatePartAreas,\n\t\tpostsPerPage,\n\t\tpostsPageTitle,\n\t\tpostsPageId,\n\t\tcurrentTemplateParts,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\tconst siteSettings = getEntityRecord( 'root', 'site' );\n\t\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\t\tconst _currentTemplateParts =\n\t\t\t\tselect( editSiteStore ).getCurrentTemplateTemplateParts();\n\t\t\tconst siteEditorSettings = getSettings();\n\t\t\tconst _postsPageRecord = siteSettings?.page_for_posts\n\t\t\t\t? select( coreStore ).getEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t'page',\n\t\t\t\t\t\tsiteSettings?.page_for_posts\n\t\t\t\t )\n\t\t\t\t: EMPTY_OBJECT;\n\n\t\t\treturn {\n\t\t\t\tallowCommentsOnNewPosts:\n\t\t\t\t\tsiteSettings?.default_comment_status === 'open',\n\t\t\t\tpostsPageTitle: _postsPageRecord?.title?.rendered,\n\t\t\t\tpostsPageId: _postsPageRecord?.id,\n\t\t\t\tpostsPerPage: siteSettings?.posts_per_page,\n\t\t\t\ttemplatePartAreas: siteEditorSettings?.defaultTemplatePartAreas,\n\t\t\t\tcurrentTemplateParts: _currentTemplateParts,\n\t\t\t};\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst [ commentsOnNewPostsValue, setCommentsOnNewPostsValue ] =\n\t\tuseState( '' );\n\tconst [ postsCountValue, setPostsCountValue ] = useState( 1 );\n\tconst [ postsPageTitleValue, setPostsPageTitleValue ] = useState( '' );\n\n\t/*\n\t * This hook serves to set the server-retrieved values,\n\t * postsPageTitle, allowCommentsOnNewPosts, postsPerPage,\n\t * to local state.\n\t */\n\tuseEffect( () => {\n\t\tsetCommentsOnNewPostsValue( allowCommentsOnNewPosts );\n\t\tsetPostsPageTitleValue( postsPageTitle );\n\t\tsetPostsCountValue( postsPerPage );\n\t}, [ postsPageTitle, allowCommentsOnNewPosts, postsPerPage ] );\n\n\t/*\n\t * Merge data in currentTemplateParts with templatePartAreas,\n\t * which contains the template icon and fallback labels\n\t */\n\tconst templateAreas = useMemo( () => {\n\t\treturn currentTemplateParts.length && templatePartAreas\n\t\t\t? currentTemplateParts.map( ( { templatePart } ) => ( {\n\t\t\t\t\t...templatePartAreas?.find(\n\t\t\t\t\t\t( { area } ) => area === templatePart?.area\n\t\t\t\t\t),\n\t\t\t\t\t...templatePart,\n\t\t\t } ) )\n\t\t\t: [];\n\t}, [ currentTemplateParts, templatePartAreas ] );\n\n\tconst setAllowCommentsOnNewPosts = ( newValue ) => {\n\t\tsetCommentsOnNewPostsValue( newValue );\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tdefault_comment_status: newValue ? 'open' : null,\n\t\t} );\n\t};\n\n\tconst setPostsPageTitle = ( newValue ) => {\n\t\tsetPostsPageTitleValue( newValue );\n\t\teditEntityRecord( 'postType', 'page', postsPageId, {\n\t\t\ttitle: newValue,\n\t\t} );\n\t};\n\n\tconst setPostsPerPage = ( newValue ) => {\n\t\tsetPostsCountValue( newValue );\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tposts_per_page: newValue,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<SidebarNavigationScreenDetailsPanel spacing={ 6 }>\n\t\t\t\t{ postsPageId && (\n\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\t\tplaceholder={ __( 'No Title' ) }\n\t\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\t\tvalue={ postsPageTitleValue }\n\t\t\t\t\t\t\tonChange={ debounce( setPostsPageTitle, 300 ) }\n\t\t\t\t\t\t\tlabel={ __( 'Blog title' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Set the Posts Page title. Appears in search results, and when the page is shared on social media.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t) }\n\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t<NumberControl\n\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\tplaceholder={ 0 }\n\t\t\t\t\t\tvalue={ postsCountValue }\n\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\tspinControls=\"custom\"\n\t\t\t\t\t\tstep=\"1\"\n\t\t\t\t\t\tmin=\"1\"\n\t\t\t\t\t\tonChange={ setPostsPerPage }\n\t\t\t\t\t\tlabel={ __( 'Posts per page' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Set the default number of posts to display on blog pages, including categories and tags. Some templates may override this setting.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\n\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\ttitle={ __( 'Discussion' ) }\n\t\t\t\tspacing={ 3 }\n\t\t\t>\n\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\tlabel={ __( 'Allow comments on new posts' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Changes will apply to new posts only. Individual posts may override these settings.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tchecked={ commentsOnNewPostsValue }\n\t\t\t\t\t\tonChange={ setAllowCommentsOnNewPosts }\n\t\t\t\t\t/>\n\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\ttitle={ __( 'Areas' ) }\n\t\t\t\tspacing={ 3 }\n\t\t\t>\n\t\t\t\t<ItemGroup>\n\t\t\t\t\t{ templateAreas.map(\n\t\t\t\t\t\t( { label, icon, theme, slug, title } ) => (\n\t\t\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow\n\t\t\t\t\t\t\t\tkey={ slug }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TemplateAreaButton\n\t\t\t\t\t\t\t\t\tpostId={ `${ theme }//${ slug }` }\n\t\t\t\t\t\t\t\t\ttitle={ title?.rendered || label }\n\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t\t)\n\t\t\t\t\t) }\n\t\t\t\t</ItemGroup>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["__","debounce","useSelect","useDispatch","store","coreStore","CheckboxControl","__experimentalUseNavigator","useNavigator","__experimentalInputControl","InputControl","__experimentalNumberControl","NumberControl","__experimentalTruncate","Truncate","__experimentalItemGroup","ItemGroup","header","footer","layout","useMemo","useState","useEffect","decodeEntities","SidebarNavigationScreenDetailsPanel","SidebarNavigationScreenDetailsPanelRow","unlock","editSiteStore","useLink","SidebarNavigationItem","TEMPLATE_PART_POST_TYPE","EMPTY_OBJECT","TemplateAreaButton","postId","icon","title","_icons$icon","icons","linkInfo","postType","createElement","className","withChevron","limit","ellipsizeMode","numberOfLines","HomeTemplateDetails","navigator","params","editEntityRecord","allowCommentsOnNewPosts","templatePartAreas","postsPerPage","postsPageTitle","postsPageId","currentTemplateParts","select","getEntityRecord","siteSettings","getSettings","_currentTemplateParts","getCurrentTemplateTemplateParts","siteEditorSettings","_postsPageRecord","page_for_posts","default_comment_status","rendered","id","posts_per_page","defaultTemplatePartAreas","commentsOnNewPostsValue","setCommentsOnNewPostsValue","postsCountValue","setPostsCountValue","postsPageTitleValue","setPostsPageTitleValue","templateAreas","length","map","templatePart","find","area","setAllowCommentsOnNewPosts","newValue","undefined","setPostsPageTitle","setPostsPerPage","Fragment","spacing","placeholder","size","value","onChange","label","help","spinControls","step","min","checked","theme","slug","key"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-template/home-template-details.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { debounce } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tCheckboxControl,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalInputControl as InputControl,\n\t__experimentalNumberControl as NumberControl,\n\t__experimentalTruncate as Truncate,\n\t__experimentalItemGroup as ItemGroup,\n} from '@wordpress/components';\nimport { header, footer, layout } from '@wordpress/icons';\nimport { useMemo, useState, useEffect } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport {\n\tSidebarNavigationScreenDetailsPanel,\n\tSidebarNavigationScreenDetailsPanelRow,\n} from '../sidebar-navigation-screen-details-panel';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport { TEMPLATE_PART_POST_TYPE } from '../../utils/constants';\n\nconst EMPTY_OBJECT = {};\n\nfunction TemplateAreaButton( { postId, icon, title } ) {\n\tconst icons = {\n\t\theader,\n\t\tfooter,\n\t};\n\tconst linkInfo = useLink( {\n\t\tpostType: TEMPLATE_PART_POST_TYPE,\n\t\tpostId,\n\t} );\n\n\treturn (\n\t\t<SidebarNavigationItem\n\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template__template-area-button\"\n\t\t\t{ ...linkInfo }\n\t\t\ticon={ icons[ icon ] ?? layout }\n\t\t\twithChevron\n\t\t>\n\t\t\t<Truncate\n\t\t\t\tlimit={ 20 }\n\t\t\t\tellipsizeMode=\"tail\"\n\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template__template-area-label-text\"\n\t\t\t>\n\t\t\t\t{ decodeEntities( title ) }\n\t\t\t</Truncate>\n\t\t</SidebarNavigationItem>\n\t);\n}\n\nexport default function HomeTemplateDetails() {\n\tconst navigator = useNavigator();\n\tconst {\n\t\tparams: { postType, postId },\n\t} = navigator;\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst {\n\t\tallowCommentsOnNewPosts,\n\t\ttemplatePartAreas,\n\t\tpostsPerPage,\n\t\tpostsPageTitle,\n\t\tpostsPageId,\n\t\tcurrentTemplateParts,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\tconst siteSettings = getEntityRecord( 'root', 'site' );\n\t\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\t\tconst _currentTemplateParts =\n\t\t\t\tselect( editSiteStore ).getCurrentTemplateTemplateParts();\n\t\t\tconst siteEditorSettings = getSettings();\n\t\t\tconst _postsPageRecord = siteSettings?.page_for_posts\n\t\t\t\t? select( coreStore ).getEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t'page',\n\t\t\t\t\t\tsiteSettings?.page_for_posts\n\t\t\t\t )\n\t\t\t\t: EMPTY_OBJECT;\n\n\t\t\treturn {\n\t\t\t\tallowCommentsOnNewPosts:\n\t\t\t\t\tsiteSettings?.default_comment_status === 'open',\n\t\t\t\tpostsPageTitle: _postsPageRecord?.title?.rendered,\n\t\t\t\tpostsPageId: _postsPageRecord?.id,\n\t\t\t\tpostsPerPage: siteSettings?.posts_per_page,\n\t\t\t\ttemplatePartAreas: siteEditorSettings?.defaultTemplatePartAreas,\n\t\t\t\tcurrentTemplateParts: _currentTemplateParts,\n\t\t\t};\n\t\t},\n\t\t[ postType, postId ]\n\t);\n\n\tconst [ commentsOnNewPostsValue, setCommentsOnNewPostsValue ] =\n\t\tuseState( '' );\n\tconst [ postsCountValue, setPostsCountValue ] = useState( 1 );\n\tconst [ postsPageTitleValue, setPostsPageTitleValue ] = useState( '' );\n\n\t/*\n\t * This hook serves to set the server-retrieved values,\n\t * postsPageTitle, allowCommentsOnNewPosts, postsPerPage,\n\t * to local state.\n\t */\n\tuseEffect( () => {\n\t\tsetCommentsOnNewPostsValue( allowCommentsOnNewPosts );\n\t\tsetPostsPageTitleValue( postsPageTitle );\n\t\tsetPostsCountValue( postsPerPage );\n\t}, [ postsPageTitle, allowCommentsOnNewPosts, postsPerPage ] );\n\n\t/*\n\t * Merge data in currentTemplateParts with templatePartAreas,\n\t * which contains the template icon and fallback labels\n\t */\n\tconst templateAreas = useMemo( () => {\n\t\treturn currentTemplateParts.length && templatePartAreas\n\t\t\t? currentTemplateParts.map( ( { templatePart } ) => ( {\n\t\t\t\t\t...templatePartAreas?.find(\n\t\t\t\t\t\t( { area } ) => area === templatePart?.area\n\t\t\t\t\t),\n\t\t\t\t\t...templatePart,\n\t\t\t } ) )\n\t\t\t: [];\n\t}, [ currentTemplateParts, templatePartAreas ] );\n\n\tconst setAllowCommentsOnNewPosts = ( newValue ) => {\n\t\tsetCommentsOnNewPostsValue( newValue );\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tdefault_comment_status: newValue ? 'open' : null,\n\t\t} );\n\t};\n\n\tconst setPostsPageTitle = ( newValue ) => {\n\t\tsetPostsPageTitleValue( newValue );\n\t\teditEntityRecord( 'postType', 'page', postsPageId, {\n\t\t\ttitle: newValue,\n\t\t} );\n\t};\n\n\tconst setPostsPerPage = ( newValue ) => {\n\t\tsetPostsCountValue( newValue );\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tposts_per_page: newValue,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<SidebarNavigationScreenDetailsPanel spacing={ 6 }>\n\t\t\t\t{ postsPageId && (\n\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\t\tplaceholder={ __( 'No Title' ) }\n\t\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\t\tvalue={ postsPageTitleValue }\n\t\t\t\t\t\t\tonChange={ debounce( setPostsPageTitle, 300 ) }\n\t\t\t\t\t\t\tlabel={ __( 'Blog title' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Set the Posts Page title. Appears in search results, and when the page is shared on social media.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t) }\n\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t<NumberControl\n\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\tplaceholder={ 0 }\n\t\t\t\t\t\tvalue={ postsCountValue }\n\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\tspinControls=\"custom\"\n\t\t\t\t\t\tstep=\"1\"\n\t\t\t\t\t\tmin=\"1\"\n\t\t\t\t\t\tonChange={ setPostsPerPage }\n\t\t\t\t\t\tlabel={ __( 'Posts per page' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Set the default number of posts to display on blog pages, including categories and tags. Some templates may override this setting.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\n\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\ttitle={ __( 'Discussion' ) }\n\t\t\t\tspacing={ 3 }\n\t\t\t>\n\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\tlabel={ __( 'Allow comments on new posts' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Changes will apply to new posts only. Individual posts may override these settings.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tchecked={ commentsOnNewPostsValue }\n\t\t\t\t\t\tonChange={ setAllowCommentsOnNewPosts }\n\t\t\t\t\t/>\n\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\ttitle={ __( 'Areas' ) }\n\t\t\t\tspacing={ 3 }\n\t\t\t>\n\t\t\t\t<ItemGroup>\n\t\t\t\t\t{ templateAreas.map(\n\t\t\t\t\t\t( { label, icon, theme, slug, title } ) => (\n\t\t\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow\n\t\t\t\t\t\t\t\tkey={ slug }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TemplateAreaButton\n\t\t\t\t\t\t\t\t\tpostId={ `${ theme }//${ slug }` }\n\t\t\t\t\t\t\t\t\ttitle={ title?.rendered || label }\n\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t\t)\n\t\t\t\t\t) }\n\t\t\t\t</ItemGroup>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
@@ -34,8 +34,8 @@ function useTemplateDetails(postType, postId) {
34
34
  descriptionText = __('This is a custom template that can be applied manually to any Post or Page.');
35
35
  }
36
36
  const content = record?.slug === 'home' || record?.slug === 'index' ? createElement(HomeTemplateDetails, null) : null;
37
- const footer = !!record?.modified ? createElement(SidebarNavigationScreenDetailsFooter, {
38
- lastModifiedDateTime: record.modified
37
+ const footer = record?.modified ? createElement(SidebarNavigationScreenDetailsFooter, {
38
+ record: record
39
39
  }) : null;
40
40
  const description = createElement(Fragment, null, descriptionText, addedBy.text && !isAddedByActiveTheme && createElement("span", {
41
41
  className: "edit-site-sidebar-navigation-screen-template__added-by-description"
@@ -1 +1 @@
1
- {"version":3,"names":["__","_x","useDispatch","useSelect","pencil","__experimentalUseNavigator","useNavigator","Icon","store","coreStore","SidebarNavigationScreen","useEditedEntityRecord","unlock","editSiteStore","SidebarButton","useAddedBy","TemplateActions","HomeTemplateDetails","SidebarNavigationScreenDetailsFooter","useTemplateDetails","postType","postId","getDescription","getTitle","record","currentTheme","select","getCurrentTheme","addedBy","isAddedByActiveTheme","type","theme","stylesheet","title","descriptionText","text","content","slug","createElement","footer","modified","lastModifiedDateTime","description","Fragment","className","imageUrl","src","alt","width","height","icon","isCustomized","SidebarNavigationScreenTemplate","navigator","params","setCanvasMode","actions","toggleProps","as","onRemove","goTo","onClick","label"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-template/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { pencil } from '@wordpress/icons';\nimport {\n\t__experimentalUseNavigator as useNavigator,\n\tIcon,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport useEditedEntityRecord from '../use-edited-entity-record';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport SidebarButton from '../sidebar-button';\nimport { useAddedBy } from '../list/added-by';\nimport TemplateActions from '../template-actions';\nimport HomeTemplateDetails from './home-template-details';\nimport SidebarNavigationScreenDetailsFooter from '../sidebar-navigation-screen-details-footer';\n\nfunction useTemplateDetails( postType, postId ) {\n\tconst { getDescription, getTitle, record } = useEditedEntityRecord(\n\t\tpostType,\n\t\tpostId\n\t);\n\tconst currentTheme = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme(),\n\t\t[]\n\t);\n\tconst addedBy = useAddedBy( postType, postId );\n\tconst isAddedByActiveTheme =\n\t\taddedBy.type === 'theme' && record.theme === currentTheme?.stylesheet;\n\tconst title = getTitle();\n\tlet descriptionText = getDescription();\n\n\tif ( ! descriptionText && addedBy.text ) {\n\t\tdescriptionText = __(\n\t\t\t'This is a custom template that can be applied manually to any Post or Page.'\n\t\t);\n\t}\n\n\tconst content =\n\t\trecord?.slug === 'home' || record?.slug === 'index' ? (\n\t\t\t<HomeTemplateDetails />\n\t\t) : null;\n\n\tconst footer = !! record?.modified ? (\n\t\t<SidebarNavigationScreenDetailsFooter\n\t\t\tlastModifiedDateTime={ record.modified }\n\t\t/>\n\t) : null;\n\n\tconst description = (\n\t\t<>\n\t\t\t{ descriptionText }\n\n\t\t\t{ addedBy.text && ! isAddedByActiveTheme && (\n\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-template__added-by-description\">\n\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-template__added-by-description-author\">\n\t\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-template__added-by-description-author-icon\">\n\t\t\t\t\t\t\t{ addedBy.imageUrl ? (\n\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\tsrc={ addedBy.imageUrl }\n\t\t\t\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\t\t\t\twidth=\"24\"\n\t\t\t\t\t\t\t\t\theight=\"24\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<Icon icon={ addedBy.icon } />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t{ addedBy.text }\n\t\t\t\t\t</span>\n\n\t\t\t\t\t{ addedBy.isCustomized && (\n\t\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-template__added-by-description-customized\">\n\t\t\t\t\t\t\t{ _x( '(Customized)', 'template' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</span>\n\t\t\t) }\n\t\t</>\n\t);\n\n\treturn { title, description, content, footer };\n}\n\nexport default function SidebarNavigationScreenTemplate() {\n\tconst navigator = useNavigator();\n\tconst {\n\t\tparams: { postType, postId },\n\t} = navigator;\n\tconst { setCanvasMode } = unlock( useDispatch( editSiteStore ) );\n\tconst { title, content, description, footer } = useTemplateDetails(\n\t\tpostType,\n\t\tpostId\n\t);\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ title }\n\t\t\tactions={\n\t\t\t\t<>\n\t\t\t\t\t<TemplateActions\n\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\tpostId={ postId }\n\t\t\t\t\t\ttoggleProps={ { as: SidebarButton } }\n\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\tnavigator.goTo( `/${ postType }/all` );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t<SidebarButton\n\t\t\t\t\t\tonClick={ () => setCanvasMode( 'edit' ) }\n\t\t\t\t\t\tlabel={ __( 'Edit' ) }\n\t\t\t\t\t\ticon={ pencil }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t}\n\t\t\tdescription={ description }\n\t\t\tcontent={ content }\n\t\t\tfooter={ footer }\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["__","_x","useDispatch","useSelect","pencil","__experimentalUseNavigator","useNavigator","Icon","store","coreStore","SidebarNavigationScreen","useEditedEntityRecord","unlock","editSiteStore","SidebarButton","useAddedBy","TemplateActions","HomeTemplateDetails","SidebarNavigationScreenDetailsFooter","useTemplateDetails","postType","postId","getDescription","getTitle","record","currentTheme","select","getCurrentTheme","addedBy","isAddedByActiveTheme","type","theme","stylesheet","title","descriptionText","text","content","slug","createElement","footer","modified","description","Fragment","className","imageUrl","src","alt","width","height","icon","isCustomized","SidebarNavigationScreenTemplate","navigator","params","setCanvasMode","actions","toggleProps","as","onRemove","goTo","onClick","label"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-template/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { pencil } from '@wordpress/icons';\nimport {\n\t__experimentalUseNavigator as useNavigator,\n\tIcon,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport useEditedEntityRecord from '../use-edited-entity-record';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport SidebarButton from '../sidebar-button';\nimport { useAddedBy } from '../list/added-by';\nimport TemplateActions from '../template-actions';\nimport HomeTemplateDetails from './home-template-details';\nimport SidebarNavigationScreenDetailsFooter from '../sidebar-navigation-screen-details-footer';\n\nfunction useTemplateDetails( postType, postId ) {\n\tconst { getDescription, getTitle, record } = useEditedEntityRecord(\n\t\tpostType,\n\t\tpostId\n\t);\n\tconst currentTheme = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme(),\n\t\t[]\n\t);\n\tconst addedBy = useAddedBy( postType, postId );\n\tconst isAddedByActiveTheme =\n\t\taddedBy.type === 'theme' && record.theme === currentTheme?.stylesheet;\n\tconst title = getTitle();\n\tlet descriptionText = getDescription();\n\n\tif ( ! descriptionText && addedBy.text ) {\n\t\tdescriptionText = __(\n\t\t\t'This is a custom template that can be applied manually to any Post or Page.'\n\t\t);\n\t}\n\n\tconst content =\n\t\trecord?.slug === 'home' || record?.slug === 'index' ? (\n\t\t\t<HomeTemplateDetails />\n\t\t) : null;\n\n\tconst footer = record?.modified ? (\n\t\t<SidebarNavigationScreenDetailsFooter record={ record } />\n\t) : null;\n\n\tconst description = (\n\t\t<>\n\t\t\t{ descriptionText }\n\n\t\t\t{ addedBy.text && ! isAddedByActiveTheme && (\n\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-template__added-by-description\">\n\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-template__added-by-description-author\">\n\t\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-template__added-by-description-author-icon\">\n\t\t\t\t\t\t\t{ addedBy.imageUrl ? (\n\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\tsrc={ addedBy.imageUrl }\n\t\t\t\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\t\t\t\twidth=\"24\"\n\t\t\t\t\t\t\t\t\theight=\"24\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<Icon icon={ addedBy.icon } />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t{ addedBy.text }\n\t\t\t\t\t</span>\n\n\t\t\t\t\t{ addedBy.isCustomized && (\n\t\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-template__added-by-description-customized\">\n\t\t\t\t\t\t\t{ _x( '(Customized)', 'template' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</span>\n\t\t\t) }\n\t\t</>\n\t);\n\n\treturn { title, description, content, footer };\n}\n\nexport default function SidebarNavigationScreenTemplate() {\n\tconst navigator = useNavigator();\n\tconst {\n\t\tparams: { postType, postId },\n\t} = navigator;\n\tconst { setCanvasMode } = unlock( useDispatch( editSiteStore ) );\n\tconst { title, content, description, footer } = useTemplateDetails(\n\t\tpostType,\n\t\tpostId\n\t);\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ title }\n\t\t\tactions={\n\t\t\t\t<>\n\t\t\t\t\t<TemplateActions\n\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\tpostId={ postId }\n\t\t\t\t\t\ttoggleProps={ { as: SidebarButton } }\n\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\tnavigator.goTo( `/${ postType }/all` );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t<SidebarButton\n\t\t\t\t\t\tonClick={ () => setCanvasMode( 'edit' ) }\n\t\t\t\t\t\tlabel={ __( 'Edit' ) }\n\t\t\t\t\t\ticon={ pencil }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t}\n\t\t\tdescription={ description }\n\t\t\tcontent={ content }\n\t\t\tfooter={ footer }\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
@@ -16,6 +16,7 @@ import { useLink } from '../routes/link';
16
16
  import SidebarNavigationItem from '../sidebar-navigation-item';
17
17
  import AddNewTemplate from '../add-new-template';
18
18
  import SidebarButton from '../sidebar-button';
19
+ import { TEMPLATE_POST_TYPE } from '../../utils/constants';
19
20
  const TemplateItem = ({
20
21
  postType,
21
22
  postId,
@@ -35,7 +36,7 @@ export default function SidebarNavigationScreenTemplates() {
35
36
  const {
36
37
  records: templates,
37
38
  isResolving: isLoading
38
- } = useEntityRecords('postType', 'wp_template', {
39
+ } = useEntityRecords('postType', TEMPLATE_POST_TYPE, {
39
40
  per_page: -1
40
41
  });
41
42
  const sortedTemplates = templates ? [...templates] : [];
@@ -46,15 +47,15 @@ export default function SidebarNavigationScreenTemplates() {
46
47
  const canCreate = !isMobileViewport;
47
48
  return createElement(SidebarNavigationScreen, {
48
49
  title: __('Templates'),
49
- description: __('Express the layout of your site with templates'),
50
+ description: __('Express the layout of your site with templates.'),
50
51
  actions: canCreate && createElement(AddNewTemplate, {
51
- templateType: 'wp_template',
52
+ templateType: TEMPLATE_POST_TYPE,
52
53
  toggleProps: {
53
54
  as: SidebarButton
54
55
  }
55
56
  }),
56
57
  content: createElement(Fragment, null, isLoading && __('Loading templates…'), !isLoading && createElement(ItemGroup, null, !templates?.length && createElement(Item, null, __('No templates found')), sortedTemplates.map(template => createElement(TemplateItem, {
57
- postType: 'wp_template',
58
+ postType: TEMPLATE_POST_TYPE,
58
59
  postId: template.id,
59
60
  key: template.id,
60
61
  withChevron: true
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalItemGroup","ItemGroup","__experimentalItem","Item","__","useEntityRecords","decodeEntities","useViewportMatch","SidebarNavigationScreen","useLink","SidebarNavigationItem","AddNewTemplate","SidebarButton","TemplateItem","postType","postId","props","linkInfo","createElement","SidebarNavigationScreenTemplates","isMobileViewport","records","templates","isResolving","isLoading","per_page","sortedTemplates","sort","a","b","title","rendered","localeCompare","browseAllLink","path","canCreate","description","actions","templateType","toggleProps","as","content","Fragment","length","map","template","id","key","withChevron","slug","footer"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-templates/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport { useLink } from '../routes/link';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport AddNewTemplate from '../add-new-template';\nimport SidebarButton from '../sidebar-button';\n\nconst TemplateItem = ( { postType, postId, ...props } ) => {\n\tconst linkInfo = useLink( {\n\t\tpostType,\n\t\tpostId,\n\t} );\n\treturn <SidebarNavigationItem { ...linkInfo } { ...props } />;\n};\n\nexport default function SidebarNavigationScreenTemplates() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\n\tconst { records: templates, isResolving: isLoading } = useEntityRecords(\n\t\t'postType',\n\t\t'wp_template',\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\n\tconst sortedTemplates = templates ? [ ...templates ] : [];\n\tsortedTemplates.sort( ( a, b ) =>\n\t\ta.title.rendered.localeCompare( b.title.rendered )\n\t);\n\n\tconst browseAllLink = useLink( { path: '/wp_template/all' } );\n\tconst canCreate = ! isMobileViewport;\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ __( 'Templates' ) }\n\t\t\tdescription={ __(\n\t\t\t\t'Express the layout of your site with templates'\n\t\t\t) }\n\t\t\tactions={\n\t\t\t\tcanCreate && (\n\t\t\t\t\t<AddNewTemplate\n\t\t\t\t\t\ttemplateType={ 'wp_template' }\n\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\tas: SidebarButton,\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\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ isLoading && __( 'Loading templates…' ) }\n\t\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t\t<ItemGroup>\n\t\t\t\t\t\t\t{ ! templates?.length && (\n\t\t\t\t\t\t\t\t<Item>{ __( 'No templates found' ) }</Item>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ sortedTemplates.map( ( template ) => (\n\t\t\t\t\t\t\t\t<TemplateItem\n\t\t\t\t\t\t\t\t\tpostType={ 'wp_template' }\n\t\t\t\t\t\t\t\t\tpostId={ template.id }\n\t\t\t\t\t\t\t\t\tkey={ template.id }\n\t\t\t\t\t\t\t\t\twithChevron\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\t\t\ttemplate.title?.rendered ||\n\t\t\t\t\t\t\t\t\t\t\ttemplate.slug\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</TemplateItem>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t}\n\t\t\tfooter={\n\t\t\t\t! isMobileViewport && (\n\t\t\t\t\t<SidebarNavigationItem withChevron { ...browseAllLink }>\n\t\t\t\t\t\t{ __( 'Manage all templates' ) }\n\t\t\t\t\t</SidebarNavigationItem>\n\t\t\t\t)\n\t\t\t}\n\t\t/>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,uBAAuB,IAAIC,SAAS,EACpCC,kBAAkB,IAAIC,IAAI,QACpB,uBAAuB;AAC9B,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,gBAAgB,QAAQ,sBAAsB;AACvD,SAASC,cAAc,QAAQ,0BAA0B;AACzD,SAASC,gBAAgB,QAAQ,oBAAoB;;AAErD;AACA;AACA;AACA,OAAOC,uBAAuB,MAAM,8BAA8B;AAClE,SAASC,OAAO,QAAQ,gBAAgB;AACxC,OAAOC,qBAAqB,MAAM,4BAA4B;AAC9D,OAAOC,cAAc,MAAM,qBAAqB;AAChD,OAAOC,aAAa,MAAM,mBAAmB;AAE7C,MAAMC,YAAY,GAAGA,CAAE;EAAEC,QAAQ;EAAEC,MAAM;EAAE,GAAGC;AAAM,CAAC,KAAM;EAC1D,MAAMC,QAAQ,GAAGR,OAAO,CAAE;IACzBK,QAAQ;IACRC;EACD,CAAE,CAAC;EACH,OAAOG,aAAA,CAACR,qBAAqB;IAAA,GAAMO,QAAQ;IAAA,GAAQD;EAAK,CAAI,CAAC;AAC9D,CAAC;AAED,eAAe,SAASG,gCAAgCA,CAAA,EAAG;EAC1D,MAAMC,gBAAgB,GAAGb,gBAAgB,CAAE,QAAQ,EAAE,GAAI,CAAC;EAE1D,MAAM;IAAEc,OAAO,EAAEC,SAAS;IAAEC,WAAW,EAAEC;EAAU,CAAC,GAAGnB,gBAAgB,CACtE,UAAU,EACV,aAAa,EACb;IACCoB,QAAQ,EAAE,CAAC;EACZ,CACD,CAAC;EAED,MAAMC,eAAe,GAAGJ,SAAS,GAAG,CAAE,GAAGA,SAAS,CAAE,GAAG,EAAE;EACzDI,eAAe,CAACC,IAAI,CAAE,CAAEC,CAAC,EAAEC,CAAC,KAC3BD,CAAC,CAACE,KAAK,CAACC,QAAQ,CAACC,aAAa,CAAEH,CAAC,CAACC,KAAK,CAACC,QAAS,CAClD,CAAC;EAED,MAAME,aAAa,GAAGxB,OAAO,CAAE;IAAEyB,IAAI,EAAE;EAAmB,CAAE,CAAC;EAC7D,MAAMC,SAAS,GAAG,CAAEf,gBAAgB;EACpC,OACCF,aAAA,CAACV,uBAAuB;IACvBsB,KAAK,EAAG1B,EAAE,CAAE,WAAY,CAAG;IAC3BgC,WAAW,EAAGhC,EAAE,CACf,gDACD,CAAG;IACHiC,OAAO,EACNF,SAAS,IACRjB,aAAA,CAACP,cAAc;MACd2B,YAAY,EAAG,aAAe;MAC9BC,WAAW,EAAG;QACbC,EAAE,EAAE5B;MACL;IAAG,CACH,CAEF;IACD6B,OAAO,EACNvB,aAAA,CAAAwB,QAAA,QACGlB,SAAS,IAAIpB,EAAE,CAAE,oBAAqB,CAAC,EACvC,CAAEoB,SAAS,IACZN,aAAA,CAACjB,SAAS,QACP,CAAEqB,SAAS,EAAEqB,MAAM,IACpBzB,aAAA,CAACf,IAAI,QAAGC,EAAE,CAAE,oBAAqB,CAAS,CAC1C,EACCsB,eAAe,CAACkB,GAAG,CAAIC,QAAQ,IAChC3B,aAAA,CAACL,YAAY;MACZC,QAAQ,EAAG,aAAe;MAC1BC,MAAM,EAAG8B,QAAQ,CAACC,EAAI;MACtBC,GAAG,EAAGF,QAAQ,CAACC,EAAI;MACnBE,WAAW;IAAA,GAET1C,cAAc,CACfuC,QAAQ,CAACf,KAAK,EAAEC,QAAQ,IACvBc,QAAQ,CAACI,IACX,CACa,CACb,CACQ,CAEX,CACF;IACDC,MAAM,EACL,CAAE9B,gBAAgB,IACjBF,aAAA,CAACR,qBAAqB;MAACsC,WAAW;MAAA,GAAMf;IAAa,GAClD7B,EAAE,CAAE,sBAAuB,CACP;EAExB,CACD,CAAC;AAEJ"}
1
+ {"version":3,"names":["__experimentalItemGroup","ItemGroup","__experimentalItem","Item","__","useEntityRecords","decodeEntities","useViewportMatch","SidebarNavigationScreen","useLink","SidebarNavigationItem","AddNewTemplate","SidebarButton","TEMPLATE_POST_TYPE","TemplateItem","postType","postId","props","linkInfo","createElement","SidebarNavigationScreenTemplates","isMobileViewport","records","templates","isResolving","isLoading","per_page","sortedTemplates","sort","a","b","title","rendered","localeCompare","browseAllLink","path","canCreate","description","actions","templateType","toggleProps","as","content","Fragment","length","map","template","id","key","withChevron","slug","footer"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-templates/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport { useLink } from '../routes/link';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport AddNewTemplate from '../add-new-template';\nimport SidebarButton from '../sidebar-button';\nimport { TEMPLATE_POST_TYPE } from '../../utils/constants';\n\nconst TemplateItem = ( { postType, postId, ...props } ) => {\n\tconst linkInfo = useLink( {\n\t\tpostType,\n\t\tpostId,\n\t} );\n\treturn <SidebarNavigationItem { ...linkInfo } { ...props } />;\n};\n\nexport default function SidebarNavigationScreenTemplates() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\n\tconst { records: templates, isResolving: isLoading } = 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\n\tconst sortedTemplates = templates ? [ ...templates ] : [];\n\tsortedTemplates.sort( ( a, b ) =>\n\t\ta.title.rendered.localeCompare( b.title.rendered )\n\t);\n\n\tconst browseAllLink = useLink( { path: '/wp_template/all' } );\n\tconst canCreate = ! isMobileViewport;\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ __( 'Templates' ) }\n\t\t\tdescription={ __(\n\t\t\t\t'Express the layout of your site with templates.'\n\t\t\t) }\n\t\t\tactions={\n\t\t\t\tcanCreate && (\n\t\t\t\t\t<AddNewTemplate\n\t\t\t\t\t\ttemplateType={ TEMPLATE_POST_TYPE }\n\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\tas: SidebarButton,\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\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ isLoading && __( 'Loading templates…' ) }\n\t\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t\t<ItemGroup>\n\t\t\t\t\t\t\t{ ! templates?.length && (\n\t\t\t\t\t\t\t\t<Item>{ __( 'No templates found' ) }</Item>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ sortedTemplates.map( ( template ) => (\n\t\t\t\t\t\t\t\t<TemplateItem\n\t\t\t\t\t\t\t\t\tpostType={ TEMPLATE_POST_TYPE }\n\t\t\t\t\t\t\t\t\tpostId={ template.id }\n\t\t\t\t\t\t\t\t\tkey={ template.id }\n\t\t\t\t\t\t\t\t\twithChevron\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\t\t\ttemplate.title?.rendered ||\n\t\t\t\t\t\t\t\t\t\t\ttemplate.slug\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</TemplateItem>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t}\n\t\t\tfooter={\n\t\t\t\t! isMobileViewport && (\n\t\t\t\t\t<SidebarNavigationItem withChevron { ...browseAllLink }>\n\t\t\t\t\t\t{ __( 'Manage all templates' ) }\n\t\t\t\t\t</SidebarNavigationItem>\n\t\t\t\t)\n\t\t\t}\n\t\t/>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,uBAAuB,IAAIC,SAAS,EACpCC,kBAAkB,IAAIC,IAAI,QACpB,uBAAuB;AAC9B,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,gBAAgB,QAAQ,sBAAsB;AACvD,SAASC,cAAc,QAAQ,0BAA0B;AACzD,SAASC,gBAAgB,QAAQ,oBAAoB;;AAErD;AACA;AACA;AACA,OAAOC,uBAAuB,MAAM,8BAA8B;AAClE,SAASC,OAAO,QAAQ,gBAAgB;AACxC,OAAOC,qBAAqB,MAAM,4BAA4B;AAC9D,OAAOC,cAAc,MAAM,qBAAqB;AAChD,OAAOC,aAAa,MAAM,mBAAmB;AAC7C,SAASC,kBAAkB,QAAQ,uBAAuB;AAE1D,MAAMC,YAAY,GAAGA,CAAE;EAAEC,QAAQ;EAAEC,MAAM;EAAE,GAAGC;AAAM,CAAC,KAAM;EAC1D,MAAMC,QAAQ,GAAGT,OAAO,CAAE;IACzBM,QAAQ;IACRC;EACD,CAAE,CAAC;EACH,OAAOG,aAAA,CAACT,qBAAqB;IAAA,GAAMQ,QAAQ;IAAA,GAAQD;EAAK,CAAI,CAAC;AAC9D,CAAC;AAED,eAAe,SAASG,gCAAgCA,CAAA,EAAG;EAC1D,MAAMC,gBAAgB,GAAGd,gBAAgB,CAAE,QAAQ,EAAE,GAAI,CAAC;EAE1D,MAAM;IAAEe,OAAO,EAAEC,SAAS;IAAEC,WAAW,EAAEC;EAAU,CAAC,GAAGpB,gBAAgB,CACtE,UAAU,EACVQ,kBAAkB,EAClB;IACCa,QAAQ,EAAE,CAAC;EACZ,CACD,CAAC;EAED,MAAMC,eAAe,GAAGJ,SAAS,GAAG,CAAE,GAAGA,SAAS,CAAE,GAAG,EAAE;EACzDI,eAAe,CAACC,IAAI,CAAE,CAAEC,CAAC,EAAEC,CAAC,KAC3BD,CAAC,CAACE,KAAK,CAACC,QAAQ,CAACC,aAAa,CAAEH,CAAC,CAACC,KAAK,CAACC,QAAS,CAClD,CAAC;EAED,MAAME,aAAa,GAAGzB,OAAO,CAAE;IAAE0B,IAAI,EAAE;EAAmB,CAAE,CAAC;EAC7D,MAAMC,SAAS,GAAG,CAAEf,gBAAgB;EACpC,OACCF,aAAA,CAACX,uBAAuB;IACvBuB,KAAK,EAAG3B,EAAE,CAAE,WAAY,CAAG;IAC3BiC,WAAW,EAAGjC,EAAE,CACf,iDACD,CAAG;IACHkC,OAAO,EACNF,SAAS,IACRjB,aAAA,CAACR,cAAc;MACd4B,YAAY,EAAG1B,kBAAoB;MACnC2B,WAAW,EAAG;QACbC,EAAE,EAAE7B;MACL;IAAG,CACH,CAEF;IACD8B,OAAO,EACNvB,aAAA,CAAAwB,QAAA,QACGlB,SAAS,IAAIrB,EAAE,CAAE,oBAAqB,CAAC,EACvC,CAAEqB,SAAS,IACZN,aAAA,CAAClB,SAAS,QACP,CAAEsB,SAAS,EAAEqB,MAAM,IACpBzB,aAAA,CAAChB,IAAI,QAAGC,EAAE,CAAE,oBAAqB,CAAS,CAC1C,EACCuB,eAAe,CAACkB,GAAG,CAAIC,QAAQ,IAChC3B,aAAA,CAACL,YAAY;MACZC,QAAQ,EAAGF,kBAAoB;MAC/BG,MAAM,EAAG8B,QAAQ,CAACC,EAAI;MACtBC,GAAG,EAAGF,QAAQ,CAACC,EAAI;MACnBE,WAAW;IAAA,GAET3C,cAAc,CACfwC,QAAQ,CAACf,KAAK,EAAEC,QAAQ,IACvBc,QAAQ,CAACI,IACX,CACa,CACb,CACQ,CAEX,CACF;IACDC,MAAM,EACL,CAAE9B,gBAAgB,IACjBF,aAAA,CAACT,qBAAqB;MAACuC,WAAW;MAAA,GAAMf;IAAa,GAClD9B,EAAE,CAAE,sBAAuB,CACP;EAExB,CACD,CAAC;AAEJ"}