@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
@@ -1,18 +1,25 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports.usePatterns = exports.default = void 0;
8
+ var _rememo = _interopRequireDefault(require("rememo"));
7
9
  var _blocks = require("@wordpress/blocks");
8
10
  var _data = require("@wordpress/data");
9
11
  var _coreData = require("@wordpress/core-data");
10
12
  var _editor = require("@wordpress/editor");
11
13
  var _htmlEntities = require("@wordpress/html-entities");
12
14
  var _utils = require("./utils");
15
+ var _constants = require("../../utils/constants");
13
16
  var _lockUnlock = require("../../lock-unlock");
14
17
  var _searchItems = require("./search-items");
15
18
  var _store = require("../../store");
19
+ /**
20
+ * External dependencies
21
+ */
22
+
16
23
  /**
17
24
  * WordPress dependencies
18
25
  */
@@ -29,7 +36,7 @@ const templatePartToPattern = templatePart => ({
29
36
  }),
30
37
  categories: [templatePart.area],
31
38
  description: templatePart.description || '',
32
- isCustom: templatePart.source === 'custom',
39
+ isCustom: templatePart.source === _constants.TEMPLATE_ORIGINS.custom,
33
40
  keywords: templatePart.keywords || [],
34
41
  id: createTemplatePartId(templatePart.theme, templatePart.slug),
35
42
  name: createTemplatePartId(templatePart.theme, templatePart.slug),
@@ -37,10 +44,7 @@ const templatePartToPattern = templatePart => ({
37
44
  type: templatePart.type,
38
45
  templatePart
39
46
  });
40
- const selectTemplatePartsAsPatterns = (select, {
41
- categoryId,
42
- search = ''
43
- } = {}) => {
47
+ const selectTemplatePartsAsPatterns = (0, _rememo.default)((select, categoryId, search = '') => {
44
48
  var _getEntityRecords;
45
49
  const {
46
50
  getEntityRecords,
@@ -52,7 +56,7 @@ const selectTemplatePartsAsPatterns = (select, {
52
56
  const query = {
53
57
  per_page: -1
54
58
  };
55
- const rawTemplateParts = (_getEntityRecords = getEntityRecords('postType', _utils.TEMPLATE_PARTS, query)) !== null && _getEntityRecords !== void 0 ? _getEntityRecords : EMPTY_PATTERN_LIST;
59
+ const rawTemplateParts = (_getEntityRecords = getEntityRecords('postType', _constants.TEMPLATE_PART_POST_TYPE, query)) !== null && _getEntityRecords !== void 0 ? _getEntityRecords : EMPTY_PATTERN_LIST;
56
60
  const templateParts = rawTemplateParts.map(templatePart => templatePartToPattern(templatePart));
57
61
 
58
62
  // In the case where a custom template part area has been removed we need
@@ -61,12 +65,12 @@ const selectTemplatePartsAsPatterns = (select, {
61
65
  const knownAreas = __experimentalGetDefaultTemplatePartAreas() || [];
62
66
  const templatePartAreas = knownAreas.map(area => area.area);
63
67
  const templatePartHasCategory = (item, category) => {
64
- if (category !== 'uncategorized') {
68
+ if (category !== _constants.TEMPLATE_PART_AREA_DEFAULT_CATEGORY) {
65
69
  return item.templatePart.area === category;
66
70
  }
67
71
  return item.templatePart.area === category || !templatePartAreas.includes(item.templatePart.area);
68
72
  };
69
- const isResolving = getIsResolving('getEntityRecords', ['postType', 'wp_template_part', query]);
73
+ const isResolving = getIsResolving('getEntityRecords', ['postType', _constants.TEMPLATE_PART_POST_TYPE, query]);
70
74
  const patterns = (0, _searchItems.searchItems)(templateParts, search, {
71
75
  categoryId,
72
76
  hasCategory: templatePartHasCategory
@@ -75,11 +79,12 @@ const selectTemplatePartsAsPatterns = (select, {
75
79
  patterns,
76
80
  isResolving
77
81
  };
78
- };
79
- const selectThemePatterns = (select, {
80
- categoryId,
81
- search = ''
82
- } = {}) => {
82
+ }, select => [select(_coreData.store).getEntityRecords('postType', _constants.TEMPLATE_PART_POST_TYPE, {
83
+ per_page: -1
84
+ }), select(_coreData.store).getIsResolving('getEntityRecords', ['postType', _constants.TEMPLATE_PART_POST_TYPE, {
85
+ per_page: -1
86
+ }]), select(_editor.store).__experimentalGetDefaultTemplatePartAreas()]);
87
+ const selectThemePatterns = (0, _rememo.default)(select => {
83
88
  var _settings$__experimen;
84
89
  const {
85
90
  getSettings
@@ -87,14 +92,30 @@ const selectThemePatterns = (select, {
87
92
  const settings = getSettings();
88
93
  const blockPatterns = (_settings$__experimen = settings.__experimentalAdditionalBlockPatterns) !== null && _settings$__experimen !== void 0 ? _settings$__experimen : settings.__experimentalBlockPatterns;
89
94
  const restBlockPatterns = select(_coreData.store).getBlockPatterns();
90
- let patterns = [...(blockPatterns || []), ...(restBlockPatterns || [])].filter(pattern => !_utils.CORE_PATTERN_SOURCES.includes(pattern.source)).filter(_utils.filterOutDuplicatesByName).filter(pattern => pattern.inserter !== false).map(pattern => ({
95
+ const patterns = [...(blockPatterns || []), ...(restBlockPatterns || [])].filter(pattern => !_constants.PATTERN_CORE_SOURCES.includes(pattern.source)).filter(_utils.filterOutDuplicatesByName).filter(pattern => pattern.inserter !== false).map(pattern => ({
91
96
  ...pattern,
92
97
  keywords: pattern.keywords || [],
93
- type: 'pattern',
98
+ type: _constants.PATTERN_TYPES.theme,
94
99
  blocks: (0, _blocks.parse)(pattern.content, {
95
100
  __unstableSkipMigrationLogs: true
96
101
  })
97
102
  }));
103
+ return {
104
+ patterns,
105
+ isResolving: false
106
+ };
107
+ }, select => [select(_coreData.store).getBlockPatterns(), (0, _lockUnlock.unlock)(select(_store.store)).getSettings()]);
108
+ const selectPatterns = (0, _rememo.default)((select, categoryId, syncStatus, search = '') => {
109
+ const {
110
+ patterns: themePatterns
111
+ } = selectThemePatterns(select);
112
+ const {
113
+ patterns: userPatterns
114
+ } = selectUserPatterns(select);
115
+ let patterns = [...(themePatterns || []), ...(userPatterns || [])];
116
+ if (syncStatus) {
117
+ patterns = patterns.filter(pattern => pattern.syncStatus === syncStatus);
118
+ }
98
119
  if (categoryId) {
99
120
  patterns = (0, _searchItems.searchItems)(patterns, search, {
100
121
  categoryId,
@@ -109,33 +130,36 @@ const selectThemePatterns = (select, {
109
130
  patterns,
110
131
  isResolving: false
111
132
  };
112
- };
113
- const reusableBlockToPattern = reusableBlock => ({
114
- blocks: (0, _blocks.parse)(reusableBlock.content.raw, {
133
+ }, select => [selectThemePatterns(select), selectUserPatterns(select)]);
134
+ const patternBlockToPattern = (patternBlock, categories) => ({
135
+ blocks: (0, _blocks.parse)(patternBlock.content.raw, {
115
136
  __unstableSkipMigrationLogs: true
116
137
  }),
117
- categories: reusableBlock.wp_pattern,
118
- id: reusableBlock.id,
119
- name: reusableBlock.slug,
120
- syncStatus: reusableBlock.wp_pattern_sync_status || _utils.SYNC_TYPES.full,
121
- title: reusableBlock.title.raw,
122
- type: reusableBlock.type,
123
- reusableBlock
138
+ ...(patternBlock.wp_pattern_category.length > 0 && {
139
+ categories: patternBlock.wp_pattern_category.map(patternCategoryId => categories && categories.get(patternCategoryId) ? categories.get(patternCategoryId).slug : patternCategoryId)
140
+ }),
141
+ id: patternBlock.id,
142
+ name: patternBlock.slug,
143
+ syncStatus: patternBlock.wp_pattern_sync_status || _constants.PATTERN_SYNC_TYPES.full,
144
+ title: patternBlock.title.raw,
145
+ type: _constants.PATTERN_TYPES.user,
146
+ patternBlock
124
147
  });
125
- const selectUserPatterns = (select, {
126
- search = '',
127
- syncStatus
128
- } = {}) => {
148
+ const selectUserPatterns = (0, _rememo.default)((select, syncStatus, search = '') => {
129
149
  const {
130
150
  getEntityRecords,
131
- getIsResolving
151
+ getIsResolving,
152
+ getUserPatternCategories
132
153
  } = select(_coreData.store);
133
154
  const query = {
134
155
  per_page: -1
135
156
  };
136
- const records = getEntityRecords('postType', _utils.USER_PATTERNS, query);
137
- let patterns = records ? records.map(record => reusableBlockToPattern(record)) : EMPTY_PATTERN_LIST;
138
- const isResolving = getIsResolving('getEntityRecords', ['postType', _utils.USER_PATTERNS, query]);
157
+ const records = getEntityRecords('postType', _constants.PATTERN_TYPES.user, query);
158
+ const userPatternCategories = getUserPatternCategories();
159
+ const categories = new Map();
160
+ userPatternCategories.forEach(userCategory => categories.set(userCategory.id, userCategory));
161
+ let patterns = records ? records.map(record => patternBlockToPattern(record, categories)) : EMPTY_PATTERN_LIST;
162
+ const isResolving = getIsResolving('getEntityRecords', ['postType', _constants.PATTERN_TYPES.user, query]);
139
163
  if (syncStatus) {
140
164
  patterns = patterns.filter(pattern => pattern.syncStatus === syncStatus);
141
165
  }
@@ -147,29 +171,25 @@ const selectUserPatterns = (select, {
147
171
  });
148
172
  return {
149
173
  patterns,
150
- isResolving
174
+ isResolving,
175
+ categories: userPatternCategories
151
176
  };
152
- };
177
+ }, select => [select(_coreData.store).getEntityRecords('postType', _constants.PATTERN_TYPES.user, {
178
+ per_page: -1
179
+ }), select(_coreData.store).getIsResolving('getEntityRecords', ['postType', _constants.PATTERN_TYPES.user, {
180
+ per_page: -1
181
+ }]), select(_coreData.store).getUserPatternCategories()]);
153
182
  const usePatterns = (categoryType, categoryId, {
154
183
  search = '',
155
184
  syncStatus
156
- }) => {
185
+ } = {}) => {
157
186
  return (0, _data.useSelect)(select => {
158
- if (categoryType === _utils.TEMPLATE_PARTS) {
159
- return selectTemplatePartsAsPatterns(select, {
160
- categoryId,
161
- search
162
- });
163
- } else if (categoryType === _utils.PATTERNS) {
164
- return selectThemePatterns(select, {
165
- categoryId,
166
- search
167
- });
168
- } else if (categoryType === _utils.USER_PATTERNS) {
169
- return selectUserPatterns(select, {
170
- search,
171
- syncStatus
172
- });
187
+ if (categoryType === _constants.TEMPLATE_PART_POST_TYPE) {
188
+ return selectTemplatePartsAsPatterns(select, categoryId, search);
189
+ } else if (categoryType === _constants.PATTERN_TYPES.theme) {
190
+ return selectPatterns(select, categoryId, syncStatus, search);
191
+ } else if (categoryType === _constants.PATTERN_TYPES.user) {
192
+ return selectUserPatterns(select, syncStatus, search);
173
193
  }
174
194
  return {
175
195
  patterns: EMPTY_PATTERN_LIST,
@@ -1 +1 @@
1
- {"version":3,"names":["_blocks","require","_data","_coreData","_editor","_htmlEntities","_utils","_lockUnlock","_searchItems","_store","EMPTY_PATTERN_LIST","createTemplatePartId","theme","slug","templatePartToPattern","templatePart","blocks","parse","content","raw","__unstableSkipMigrationLogs","categories","area","description","isCustom","source","keywords","id","name","title","decodeEntities","rendered","type","selectTemplatePartsAsPatterns","select","categoryId","search","_getEntityRecords","getEntityRecords","getIsResolving","coreStore","__experimentalGetDefaultTemplatePartAreas","editorStore","query","per_page","rawTemplateParts","TEMPLATE_PARTS","templateParts","map","knownAreas","templatePartAreas","templatePartHasCategory","item","category","includes","isResolving","patterns","searchItems","hasCategory","selectThemePatterns","_settings$__experimen","getSettings","unlock","editSiteStore","settings","blockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","filter","pattern","CORE_PATTERN_SOURCES","filterOutDuplicatesByName","inserter","currentCategory","hasOwnProperty","reusableBlockToPattern","reusableBlock","wp_pattern","syncStatus","wp_pattern_sync_status","SYNC_TYPES","full","selectUserPatterns","records","USER_PATTERNS","record","usePatterns","categoryType","useSelect","PATTERNS","exports","_default","default"],"sources":["@wordpress/edit-site/src/components/page-patterns/use-patterns.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport {\n\tCORE_PATTERN_SOURCES,\n\tPATTERNS,\n\tSYNC_TYPES,\n\tTEMPLATE_PARTS,\n\tUSER_PATTERNS,\n\tfilterOutDuplicatesByName,\n} from './utils';\nimport { unlock } from '../../lock-unlock';\nimport { searchItems } from './search-items';\nimport { store as editSiteStore } from '../../store';\n\nconst EMPTY_PATTERN_LIST = [];\n\nconst createTemplatePartId = ( theme, slug ) =>\n\ttheme && slug ? theme + '//' + slug : null;\n\nconst templatePartToPattern = ( templatePart ) => ( {\n\tblocks: parse( templatePart.content.raw, {\n\t\t__unstableSkipMigrationLogs: true,\n\t} ),\n\tcategories: [ templatePart.area ],\n\tdescription: templatePart.description || '',\n\tisCustom: templatePart.source === 'custom',\n\tkeywords: templatePart.keywords || [],\n\tid: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\tname: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\ttitle: decodeEntities( templatePart.title.rendered ),\n\ttype: templatePart.type,\n\ttemplatePart,\n} );\n\nconst selectTemplatePartsAsPatterns = (\n\tselect,\n\t{ categoryId, search = '' } = {}\n) => {\n\tconst { getEntityRecords, getIsResolving } = select( coreStore );\n\tconst { __experimentalGetDefaultTemplatePartAreas } = select( editorStore );\n\tconst query = { per_page: -1 };\n\tconst rawTemplateParts =\n\t\tgetEntityRecords( 'postType', TEMPLATE_PARTS, query ) ??\n\t\tEMPTY_PATTERN_LIST;\n\tconst templateParts = rawTemplateParts.map( ( templatePart ) =>\n\t\ttemplatePartToPattern( templatePart )\n\t);\n\n\t// In the case where a custom template part area has been removed we need\n\t// the current list of areas to cross check against so orphaned template\n\t// parts can be treated as uncategorized.\n\tconst knownAreas = __experimentalGetDefaultTemplatePartAreas() || [];\n\tconst templatePartAreas = knownAreas.map( ( area ) => area.area );\n\n\tconst templatePartHasCategory = ( item, category ) => {\n\t\tif ( category !== 'uncategorized' ) {\n\t\t\treturn item.templatePart.area === category;\n\t\t}\n\n\t\treturn (\n\t\t\titem.templatePart.area === category ||\n\t\t\t! templatePartAreas.includes( item.templatePart.area )\n\t\t);\n\t};\n\n\tconst isResolving = getIsResolving( 'getEntityRecords', [\n\t\t'postType',\n\t\t'wp_template_part',\n\t\tquery,\n\t] );\n\n\tconst patterns = searchItems( templateParts, search, {\n\t\tcategoryId,\n\t\thasCategory: templatePartHasCategory,\n\t} );\n\n\treturn { patterns, isResolving };\n};\n\nconst selectThemePatterns = ( select, { categoryId, search = '' } = {} ) => {\n\tconst { getSettings } = unlock( select( editSiteStore ) );\n\tconst settings = getSettings();\n\tconst blockPatterns =\n\t\tsettings.__experimentalAdditionalBlockPatterns ??\n\t\tsettings.__experimentalBlockPatterns;\n\n\tconst restBlockPatterns = select( coreStore ).getBlockPatterns();\n\n\tlet patterns = [\n\t\t...( blockPatterns || [] ),\n\t\t...( restBlockPatterns || [] ),\n\t]\n\t\t.filter(\n\t\t\t( pattern ) => ! CORE_PATTERN_SOURCES.includes( pattern.source )\n\t\t)\n\t\t.filter( filterOutDuplicatesByName )\n\t\t.filter( ( pattern ) => pattern.inserter !== false )\n\t\t.map( ( pattern ) => ( {\n\t\t\t...pattern,\n\t\t\tkeywords: pattern.keywords || [],\n\t\t\ttype: 'pattern',\n\t\t\tblocks: parse( pattern.content, {\n\t\t\t\t__unstableSkipMigrationLogs: true,\n\t\t\t} ),\n\t\t} ) );\n\n\tif ( categoryId ) {\n\t\tpatterns = searchItems( patterns, search, {\n\t\t\tcategoryId,\n\t\t\thasCategory: ( item, currentCategory ) =>\n\t\t\t\titem.categories?.includes( currentCategory ),\n\t\t} );\n\t} else {\n\t\tpatterns = searchItems( patterns, search, {\n\t\t\thasCategory: ( item ) => ! item.hasOwnProperty( 'categories' ),\n\t\t} );\n\t}\n\n\treturn { patterns, isResolving: false };\n};\n\nconst reusableBlockToPattern = ( reusableBlock ) => ( {\n\tblocks: parse( reusableBlock.content.raw, {\n\t\t__unstableSkipMigrationLogs: true,\n\t} ),\n\tcategories: reusableBlock.wp_pattern,\n\tid: reusableBlock.id,\n\tname: reusableBlock.slug,\n\tsyncStatus: reusableBlock.wp_pattern_sync_status || SYNC_TYPES.full,\n\ttitle: reusableBlock.title.raw,\n\ttype: reusableBlock.type,\n\treusableBlock,\n} );\n\nconst selectUserPatterns = ( select, { search = '', syncStatus } = {} ) => {\n\tconst { getEntityRecords, getIsResolving } = select( coreStore );\n\n\tconst query = { per_page: -1 };\n\tconst records = getEntityRecords( 'postType', USER_PATTERNS, query );\n\n\tlet patterns = records\n\t\t? records.map( ( record ) => reusableBlockToPattern( record ) )\n\t\t: EMPTY_PATTERN_LIST;\n\tconst isResolving = getIsResolving( 'getEntityRecords', [\n\t\t'postType',\n\t\tUSER_PATTERNS,\n\t\tquery,\n\t] );\n\n\tif ( syncStatus ) {\n\t\tpatterns = patterns.filter(\n\t\t\t( pattern ) => pattern.syncStatus === syncStatus\n\t\t);\n\t}\n\n\tpatterns = searchItems( patterns, search, {\n\t\t// We exit user pattern retrieval early if we aren't in the\n\t\t// catch-all category for user created patterns, so it has\n\t\t// to be in the category.\n\t\thasCategory: () => true,\n\t} );\n\n\treturn { patterns, isResolving };\n};\n\nexport const usePatterns = (\n\tcategoryType,\n\tcategoryId,\n\t{ search = '', syncStatus }\n) => {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tif ( categoryType === TEMPLATE_PARTS ) {\n\t\t\t\treturn selectTemplatePartsAsPatterns( select, {\n\t\t\t\t\tcategoryId,\n\t\t\t\t\tsearch,\n\t\t\t\t} );\n\t\t\t} else if ( categoryType === PATTERNS ) {\n\t\t\t\treturn selectThemePatterns( select, { categoryId, search } );\n\t\t\t} else if ( categoryType === USER_PATTERNS ) {\n\t\t\t\treturn selectUserPatterns( select, { search, syncStatus } );\n\t\t\t}\n\t\t\treturn { patterns: EMPTY_PATTERN_LIST, isResolving: false };\n\t\t},\n\t\t[ categoryId, categoryType, search, syncStatus ]\n\t);\n};\n\nexport default usePatterns;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_rememo","_interopRequireDefault","require","_blocks","_data","_coreData","_editor","_htmlEntities","_utils","_constants","_lockUnlock","_searchItems","_store","EMPTY_PATTERN_LIST","createTemplatePartId","theme","slug","templatePartToPattern","templatePart","blocks","parse","content","raw","__unstableSkipMigrationLogs","categories","area","description","isCustom","source","TEMPLATE_ORIGINS","custom","keywords","id","name","title","decodeEntities","rendered","type","selectTemplatePartsAsPatterns","createSelector","select","categoryId","search","_getEntityRecords","getEntityRecords","getIsResolving","coreStore","__experimentalGetDefaultTemplatePartAreas","editorStore","query","per_page","rawTemplateParts","TEMPLATE_PART_POST_TYPE","templateParts","map","knownAreas","templatePartAreas","templatePartHasCategory","item","category","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","includes","isResolving","patterns","searchItems","hasCategory","selectThemePatterns","_settings$__experimen","getSettings","unlock","editSiteStore","settings","blockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","filter","pattern","PATTERN_CORE_SOURCES","filterOutDuplicatesByName","inserter","PATTERN_TYPES","selectPatterns","syncStatus","themePatterns","userPatterns","selectUserPatterns","currentCategory","hasOwnProperty","patternBlockToPattern","patternBlock","wp_pattern_category","length","patternCategoryId","get","wp_pattern_sync_status","PATTERN_SYNC_TYPES","full","user","getUserPatternCategories","records","userPatternCategories","Map","forEach","userCategory","set","record","usePatterns","categoryType","useSelect","exports","_default","default"],"sources":["@wordpress/edit-site/src/components/page-patterns/use-patterns.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport createSelector from 'rememo';\n\n/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { filterOutDuplicatesByName } from './utils';\nimport {\n\tPATTERN_CORE_SOURCES,\n\tPATTERN_TYPES,\n\tPATTERN_SYNC_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_ORIGINS,\n\tTEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport { searchItems } from './search-items';\nimport { store as editSiteStore } from '../../store';\n\nconst EMPTY_PATTERN_LIST = [];\n\nconst createTemplatePartId = ( theme, slug ) =>\n\ttheme && slug ? theme + '//' + slug : null;\n\nconst templatePartToPattern = ( templatePart ) => ( {\n\tblocks: parse( templatePart.content.raw, {\n\t\t__unstableSkipMigrationLogs: true,\n\t} ),\n\tcategories: [ templatePart.area ],\n\tdescription: templatePart.description || '',\n\tisCustom: templatePart.source === TEMPLATE_ORIGINS.custom,\n\tkeywords: templatePart.keywords || [],\n\tid: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\tname: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\ttitle: decodeEntities( templatePart.title.rendered ),\n\ttype: templatePart.type,\n\ttemplatePart,\n} );\n\nconst selectTemplatePartsAsPatterns = createSelector(\n\t( select, categoryId, search = '' ) => {\n\t\tconst { getEntityRecords, getIsResolving } = select( coreStore );\n\t\tconst { __experimentalGetDefaultTemplatePartAreas } =\n\t\t\tselect( editorStore );\n\t\tconst query = { per_page: -1 };\n\t\tconst rawTemplateParts =\n\t\t\tgetEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, query ) ??\n\t\t\tEMPTY_PATTERN_LIST;\n\t\tconst templateParts = rawTemplateParts.map( ( templatePart ) =>\n\t\t\ttemplatePartToPattern( templatePart )\n\t\t);\n\n\t\t// In the case where a custom template part area has been removed we need\n\t\t// the current list of areas to cross check against so orphaned template\n\t\t// parts can be treated as uncategorized.\n\t\tconst knownAreas = __experimentalGetDefaultTemplatePartAreas() || [];\n\t\tconst templatePartAreas = knownAreas.map( ( area ) => area.area );\n\n\t\tconst templatePartHasCategory = ( item, category ) => {\n\t\t\tif ( category !== TEMPLATE_PART_AREA_DEFAULT_CATEGORY ) {\n\t\t\t\treturn item.templatePart.area === category;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\titem.templatePart.area === category ||\n\t\t\t\t! templatePartAreas.includes( item.templatePart.area )\n\t\t\t);\n\t\t};\n\n\t\tconst isResolving = getIsResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\tquery,\n\t\t] );\n\n\t\tconst patterns = searchItems( templateParts, search, {\n\t\t\tcategoryId,\n\t\t\thasCategory: templatePartHasCategory,\n\t\t} );\n\n\t\treturn { patterns, isResolving };\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords(\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{\n\t\t\t\tper_page: -1,\n\t\t\t}\n\t\t),\n\t\tselect( coreStore ).getIsResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t]\n);\n\nconst selectThemePatterns = createSelector(\n\t( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\tconst settings = getSettings();\n\t\tconst blockPatterns =\n\t\t\tsettings.__experimentalAdditionalBlockPatterns ??\n\t\t\tsettings.__experimentalBlockPatterns;\n\n\t\tconst restBlockPatterns = select( coreStore ).getBlockPatterns();\n\n\t\tconst patterns = [\n\t\t\t...( blockPatterns || [] ),\n\t\t\t...( restBlockPatterns || [] ),\n\t\t]\n\t\t\t.filter(\n\t\t\t\t( pattern ) => ! PATTERN_CORE_SOURCES.includes( pattern.source )\n\t\t\t)\n\t\t\t.filter( filterOutDuplicatesByName )\n\t\t\t.filter( ( pattern ) => pattern.inserter !== false )\n\t\t\t.map( ( pattern ) => ( {\n\t\t\t\t...pattern,\n\t\t\t\tkeywords: pattern.keywords || [],\n\t\t\t\ttype: PATTERN_TYPES.theme,\n\t\t\t\tblocks: parse( pattern.content, {\n\t\t\t\t\t__unstableSkipMigrationLogs: true,\n\t\t\t\t} ),\n\t\t\t} ) );\n\n\t\treturn { patterns, isResolving: false };\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getBlockPatterns(),\n\t\tunlock( select( editSiteStore ) ).getSettings(),\n\t]\n);\n\nconst selectPatterns = createSelector(\n\t( select, categoryId, syncStatus, search = '' ) => {\n\t\tconst { patterns: themePatterns } = selectThemePatterns( select );\n\t\tconst { patterns: userPatterns } = selectUserPatterns( select );\n\n\t\tlet patterns = [\n\t\t\t...( themePatterns || [] ),\n\t\t\t...( userPatterns || [] ),\n\t\t];\n\n\t\tif ( syncStatus ) {\n\t\t\tpatterns = patterns.filter(\n\t\t\t\t( pattern ) => pattern.syncStatus === syncStatus\n\t\t\t);\n\t\t}\n\n\t\tif ( categoryId ) {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\tcategoryId,\n\t\t\t\thasCategory: ( item, currentCategory ) =>\n\t\t\t\t\titem.categories?.includes( currentCategory ),\n\t\t\t} );\n\t\t} else {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\thasCategory: ( item ) => ! item.hasOwnProperty( 'categories' ),\n\t\t\t} );\n\t\t}\n\t\treturn { patterns, isResolving: false };\n\t},\n\t( select ) => [\n\t\tselectThemePatterns( select ),\n\t\tselectUserPatterns( select ),\n\t]\n);\n\nconst patternBlockToPattern = ( patternBlock, categories ) => ( {\n\tblocks: parse( patternBlock.content.raw, {\n\t\t__unstableSkipMigrationLogs: true,\n\t} ),\n\t...( patternBlock.wp_pattern_category.length > 0 && {\n\t\tcategories: patternBlock.wp_pattern_category.map(\n\t\t\t( patternCategoryId ) =>\n\t\t\t\tcategories && categories.get( patternCategoryId )\n\t\t\t\t\t? categories.get( patternCategoryId ).slug\n\t\t\t\t\t: patternCategoryId\n\t\t),\n\t} ),\n\tid: patternBlock.id,\n\tname: patternBlock.slug,\n\tsyncStatus: patternBlock.wp_pattern_sync_status || PATTERN_SYNC_TYPES.full,\n\ttitle: patternBlock.title.raw,\n\ttype: PATTERN_TYPES.user,\n\tpatternBlock,\n} );\n\nconst selectUserPatterns = createSelector(\n\t( select, syncStatus, search = '' ) => {\n\t\tconst { getEntityRecords, getIsResolving, getUserPatternCategories } =\n\t\t\tselect( coreStore );\n\n\t\tconst query = { per_page: -1 };\n\t\tconst records = getEntityRecords(\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery\n\t\t);\n\t\tconst userPatternCategories = getUserPatternCategories();\n\t\tconst categories = new Map();\n\t\tuserPatternCategories.forEach( ( userCategory ) =>\n\t\t\tcategories.set( userCategory.id, userCategory )\n\t\t);\n\t\tlet patterns = records\n\t\t\t? records.map( ( record ) =>\n\t\t\t\t\tpatternBlockToPattern( record, categories )\n\t\t\t )\n\t\t\t: EMPTY_PATTERN_LIST;\n\n\t\tconst isResolving = getIsResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery,\n\t\t] );\n\n\t\tif ( syncStatus ) {\n\t\t\tpatterns = patterns.filter(\n\t\t\t\t( pattern ) => pattern.syncStatus === syncStatus\n\t\t\t);\n\t\t}\n\n\t\tpatterns = searchItems( patterns, search, {\n\t\t\t// We exit user pattern retrieval early if we aren't in the\n\t\t\t// catch-all category for user created patterns, so it has\n\t\t\t// to be in the category.\n\t\t\thasCategory: () => true,\n\t\t} );\n\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving,\n\t\t\tcategories: userPatternCategories,\n\t\t};\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords( 'postType', PATTERN_TYPES.user, {\n\t\t\tper_page: -1,\n\t\t} ),\n\t\tselect( coreStore ).getIsResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( coreStore ).getUserPatternCategories(),\n\t]\n);\n\nexport const usePatterns = (\n\tcategoryType,\n\tcategoryId,\n\t{ search = '', syncStatus } = {}\n) => {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tif ( categoryType === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\treturn selectTemplatePartsAsPatterns(\n\t\t\t\t\tselect,\n\t\t\t\t\tcategoryId,\n\t\t\t\t\tsearch\n\t\t\t\t);\n\t\t\t} else if ( categoryType === PATTERN_TYPES.theme ) {\n\t\t\t\treturn selectPatterns( select, categoryId, syncStatus, search );\n\t\t\t} else if ( categoryType === PATTERN_TYPES.user ) {\n\t\t\t\treturn selectUserPatterns( select, syncStatus, search );\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tpatterns: EMPTY_PATTERN_LIST,\n\t\t\t\tisResolving: false,\n\t\t\t};\n\t\t},\n\t\t[ categoryId, categoryType, search, syncStatus ]\n\t);\n};\n\nexport default usePatterns;\n"],"mappings":"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"}
@@ -3,26 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.filterOutDuplicatesByName = exports.USER_PATTERN_CATEGORY = exports.USER_PATTERNS = exports.TEMPLATE_PARTS = exports.SYNC_TYPES = exports.PATTERNS = exports.DEFAULT_TYPE = exports.DEFAULT_CATEGORY = exports.CORE_PATTERN_SOURCES = void 0;
7
- const DEFAULT_CATEGORY = 'my-patterns';
8
- exports.DEFAULT_CATEGORY = DEFAULT_CATEGORY;
9
- const DEFAULT_TYPE = 'wp_block';
10
- exports.DEFAULT_TYPE = DEFAULT_TYPE;
11
- const PATTERNS = 'pattern';
12
- exports.PATTERNS = PATTERNS;
13
- const TEMPLATE_PARTS = 'wp_template_part';
14
- exports.TEMPLATE_PARTS = TEMPLATE_PARTS;
15
- const USER_PATTERNS = 'wp_block';
16
- exports.USER_PATTERNS = USER_PATTERNS;
17
- const USER_PATTERN_CATEGORY = 'my-patterns';
18
- exports.USER_PATTERN_CATEGORY = USER_PATTERN_CATEGORY;
19
- const CORE_PATTERN_SOURCES = ['core', 'pattern-directory/core', 'pattern-directory/featured', 'pattern-directory/theme'];
20
- exports.CORE_PATTERN_SOURCES = CORE_PATTERN_SOURCES;
21
- const SYNC_TYPES = {
22
- full: 'fully',
23
- unsynced: 'unsynced'
24
- };
25
- exports.SYNC_TYPES = SYNC_TYPES;
6
+ exports.filterOutDuplicatesByName = void 0;
26
7
  const filterOutDuplicatesByName = (currentItem, index, items) => index === items.findIndex(item => currentItem.name === item.name);
27
8
  exports.filterOutDuplicatesByName = filterOutDuplicatesByName;
28
9
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DEFAULT_CATEGORY","exports","DEFAULT_TYPE","PATTERNS","TEMPLATE_PARTS","USER_PATTERNS","USER_PATTERN_CATEGORY","CORE_PATTERN_SOURCES","SYNC_TYPES","full","unsynced","filterOutDuplicatesByName","currentItem","index","items","findIndex","item","name"],"sources":["@wordpress/edit-site/src/components/page-patterns/utils.js"],"sourcesContent":["export const DEFAULT_CATEGORY = 'my-patterns';\nexport const DEFAULT_TYPE = 'wp_block';\nexport const PATTERNS = 'pattern';\nexport const TEMPLATE_PARTS = 'wp_template_part';\nexport const USER_PATTERNS = 'wp_block';\nexport const USER_PATTERN_CATEGORY = 'my-patterns';\n\nexport const CORE_PATTERN_SOURCES = [\n\t'core',\n\t'pattern-directory/core',\n\t'pattern-directory/featured',\n\t'pattern-directory/theme',\n];\n\nexport const SYNC_TYPES = {\n\tfull: 'fully',\n\tunsynced: 'unsynced',\n};\n\nexport const filterOutDuplicatesByName = ( currentItem, index, items ) =>\n\tindex === items.findIndex( ( item ) => currentItem.name === item.name );\n"],"mappings":";;;;;;AAAO,MAAMA,gBAAgB,GAAG,aAAa;AAACC,OAAA,CAAAD,gBAAA,GAAAA,gBAAA;AACvC,MAAME,YAAY,GAAG,UAAU;AAACD,OAAA,CAAAC,YAAA,GAAAA,YAAA;AAChC,MAAMC,QAAQ,GAAG,SAAS;AAACF,OAAA,CAAAE,QAAA,GAAAA,QAAA;AAC3B,MAAMC,cAAc,GAAG,kBAAkB;AAACH,OAAA,CAAAG,cAAA,GAAAA,cAAA;AAC1C,MAAMC,aAAa,GAAG,UAAU;AAACJ,OAAA,CAAAI,aAAA,GAAAA,aAAA;AACjC,MAAMC,qBAAqB,GAAG,aAAa;AAACL,OAAA,CAAAK,qBAAA,GAAAA,qBAAA;AAE5C,MAAMC,oBAAoB,GAAG,CACnC,MAAM,EACN,wBAAwB,EACxB,4BAA4B,EAC5B,yBAAyB,CACzB;AAACN,OAAA,CAAAM,oBAAA,GAAAA,oBAAA;AAEK,MAAMC,UAAU,GAAG;EACzBC,IAAI,EAAE,OAAO;EACbC,QAAQ,EAAE;AACX,CAAC;AAACT,OAAA,CAAAO,UAAA,GAAAA,UAAA;AAEK,MAAMG,yBAAyB,GAAGA,CAAEC,WAAW,EAAEC,KAAK,EAAEC,KAAK,KACnED,KAAK,KAAKC,KAAK,CAACC,SAAS,CAAIC,IAAI,IAAMJ,WAAW,CAACK,IAAI,KAAKD,IAAI,CAACC,IAAK,CAAC;AAAChB,OAAA,CAAAU,yBAAA,GAAAA,yBAAA"}
1
+ {"version":3,"names":["filterOutDuplicatesByName","currentItem","index","items","findIndex","item","name","exports"],"sources":["@wordpress/edit-site/src/components/page-patterns/utils.js"],"sourcesContent":["export const filterOutDuplicatesByName = ( currentItem, index, items ) =>\n\tindex === items.findIndex( ( item ) => currentItem.name === item.name );\n"],"mappings":";;;;;;AAAO,MAAMA,yBAAyB,GAAGA,CAAEC,WAAW,EAAEC,KAAK,EAAEC,KAAK,KACnED,KAAK,KAAKC,KAAK,CAACC,SAAS,CAAIC,IAAI,IAAMJ,WAAW,CAACK,IAAI,KAAKD,IAAI,CAACC,IAAK,CAAC;AAACC,OAAA,CAAAP,yBAAA,GAAAA,yBAAA"}
@@ -13,6 +13,7 @@ var _components = require("@wordpress/components");
13
13
  var _lockUnlock = require("../../lock-unlock");
14
14
  var _store = require("../../store");
15
15
  var _createTemplatePartModal = _interopRequireDefault(require("../create-template-part-modal"));
16
+ var _constants = require("../../utils/constants");
16
17
  /**
17
18
  * WordPress dependencies
18
19
  */
@@ -34,7 +35,7 @@ function AddNewTemplatePart() {
34
35
  } = select(_store.store).getSettings();
35
36
  return {
36
37
  canCreate: !supportsTemplatePartsMode,
37
- postType: select(_coreData.store).getPostType('wp_template_part')
38
+ postType: select(_coreData.store).getPostType(_constants.TEMPLATE_PART_POST_TYPE)
38
39
  };
39
40
  }, []);
40
41
  const [isModalOpen, setIsModalOpen] = (0, _element.useState)(false);
@@ -52,7 +53,7 @@ function AddNewTemplatePart() {
52
53
  setIsModalOpen(false);
53
54
  history.push({
54
55
  postId: templatePart.id,
55
- postType: 'wp_template_part',
56
+ postType: _constants.TEMPLATE_PART_POST_TYPE,
56
57
  canvas: 'edit'
57
58
  });
58
59
  },
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_router","_data","_coreData","_components","_lockUnlock","_store","_createTemplatePartModal","_interopRequireDefault","useHistory","unlock","routerPrivateApis","AddNewTemplatePart","canCreate","postType","useSelect","select","supportsTemplatePartsMode","editSiteStore","getSettings","coreStore","getPostType","isModalOpen","setIsModalOpen","useState","history","createElement","Fragment","Button","variant","onClick","labels","add_new_item","default","closeModal","blocks","onCreate","templatePart","push","postId","id","canvas","onError"],"sources":["@wordpress/edit-site/src/components/page-template-parts/add-new-template-part.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState } from '@wordpress/element';\nimport { Button } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport CreateTemplatePartModal from '../create-template-part-modal';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nexport default function AddNewTemplatePart() {\n\tconst { canCreate, postType } = useSelect( ( select ) => {\n\t\tconst { supportsTemplatePartsMode } =\n\t\t\tselect( editSiteStore ).getSettings();\n\t\treturn {\n\t\t\tcanCreate: ! supportsTemplatePartsMode,\n\t\t\tpostType: select( coreStore ).getPostType( 'wp_template_part' ),\n\t\t};\n\t}, [] );\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst history = useHistory();\n\n\tif ( ! canCreate || ! postType ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<Button variant=\"primary\" onClick={ () => setIsModalOpen( true ) }>\n\t\t\t\t{ postType.labels.add_new_item }\n\t\t\t</Button>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<CreateTemplatePartModal\n\t\t\t\t\tcloseModal={ () => setIsModalOpen( false ) }\n\t\t\t\t\tblocks={ [] }\n\t\t\t\t\tonCreate={ ( templatePart ) => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\tpostId: templatePart.id,\n\t\t\t\t\t\t\tpostType: 'wp_template_part',\n\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tonError={ () => setIsModalOpen( false ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;AAMA,IAAAA,QAAA,GAAAC,OAAA;AAHA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AAEA,IAAAI,WAAA,GAAAJ,OAAA;AAKA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,wBAAA,GAAAC,sBAAA,CAAAR,OAAA;AAdA;AACA;AACA;;AAOA;AACA;AACA;;AAKA,MAAM;EAAES;AAAW,CAAC,GAAG,IAAAC,kBAAM,EAAEC,mBAAkB,CAAC;AAEnC,SAASC,kBAAkBA,CAAA,EAAG;EAC5C,MAAM;IAAEC,SAAS;IAAEC;EAAS,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACxD,MAAM;MAAEC;IAA0B,CAAC,GAClCD,MAAM,CAAEE,YAAc,CAAC,CAACC,WAAW,CAAC,CAAC;IACtC,OAAO;MACNN,SAAS,EAAE,CAAEI,yBAAyB;MACtCH,QAAQ,EAAEE,MAAM,CAAEI,eAAU,CAAC,CAACC,WAAW,CAAE,kBAAmB;IAC/D,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,MAAM,CAAEC,WAAW,EAAEC,cAAc,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EACzD,MAAMC,OAAO,GAAGhB,UAAU,CAAC,CAAC;EAE5B,IAAK,CAAEI,SAAS,IAAI,CAAEC,QAAQ,EAAG;IAChC,OAAO,IAAI;EACZ;EAEA,OACC,IAAAf,QAAA,CAAA2B,aAAA,EAAA3B,QAAA,CAAA4B,QAAA,QACC,IAAA5B,QAAA,CAAA2B,aAAA,EAACtB,WAAA,CAAAwB,MAAM;IAACC,OAAO,EAAC,SAAS;IAACC,OAAO,EAAGA,CAAA,KAAMP,cAAc,CAAE,IAAK;EAAG,GAC/DT,QAAQ,CAACiB,MAAM,CAACC,YACX,CAAC,EACPV,WAAW,IACZ,IAAAvB,QAAA,CAAA2B,aAAA,EAACnB,wBAAA,CAAA0B,OAAuB;IACvBC,UAAU,EAAGA,CAAA,KAAMX,cAAc,CAAE,KAAM,CAAG;IAC5CY,MAAM,EAAG,EAAI;IACbC,QAAQ,EAAKC,YAAY,IAAM;MAC9Bd,cAAc,CAAE,KAAM,CAAC;MACvBE,OAAO,CAACa,IAAI,CAAE;QACbC,MAAM,EAAEF,YAAY,CAACG,EAAE;QACvB1B,QAAQ,EAAE,kBAAkB;QAC5B2B,MAAM,EAAE;MACT,CAAE,CAAC;IACJ,CAAG;IACHC,OAAO,EAAGA,CAAA,KAAMnB,cAAc,CAAE,KAAM;EAAG,CACzC,CAED,CAAC;AAEL"}
1
+ {"version":3,"names":["_element","require","_router","_data","_coreData","_components","_lockUnlock","_store","_createTemplatePartModal","_interopRequireDefault","_constants","useHistory","unlock","routerPrivateApis","AddNewTemplatePart","canCreate","postType","useSelect","select","supportsTemplatePartsMode","editSiteStore","getSettings","coreStore","getPostType","TEMPLATE_PART_POST_TYPE","isModalOpen","setIsModalOpen","useState","history","createElement","Fragment","Button","variant","onClick","labels","add_new_item","default","closeModal","blocks","onCreate","templatePart","push","postId","id","canvas","onError"],"sources":["@wordpress/edit-site/src/components/page-template-parts/add-new-template-part.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState } from '@wordpress/element';\nimport { Button } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport CreateTemplatePartModal from '../create-template-part-modal';\nimport { TEMPLATE_PART_POST_TYPE } from '../../utils/constants';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nexport default function AddNewTemplatePart() {\n\tconst { canCreate, postType } = useSelect( ( select ) => {\n\t\tconst { supportsTemplatePartsMode } =\n\t\t\tselect( editSiteStore ).getSettings();\n\t\treturn {\n\t\t\tcanCreate: ! supportsTemplatePartsMode,\n\t\t\tpostType: select( coreStore ).getPostType(\n\t\t\t\tTEMPLATE_PART_POST_TYPE\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst history = useHistory();\n\n\tif ( ! canCreate || ! postType ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<Button variant=\"primary\" onClick={ () => setIsModalOpen( true ) }>\n\t\t\t\t{ postType.labels.add_new_item }\n\t\t\t</Button>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<CreateTemplatePartModal\n\t\t\t\t\tcloseModal={ () => setIsModalOpen( false ) }\n\t\t\t\t\tblocks={ [] }\n\t\t\t\t\tonCreate={ ( templatePart ) => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\tpostId: templatePart.id,\n\t\t\t\t\t\t\tpostType: TEMPLATE_PART_POST_TYPE,\n\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tonError={ () => setIsModalOpen( false ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;AAMA,IAAAA,QAAA,GAAAC,OAAA;AAHA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AAEA,IAAAI,WAAA,GAAAJ,OAAA;AAKA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,wBAAA,GAAAC,sBAAA,CAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AAfA;AACA;AACA;;AAOA;AACA;AACA;;AAMA,MAAM;EAAEU;AAAW,CAAC,GAAG,IAAAC,kBAAM,EAAEC,mBAAkB,CAAC;AAEnC,SAASC,kBAAkBA,CAAA,EAAG;EAC5C,MAAM;IAAEC,SAAS;IAAEC;EAAS,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACxD,MAAM;MAAEC;IAA0B,CAAC,GAClCD,MAAM,CAAEE,YAAc,CAAC,CAACC,WAAW,CAAC,CAAC;IACtC,OAAO;MACNN,SAAS,EAAE,CAAEI,yBAAyB;MACtCH,QAAQ,EAAEE,MAAM,CAAEI,eAAU,CAAC,CAACC,WAAW,CACxCC,kCACD;IACD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,MAAM,CAAEC,WAAW,EAAEC,cAAc,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EACzD,MAAMC,OAAO,GAAGjB,UAAU,CAAC,CAAC;EAE5B,IAAK,CAAEI,SAAS,IAAI,CAAEC,QAAQ,EAAG;IAChC,OAAO,IAAI;EACZ;EAEA,OACC,IAAAhB,QAAA,CAAA6B,aAAA,EAAA7B,QAAA,CAAA8B,QAAA,QACC,IAAA9B,QAAA,CAAA6B,aAAA,EAACxB,WAAA,CAAA0B,MAAM;IAACC,OAAO,EAAC,SAAS;IAACC,OAAO,EAAGA,CAAA,KAAMP,cAAc,CAAE,IAAK;EAAG,GAC/DV,QAAQ,CAACkB,MAAM,CAACC,YACX,CAAC,EACPV,WAAW,IACZ,IAAAzB,QAAA,CAAA6B,aAAA,EAACrB,wBAAA,CAAA4B,OAAuB;IACvBC,UAAU,EAAGA,CAAA,KAAMX,cAAc,CAAE,KAAM,CAAG;IAC5CY,MAAM,EAAG,EAAI;IACbC,QAAQ,EAAKC,YAAY,IAAM;MAC9Bd,cAAc,CAAE,KAAM,CAAC;MACvBE,OAAO,CAACa,IAAI,CAAE;QACbC,MAAM,EAAEF,YAAY,CAACG,EAAE;QACvB3B,QAAQ,EAAEQ,kCAAuB;QACjCoB,MAAM,EAAE;MACT,CAAE,CAAC;IACJ,CAAG;IACHC,OAAO,EAAGA,CAAA,KAAMnB,cAAc,CAAE,KAAM;EAAG,CACzC,CAED,CAAC;AAEL"}
@@ -16,6 +16,7 @@ var _link = _interopRequireDefault(require("../routes/link"));
16
16
  var _addedBy = _interopRequireDefault(require("../list/added-by"));
17
17
  var _templateActions = _interopRequireDefault(require("../template-actions"));
18
18
  var _addNewTemplatePart = _interopRequireDefault(require("./add-new-template-part"));
19
+ var _constants = require("../../utils/constants");
19
20
  /**
20
21
  * WordPress dependencies
21
22
  */
@@ -27,7 +28,7 @@ var _addNewTemplatePart = _interopRequireDefault(require("./add-new-template-par
27
28
  function PageTemplateParts() {
28
29
  const {
29
30
  records: templateParts
30
- } = (0, _coreData.useEntityRecords)('postType', 'wp_template_part', {
31
+ } = (0, _coreData.useEntityRecords)('postType', _constants.TEMPLATE_PART_POST_TYPE, {
31
32
  per_page: -1
32
33
  });
33
34
  const columns = [{
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_i18n","_coreData","_htmlEntities","_page","_interopRequireDefault","_table","_link","_addedBy","_templateActions","_addNewTemplatePart","PageTemplateParts","records","templateParts","useEntityRecords","per_page","columns","header","__","cell","templatePart","_element","createElement","__experimentalVStack","__experimentalHeading","as","level","default","params","postId","id","postType","type","state","backPath","decodeEntities","title","rendered","slug","maxWidth","VisuallyHidden","actions","data"],"sources":["@wordpress/edit-site/src/components/page-template-parts/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tVisuallyHidden,\n\t__experimentalHeading as Heading,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport Table from '../table';\nimport Link from '../routes/link';\nimport AddedBy from '../list/added-by';\nimport TemplateActions from '../template-actions';\nimport AddNewTemplatePart from './add-new-template-part';\n\nexport default function PageTemplateParts() {\n\tconst { records: templateParts } = useEntityRecords(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\n\tconst columns = [\n\t\t{\n\t\t\theader: __( 'Template Part' ),\n\t\t\tcell: ( templatePart ) => (\n\t\t\t\t<VStack>\n\t\t\t\t\t<Heading as=\"h3\" level={ 5 }>\n\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\tpostId: templatePart.id,\n\t\t\t\t\t\t\t\tpostType: templatePart.type,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tstate={ { backPath: '/wp_template_part/all' } }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\ttemplatePart.title?.rendered ||\n\t\t\t\t\t\t\t\t\ttemplatePart.slug\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Link>\n\t\t\t\t\t</Heading>\n\t\t\t\t</VStack>\n\t\t\t),\n\t\t\tmaxWidth: 400,\n\t\t},\n\t\t{\n\t\t\theader: __( 'Added by' ),\n\t\t\tcell: ( templatePart ) => (\n\t\t\t\t<AddedBy\n\t\t\t\t\tpostType={ templatePart.type }\n\t\t\t\t\tpostId={ templatePart.id }\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t\t{\n\t\t\theader: <VisuallyHidden>{ __( 'Actions' ) }</VisuallyHidden>,\n\t\t\tcell: ( templatePart ) => (\n\t\t\t\t<TemplateActions\n\t\t\t\t\tpostType={ templatePart.type }\n\t\t\t\t\tpostId={ templatePart.id }\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t];\n\n\treturn (\n\t\t<Page\n\t\t\ttitle={ __( 'Template Parts' ) }\n\t\t\tactions={ <AddNewTemplatePart /> }\n\t\t>\n\t\t\t{ templateParts && (\n\t\t\t\t<Table data={ templateParts } columns={ columns } />\n\t\t\t) }\n\t\t</Page>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAKA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AAKA,IAAAI,KAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,MAAA,GAAAD,sBAAA,CAAAL,OAAA;AACA,IAAAO,KAAA,GAAAF,sBAAA,CAAAL,OAAA;AACA,IAAAQ,QAAA,GAAAH,sBAAA,CAAAL,OAAA;AACA,IAAAS,gBAAA,GAAAJ,sBAAA,CAAAL,OAAA;AACA,IAAAU,mBAAA,GAAAL,sBAAA,CAAAL,OAAA;AApBA;AACA;AACA;;AAUA;AACA;AACA;;AAQe,SAASW,iBAAiBA,CAAA,EAAG;EAC3C,MAAM;IAAEC,OAAO,EAAEC;EAAc,CAAC,GAAG,IAAAC,0BAAgB,EAClD,UAAU,EACV,kBAAkB,EAClB;IACCC,QAAQ,EAAE,CAAC;EACZ,CACD,CAAC;EAED,MAAMC,OAAO,GAAG,CACf;IACCC,MAAM,EAAE,IAAAC,QAAE,EAAE,eAAgB,CAAC;IAC7BC,IAAI,EAAIC,YAAY,IACnB,IAAAC,QAAA,CAAAC,aAAA,EAACvB,WAAA,CAAAwB,oBAAM,QACN,IAAAF,QAAA,CAAAC,aAAA,EAACvB,WAAA,CAAAyB,qBAAO;MAACC,EAAE,EAAC,IAAI;MAACC,KAAK,EAAG;IAAG,GAC3B,IAAAL,QAAA,CAAAC,aAAA,EAACf,KAAA,CAAAoB,OAAI;MACJC,MAAM,EAAG;QACRC,MAAM,EAAET,YAAY,CAACU,EAAE;QACvBC,QAAQ,EAAEX,YAAY,CAACY;MACxB,CAAG;MACHC,KAAK,EAAG;QAAEC,QAAQ,EAAE;MAAwB;IAAG,GAE7C,IAAAC,4BAAc,EACff,YAAY,CAACgB,KAAK,EAAEC,QAAQ,IAC3BjB,YAAY,CAACkB,IACf,CACK,CACE,CACF,CACR;IACDC,QAAQ,EAAE;EACX,CAAC,EACD;IACCtB,MAAM,EAAE,IAAAC,QAAE,EAAE,UAAW,CAAC;IACxBC,IAAI,EAAIC,YAAY,IACnB,IAAAC,QAAA,CAAAC,aAAA,EAACd,QAAA,CAAAmB,OAAO;MACPI,QAAQ,EAAGX,YAAY,CAACY,IAAM;MAC9BH,MAAM,EAAGT,YAAY,CAACU;IAAI,CAC1B;EAEH,CAAC,EACD;IACCb,MAAM,EAAE,IAAAI,QAAA,CAAAC,aAAA,EAACvB,WAAA,CAAAyC,cAAc,QAAG,IAAAtB,QAAE,EAAE,SAAU,CAAmB,CAAC;IAC5DC,IAAI,EAAIC,YAAY,IACnB,IAAAC,QAAA,CAAAC,aAAA,EAACb,gBAAA,CAAAkB,OAAe;MACfI,QAAQ,EAAGX,YAAY,CAACY,IAAM;MAC9BH,MAAM,EAAGT,YAAY,CAACU;IAAI,CAC1B;EAEH,CAAC,CACD;EAED,OACC,IAAAT,QAAA,CAAAC,aAAA,EAAClB,KAAA,CAAAuB,OAAI;IACJS,KAAK,EAAG,IAAAlB,QAAE,EAAE,gBAAiB,CAAG;IAChCuB,OAAO,EAAG,IAAApB,QAAA,CAAAC,aAAA,EAACZ,mBAAA,CAAAiB,OAAkB,MAAE;EAAG,GAEhCd,aAAa,IACd,IAAAQ,QAAA,CAAAC,aAAA,EAAChB,MAAA,CAAAqB,OAAK;IAACe,IAAI,EAAG7B,aAAe;IAACG,OAAO,EAAGA;EAAS,CAAE,CAE/C,CAAC;AAET"}
1
+ {"version":3,"names":["_components","require","_i18n","_coreData","_htmlEntities","_page","_interopRequireDefault","_table","_link","_addedBy","_templateActions","_addNewTemplatePart","_constants","PageTemplateParts","records","templateParts","useEntityRecords","TEMPLATE_PART_POST_TYPE","per_page","columns","header","__","cell","templatePart","_element","createElement","__experimentalVStack","__experimentalHeading","as","level","default","params","postId","id","postType","type","state","backPath","decodeEntities","title","rendered","slug","maxWidth","VisuallyHidden","actions","data"],"sources":["@wordpress/edit-site/src/components/page-template-parts/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tVisuallyHidden,\n\t__experimentalHeading as Heading,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport Table from '../table';\nimport Link from '../routes/link';\nimport AddedBy from '../list/added-by';\nimport TemplateActions from '../template-actions';\nimport AddNewTemplatePart from './add-new-template-part';\nimport { TEMPLATE_PART_POST_TYPE } from '../../utils/constants';\n\nexport default function PageTemplateParts() {\n\tconst { records: templateParts } = useEntityRecords(\n\t\t'postType',\n\t\tTEMPLATE_PART_POST_TYPE,\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\n\tconst columns = [\n\t\t{\n\t\t\theader: __( 'Template Part' ),\n\t\t\tcell: ( templatePart ) => (\n\t\t\t\t<VStack>\n\t\t\t\t\t<Heading as=\"h3\" level={ 5 }>\n\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\tpostId: templatePart.id,\n\t\t\t\t\t\t\t\tpostType: templatePart.type,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tstate={ { backPath: '/wp_template_part/all' } }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\ttemplatePart.title?.rendered ||\n\t\t\t\t\t\t\t\t\ttemplatePart.slug\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Link>\n\t\t\t\t\t</Heading>\n\t\t\t\t</VStack>\n\t\t\t),\n\t\t\tmaxWidth: 400,\n\t\t},\n\t\t{\n\t\t\theader: __( 'Added by' ),\n\t\t\tcell: ( templatePart ) => (\n\t\t\t\t<AddedBy\n\t\t\t\t\tpostType={ templatePart.type }\n\t\t\t\t\tpostId={ templatePart.id }\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t\t{\n\t\t\theader: <VisuallyHidden>{ __( 'Actions' ) }</VisuallyHidden>,\n\t\t\tcell: ( templatePart ) => (\n\t\t\t\t<TemplateActions\n\t\t\t\t\tpostType={ templatePart.type }\n\t\t\t\t\tpostId={ templatePart.id }\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t];\n\n\treturn (\n\t\t<Page\n\t\t\ttitle={ __( 'Template Parts' ) }\n\t\t\tactions={ <AddNewTemplatePart /> }\n\t\t>\n\t\t\t{ templateParts && (\n\t\t\t\t<Table data={ templateParts } columns={ columns } />\n\t\t\t) }\n\t\t</Page>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAKA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AAKA,IAAAI,KAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,MAAA,GAAAD,sBAAA,CAAAL,OAAA;AACA,IAAAO,KAAA,GAAAF,sBAAA,CAAAL,OAAA;AACA,IAAAQ,QAAA,GAAAH,sBAAA,CAAAL,OAAA;AACA,IAAAS,gBAAA,GAAAJ,sBAAA,CAAAL,OAAA;AACA,IAAAU,mBAAA,GAAAL,sBAAA,CAAAL,OAAA;AACA,IAAAW,UAAA,GAAAX,OAAA;AArBA;AACA;AACA;;AAUA;AACA;AACA;;AASe,SAASY,iBAAiBA,CAAA,EAAG;EAC3C,MAAM;IAAEC,OAAO,EAAEC;EAAc,CAAC,GAAG,IAAAC,0BAAgB,EAClD,UAAU,EACVC,kCAAuB,EACvB;IACCC,QAAQ,EAAE,CAAC;EACZ,CACD,CAAC;EAED,MAAMC,OAAO,GAAG,CACf;IACCC,MAAM,EAAE,IAAAC,QAAE,EAAE,eAAgB,CAAC;IAC7BC,IAAI,EAAIC,YAAY,IACnB,IAAAC,QAAA,CAAAC,aAAA,EAACzB,WAAA,CAAA0B,oBAAM,QACN,IAAAF,QAAA,CAAAC,aAAA,EAACzB,WAAA,CAAA2B,qBAAO;MAACC,EAAE,EAAC,IAAI;MAACC,KAAK,EAAG;IAAG,GAC3B,IAAAL,QAAA,CAAAC,aAAA,EAACjB,KAAA,CAAAsB,OAAI;MACJC,MAAM,EAAG;QACRC,MAAM,EAAET,YAAY,CAACU,EAAE;QACvBC,QAAQ,EAAEX,YAAY,CAACY;MACxB,CAAG;MACHC,KAAK,EAAG;QAAEC,QAAQ,EAAE;MAAwB;IAAG,GAE7C,IAAAC,4BAAc,EACff,YAAY,CAACgB,KAAK,EAAEC,QAAQ,IAC3BjB,YAAY,CAACkB,IACf,CACK,CACE,CACF,CACR;IACDC,QAAQ,EAAE;EACX,CAAC,EACD;IACCtB,MAAM,EAAE,IAAAC,QAAE,EAAE,UAAW,CAAC;IACxBC,IAAI,EAAIC,YAAY,IACnB,IAAAC,QAAA,CAAAC,aAAA,EAAChB,QAAA,CAAAqB,OAAO;MACPI,QAAQ,EAAGX,YAAY,CAACY,IAAM;MAC9BH,MAAM,EAAGT,YAAY,CAACU;IAAI,CAC1B;EAEH,CAAC,EACD;IACCb,MAAM,EAAE,IAAAI,QAAA,CAAAC,aAAA,EAACzB,WAAA,CAAA2C,cAAc,QAAG,IAAAtB,QAAE,EAAE,SAAU,CAAmB,CAAC;IAC5DC,IAAI,EAAIC,YAAY,IACnB,IAAAC,QAAA,CAAAC,aAAA,EAACf,gBAAA,CAAAoB,OAAe;MACfI,QAAQ,EAAGX,YAAY,CAACY,IAAM;MAC9BH,MAAM,EAAGT,YAAY,CAACU;IAAI,CAC1B;EAEH,CAAC,CACD;EAED,OACC,IAAAT,QAAA,CAAAC,aAAA,EAACpB,KAAA,CAAAyB,OAAI;IACJS,KAAK,EAAG,IAAAlB,QAAE,EAAE,gBAAiB,CAAG;IAChCuB,OAAO,EAAG,IAAApB,QAAA,CAAAC,aAAA,EAACd,mBAAA,CAAAmB,OAAkB,MAAE;EAAG,GAEhCf,aAAa,IACd,IAAAS,QAAA,CAAAC,aAAA,EAAClB,MAAA,CAAAuB,OAAK;IAACe,IAAI,EAAG9B,aAAe;IAACI,OAAO,EAAGA;EAAS,CAAE,CAE/C,CAAC;AAET"}
@@ -16,6 +16,7 @@ var _link = _interopRequireDefault(require("../routes/link"));
16
16
  var _addedBy = _interopRequireDefault(require("../list/added-by"));
17
17
  var _templateActions = _interopRequireDefault(require("../template-actions"));
18
18
  var _addNewTemplate = _interopRequireDefault(require("../add-new-template"));
19
+ var _constants = require("../../utils/constants");
19
20
  /**
20
21
  * WordPress dependencies
21
22
  */
@@ -27,7 +28,7 @@ var _addNewTemplate = _interopRequireDefault(require("../add-new-template"));
27
28
  function PageTemplates() {
28
29
  const {
29
30
  records: templates
30
- } = (0, _coreData.useEntityRecords)('postType', 'wp_template', {
31
+ } = (0, _coreData.useEntityRecords)('postType', _constants.TEMPLATE_POST_TYPE, {
31
32
  per_page: -1
32
33
  });
33
34
  const columns = [{
@@ -61,7 +62,7 @@ function PageTemplates() {
61
62
  return (0, _element.createElement)(_page.default, {
62
63
  title: (0, _i18n.__)('Templates'),
63
64
  actions: (0, _element.createElement)(_addNewTemplate.default, {
64
- templateType: 'wp_template',
65
+ templateType: _constants.TEMPLATE_POST_TYPE,
65
66
  showIcon: false,
66
67
  toggleProps: {
67
68
  variant: 'primary'
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_i18n","_coreData","_htmlEntities","_page","_interopRequireDefault","_table","_link","_addedBy","_templateActions","_addNewTemplate","PageTemplates","records","templates","useEntityRecords","per_page","columns","header","__","cell","template","_element","createElement","__experimentalVStack","__experimentalHeading","as","level","default","params","postId","id","postType","type","canvas","decodeEntities","title","rendered","slug","description","__experimentalText","variant","maxWidth","VisuallyHidden","actions","templateType","showIcon","toggleProps","data"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tVisuallyHidden,\n\t__experimentalHeading as Heading,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport Table from '../table';\nimport Link from '../routes/link';\nimport AddedBy from '../list/added-by';\nimport TemplateActions from '../template-actions';\nimport AddNewTemplate from '../add-new-template';\n\nexport default function PageTemplates() {\n\tconst { records: templates } = 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 columns = [\n\t\t{\n\t\t\theader: __( 'Template' ),\n\t\t\tcell: ( template ) => (\n\t\t\t\t<VStack>\n\t\t\t\t\t<Heading as=\"h3\" level={ 5 }>\n\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\tpostId: template.id,\n\t\t\t\t\t\t\t\tpostType: template.type,\n\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\ttemplate.title?.rendered || template.slug\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Link>\n\t\t\t\t\t</Heading>\n\t\t\t\t\t{ template.description && (\n\t\t\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t\t\t{ decodeEntities( template.description ) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t) }\n\t\t\t\t</VStack>\n\t\t\t),\n\t\t\tmaxWidth: 400,\n\t\t},\n\t\t{\n\t\t\theader: __( 'Added by' ),\n\t\t\tcell: ( template ) => (\n\t\t\t\t<AddedBy postType={ template.type } postId={ template.id } />\n\t\t\t),\n\t\t},\n\t\t{\n\t\t\theader: <VisuallyHidden>{ __( 'Actions' ) }</VisuallyHidden>,\n\t\t\tcell: ( template ) => (\n\t\t\t\t<TemplateActions\n\t\t\t\t\tpostType={ template.type }\n\t\t\t\t\tpostId={ template.id }\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t];\n\n\treturn (\n\t\t<Page\n\t\t\ttitle={ __( 'Templates' ) }\n\t\t\tactions={\n\t\t\t\t<AddNewTemplate\n\t\t\t\t\ttemplateType={ 'wp_template' }\n\t\t\t\t\tshowIcon={ false }\n\t\t\t\t\ttoggleProps={ { variant: 'primary' } }\n\t\t\t\t/>\n\t\t\t}\n\t\t>\n\t\t\t{ templates && <Table data={ templates } columns={ columns } /> }\n\t\t</Page>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_components","require","_i18n","_coreData","_htmlEntities","_page","_interopRequireDefault","_table","_link","_addedBy","_templateActions","_addNewTemplate","_constants","PageTemplates","records","templates","useEntityRecords","TEMPLATE_POST_TYPE","per_page","columns","header","__","cell","template","_element","createElement","__experimentalVStack","__experimentalHeading","as","level","default","params","postId","id","postType","type","canvas","decodeEntities","title","rendered","slug","description","__experimentalText","variant","maxWidth","VisuallyHidden","actions","templateType","showIcon","toggleProps","data"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tVisuallyHidden,\n\t__experimentalHeading as Heading,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport Table from '../table';\nimport Link from '../routes/link';\nimport AddedBy from '../list/added-by';\nimport TemplateActions from '../template-actions';\nimport AddNewTemplate from '../add-new-template';\nimport { TEMPLATE_POST_TYPE } from '../../utils/constants';\n\nexport default function PageTemplates() {\n\tconst { records: templates } = 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 columns = [\n\t\t{\n\t\t\theader: __( 'Template' ),\n\t\t\tcell: ( template ) => (\n\t\t\t\t<VStack>\n\t\t\t\t\t<Heading as=\"h3\" level={ 5 }>\n\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\tpostId: template.id,\n\t\t\t\t\t\t\t\tpostType: template.type,\n\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\ttemplate.title?.rendered || template.slug\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Link>\n\t\t\t\t\t</Heading>\n\t\t\t\t\t{ template.description && (\n\t\t\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t\t\t{ decodeEntities( template.description ) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t) }\n\t\t\t\t</VStack>\n\t\t\t),\n\t\t\tmaxWidth: 400,\n\t\t},\n\t\t{\n\t\t\theader: __( 'Added by' ),\n\t\t\tcell: ( template ) => (\n\t\t\t\t<AddedBy postType={ template.type } postId={ template.id } />\n\t\t\t),\n\t\t},\n\t\t{\n\t\t\theader: <VisuallyHidden>{ __( 'Actions' ) }</VisuallyHidden>,\n\t\t\tcell: ( template ) => (\n\t\t\t\t<TemplateActions\n\t\t\t\t\tpostType={ template.type }\n\t\t\t\t\tpostId={ template.id }\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t];\n\n\treturn (\n\t\t<Page\n\t\t\ttitle={ __( 'Templates' ) }\n\t\t\tactions={\n\t\t\t\t<AddNewTemplate\n\t\t\t\t\ttemplateType={ TEMPLATE_POST_TYPE }\n\t\t\t\t\tshowIcon={ false }\n\t\t\t\t\ttoggleProps={ { variant: 'primary' } }\n\t\t\t\t/>\n\t\t\t}\n\t\t>\n\t\t\t{ templates && <Table data={ templates } columns={ columns } /> }\n\t\t</Page>\n\t);\n}\n"],"mappings":"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"}
@@ -17,6 +17,7 @@ var _notices = require("@wordpress/notices");
17
17
  var _saveButton = _interopRequireDefault(require("../save-button"));
18
18
  var _isPreviewingTheme = require("../../utils/is-previewing-theme");
19
19
  var _lockUnlock = require("../../lock-unlock");
20
+ var _constants = require("../../utils/constants");
20
21
  /**
21
22
  * WordPress dependencies
22
23
  */
@@ -30,7 +31,7 @@ const {
30
31
  } = (0, _lockUnlock.unlock)(_router.privateApis);
31
32
  const PUBLISH_ON_SAVE_ENTITIES = [{
32
33
  kind: 'postType',
33
- name: 'wp_navigation'
34
+ name: _constants.NAVIGATION_POST_TYPE
34
35
  }];
35
36
  function SaveHub() {
36
37
  const saveNoticeId = 'site-edit-save-notice';
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_components","_i18n","_coreData","_blockEditor","_icons","_router","_notices","_saveButton","_interopRequireDefault","_isPreviewingTheme","_lockUnlock","useLocation","unlock","routerPrivateApis","PUBLISH_ON_SAVE_ENTITIES","kind","name","SaveHub","saveNoticeId","params","__unstableMarkLastChangeAsPersistent","useDispatch","blockEditorStore","createSuccessNotice","createErrorNotice","removeNotice","noticesStore","dirtyCurrentEntity","countUnsavedChanges","isDirty","isSaving","useSelect","select","__experimentalGetDirtyEntityRecords","isSavingEntityRecord","coreStore","dirtyEntityRecords","calcDirtyCurrentEntity","length","path","includes","find","record","postId","postType","String","key","some","editEntityRecord","saveEditedEntityRecord","__experimentalSaveSpecifiedEntityEdits","saveSpecifiedEntityEdits","disabled","isPreviewingTheme","label","__","sprintf","_n","saveCurrentEntity","property","undefined","typeToPublish","status","type","id","error","_element","createElement","__experimentalHStack","className","alignment","spacing","Button","variant","onClick","isBusy","__next40pxDefaultSize","default","showTooltip","icon","check","defaultLabel"],"sources":["@wordpress/edit-site/src/components/save-hub/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { Button, __experimentalHStack as HStack } from '@wordpress/components';\nimport { __, sprintf, _n } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { check } from '@wordpress/icons';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport SaveButton from '../save-button';\nimport { isPreviewingTheme } from '../../utils/is-previewing-theme';\nimport { unlock } from '../../lock-unlock';\n\nconst { useLocation } = unlock( routerPrivateApis );\n\nconst PUBLISH_ON_SAVE_ENTITIES = [\n\t{\n\t\tkind: 'postType',\n\t\tname: 'wp_navigation',\n\t},\n];\n\nexport default function SaveHub() {\n\tconst saveNoticeId = 'site-edit-save-notice';\n\tconst { params } = useLocation();\n\n\tconst { __unstableMarkLastChangeAsPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tconst { createSuccessNotice, createErrorNotice, removeNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst { dirtyCurrentEntity, countUnsavedChanges, isDirty, isSaving } =\n\t\tuseSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst {\n\t\t\t\t\t__experimentalGetDirtyEntityRecords,\n\t\t\t\t\tisSavingEntityRecord,\n\t\t\t\t} = select( coreStore );\n\t\t\t\tconst dirtyEntityRecords =\n\t\t\t\t\t__experimentalGetDirtyEntityRecords();\n\t\t\t\tlet calcDirtyCurrentEntity = null;\n\n\t\t\t\tif ( dirtyEntityRecords.length === 1 ) {\n\t\t\t\t\t// if we are on global styles\n\t\t\t\t\tif ( params.path?.includes( 'wp_global_styles' ) ) {\n\t\t\t\t\t\tcalcDirtyCurrentEntity = dirtyEntityRecords.find(\n\t\t\t\t\t\t\t( record ) => record.name === 'globalStyles'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\t// if we are on pages\n\t\t\t\t\telse if ( params.postId ) {\n\t\t\t\t\t\tcalcDirtyCurrentEntity = dirtyEntityRecords.find(\n\t\t\t\t\t\t\t( record ) =>\n\t\t\t\t\t\t\t\trecord.name === params.postType &&\n\t\t\t\t\t\t\t\tString( record.key ) === params.postId\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn {\n\t\t\t\t\tdirtyCurrentEntity: calcDirtyCurrentEntity,\n\t\t\t\t\tisDirty: dirtyEntityRecords.length > 0,\n\t\t\t\t\tisSaving: dirtyEntityRecords.some( ( record ) =>\n\t\t\t\t\t\tisSavingEntityRecord(\n\t\t\t\t\t\t\trecord.kind,\n\t\t\t\t\t\t\trecord.name,\n\t\t\t\t\t\t\trecord.key\n\t\t\t\t\t\t)\n\t\t\t\t\t),\n\t\t\t\t\tcountUnsavedChanges: dirtyEntityRecords.length,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ params.path, params.postType, params.postId ]\n\t\t);\n\n\tconst {\n\t\teditEntityRecord,\n\t\tsaveEditedEntityRecord,\n\t\t__experimentalSaveSpecifiedEntityEdits: saveSpecifiedEntityEdits,\n\t} = useDispatch( coreStore );\n\n\tconst disabled = isSaving || ( ! isDirty && ! isPreviewingTheme() );\n\n\t// if we have only one unsaved change and it matches current context, we can show a more specific label\n\tlet label = dirtyCurrentEntity\n\t\t? __( 'Save' )\n\t\t: sprintf(\n\t\t\t\t// translators: %d: number of unsaved changes (number).\n\t\t\t\t_n(\n\t\t\t\t\t'Review %d change…',\n\t\t\t\t\t'Review %d changes…',\n\t\t\t\t\tcountUnsavedChanges\n\t\t\t\t),\n\t\t\t\tcountUnsavedChanges\n\t\t );\n\n\tif ( isSaving ) {\n\t\tlabel = __( 'Saving' );\n\t}\n\n\tconst saveCurrentEntity = async () => {\n\t\tif ( ! dirtyCurrentEntity ) return;\n\n\t\tremoveNotice( saveNoticeId );\n\t\tconst { kind, name, key, property } = dirtyCurrentEntity;\n\n\t\ttry {\n\t\t\tif ( 'root' === dirtyCurrentEntity.kind && 'site' === name ) {\n\t\t\t\tawait saveSpecifiedEntityEdits( 'root', 'site', undefined, [\n\t\t\t\t\tproperty,\n\t\t\t\t] );\n\t\t\t} else {\n\t\t\t\tif (\n\t\t\t\t\tPUBLISH_ON_SAVE_ENTITIES.some(\n\t\t\t\t\t\t( typeToPublish ) =>\n\t\t\t\t\t\t\ttypeToPublish.kind === kind &&\n\t\t\t\t\t\t\ttypeToPublish.name === name\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\teditEntityRecord( kind, name, key, { status: 'publish' } );\n\t\t\t\t}\n\n\t\t\t\tawait saveEditedEntityRecord( kind, name, key );\n\t\t\t}\n\n\t\t\t__unstableMarkLastChangeAsPersistent();\n\n\t\t\tcreateSuccessNotice( __( 'Site updated.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: saveNoticeId,\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tcreateErrorNotice( `${ __( 'Saving failed.' ) } ${ error }` );\n\t\t}\n\t};\n\n\treturn (\n\t\t<HStack className=\"edit-site-save-hub\" alignment=\"right\" spacing={ 4 }>\n\t\t\t{ dirtyCurrentEntity ? (\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tonClick={ saveCurrentEntity }\n\t\t\t\t\tisBusy={ isSaving }\n\t\t\t\t\tdisabled={ isSaving }\n\t\t\t\t\taria-disabled={ isSaving }\n\t\t\t\t\tclassName=\"edit-site-save-hub__button\"\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t>\n\t\t\t\t\t{ label }\n\t\t\t\t</Button>\n\t\t\t) : (\n\t\t\t\t<SaveButton\n\t\t\t\t\tclassName=\"edit-site-save-hub__button\"\n\t\t\t\t\tvariant={ disabled ? null : 'primary' }\n\t\t\t\t\tshowTooltip={ false }\n\t\t\t\t\ticon={ disabled && ! isSaving ? check : null }\n\t\t\t\t\tdefaultLabel={ label }\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t/>\n\t\t\t) }\n\t\t</HStack>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_data","require","_components","_i18n","_coreData","_blockEditor","_icons","_router","_notices","_saveButton","_interopRequireDefault","_isPreviewingTheme","_lockUnlock","_constants","useLocation","unlock","routerPrivateApis","PUBLISH_ON_SAVE_ENTITIES","kind","name","NAVIGATION_POST_TYPE","SaveHub","saveNoticeId","params","__unstableMarkLastChangeAsPersistent","useDispatch","blockEditorStore","createSuccessNotice","createErrorNotice","removeNotice","noticesStore","dirtyCurrentEntity","countUnsavedChanges","isDirty","isSaving","useSelect","select","__experimentalGetDirtyEntityRecords","isSavingEntityRecord","coreStore","dirtyEntityRecords","calcDirtyCurrentEntity","length","path","includes","find","record","postId","postType","String","key","some","editEntityRecord","saveEditedEntityRecord","__experimentalSaveSpecifiedEntityEdits","saveSpecifiedEntityEdits","disabled","isPreviewingTheme","label","__","sprintf","_n","saveCurrentEntity","property","undefined","typeToPublish","status","type","id","error","_element","createElement","__experimentalHStack","className","alignment","spacing","Button","variant","onClick","isBusy","__next40pxDefaultSize","default","showTooltip","icon","check","defaultLabel"],"sources":["@wordpress/edit-site/src/components/save-hub/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { Button, __experimentalHStack as HStack } from '@wordpress/components';\nimport { __, sprintf, _n } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { check } from '@wordpress/icons';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport SaveButton from '../save-button';\nimport { isPreviewingTheme } from '../../utils/is-previewing-theme';\nimport { unlock } from '../../lock-unlock';\nimport { NAVIGATION_POST_TYPE } from '../../utils/constants';\n\nconst { useLocation } = unlock( routerPrivateApis );\n\nconst PUBLISH_ON_SAVE_ENTITIES = [\n\t{\n\t\tkind: 'postType',\n\t\tname: NAVIGATION_POST_TYPE,\n\t},\n];\n\nexport default function SaveHub() {\n\tconst saveNoticeId = 'site-edit-save-notice';\n\tconst { params } = useLocation();\n\n\tconst { __unstableMarkLastChangeAsPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tconst { createSuccessNotice, createErrorNotice, removeNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst { dirtyCurrentEntity, countUnsavedChanges, isDirty, isSaving } =\n\t\tuseSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst {\n\t\t\t\t\t__experimentalGetDirtyEntityRecords,\n\t\t\t\t\tisSavingEntityRecord,\n\t\t\t\t} = select( coreStore );\n\t\t\t\tconst dirtyEntityRecords =\n\t\t\t\t\t__experimentalGetDirtyEntityRecords();\n\t\t\t\tlet calcDirtyCurrentEntity = null;\n\n\t\t\t\tif ( dirtyEntityRecords.length === 1 ) {\n\t\t\t\t\t// if we are on global styles\n\t\t\t\t\tif ( params.path?.includes( 'wp_global_styles' ) ) {\n\t\t\t\t\t\tcalcDirtyCurrentEntity = dirtyEntityRecords.find(\n\t\t\t\t\t\t\t( record ) => record.name === 'globalStyles'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\t// if we are on pages\n\t\t\t\t\telse if ( params.postId ) {\n\t\t\t\t\t\tcalcDirtyCurrentEntity = dirtyEntityRecords.find(\n\t\t\t\t\t\t\t( record ) =>\n\t\t\t\t\t\t\t\trecord.name === params.postType &&\n\t\t\t\t\t\t\t\tString( record.key ) === params.postId\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn {\n\t\t\t\t\tdirtyCurrentEntity: calcDirtyCurrentEntity,\n\t\t\t\t\tisDirty: dirtyEntityRecords.length > 0,\n\t\t\t\t\tisSaving: dirtyEntityRecords.some( ( record ) =>\n\t\t\t\t\t\tisSavingEntityRecord(\n\t\t\t\t\t\t\trecord.kind,\n\t\t\t\t\t\t\trecord.name,\n\t\t\t\t\t\t\trecord.key\n\t\t\t\t\t\t)\n\t\t\t\t\t),\n\t\t\t\t\tcountUnsavedChanges: dirtyEntityRecords.length,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ params.path, params.postType, params.postId ]\n\t\t);\n\n\tconst {\n\t\teditEntityRecord,\n\t\tsaveEditedEntityRecord,\n\t\t__experimentalSaveSpecifiedEntityEdits: saveSpecifiedEntityEdits,\n\t} = useDispatch( coreStore );\n\n\tconst disabled = isSaving || ( ! isDirty && ! isPreviewingTheme() );\n\n\t// if we have only one unsaved change and it matches current context, we can show a more specific label\n\tlet label = dirtyCurrentEntity\n\t\t? __( 'Save' )\n\t\t: sprintf(\n\t\t\t\t// translators: %d: number of unsaved changes (number).\n\t\t\t\t_n(\n\t\t\t\t\t'Review %d change…',\n\t\t\t\t\t'Review %d changes…',\n\t\t\t\t\tcountUnsavedChanges\n\t\t\t\t),\n\t\t\t\tcountUnsavedChanges\n\t\t );\n\n\tif ( isSaving ) {\n\t\tlabel = __( 'Saving' );\n\t}\n\n\tconst saveCurrentEntity = async () => {\n\t\tif ( ! dirtyCurrentEntity ) return;\n\n\t\tremoveNotice( saveNoticeId );\n\t\tconst { kind, name, key, property } = dirtyCurrentEntity;\n\n\t\ttry {\n\t\t\tif ( 'root' === dirtyCurrentEntity.kind && 'site' === name ) {\n\t\t\t\tawait saveSpecifiedEntityEdits( 'root', 'site', undefined, [\n\t\t\t\t\tproperty,\n\t\t\t\t] );\n\t\t\t} else {\n\t\t\t\tif (\n\t\t\t\t\tPUBLISH_ON_SAVE_ENTITIES.some(\n\t\t\t\t\t\t( typeToPublish ) =>\n\t\t\t\t\t\t\ttypeToPublish.kind === kind &&\n\t\t\t\t\t\t\ttypeToPublish.name === name\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\teditEntityRecord( kind, name, key, { status: 'publish' } );\n\t\t\t\t}\n\n\t\t\t\tawait saveEditedEntityRecord( kind, name, key );\n\t\t\t}\n\n\t\t\t__unstableMarkLastChangeAsPersistent();\n\n\t\t\tcreateSuccessNotice( __( 'Site updated.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: saveNoticeId,\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tcreateErrorNotice( `${ __( 'Saving failed.' ) } ${ error }` );\n\t\t}\n\t};\n\n\treturn (\n\t\t<HStack className=\"edit-site-save-hub\" alignment=\"right\" spacing={ 4 }>\n\t\t\t{ dirtyCurrentEntity ? (\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tonClick={ saveCurrentEntity }\n\t\t\t\t\tisBusy={ isSaving }\n\t\t\t\t\tdisabled={ isSaving }\n\t\t\t\t\taria-disabled={ isSaving }\n\t\t\t\t\tclassName=\"edit-site-save-hub__button\"\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t>\n\t\t\t\t\t{ label }\n\t\t\t\t</Button>\n\t\t\t) : (\n\t\t\t\t<SaveButton\n\t\t\t\t\tclassName=\"edit-site-save-hub__button\"\n\t\t\t\t\tvariant={ disabled ? null : 'primary' }\n\t\t\t\t\tshowTooltip={ false }\n\t\t\t\t\ticon={ disabled && ! isSaving ? check : null }\n\t\t\t\t\tdefaultLabel={ label }\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t/>\n\t\t\t) }\n\t\t</HStack>\n\t);\n}\n"],"mappings":"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"}