@wordpress/edit-site 5.32.0 → 5.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (809) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/add-new-page/index.js.map +1 -1
  3. package/build/components/add-new-pattern/index.js.map +1 -1
  4. package/build/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -1
  5. package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  6. package/build/components/add-new-template/index.js +282 -13
  7. package/build/components/add-new-template/index.js.map +1 -1
  8. package/build/components/add-new-template/utils.js +22 -11
  9. package/build/components/add-new-template/utils.js.map +1 -1
  10. package/build/components/app/index.js.map +1 -1
  11. package/build/components/async/index.js +51 -0
  12. package/build/components/async/index.js.map +1 -0
  13. package/build/components/block-editor/block-inspector-button.js +10 -9
  14. package/build/components/block-editor/block-inspector-button.js.map +1 -1
  15. package/build/components/block-editor/editor-canvas.js +15 -6
  16. package/build/components/block-editor/editor-canvas.js.map +1 -1
  17. package/build/components/block-editor/inserter-media-categories.js.map +1 -1
  18. package/build/components/block-editor/resizable-editor.js.map +1 -1
  19. package/build/components/block-editor/resize-handle.js.map +1 -1
  20. package/build/components/block-editor/site-editor-canvas.js +5 -1
  21. package/build/components/block-editor/site-editor-canvas.js.map +1 -1
  22. package/build/components/block-editor/use-navigate-to-entity-record.js.map +1 -1
  23. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  24. package/build/components/canvas-loader/index.js.map +1 -1
  25. package/build/components/code-editor/index.js.map +1 -1
  26. package/build/components/create-template-part-modal/index.js.map +1 -1
  27. package/build/components/editor/index.js +35 -8
  28. package/build/components/editor/index.js.map +1 -1
  29. package/build/components/editor-canvas-container/index.js.map +1 -1
  30. package/build/components/error-boundary/index.js.map +1 -1
  31. package/build/components/error-boundary/warning.js.map +1 -1
  32. package/build/components/global-styles/background-panel.js +13 -1
  33. package/build/components/global-styles/background-panel.js.map +1 -1
  34. package/build/components/global-styles/block-preview-panel.js +6 -1
  35. package/build/components/global-styles/block-preview-panel.js.map +1 -1
  36. package/build/components/global-styles/color-indicator-wrapper.js.map +1 -1
  37. package/build/components/global-styles/color-palette-panel.js.map +1 -1
  38. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  39. package/build/components/global-styles/font-families.js +1 -1
  40. package/build/components/global-styles/font-families.js.map +1 -1
  41. package/build/components/global-styles/font-family-item.js.map +1 -1
  42. package/build/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
  43. package/build/components/global-styles/font-library-modal/context.js +60 -32
  44. package/build/components/global-styles/font-library-modal/context.js.map +1 -1
  45. package/build/components/global-styles/font-library-modal/font-card.js.map +1 -1
  46. package/build/components/global-styles/font-library-modal/font-collection.js +11 -4
  47. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  48. package/build/components/global-styles/font-library-modal/font-demo.js.map +1 -1
  49. package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -1
  50. package/build/components/global-styles/font-library-modal/index.js +1 -1
  51. package/build/components/global-styles/font-library-modal/index.js.map +1 -1
  52. package/build/components/global-styles/font-library-modal/installed-fonts.js +10 -9
  53. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  54. package/build/components/global-styles/font-library-modal/library-font-details.js.map +1 -1
  55. package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  56. package/build/components/global-styles/font-library-modal/resolvers.js.map +1 -1
  57. package/build/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
  58. package/build/components/global-styles/font-library-modal/utils/constants.js.map +1 -1
  59. package/build/components/global-styles/font-library-modal/utils/filter-fonts.js.map +1 -1
  60. package/build/components/global-styles/font-library-modal/utils/fonts-outline.js.map +1 -1
  61. package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  62. package/build/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +1 -1
  63. package/build/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -1
  64. package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -1
  65. package/build/components/global-styles/font-library-modal/utils/toggleFont.js.map +1 -1
  66. package/build/components/global-styles/global-styles-provider.js.map +1 -1
  67. package/build/components/global-styles/gradients-palette-panel.js.map +1 -1
  68. package/build/components/global-styles/header.js.map +1 -1
  69. package/build/components/global-styles/highlighted-colors.js +1 -1
  70. package/build/components/global-styles/highlighted-colors.js.map +1 -1
  71. package/build/components/global-styles/hooks.js +11 -3
  72. package/build/components/global-styles/hooks.js.map +1 -1
  73. package/build/components/global-styles/icon-with-current-color.js.map +1 -1
  74. package/build/components/global-styles/index.js.map +1 -1
  75. package/build/components/global-styles/navigation-button.js.map +1 -1
  76. package/build/components/global-styles/palette.js.map +1 -1
  77. package/build/components/global-styles/preview-colors.js.map +1 -1
  78. package/build/components/global-styles/preview-iframe.js.map +1 -1
  79. package/build/components/global-styles/preview-styles.js.map +1 -1
  80. package/build/components/global-styles/root-menu.js +2 -2
  81. package/build/components/global-styles/root-menu.js.map +1 -1
  82. package/build/components/global-styles/screen-background.js +1 -1
  83. package/build/components/global-styles/screen-background.js.map +1 -1
  84. package/build/components/global-styles/screen-block-list.js.map +1 -1
  85. package/build/components/global-styles/screen-block.js.map +1 -1
  86. package/build/components/global-styles/screen-color-palette.js.map +1 -1
  87. package/build/components/global-styles/screen-colors.js.map +1 -1
  88. package/build/components/global-styles/screen-css.js.map +1 -1
  89. package/build/components/global-styles/screen-layout.js.map +1 -1
  90. package/build/components/global-styles/screen-revisions/index.js +1 -1
  91. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  92. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  93. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  94. package/build/components/global-styles/screen-root.js.map +1 -1
  95. package/build/components/global-styles/screen-style-variations.js.map +1 -1
  96. package/build/components/global-styles/screen-typography-element.js.map +1 -1
  97. package/build/components/global-styles/screen-typography.js.map +1 -1
  98. package/build/components/global-styles/style-variations-container.js.map +1 -1
  99. package/build/components/global-styles/subtitle.js.map +1 -1
  100. package/build/components/global-styles/typography-elements.js.map +1 -1
  101. package/build/components/global-styles/typography-example.js.map +1 -1
  102. package/build/components/global-styles/typography-panel.js.map +1 -1
  103. package/build/components/global-styles/typography-preview.js.map +1 -1
  104. package/build/components/global-styles/ui.js +1 -1
  105. package/build/components/global-styles/ui.js.map +1 -1
  106. package/build/components/global-styles/utils.js.map +1 -1
  107. package/build/components/global-styles/variations/variation.js.map +1 -1
  108. package/build/components/global-styles/variations/variations-color.js.map +1 -1
  109. package/build/components/global-styles/variations/variations-panel.js.map +1 -1
  110. package/build/components/global-styles/variations/variations-typography.js.map +1 -1
  111. package/build/components/global-styles-renderer/index.js.map +1 -1
  112. package/build/components/header-edit-mode/document-tools/index.js.map +1 -1
  113. package/build/components/header-edit-mode/index.js +4 -4
  114. package/build/components/header-edit-mode/index.js.map +1 -1
  115. package/build/components/header-edit-mode/more-menu/copy-content-menu-item.js.map +1 -1
  116. package/build/components/header-edit-mode/more-menu/index.js +10 -12
  117. package/build/components/header-edit-mode/more-menu/index.js.map +1 -1
  118. package/build/components/header-edit-mode/more-menu/site-export.js.map +1 -1
  119. package/build/components/header-edit-mode/more-menu/welcome-guide-menu-item.js.map +1 -1
  120. package/build/components/header-edit-mode/tools-more-menu-group/index.js.map +1 -1
  121. package/build/components/keyboard-shortcuts/edit-mode.js +0 -23
  122. package/build/components/keyboard-shortcuts/edit-mode.js.map +1 -1
  123. package/build/components/keyboard-shortcuts/global.js.map +1 -1
  124. package/build/components/keyboard-shortcuts/register.js +0 -18
  125. package/build/components/keyboard-shortcuts/register.js.map +1 -1
  126. package/build/components/layout/animation.js +3 -2
  127. package/build/components/layout/animation.js.map +1 -1
  128. package/build/components/layout/hooks.js.map +1 -1
  129. package/build/components/layout/index.js +13 -48
  130. package/build/components/layout/index.js.map +1 -1
  131. package/build/components/layout/router.js +73 -7
  132. package/build/components/layout/router.js.map +1 -1
  133. package/build/components/media/index.js.map +1 -1
  134. package/build/components/page/header.js.map +1 -1
  135. package/build/components/page/index.js +5 -2
  136. package/build/components/page/index.js.map +1 -1
  137. package/build/components/page-pages/index.js +15 -17
  138. package/build/components/page-pages/index.js.map +1 -1
  139. package/build/components/page-patterns/dataviews-pattern-actions.js +5 -4
  140. package/build/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
  141. package/build/components/page-patterns/delete-category-menu-item.js.map +1 -1
  142. package/build/components/page-patterns/header.js +2 -2
  143. package/build/components/page-patterns/header.js.map +1 -1
  144. package/build/components/page-patterns/index.js +124 -17
  145. package/build/components/page-patterns/index.js.map +1 -1
  146. package/build/components/page-patterns/rename-category-menu-item.js.map +1 -1
  147. package/build/components/page-patterns/search-items.js +2 -1
  148. package/build/components/page-patterns/search-items.js.map +1 -1
  149. package/build/components/page-patterns/use-pattern-settings.js.map +1 -1
  150. package/build/components/page-patterns/use-patterns.js +5 -10
  151. package/build/components/page-patterns/use-patterns.js.map +1 -1
  152. package/build/components/page-patterns/utils.js.map +1 -1
  153. package/build/components/page-templates-template-parts/add-new-template-part.js +2 -1
  154. package/build/components/page-templates-template-parts/add-new-template-part.js.map +1 -1
  155. package/build/components/page-templates-template-parts/hooks.js.map +1 -1
  156. package/build/components/page-templates-template-parts/index.js +13 -25
  157. package/build/components/page-templates-template-parts/index.js.map +1 -1
  158. package/build/components/pagination/index.js.map +1 -1
  159. package/build/components/pattern-modal/duplicate.js +6 -3
  160. package/build/components/pattern-modal/duplicate.js.map +1 -1
  161. package/build/components/pattern-modal/index.js.map +1 -1
  162. package/build/components/pattern-modal/rename.js +6 -3
  163. package/build/components/pattern-modal/rename.js.map +1 -1
  164. package/build/components/plugin-template-setting-panel/index.js.map +1 -1
  165. package/build/components/{template-actions/rename-menu-item.js → rename-post-menu-item/index.js} +18 -16
  166. package/build/components/rename-post-menu-item/index.js.map +1 -0
  167. package/build/components/resizable-frame/index.js +1 -5
  168. package/build/components/resizable-frame/index.js.map +1 -1
  169. package/build/components/revisions/index.js.map +1 -1
  170. package/build/components/routes/link.js.map +1 -1
  171. package/build/components/routes/use-title.js.map +1 -1
  172. package/build/components/save-button/index.js.map +1 -1
  173. package/build/components/save-hub/index.js.map +1 -1
  174. package/build/components/save-panel/index.js +3 -3
  175. package/build/components/save-panel/index.js.map +1 -1
  176. package/build/components/sidebar/index.js +41 -75
  177. package/build/components/sidebar/index.js.map +1 -1
  178. package/build/components/sidebar-button/index.js.map +1 -1
  179. package/build/components/sidebar-dataviews/add-new-view.js.map +1 -1
  180. package/build/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
  181. package/build/components/sidebar-dataviews/dataview-item.js.map +1 -1
  182. package/build/components/sidebar-dataviews/default-views.js +1 -1
  183. package/build/components/sidebar-dataviews/default-views.js.map +1 -1
  184. package/build/components/sidebar-dataviews/index.js +1 -1
  185. package/build/components/sidebar-dataviews/index.js.map +1 -1
  186. package/build/components/sidebar-edit-mode/default-sidebar.js +18 -7
  187. package/build/components/sidebar-edit-mode/default-sidebar.js.map +1 -1
  188. package/build/components/sidebar-edit-mode/global-styles-sidebar.js +5 -3
  189. package/build/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -1
  190. package/build/components/sidebar-edit-mode/index.js +29 -54
  191. package/build/components/sidebar-edit-mode/index.js.map +1 -1
  192. package/build/components/sidebar-edit-mode/page-panels/index.js +23 -2
  193. package/build/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  194. package/build/components/sidebar-edit-mode/page-panels/page-content.js.map +1 -1
  195. package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
  196. package/build/components/sidebar-edit-mode/page-panels/page-summary.js +2 -2
  197. package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  198. package/build/components/sidebar-edit-mode/settings-header/index.js +4 -5
  199. package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
  200. package/build/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -1
  201. package/build/components/sidebar-edit-mode/template-panel/index.js +1 -1
  202. package/build/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  203. package/build/components/sidebar-navigation-item/index.js +31 -0
  204. package/build/components/sidebar-navigation-item/index.js.map +1 -1
  205. package/build/components/sidebar-navigation-screen/index.js +36 -9
  206. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  207. package/build/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
  208. package/build/components/sidebar-navigation-screen-details-panel/index.js.map +1 -1
  209. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js.map +1 -1
  210. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
  211. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js.map +1 -1
  212. package/build/components/sidebar-navigation-screen-global-styles/index.js +1 -2
  213. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  214. package/build/components/sidebar-navigation-screen-main/index.js +6 -15
  215. package/build/components/sidebar-navigation-screen-main/index.js.map +1 -1
  216. package/build/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js +1 -1
  217. package/build/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js.map +1 -1
  218. package/build/components/sidebar-navigation-screen-navigation-menu/index.js +7 -2
  219. package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  220. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  221. package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -1
  222. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -1
  223. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +1 -1
  224. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
  225. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +20 -15
  226. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  227. package/build/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js.map +1 -1
  228. package/build/components/sidebar-navigation-screen-navigation-menus/constants.js.map +1 -1
  229. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +1 -1
  230. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  231. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +6 -5
  232. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  233. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  234. package/build/components/sidebar-navigation-screen-page/index.js +22 -12
  235. package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
  236. package/build/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  237. package/build/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
  238. package/build/components/sidebar-navigation-screen-pattern/index.js +14 -5
  239. package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
  240. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
  241. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js.map +1 -1
  242. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
  243. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -1
  244. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
  245. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js.map +1 -1
  246. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  247. package/build/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  248. package/build/components/sidebar-navigation-screen-patterns/index.js +33 -27
  249. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  250. package/build/components/sidebar-navigation-screen-patterns/use-default-pattern-categories.js.map +1 -1
  251. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  252. package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -1
  253. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  254. package/build/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
  255. package/build/components/sidebar-navigation-screen-template/index.js +10 -7
  256. package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
  257. package/build/components/sidebar-navigation-screen-template/template-areas.js.map +1 -1
  258. package/build/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
  259. package/build/components/sidebar-navigation-screen-templates-browse/index.js +6 -8
  260. package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  261. package/build/components/site-hub/index.js +22 -21
  262. package/build/components/site-hub/index.js.map +1 -1
  263. package/build/components/site-icon/index.js.map +1 -1
  264. package/build/components/start-template-options/index.js.map +1 -1
  265. package/build/components/style-book/index.js.map +1 -1
  266. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +14 -5
  267. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  268. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -1
  269. package/build/components/table/index.js.map +1 -1
  270. package/build/components/template-actions/index.js +7 -8
  271. package/build/components/template-actions/index.js.map +1 -1
  272. package/build/components/template-part-converter/convert-to-regular.js.map +1 -1
  273. package/build/components/template-part-converter/convert-to-template-part.js.map +1 -1
  274. package/build/components/template-part-converter/index.js.map +1 -1
  275. package/build/components/use-edited-entity-record/index.js.map +1 -1
  276. package/build/components/welcome-guide/editor.js.map +1 -1
  277. package/build/components/welcome-guide/image.js.map +1 -1
  278. package/build/components/welcome-guide/index.js.map +1 -1
  279. package/build/components/welcome-guide/page.js.map +1 -1
  280. package/build/components/welcome-guide/styles.js +6 -3
  281. package/build/components/welcome-guide/styles.js.map +1 -1
  282. package/build/components/welcome-guide/template.js.map +1 -1
  283. package/build/hooks/commands/use-common-commands.js.map +1 -1
  284. package/build/hooks/commands/use-edit-mode-commands.js +10 -28
  285. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  286. package/build/hooks/components.js.map +1 -1
  287. package/build/hooks/index.js.map +1 -1
  288. package/build/hooks/push-changes-to-global-styles/index.js +3 -40
  289. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  290. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +1 -1
  291. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  292. package/build/index.js +3 -8
  293. package/build/index.js.map +1 -1
  294. package/build/lock-unlock.js.map +1 -1
  295. package/build/store/actions.js +21 -96
  296. package/build/store/actions.js.map +1 -1
  297. package/build/store/constants.js.map +1 -1
  298. package/build/store/index.js +1 -1
  299. package/build/store/index.js.map +1 -1
  300. package/build/store/private-actions.js +1 -85
  301. package/build/store/private-actions.js.map +1 -1
  302. package/build/store/private-selectors.js.map +1 -1
  303. package/build/store/reducer.js.map +1 -1
  304. package/build/store/selectors.js.map +1 -1
  305. package/build/utils/clone-deep.js.map +1 -1
  306. package/build/utils/constants.js +2 -1
  307. package/build/utils/constants.js.map +1 -1
  308. package/build/utils/get-is-list-page.js.map +1 -1
  309. package/build/utils/is-previewing-theme.js.map +1 -1
  310. package/build/utils/is-template-removable.js.map +1 -1
  311. package/build/utils/is-template-revertable.js.map +1 -1
  312. package/build/utils/math.js.map +1 -1
  313. package/build/utils/set-nested-value.js +44 -0
  314. package/build/utils/set-nested-value.js.map +1 -0
  315. package/build/utils/template-part-create.js.map +1 -1
  316. package/build/utils/use-activate-theme.js.map +1 -1
  317. package/build/utils/use-actual-current-theme.js.map +1 -1
  318. package/build-module/components/add-new-page/index.js.map +1 -1
  319. package/build-module/components/add-new-pattern/index.js.map +1 -1
  320. package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -1
  321. package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  322. package/build-module/components/add-new-template/index.js +283 -14
  323. package/build-module/components/add-new-template/index.js.map +1 -1
  324. package/build-module/components/add-new-template/utils.js +21 -11
  325. package/build-module/components/add-new-template/utils.js.map +1 -1
  326. package/build-module/components/app/index.js.map +1 -1
  327. package/build-module/components/async/index.js +44 -0
  328. package/build-module/components/async/index.js.map +1 -0
  329. package/build-module/components/block-editor/block-inspector-button.js +9 -8
  330. package/build-module/components/block-editor/block-inspector-button.js.map +1 -1
  331. package/build-module/components/block-editor/editor-canvas.js +16 -7
  332. package/build-module/components/block-editor/editor-canvas.js.map +1 -1
  333. package/build-module/components/block-editor/inserter-media-categories.js.map +1 -1
  334. package/build-module/components/block-editor/resizable-editor.js.map +1 -1
  335. package/build-module/components/block-editor/resize-handle.js.map +1 -1
  336. package/build-module/components/block-editor/site-editor-canvas.js +5 -1
  337. package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
  338. package/build-module/components/block-editor/use-navigate-to-entity-record.js.map +1 -1
  339. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  340. package/build-module/components/canvas-loader/index.js.map +1 -1
  341. package/build-module/components/code-editor/index.js.map +1 -1
  342. package/build-module/components/create-template-part-modal/index.js.map +1 -1
  343. package/build-module/components/editor/index.js +35 -8
  344. package/build-module/components/editor/index.js.map +1 -1
  345. package/build-module/components/editor-canvas-container/index.js.map +1 -1
  346. package/build-module/components/error-boundary/index.js.map +1 -1
  347. package/build-module/components/error-boundary/warning.js.map +1 -1
  348. package/build-module/components/global-styles/background-panel.js +14 -1
  349. package/build-module/components/global-styles/background-panel.js.map +1 -1
  350. package/build-module/components/global-styles/block-preview-panel.js +6 -1
  351. package/build-module/components/global-styles/block-preview-panel.js.map +1 -1
  352. package/build-module/components/global-styles/color-indicator-wrapper.js.map +1 -1
  353. package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
  354. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  355. package/build-module/components/global-styles/font-families.js.map +1 -1
  356. package/build-module/components/global-styles/font-family-item.js.map +1 -1
  357. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
  358. package/build-module/components/global-styles/font-library-modal/context.js +59 -32
  359. package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
  360. package/build-module/components/global-styles/font-library-modal/font-card.js.map +1 -1
  361. package/build-module/components/global-styles/font-library-modal/font-collection.js +12 -5
  362. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  363. package/build-module/components/global-styles/font-library-modal/font-demo.js.map +1 -1
  364. package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -1
  365. package/build-module/components/global-styles/font-library-modal/index.js +2 -2
  366. package/build-module/components/global-styles/font-library-modal/index.js.map +1 -1
  367. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +11 -10
  368. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  369. package/build-module/components/global-styles/font-library-modal/library-font-details.js.map +1 -1
  370. package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  371. package/build-module/components/global-styles/font-library-modal/resolvers.js.map +1 -1
  372. package/build-module/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
  373. package/build-module/components/global-styles/font-library-modal/utils/constants.js.map +1 -1
  374. package/build-module/components/global-styles/font-library-modal/utils/filter-fonts.js.map +1 -1
  375. package/build-module/components/global-styles/font-library-modal/utils/fonts-outline.js.map +1 -1
  376. package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  377. package/build-module/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +1 -1
  378. package/build-module/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -1
  379. package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -1
  380. package/build-module/components/global-styles/font-library-modal/utils/toggleFont.js.map +1 -1
  381. package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
  382. package/build-module/components/global-styles/gradients-palette-panel.js.map +1 -1
  383. package/build-module/components/global-styles/header.js.map +1 -1
  384. package/build-module/components/global-styles/highlighted-colors.js +1 -1
  385. package/build-module/components/global-styles/highlighted-colors.js.map +1 -1
  386. package/build-module/components/global-styles/hooks.js +11 -3
  387. package/build-module/components/global-styles/hooks.js.map +1 -1
  388. package/build-module/components/global-styles/icon-with-current-color.js.map +1 -1
  389. package/build-module/components/global-styles/index.js.map +1 -1
  390. package/build-module/components/global-styles/navigation-button.js.map +1 -1
  391. package/build-module/components/global-styles/palette.js.map +1 -1
  392. package/build-module/components/global-styles/preview-colors.js.map +1 -1
  393. package/build-module/components/global-styles/preview-iframe.js.map +1 -1
  394. package/build-module/components/global-styles/preview-styles.js.map +1 -1
  395. package/build-module/components/global-styles/root-menu.js +2 -2
  396. package/build-module/components/global-styles/root-menu.js.map +1 -1
  397. package/build-module/components/global-styles/screen-background.js +1 -1
  398. package/build-module/components/global-styles/screen-background.js.map +1 -1
  399. package/build-module/components/global-styles/screen-block-list.js.map +1 -1
  400. package/build-module/components/global-styles/screen-block.js.map +1 -1
  401. package/build-module/components/global-styles/screen-color-palette.js.map +1 -1
  402. package/build-module/components/global-styles/screen-colors.js.map +1 -1
  403. package/build-module/components/global-styles/screen-css.js.map +1 -1
  404. package/build-module/components/global-styles/screen-layout.js.map +1 -1
  405. package/build-module/components/global-styles/screen-revisions/index.js +1 -1
  406. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  407. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  408. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  409. package/build-module/components/global-styles/screen-root.js.map +1 -1
  410. package/build-module/components/global-styles/screen-style-variations.js.map +1 -1
  411. package/build-module/components/global-styles/screen-typography-element.js.map +1 -1
  412. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  413. package/build-module/components/global-styles/style-variations-container.js.map +1 -1
  414. package/build-module/components/global-styles/subtitle.js.map +1 -1
  415. package/build-module/components/global-styles/typography-elements.js.map +1 -1
  416. package/build-module/components/global-styles/typography-example.js.map +1 -1
  417. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  418. package/build-module/components/global-styles/typography-preview.js.map +1 -1
  419. package/build-module/components/global-styles/ui.js.map +1 -1
  420. package/build-module/components/global-styles/utils.js.map +1 -1
  421. package/build-module/components/global-styles/variations/variation.js.map +1 -1
  422. package/build-module/components/global-styles/variations/variations-color.js.map +1 -1
  423. package/build-module/components/global-styles/variations/variations-panel.js.map +1 -1
  424. package/build-module/components/global-styles/variations/variations-typography.js.map +1 -1
  425. package/build-module/components/global-styles-renderer/index.js.map +1 -1
  426. package/build-module/components/header-edit-mode/document-tools/index.js.map +1 -1
  427. package/build-module/components/header-edit-mode/index.js +3 -3
  428. package/build-module/components/header-edit-mode/index.js.map +1 -1
  429. package/build-module/components/header-edit-mode/more-menu/copy-content-menu-item.js.map +1 -1
  430. package/build-module/components/header-edit-mode/more-menu/index.js +8 -8
  431. package/build-module/components/header-edit-mode/more-menu/index.js.map +1 -1
  432. package/build-module/components/header-edit-mode/more-menu/site-export.js.map +1 -1
  433. package/build-module/components/header-edit-mode/more-menu/welcome-guide-menu-item.js.map +1 -1
  434. package/build-module/components/header-edit-mode/tools-more-menu-group/index.js.map +1 -1
  435. package/build-module/components/keyboard-shortcuts/edit-mode.js +0 -23
  436. package/build-module/components/keyboard-shortcuts/edit-mode.js.map +1 -1
  437. package/build-module/components/keyboard-shortcuts/global.js.map +1 -1
  438. package/build-module/components/keyboard-shortcuts/register.js +0 -18
  439. package/build-module/components/keyboard-shortcuts/register.js.map +1 -1
  440. package/build-module/components/layout/animation.js +4 -3
  441. package/build-module/components/layout/animation.js.map +1 -1
  442. package/build-module/components/layout/hooks.js.map +1 -1
  443. package/build-module/components/layout/index.js +13 -48
  444. package/build-module/components/layout/index.js.map +1 -1
  445. package/build-module/components/layout/router.js +73 -7
  446. package/build-module/components/layout/router.js.map +1 -1
  447. package/build-module/components/media/index.js.map +1 -1
  448. package/build-module/components/page/header.js.map +1 -1
  449. package/build-module/components/page/index.js +5 -2
  450. package/build-module/components/page/index.js.map +1 -1
  451. package/build-module/components/page-pages/index.js +14 -16
  452. package/build-module/components/page-pages/index.js.map +1 -1
  453. package/build-module/components/page-patterns/dataviews-pattern-actions.js +5 -4
  454. package/build-module/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
  455. package/build-module/components/page-patterns/delete-category-menu-item.js.map +1 -1
  456. package/build-module/components/page-patterns/header.js +2 -2
  457. package/build-module/components/page-patterns/header.js.map +1 -1
  458. package/build-module/components/page-patterns/index.js +126 -19
  459. package/build-module/components/page-patterns/index.js.map +1 -1
  460. package/build-module/components/page-patterns/rename-category-menu-item.js.map +1 -1
  461. package/build-module/components/page-patterns/search-items.js +3 -2
  462. package/build-module/components/page-patterns/search-items.js.map +1 -1
  463. package/build-module/components/page-patterns/use-pattern-settings.js.map +1 -1
  464. package/build-module/components/page-patterns/use-patterns.js +2 -6
  465. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  466. package/build-module/components/page-patterns/utils.js.map +1 -1
  467. package/build-module/components/page-templates-template-parts/add-new-template-part.js +3 -2
  468. package/build-module/components/page-templates-template-parts/add-new-template-part.js.map +1 -1
  469. package/build-module/components/page-templates-template-parts/hooks.js.map +1 -1
  470. package/build-module/components/page-templates-template-parts/index.js +13 -25
  471. package/build-module/components/page-templates-template-parts/index.js.map +1 -1
  472. package/build-module/components/pagination/index.js.map +1 -1
  473. package/build-module/components/pattern-modal/duplicate.js +4 -1
  474. package/build-module/components/pattern-modal/duplicate.js.map +1 -1
  475. package/build-module/components/pattern-modal/index.js.map +1 -1
  476. package/build-module/components/pattern-modal/rename.js +4 -1
  477. package/build-module/components/pattern-modal/rename.js.map +1 -1
  478. package/build-module/components/plugin-template-setting-panel/index.js.map +1 -1
  479. package/build-module/components/{template-actions/rename-menu-item.js → rename-post-menu-item/index.js} +17 -15
  480. package/build-module/components/rename-post-menu-item/index.js.map +1 -0
  481. package/build-module/components/resizable-frame/index.js +1 -5
  482. package/build-module/components/resizable-frame/index.js.map +1 -1
  483. package/build-module/components/revisions/index.js.map +1 -1
  484. package/build-module/components/routes/link.js.map +1 -1
  485. package/build-module/components/routes/use-title.js.map +1 -1
  486. package/build-module/components/save-button/index.js.map +1 -1
  487. package/build-module/components/save-hub/index.js.map +1 -1
  488. package/build-module/components/save-panel/index.js +2 -2
  489. package/build-module/components/save-panel/index.js.map +1 -1
  490. package/build-module/components/sidebar/index.js +42 -75
  491. package/build-module/components/sidebar/index.js.map +1 -1
  492. package/build-module/components/sidebar-button/index.js.map +1 -1
  493. package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -1
  494. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
  495. package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
  496. package/build-module/components/sidebar-dataviews/default-views.js +1 -1
  497. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
  498. package/build-module/components/sidebar-dataviews/index.js +1 -1
  499. package/build-module/components/sidebar-dataviews/index.js.map +1 -1
  500. package/build-module/components/sidebar-edit-mode/default-sidebar.js +16 -5
  501. package/build-module/components/sidebar-edit-mode/default-sidebar.js.map +1 -1
  502. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js +5 -3
  503. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -1
  504. package/build-module/components/sidebar-edit-mode/index.js +28 -53
  505. package/build-module/components/sidebar-edit-mode/index.js.map +1 -1
  506. package/build-module/components/sidebar-edit-mode/page-panels/index.js +23 -2
  507. package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  508. package/build-module/components/sidebar-edit-mode/page-panels/page-content.js.map +1 -1
  509. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
  510. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +4 -4
  511. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  512. package/build-module/components/sidebar-edit-mode/settings-header/index.js +4 -5
  513. package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
  514. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -1
  515. package/build-module/components/sidebar-edit-mode/template-panel/index.js +1 -1
  516. package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  517. package/build-module/components/sidebar-navigation-item/index.js +31 -0
  518. package/build-module/components/sidebar-navigation-item/index.js.map +1 -1
  519. package/build-module/components/sidebar-navigation-screen/index.js +37 -10
  520. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  521. package/build-module/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
  522. package/build-module/components/sidebar-navigation-screen-details-panel/index.js.map +1 -1
  523. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-label.js.map +1 -1
  524. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
  525. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-value.js.map +1 -1
  526. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +2 -3
  527. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  528. package/build-module/components/sidebar-navigation-screen-main/index.js +7 -16
  529. package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -1
  530. package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js +1 -1
  531. package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js.map +1 -1
  532. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js +8 -3
  533. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  534. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  535. package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -1
  536. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -1
  537. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +1 -1
  538. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
  539. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +20 -15
  540. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  541. package/build-module/components/sidebar-navigation-screen-navigation-menus/build-navigation-label.js.map +1 -1
  542. package/build-module/components/sidebar-navigation-screen-navigation-menus/constants.js.map +1 -1
  543. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +1 -1
  544. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  545. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +6 -5
  546. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  547. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  548. package/build-module/components/sidebar-navigation-screen-page/index.js +24 -14
  549. package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
  550. package/build-module/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  551. package/build-module/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
  552. package/build-module/components/sidebar-navigation-screen-pattern/index.js +14 -5
  553. package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
  554. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
  555. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list.js.map +1 -1
  556. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
  557. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -1
  558. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
  559. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js.map +1 -1
  560. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  561. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  562. package/build-module/components/sidebar-navigation-screen-patterns/index.js +34 -28
  563. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  564. package/build-module/components/sidebar-navigation-screen-patterns/use-default-pattern-categories.js.map +1 -1
  565. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  566. package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -1
  567. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  568. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
  569. package/build-module/components/sidebar-navigation-screen-template/index.js +12 -8
  570. package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
  571. package/build-module/components/sidebar-navigation-screen-template/template-areas.js.map +1 -1
  572. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
  573. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +6 -8
  574. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  575. package/build-module/components/site-hub/index.js +22 -21
  576. package/build-module/components/site-hub/index.js.map +1 -1
  577. package/build-module/components/site-icon/index.js.map +1 -1
  578. package/build-module/components/start-template-options/index.js.map +1 -1
  579. package/build-module/components/style-book/index.js.map +1 -1
  580. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +14 -5
  581. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  582. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -1
  583. package/build-module/components/table/index.js.map +1 -1
  584. package/build-module/components/template-actions/index.js +7 -8
  585. package/build-module/components/template-actions/index.js.map +1 -1
  586. package/build-module/components/template-part-converter/convert-to-regular.js.map +1 -1
  587. package/build-module/components/template-part-converter/convert-to-template-part.js.map +1 -1
  588. package/build-module/components/template-part-converter/index.js.map +1 -1
  589. package/build-module/components/use-edited-entity-record/index.js.map +1 -1
  590. package/build-module/components/welcome-guide/editor.js.map +1 -1
  591. package/build-module/components/welcome-guide/image.js.map +1 -1
  592. package/build-module/components/welcome-guide/index.js.map +1 -1
  593. package/build-module/components/welcome-guide/page.js.map +1 -1
  594. package/build-module/components/welcome-guide/styles.js +6 -3
  595. package/build-module/components/welcome-guide/styles.js.map +1 -1
  596. package/build-module/components/welcome-guide/template.js.map +1 -1
  597. package/build-module/hooks/commands/use-common-commands.js.map +1 -1
  598. package/build-module/hooks/commands/use-edit-mode-commands.js +11 -29
  599. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  600. package/build-module/hooks/components.js.map +1 -1
  601. package/build-module/hooks/index.js.map +1 -1
  602. package/build-module/hooks/push-changes-to-global-styles/index.js +1 -38
  603. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  604. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +1 -1
  605. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  606. package/build-module/index.js +4 -6
  607. package/build-module/index.js.map +1 -1
  608. package/build-module/lock-unlock.js.map +1 -1
  609. package/build-module/store/actions.js +16 -92
  610. package/build-module/store/actions.js.map +1 -1
  611. package/build-module/store/constants.js.map +1 -1
  612. package/build-module/store/index.js.map +1 -1
  613. package/build-module/store/private-actions.js +0 -83
  614. package/build-module/store/private-actions.js.map +1 -1
  615. package/build-module/store/private-selectors.js.map +1 -1
  616. package/build-module/store/reducer.js.map +1 -1
  617. package/build-module/store/selectors.js.map +1 -1
  618. package/build-module/utils/clone-deep.js.map +1 -1
  619. package/build-module/utils/constants.js +1 -0
  620. package/build-module/utils/constants.js.map +1 -1
  621. package/build-module/utils/get-is-list-page.js.map +1 -1
  622. package/build-module/utils/is-previewing-theme.js.map +1 -1
  623. package/build-module/utils/is-template-removable.js.map +1 -1
  624. package/build-module/utils/is-template-revertable.js.map +1 -1
  625. package/build-module/utils/math.js.map +1 -1
  626. package/build-module/utils/set-nested-value.js +38 -0
  627. package/build-module/utils/set-nested-value.js.map +1 -0
  628. package/build-module/utils/template-part-create.js.map +1 -1
  629. package/build-module/utils/use-activate-theme.js.map +1 -1
  630. package/build-module/utils/use-actual-current-theme.js.map +1 -1
  631. package/build-style/style-rtl.css +172 -585
  632. package/build-style/style.css +172 -585
  633. package/package.json +43 -44
  634. package/src/components/add-new-template/index.js +412 -12
  635. package/src/components/add-new-template/style.scss +0 -22
  636. package/src/components/add-new-template/utils.js +44 -24
  637. package/src/components/async/index.js +43 -0
  638. package/src/components/block-editor/block-inspector-button.js +9 -11
  639. package/src/components/block-editor/editor-canvas.js +45 -21
  640. package/src/components/block-editor/site-editor-canvas.js +6 -1
  641. package/src/components/editor/index.js +50 -13
  642. package/src/components/global-styles/background-panel.js +16 -0
  643. package/src/components/global-styles/block-preview-panel.js +6 -1
  644. package/src/components/global-styles/font-library-modal/context.js +76 -51
  645. package/src/components/global-styles/font-library-modal/font-collection.js +247 -223
  646. package/src/components/global-styles/font-library-modal/index.js +2 -2
  647. package/src/components/global-styles/font-library-modal/installed-fonts.js +156 -147
  648. package/src/components/global-styles/font-library-modal/style.scss +31 -13
  649. package/src/components/global-styles/highlighted-colors.js +1 -1
  650. package/src/components/global-styles/hooks.js +20 -3
  651. package/src/components/global-styles/root-menu.js +2 -2
  652. package/src/components/global-styles/screen-background.js +1 -1
  653. package/src/components/global-styles/screen-revisions/index.js +1 -1
  654. package/src/components/header-edit-mode/index.js +3 -5
  655. package/src/components/header-edit-mode/more-menu/index.js +6 -17
  656. package/src/components/header-edit-mode/style.scss +1 -1
  657. package/src/components/keyboard-shortcuts/edit-mode.js +0 -29
  658. package/src/components/keyboard-shortcuts/register.js +0 -20
  659. package/src/components/layout/animation.js +6 -3
  660. package/src/components/layout/index.js +12 -50
  661. package/src/components/layout/router.js +75 -12
  662. package/src/components/layout/style.scss +15 -37
  663. package/src/components/page/index.js +7 -2
  664. package/src/components/page-pages/index.js +33 -23
  665. package/src/components/page-pages/style.scss +29 -22
  666. package/src/components/page-patterns/dataviews-pattern-actions.js +5 -6
  667. package/src/components/page-patterns/header.js +4 -2
  668. package/src/components/page-patterns/index.js +168 -56
  669. package/src/components/page-patterns/search-items.js +3 -0
  670. package/src/components/page-patterns/style.scss +7 -6
  671. package/src/components/page-patterns/use-patterns.js +2 -6
  672. package/src/components/page-templates-template-parts/add-new-template-part.js +4 -2
  673. package/src/components/page-templates-template-parts/index.js +24 -39
  674. package/src/components/pattern-modal/duplicate.js +2 -1
  675. package/src/components/pattern-modal/rename.js +2 -1
  676. package/src/components/{template-actions/rename-menu-item.js → rename-post-menu-item/index.js} +20 -24
  677. package/src/components/resizable-frame/index.js +2 -6
  678. package/src/components/save-panel/index.js +2 -2
  679. package/src/components/sidebar/index.js +52 -100
  680. package/src/components/sidebar/style.scss +41 -6
  681. package/src/components/sidebar-dataviews/default-views.js +1 -1
  682. package/src/components/sidebar-dataviews/index.js +1 -1
  683. package/src/components/sidebar-edit-mode/default-sidebar.js +13 -6
  684. package/src/components/sidebar-edit-mode/global-styles-sidebar.js +7 -3
  685. package/src/components/sidebar-edit-mode/index.js +39 -75
  686. package/src/components/sidebar-edit-mode/page-panels/index.js +25 -2
  687. package/src/components/sidebar-edit-mode/page-panels/page-summary.js +20 -12
  688. package/src/components/sidebar-edit-mode/page-panels/style.scss +0 -6
  689. package/src/components/sidebar-edit-mode/settings-header/index.js +4 -5
  690. package/src/components/sidebar-edit-mode/style.scss +1 -1
  691. package/src/components/sidebar-edit-mode/template-panel/index.js +1 -1
  692. package/src/components/sidebar-navigation-item/index.js +29 -0
  693. package/src/components/sidebar-navigation-screen/index.js +29 -12
  694. package/src/components/sidebar-navigation-screen/style.scss +1 -21
  695. package/src/components/sidebar-navigation-screen-global-styles/index.js +2 -11
  696. package/src/components/sidebar-navigation-screen-main/index.js +11 -23
  697. package/src/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js +1 -1
  698. package/src/components/sidebar-navigation-screen-navigation-menu/index.js +7 -6
  699. package/src/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +1 -1
  700. package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +14 -14
  701. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +1 -1
  702. package/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +4 -5
  703. package/src/components/sidebar-navigation-screen-page/index.js +23 -13
  704. package/src/components/sidebar-navigation-screen-page/style.scss +8 -2
  705. package/src/components/sidebar-navigation-screen-pattern/index.js +9 -6
  706. package/src/components/sidebar-navigation-screen-patterns/index.js +70 -60
  707. package/src/components/sidebar-navigation-screen-patterns/style.scss +5 -0
  708. package/src/components/sidebar-navigation-screen-template/index.js +8 -12
  709. package/src/components/sidebar-navigation-screen-templates-browse/index.js +2 -7
  710. package/src/components/site-hub/index.js +80 -90
  711. package/src/components/site-hub/style.scss +14 -34
  712. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +50 -35
  713. package/src/components/template-actions/index.js +8 -11
  714. package/src/components/welcome-guide/style.scss +1 -1
  715. package/src/components/welcome-guide/styles.js +6 -5
  716. package/src/hooks/commands/use-edit-mode-commands.js +12 -33
  717. package/src/hooks/push-changes-to-global-styles/index.js +1 -40
  718. package/src/hooks/use-theme-style-variations/test/use-theme-style-variations-by-property.js +4 -0
  719. package/src/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +5 -1
  720. package/src/index.js +9 -10
  721. package/src/store/actions.js +25 -141
  722. package/src/store/private-actions.js +0 -133
  723. package/src/store/test/actions.js +7 -2
  724. package/src/style.scss +0 -2
  725. package/src/utils/constants.js +1 -0
  726. package/src/utils/set-nested-value.js +39 -0
  727. package/build/components/add-new-template/new-template.js +0 -298
  728. package/build/components/add-new-template/new-template.js.map +0 -1
  729. package/build/components/add-new-template/template-actions-loading-screen.js +0 -27
  730. package/build/components/add-new-template/template-actions-loading-screen.js.map +0 -1
  731. package/build/components/header-edit-mode/plugin-more-menu-item/index.js +0 -78
  732. package/build/components/header-edit-mode/plugin-more-menu-item/index.js.map +0 -1
  733. package/build/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js +0 -71
  734. package/build/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js.map +0 -1
  735. package/build/components/keyboard-shortcut-help-modal/config.js +0 -78
  736. package/build/components/keyboard-shortcut-help-modal/config.js.map +0 -1
  737. package/build/components/keyboard-shortcut-help-modal/dynamic-shortcut.js +0 -48
  738. package/build/components/keyboard-shortcut-help-modal/dynamic-shortcut.js.map +0 -1
  739. package/build/components/keyboard-shortcut-help-modal/index.js +0 -119
  740. package/build/components/keyboard-shortcut-help-modal/index.js.map +0 -1
  741. package/build/components/keyboard-shortcut-help-modal/shortcut.js +0 -54
  742. package/build/components/keyboard-shortcut-help-modal/shortcut.js.map +0 -1
  743. package/build/components/page-actions/index.js +0 -35
  744. package/build/components/page-actions/index.js.map +0 -1
  745. package/build/components/page-actions/trash-page-menu-item.js +0 -54
  746. package/build/components/page-actions/trash-page-menu-item.js.map +0 -1
  747. package/build/components/page-templates-template-parts/actions.js +0 -207
  748. package/build/components/page-templates-template-parts/actions.js.map +0 -1
  749. package/build/components/preferences-modal/index.js +0 -38
  750. package/build/components/preferences-modal/index.js.map +0 -1
  751. package/build/components/sidebar-edit-mode/constants.js +0 -9
  752. package/build/components/sidebar-edit-mode/constants.js.map +0 -1
  753. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js +0 -89
  754. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js.map +0 -1
  755. package/build/components/sidebar-navigation-screen-navigation-item/index.js +0 -54
  756. package/build/components/sidebar-navigation-screen-navigation-item/index.js.map +0 -1
  757. package/build/components/sync-state-with-url/use-sync-path-with-url.js +0 -132
  758. package/build/components/sync-state-with-url/use-sync-path-with-url.js.map +0 -1
  759. package/build/components/template-actions/rename-menu-item.js.map +0 -1
  760. package/build-module/components/add-new-template/new-template.js +0 -290
  761. package/build-module/components/add-new-template/new-template.js.map +0 -1
  762. package/build-module/components/add-new-template/template-actions-loading-screen.js +0 -20
  763. package/build-module/components/add-new-template/template-actions-loading-screen.js.map +0 -1
  764. package/build-module/components/header-edit-mode/plugin-more-menu-item/index.js +0 -73
  765. package/build-module/components/header-edit-mode/plugin-more-menu-item/index.js.map +0 -1
  766. package/build-module/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js +0 -65
  767. package/build-module/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js.map +0 -1
  768. package/build-module/components/keyboard-shortcut-help-modal/config.js +0 -71
  769. package/build-module/components/keyboard-shortcut-help-modal/config.js.map +0 -1
  770. package/build-module/components/keyboard-shortcut-help-modal/dynamic-shortcut.js +0 -40
  771. package/build-module/components/keyboard-shortcut-help-modal/dynamic-shortcut.js.map +0 -1
  772. package/build-module/components/keyboard-shortcut-help-modal/index.js +0 -110
  773. package/build-module/components/keyboard-shortcut-help-modal/index.js.map +0 -1
  774. package/build-module/components/keyboard-shortcut-help-modal/shortcut.js +0 -47
  775. package/build-module/components/keyboard-shortcut-help-modal/shortcut.js.map +0 -1
  776. package/build-module/components/page-actions/index.js +0 -27
  777. package/build-module/components/page-actions/index.js.map +0 -1
  778. package/build-module/components/page-actions/trash-page-menu-item.js +0 -47
  779. package/build-module/components/page-actions/trash-page-menu-item.js.map +0 -1
  780. package/build-module/components/page-templates-template-parts/actions.js +0 -199
  781. package/build-module/components/page-templates-template-parts/actions.js.map +0 -1
  782. package/build-module/components/preferences-modal/index.js +0 -30
  783. package/build-module/components/preferences-modal/index.js.map +0 -1
  784. package/build-module/components/sidebar-edit-mode/constants.js +0 -3
  785. package/build-module/components/sidebar-edit-mode/constants.js.map +0 -1
  786. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js +0 -83
  787. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js.map +0 -1
  788. package/build-module/components/sidebar-navigation-screen-navigation-item/index.js +0 -46
  789. package/build-module/components/sidebar-navigation-screen-navigation-item/index.js.map +0 -1
  790. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js +0 -124
  791. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js.map +0 -1
  792. package/build-module/components/template-actions/rename-menu-item.js.map +0 -1
  793. package/src/components/add-new-template/new-template.js +0 -429
  794. package/src/components/add-new-template/template-actions-loading-screen.js +0 -23
  795. package/src/components/header-edit-mode/plugin-more-menu-item/index.js +0 -73
  796. package/src/components/header-edit-mode/plugin-sidebar-more-menu-item/index.js +0 -64
  797. package/src/components/keyboard-shortcut-help-modal/config.js +0 -53
  798. package/src/components/keyboard-shortcut-help-modal/dynamic-shortcut.js +0 -41
  799. package/src/components/keyboard-shortcut-help-modal/index.js +0 -151
  800. package/src/components/keyboard-shortcut-help-modal/shortcut.js +0 -70
  801. package/src/components/keyboard-shortcut-help-modal/style.scss +0 -61
  802. package/src/components/page-actions/index.js +0 -30
  803. package/src/components/page-actions/trash-page-menu-item.js +0 -63
  804. package/src/components/page-templates-template-parts/actions.js +0 -277
  805. package/src/components/preferences-modal/index.js +0 -29
  806. package/src/components/sidebar-edit-mode/constants.js +0 -2
  807. package/src/components/sidebar-edit-mode/plugin-sidebar/index.js +0 -80
  808. package/src/components/sidebar-navigation-screen-navigation-item/index.js +0 -59
  809. package/src/components/sync-state-with-url/use-sync-path-with-url.js +0 -147
@@ -1 +1 @@
1
- {"version":3,"names":["paramCase","kebabCase","downloadZip","getQueryArgs","downloadBlob","__","_x","sprintf","Button","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalText","Text","store","coreStore","useDispatch","useState","noticesStore","decodeEntities","reusableBlocksStore","privateApis","routerPrivateApis","patternsPrivateApis","unlock","editSiteStore","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_DEFAULT_CATEGORY","CreateTemplatePartModalContents","useHistory","CreatePatternModalContents","useDuplicatePatternProps","getJsonFromItem","item","JSON","stringify","__file","type","title","name","content","patternPost","raw","syncStatus","wp_pattern_sync_status","exportJSONaction","id","label","supportsBulk","isEligible","user","callback","items","length","nameCount","filesToZip","map","lastModified","Date","input","blob","renameAction","isTemplatePart","isUserPattern","isCustomPattern","isCustom","hasThemeFile","templatePart","has_theme_file","RenderModal","closeModal","setTitle","editEntityRecord","saveEditedEntityRecord","createSuccessNotice","createErrorNotice","onRename","event","preventDefault","throwOnError","error","fallbackErrorMessage","errorMessage","message","code","createElement","onSubmit","spacing","__nextHasNoMarginBottom","__next40pxDefaultSize","value","onChange","required","justify","variant","onClick","canDeleteOrReset","deleteAction","hideModalHeader","onPerform","__experimentalDeleteReusableBlock","removeTemplates","deletePattern","promiseResult","Promise","allSettled","every","status","successMessage","reason","errorMessages","Set","failedPromises","filter","failedPromise","add","size","join","deleteItem","questionMessage","resetAction","removeTemplate","duplicatePatternAction","modalHeader","categoryId","window","location","href","isThemePattern","theme","history","onPatternSuccess","pattern","push","categoryType","postType","postId","duplicatedProps","onSuccess","onClose","confirmLabel","duplicateTemplatePartAction","onTemplatePartSuccess","blocks","defaultArea","area","defaultTitle","onCreate","onError"],"sources":["@wordpress/edit-site/src/components/page-patterns/dataviews-pattern-actions.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { paramCase as kebabCase } from 'change-case';\nimport { downloadZip } from 'client-zip';\n\n/**\n * WordPress dependencies\n */\nimport { getQueryArgs } from '@wordpress/url';\nimport { downloadBlob } from '@wordpress/blob';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tButton,\n\tTextControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalText as Text,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as patternsPrivateApis } from '@wordpress/patterns';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport {\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport { CreateTemplatePartModalContents } from '../create-template-part-modal';\n\nconst { useHistory } = unlock( routerPrivateApis );\nconst { CreatePatternModalContents, useDuplicatePatternProps } =\n\tunlock( patternsPrivateApis );\n\nfunction getJsonFromItem( item ) {\n\treturn JSON.stringify(\n\t\t{\n\t\t\t__file: item.type,\n\t\t\ttitle: item.title || item.name,\n\t\t\tcontent: item.patternPost.content.raw,\n\t\t\tsyncStatus: item.patternPost.wp_pattern_sync_status,\n\t\t},\n\t\tnull,\n\t\t2\n\t);\n}\n\nexport const exportJSONaction = {\n\tid: 'export-pattern',\n\tlabel: __( 'Export as JSON' ),\n\tsupportsBulk: true,\n\tisEligible: ( item ) => item.type === PATTERN_TYPES.user,\n\tcallback: async ( items ) => {\n\t\tif ( items.length === 1 ) {\n\t\t\treturn downloadBlob(\n\t\t\t\t`${ kebabCase( items[ 0 ].title || items[ 0 ].name ) }.json`,\n\t\t\t\tgetJsonFromItem( items[ 0 ] ),\n\t\t\t\t'application/json'\n\t\t\t);\n\t\t}\n\t\tconst nameCount = {};\n\t\tconst filesToZip = items.map( ( item ) => {\n\t\t\tconst name = kebabCase( item.title || item.name );\n\t\t\tnameCount[ name ] = ( nameCount[ name ] || 0 ) + 1;\n\t\t\treturn {\n\t\t\t\tname: `${\n\t\t\t\t\tname +\n\t\t\t\t\t( nameCount[ name ] > 1\n\t\t\t\t\t\t? '-' + ( nameCount[ name ] - 1 )\n\t\t\t\t\t\t: '' )\n\t\t\t\t}.json`,\n\t\t\t\tlastModified: new Date(),\n\t\t\t\tinput: getJsonFromItem( item ),\n\t\t\t};\n\t\t} );\n\t\treturn downloadBlob(\n\t\t\t__( 'patterns-export' ) + '.zip',\n\t\t\tawait downloadZip( filesToZip ).blob(),\n\t\t\t'application/zip'\n\t\t);\n\t},\n};\n\nexport const renameAction = {\n\tid: 'rename-pattern',\n\tlabel: __( 'Rename' ),\n\tisEligible: ( item ) => {\n\t\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\t\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\t\tconst isCustomPattern =\n\t\t\tisUserPattern || ( isTemplatePart && item.isCustom );\n\t\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\t\treturn isCustomPattern && ! hasThemeFile;\n\t},\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst [ title, setTitle ] = useState( () => item.title );\n\t\tconst { editEntityRecord, saveEditedEntityRecord } =\n\t\t\tuseDispatch( coreStore );\n\t\tconst { createSuccessNotice, createErrorNotice } =\n\t\t\tuseDispatch( noticesStore );\n\t\tasync function onRename( event ) {\n\t\t\tevent.preventDefault();\n\t\t\ttry {\n\t\t\t\tawait editEntityRecord( 'postType', item.type, item.id, {\n\t\t\t\t\ttitle,\n\t\t\t\t} );\n\t\t\t\t// Update state before saving rerenders the list.\n\t\t\t\tsetTitle( '' );\n\t\t\t\tcloseModal();\n\t\t\t\t// Persist edited entity.\n\t\t\t\tawait saveEditedEntityRecord( 'postType', item.type, item.id, {\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t} );\n\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\titem.type === TEMPLATE_PART_POST_TYPE\n\t\t\t\t\t\t? __( 'Template part renamed.' )\n\t\t\t\t\t\t: __( 'Pattern renamed.' ),\n\t\t\t\t\t{ type: 'snackbar' }\n\t\t\t\t);\n\t\t\t} catch ( error ) {\n\t\t\t\tconst fallbackErrorMessage =\n\t\t\t\t\titem.type === TEMPLATE_PART_POST_TYPE\n\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t'An error occurred while renaming the template part.'\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'An error occurred while renaming the pattern.' );\n\t\t\t\tconst errorMessage =\n\t\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t: fallbackErrorMessage;\n\t\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t\t}\n\t\t}\n\t\treturn (\n\t\t\t<form onSubmit={ onRename }>\n\t\t\t\t<VStack spacing=\"5\">\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tcloseModal();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</form>\n\t\t);\n\t},\n};\n\nconst canDeleteOrReset = ( item ) => {\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\treturn isUserPattern || ( isTemplatePart && item.isCustom );\n};\n\nexport const deleteAction = {\n\tid: 'delete-pattern',\n\tlabel: __( 'Delete' ),\n\tisEligible: ( item ) => {\n\t\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\t\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\t\treturn canDeleteOrReset( item ) && ! hasThemeFile;\n\t},\n\thideModalHeader: true,\n\tsupportsBulk: true,\n\tRenderModal: ( { items, closeModal, onPerform } ) => {\n\t\tconst { __experimentalDeleteReusableBlock } =\n\t\t\tuseDispatch( reusableBlocksStore );\n\t\tconst { createErrorNotice, createSuccessNotice } =\n\t\t\tuseDispatch( noticesStore );\n\t\tconst { removeTemplates } = unlock( useDispatch( editSiteStore ) );\n\n\t\tconst deletePattern = async () => {\n\t\t\tconst promiseResult = await Promise.allSettled(\n\t\t\t\titems.map( ( item ) => {\n\t\t\t\t\treturn __experimentalDeleteReusableBlock( item.id );\n\t\t\t\t} )\n\t\t\t);\n\t\t\t// If all the promises were fulfilled with success.\n\t\t\tif (\n\t\t\t\tpromiseResult.every( ( { status } ) => status === 'fulfilled' )\n\t\t\t) {\n\t\t\t\tlet successMessage;\n\t\t\t\tif ( promiseResult.length === 1 ) {\n\t\t\t\t\tsuccessMessage = sprintf(\n\t\t\t\t\t\t/* translators: The posts's title. */\n\t\t\t\t\t\t__( '\"%s\" deleted.' ),\n\t\t\t\t\t\titems[ 0 ].title\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\tsuccessMessage = __( 'The patterns were deleted.' );\n\t\t\t\t}\n\t\t\t\tcreateSuccessNotice( successMessage, {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tid: 'edit-site-page-trashed',\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\t// If there was at lease one failure.\n\t\t\t\tlet errorMessage;\n\t\t\t\t// If we were trying to delete a single pattern.\n\t\t\t\tif ( promiseResult.length === 1 ) {\n\t\t\t\t\tif ( promiseResult[ 0 ].reason?.message ) {\n\t\t\t\t\t\terrorMessage = promiseResult[ 0 ].reason.message;\n\t\t\t\t\t} else {\n\t\t\t\t\t\terrorMessage = __(\n\t\t\t\t\t\t\t'An error occurred while deleting the pattern.'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\t// If we were trying to delete multiple patterns.\n\t\t\t\t} else {\n\t\t\t\t\tconst errorMessages = new Set();\n\t\t\t\t\tconst failedPromises = promiseResult.filter(\n\t\t\t\t\t\t( { status } ) => status === 'rejected'\n\t\t\t\t\t);\n\t\t\t\t\tfor ( const failedPromise of failedPromises ) {\n\t\t\t\t\t\tif ( failedPromise.reason?.message ) {\n\t\t\t\t\t\t\terrorMessages.add( failedPromise.reason.message );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ( errorMessages.size === 0 ) {\n\t\t\t\t\t\terrorMessage = __(\n\t\t\t\t\t\t\t'An error occurred while deleting the patterns.'\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( errorMessages.size === 1 ) {\n\t\t\t\t\t\terrorMessage = sprintf(\n\t\t\t\t\t\t\t/* translators: %s: an error message */\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'An error occurred while deleting the patterns: %s'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t[ ...errorMessages ][ 0 ]\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\terrorMessage = sprintf(\n\t\t\t\t\t\t\t/* translators: %s: a list of comma separated error messages */\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'Some errors occurred while deleting the patterns: %s'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t[ ...errorMessages ].join( ',' )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tconst deleteItem = () => {\n\t\t\tif ( items[ 0 ].type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\tremoveTemplates( items );\n\t\t\t} else {\n\t\t\t\tdeletePattern();\n\t\t\t}\n\t\t\tif ( onPerform ) {\n\t\t\t\tonPerform();\n\t\t\t}\n\t\t\tcloseModal();\n\t\t};\n\t\tlet questionMessage;\n\t\tif ( items.length === 1 ) {\n\t\t\tquestionMessage = sprintf(\n\t\t\t\t// translators: %s: The page's title.\n\t\t\t\t__( 'Are you sure you want to delete \"%s\"?' ),\n\t\t\t\tdecodeEntities( items[ 0 ].title || items[ 0 ].name )\n\t\t\t);\n\t\t} else if (\n\t\t\titems.length > 1 &&\n\t\t\titems[ 0 ].type === TEMPLATE_PART_POST_TYPE\n\t\t) {\n\t\t\tquestionMessage = sprintf(\n\t\t\t\t// translators: %d: The number of template parts (2 or more).\n\t\t\t\t__( 'Are you sure you want to delete %d template parts?' ),\n\t\t\t\titems.length\n\t\t\t);\n\t\t} else {\n\t\t\tquestionMessage = sprintf(\n\t\t\t\t// translators: %d: The number of patterns (2 or more).\n\t\t\t\t__( 'Are you sure you want to delete %d patterns?' ),\n\t\t\t\titems.length\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<VStack spacing=\"5\">\n\t\t\t\t<Text>{ questionMessage }</Text>\n\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ closeModal }>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button variant=\"primary\" onClick={ deleteItem }>\n\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t);\n\t},\n};\n\nexport const resetAction = {\n\tid: 'reset-action',\n\tlabel: __( 'Clear customizations' ),\n\tisEligible: ( item ) => {\n\t\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\t\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\t\treturn canDeleteOrReset( item ) && hasThemeFile;\n\t},\n\thideModalHeader: true,\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst { removeTemplate } = useDispatch( editSiteStore );\n\t\treturn (\n\t\t\t<VStack spacing=\"5\">\n\t\t\t\t<Text>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Are you sure you want to clear these customizations?'\n\t\t\t\t\t) }\n\t\t\t\t</Text>\n\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ closeModal }>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ () => removeTemplate( item ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Clear' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t);\n\t},\n};\n\nexport const duplicatePatternAction = {\n\tid: 'duplicate-pattern',\n\tlabel: _x( 'Duplicate', 'action label' ),\n\tisEligible: ( item ) => item.type !== TEMPLATE_PART_POST_TYPE,\n\tmodalHeader: _x( 'Duplicate pattern', 'action label' ),\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst { categoryId = PATTERN_DEFAULT_CATEGORY } = getQueryArgs(\n\t\t\twindow.location.href\n\t\t);\n\t\tconst isThemePattern = item.type === PATTERN_TYPES.theme;\n\t\tconst history = useHistory();\n\t\tfunction onPatternSuccess( { pattern } ) {\n\t\t\thistory.push( {\n\t\t\t\tcategoryType: PATTERN_TYPES.theme,\n\t\t\t\tcategoryId,\n\t\t\t\tpostType: PATTERN_TYPES.user,\n\t\t\t\tpostId: pattern.id,\n\t\t\t} );\n\t\t\tcloseModal();\n\t\t}\n\t\tconst duplicatedProps = useDuplicatePatternProps( {\n\t\t\tpattern: isThemePattern ? item : item.patternPost,\n\t\t\tonSuccess: onPatternSuccess,\n\t\t} );\n\t\treturn (\n\t\t\t<CreatePatternModalContents\n\t\t\t\tonClose={ closeModal }\n\t\t\t\tconfirmLabel={ _x( 'Duplicate', 'action label' ) }\n\t\t\t\t{ ...duplicatedProps }\n\t\t\t/>\n\t\t);\n\t},\n};\n\nexport const duplicateTemplatePartAction = {\n\tid: 'duplicate-template-part',\n\tlabel: _x( 'Duplicate', 'action label' ),\n\tisEligible: ( item ) => item.type === TEMPLATE_PART_POST_TYPE,\n\tmodalHeader: _x( 'Duplicate template part', 'action label' ),\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\t\tconst { categoryId = PATTERN_DEFAULT_CATEGORY } = getQueryArgs(\n\t\t\twindow.location.href\n\t\t);\n\t\tconst history = useHistory();\n\t\tasync function onTemplatePartSuccess( templatePart ) {\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: The new template part's title e.g. 'Call to action (copy)'.\n\t\t\t\t\t__( '\"%s\" duplicated.' ),\n\t\t\t\t\titem.title\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar', id: 'edit-site-patterns-success' }\n\t\t\t);\n\t\t\thistory.push( {\n\t\t\t\tpostType: TEMPLATE_PART_POST_TYPE,\n\t\t\t\tpostId: templatePart?.id,\n\t\t\t\tcategoryType: TEMPLATE_PART_POST_TYPE,\n\t\t\t\tcategoryId,\n\t\t\t} );\n\t\t\tcloseModal();\n\t\t}\n\t\treturn (\n\t\t\t<CreateTemplatePartModalContents\n\t\t\t\tblocks={ item.blocks }\n\t\t\t\tdefaultArea={ item.templatePart.area }\n\t\t\t\tdefaultTitle={ sprintf(\n\t\t\t\t\t/* translators: %s: Existing template part title */\n\t\t\t\t\t__( '%s (Copy)' ),\n\t\t\t\t\titem.title\n\t\t\t\t) }\n\t\t\t\tonCreate={ onTemplatePartSuccess }\n\t\t\t\tonError={ closeModal }\n\t\t\t\tconfirmLabel={ _x( 'Duplicate', 'action label' ) }\n\t\t\t/>\n\t\t);\n\t},\n};\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,IAAIC,SAAS,QAAQ,aAAa;AACpD,SAASC,WAAW,QAAQ,YAAY;;AAExC;AACA;AACA;AACA,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,EAAE,EAAEC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AACjD,SACCC,MAAM,EACNC,WAAW,EACXC,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,EAC9BC,kBAAkB,IAAIC,IAAI,QACpB,uBAAuB;AAC9B,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASH,KAAK,IAAII,YAAY,QAAQ,oBAAoB;AAC1D,SAASC,cAAc,QAAQ,0BAA0B;AACzD,SAASL,KAAK,IAAIM,mBAAmB,QAAQ,4BAA4B;AACzE,SAASC,WAAW,IAAIC,iBAAiB,QAAQ,mBAAmB;AACpE,SAASD,WAAW,IAAIE,mBAAmB,QAAQ,qBAAqB;;AAExE;AACA;AACA;AACA,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASV,KAAK,IAAIW,aAAa,QAAQ,aAAa;AACpD,SACCC,aAAa,EACbC,uBAAuB,EACvBC,wBAAwB,QAClB,uBAAuB;AAC9B,SAASC,+BAA+B,QAAQ,+BAA+B;AAE/E,MAAM;EAAEC;AAAW,CAAC,GAAGN,MAAM,CAAEF,iBAAkB,CAAC;AAClD,MAAM;EAAES,0BAA0B;EAAEC;AAAyB,CAAC,GAC7DR,MAAM,CAAED,mBAAoB,CAAC;AAE9B,SAASU,eAAeA,CAAEC,IAAI,EAAG;EAChC,OAAOC,IAAI,CAACC,SAAS,CACpB;IACCC,MAAM,EAAEH,IAAI,CAACI,IAAI;IACjBC,KAAK,EAAEL,IAAI,CAACK,KAAK,IAAIL,IAAI,CAACM,IAAI;IAC9BC,OAAO,EAAEP,IAAI,CAACQ,WAAW,CAACD,OAAO,CAACE,GAAG;IACrCC,UAAU,EAAEV,IAAI,CAACQ,WAAW,CAACG;EAC9B,CAAC,EACD,IAAI,EACJ,CACD,CAAC;AACF;AAEA,OAAO,MAAMC,gBAAgB,GAAG;EAC/BC,EAAE,EAAE,gBAAgB;EACpBC,KAAK,EAAE7C,EAAE,CAAE,gBAAiB,CAAC;EAC7B8C,YAAY,EAAE,IAAI;EAClBC,UAAU,EAAIhB,IAAI,IAAMA,IAAI,CAACI,IAAI,KAAKZ,aAAa,CAACyB,IAAI;EACxDC,QAAQ,EAAE,MAAQC,KAAK,IAAM;IAC5B,IAAKA,KAAK,CAACC,MAAM,KAAK,CAAC,EAAG;MACzB,OAAOpD,YAAY,CACjB,GAAGH,SAAS,CAAEsD,KAAK,CAAE,CAAC,CAAE,CAACd,KAAK,IAAIc,KAAK,CAAE,CAAC,CAAE,CAACb,IAAK,CAAG,OAAM,EAC5DP,eAAe,CAAEoB,KAAK,CAAE,CAAC,CAAG,CAAC,EAC7B,kBACD,CAAC;IACF;IACA,MAAME,SAAS,GAAG,CAAC,CAAC;IACpB,MAAMC,UAAU,GAAGH,KAAK,CAACI,GAAG,CAAIvB,IAAI,IAAM;MACzC,MAAMM,IAAI,GAAGzC,SAAS,CAAEmC,IAAI,CAACK,KAAK,IAAIL,IAAI,CAACM,IAAK,CAAC;MACjDe,SAAS,CAAEf,IAAI,CAAE,GAAG,CAAEe,SAAS,CAAEf,IAAI,CAAE,IAAI,CAAC,IAAK,CAAC;MAClD,OAAO;QACNA,IAAI,EAAG,GACNA,IAAI,IACFe,SAAS,CAAEf,IAAI,CAAE,GAAG,CAAC,GACpB,GAAG,IAAKe,SAAS,CAAEf,IAAI,CAAE,GAAG,CAAC,CAAE,GAC/B,EAAE,CACL,OAAM;QACPkB,YAAY,EAAE,IAAIC,IAAI,CAAC,CAAC;QACxBC,KAAK,EAAE3B,eAAe,CAAEC,IAAK;MAC9B,CAAC;IACF,CAAE,CAAC;IACH,OAAOhC,YAAY,CAClBC,EAAE,CAAE,iBAAkB,CAAC,GAAG,MAAM,EAChC,MAAMH,WAAW,CAAEwD,UAAW,CAAC,CAACK,IAAI,CAAC,CAAC,EACtC,iBACD,CAAC;EACF;AACD,CAAC;AAED,OAAO,MAAMC,YAAY,GAAG;EAC3Bf,EAAE,EAAE,gBAAgB;EACpBC,KAAK,EAAE7C,EAAE,CAAE,QAAS,CAAC;EACrB+C,UAAU,EAAIhB,IAAI,IAAM;IACvB,MAAM6B,cAAc,GAAG7B,IAAI,CAACI,IAAI,KAAKX,uBAAuB;IAC5D,MAAMqC,aAAa,GAAG9B,IAAI,CAACI,IAAI,KAAKZ,aAAa,CAACyB,IAAI;IACtD,MAAMc,eAAe,GACpBD,aAAa,IAAMD,cAAc,IAAI7B,IAAI,CAACgC,QAAU;IACrD,MAAMC,YAAY,GAAGJ,cAAc,IAAI7B,IAAI,CAACkC,YAAY,CAACC,cAAc;IACvE,OAAOJ,eAAe,IAAI,CAAEE,YAAY;EACzC,CAAC;EACDG,WAAW,EAAEA,CAAE;IAAEjB,KAAK;IAAEkB;EAAW,CAAC,KAAM;IACzC,MAAM,CAAErC,IAAI,CAAE,GAAGmB,KAAK;IACtB,MAAM,CAAEd,KAAK,EAAEiC,QAAQ,CAAE,GAAGvD,QAAQ,CAAE,MAAMiB,IAAI,CAACK,KAAM,CAAC;IACxD,MAAM;MAAEkC,gBAAgB;MAAEC;IAAuB,CAAC,GACjD1D,WAAW,CAAED,SAAU,CAAC;IACzB,MAAM;MAAE4D,mBAAmB;MAAEC;IAAkB,CAAC,GAC/C5D,WAAW,CAAEE,YAAa,CAAC;IAC5B,eAAe2D,QAAQA,CAAEC,KAAK,EAAG;MAChCA,KAAK,CAACC,cAAc,CAAC,CAAC;MACtB,IAAI;QACH,MAAMN,gBAAgB,CAAE,UAAU,EAAEvC,IAAI,CAACI,IAAI,EAAEJ,IAAI,CAACa,EAAE,EAAE;UACvDR;QACD,CAAE,CAAC;QACH;QACAiC,QAAQ,CAAE,EAAG,CAAC;QACdD,UAAU,CAAC,CAAC;QACZ;QACA,MAAMG,sBAAsB,CAAE,UAAU,EAAExC,IAAI,CAACI,IAAI,EAAEJ,IAAI,CAACa,EAAE,EAAE;UAC7DiC,YAAY,EAAE;QACf,CAAE,CAAC;QACHL,mBAAmB,CAClBzC,IAAI,CAACI,IAAI,KAAKX,uBAAuB,GAClCxB,EAAE,CAAE,wBAAyB,CAAC,GAC9BA,EAAE,CAAE,kBAAmB,CAAC,EAC3B;UAAEmC,IAAI,EAAE;QAAW,CACpB,CAAC;MACF,CAAC,CAAC,OAAQ2C,KAAK,EAAG;QACjB,MAAMC,oBAAoB,GACzBhD,IAAI,CAACI,IAAI,KAAKX,uBAAuB,GAClCxB,EAAE,CACF,qDACA,CAAC,GACDA,EAAE,CAAE,+CAAgD,CAAC;QACzD,MAAMgF,YAAY,GACjBF,KAAK,CAACG,OAAO,IAAIH,KAAK,CAACI,IAAI,KAAK,eAAe,GAC5CJ,KAAK,CAACG,OAAO,GACbF,oBAAoB;QACxBN,iBAAiB,CAAEO,YAAY,EAAE;UAAE7C,IAAI,EAAE;QAAW,CAAE,CAAC;MACxD;IACD;IACA,OACCgD,aAAA;MAAMC,QAAQ,EAAGV;IAAU,GAC1BS,aAAA,CAAC3E,MAAM;MAAC6E,OAAO,EAAC;IAAG,GAClBF,aAAA,CAAC/E,WAAW;MACXkF,uBAAuB;MACvBC,qBAAqB;MACrB1C,KAAK,EAAG7C,EAAE,CAAE,MAAO,CAAG;MACtBwF,KAAK,EAAGpD,KAAO;MACfqD,QAAQ,EAAGpB,QAAU;MACrBqB,QAAQ;IAAA,CACR,CAAC,EACFP,aAAA,CAAC7E,MAAM;MAACqF,OAAO,EAAC;IAAO,GACtBR,aAAA,CAAChF,MAAM;MACNoF,qBAAqB;MACrBK,OAAO,EAAC,UAAU;MAClBC,OAAO,EAAGA,CAAA,KAAM;QACfzB,UAAU,CAAC,CAAC;MACb;IAAG,GAEDpE,EAAE,CAAE,QAAS,CACR,CAAC,EACTmF,aAAA,CAAChF,MAAM;MACNoF,qBAAqB;MACrBK,OAAO,EAAC,SAAS;MACjBzD,IAAI,EAAC;IAAQ,GAEXnC,EAAE,CAAE,MAAO,CACN,CACD,CACD,CACH,CAAC;EAET;AACD,CAAC;AAED,MAAM8F,gBAAgB,GAAK/D,IAAI,IAAM;EACpC,MAAM6B,cAAc,GAAG7B,IAAI,CAACI,IAAI,KAAKX,uBAAuB;EAC5D,MAAMqC,aAAa,GAAG9B,IAAI,CAACI,IAAI,KAAKZ,aAAa,CAACyB,IAAI;EACtD,OAAOa,aAAa,IAAMD,cAAc,IAAI7B,IAAI,CAACgC,QAAU;AAC5D,CAAC;AAED,OAAO,MAAMgC,YAAY,GAAG;EAC3BnD,EAAE,EAAE,gBAAgB;EACpBC,KAAK,EAAE7C,EAAE,CAAE,QAAS,CAAC;EACrB+C,UAAU,EAAIhB,IAAI,IAAM;IACvB,MAAM6B,cAAc,GAAG7B,IAAI,CAACI,IAAI,KAAKX,uBAAuB;IAC5D,MAAMwC,YAAY,GAAGJ,cAAc,IAAI7B,IAAI,CAACkC,YAAY,CAACC,cAAc;IACvE,OAAO4B,gBAAgB,CAAE/D,IAAK,CAAC,IAAI,CAAEiC,YAAY;EAClD,CAAC;EACDgC,eAAe,EAAE,IAAI;EACrBlD,YAAY,EAAE,IAAI;EAClBqB,WAAW,EAAEA,CAAE;IAAEjB,KAAK;IAAEkB,UAAU;IAAE6B;EAAU,CAAC,KAAM;IACpD,MAAM;MAAEC;IAAkC,CAAC,GAC1CrF,WAAW,CAAEI,mBAAoB,CAAC;IACnC,MAAM;MAAEwD,iBAAiB;MAAED;IAAoB,CAAC,GAC/C3D,WAAW,CAAEE,YAAa,CAAC;IAC5B,MAAM;MAAEoF;IAAgB,CAAC,GAAG9E,MAAM,CAAER,WAAW,CAAES,aAAc,CAAE,CAAC;IAElE,MAAM8E,aAAa,GAAG,MAAAA,CAAA,KAAY;MACjC,MAAMC,aAAa,GAAG,MAAMC,OAAO,CAACC,UAAU,CAC7CrD,KAAK,CAACI,GAAG,CAAIvB,IAAI,IAAM;QACtB,OAAOmE,iCAAiC,CAAEnE,IAAI,CAACa,EAAG,CAAC;MACpD,CAAE,CACH,CAAC;MACD;MACA,IACCyD,aAAa,CAACG,KAAK,CAAE,CAAE;QAAEC;MAAO,CAAC,KAAMA,MAAM,KAAK,WAAY,CAAC,EAC9D;QACD,IAAIC,cAAc;QAClB,IAAKL,aAAa,CAAClD,MAAM,KAAK,CAAC,EAAG;UACjCuD,cAAc,GAAGxG,OAAO,EACvB;UACAF,EAAE,CAAE,eAAgB,CAAC,EACrBkD,KAAK,CAAE,CAAC,CAAE,CAACd,KACZ,CAAC;QACF,CAAC,MAAM;UACNsE,cAAc,GAAG1G,EAAE,CAAE,4BAA6B,CAAC;QACpD;QACAwE,mBAAmB,CAAEkC,cAAc,EAAE;UACpCvE,IAAI,EAAE,UAAU;UAChBS,EAAE,EAAE;QACL,CAAE,CAAC;MACJ,CAAC,MAAM;QACN;QACA,IAAIoC,YAAY;QAChB;QACA,IAAKqB,aAAa,CAAClD,MAAM,KAAK,CAAC,EAAG;UACjC,IAAKkD,aAAa,CAAE,CAAC,CAAE,CAACM,MAAM,EAAE1B,OAAO,EAAG;YACzCD,YAAY,GAAGqB,aAAa,CAAE,CAAC,CAAE,CAACM,MAAM,CAAC1B,OAAO;UACjD,CAAC,MAAM;YACND,YAAY,GAAGhF,EAAE,CAChB,+CACD,CAAC;UACF;UACA;QACD,CAAC,MAAM;UACN,MAAM4G,aAAa,GAAG,IAAIC,GAAG,CAAC,CAAC;UAC/B,MAAMC,cAAc,GAAGT,aAAa,CAACU,MAAM,CAC1C,CAAE;YAAEN;UAAO,CAAC,KAAMA,MAAM,KAAK,UAC9B,CAAC;UACD,KAAM,MAAMO,aAAa,IAAIF,cAAc,EAAG;YAC7C,IAAKE,aAAa,CAACL,MAAM,EAAE1B,OAAO,EAAG;cACpC2B,aAAa,CAACK,GAAG,CAAED,aAAa,CAACL,MAAM,CAAC1B,OAAQ,CAAC;YAClD;UACD;UACA,IAAK2B,aAAa,CAACM,IAAI,KAAK,CAAC,EAAG;YAC/BlC,YAAY,GAAGhF,EAAE,CAChB,gDACD,CAAC;UACF,CAAC,MAAM,IAAK4G,aAAa,CAACM,IAAI,KAAK,CAAC,EAAG;YACtClC,YAAY,GAAG9E,OAAO,EACrB;YACAF,EAAE,CACD,mDACD,CAAC,EACD,CAAE,GAAG4G,aAAa,CAAE,CAAE,CAAC,CACxB,CAAC;UACF,CAAC,MAAM;YACN5B,YAAY,GAAG9E,OAAO,EACrB;YACAF,EAAE,CACD,sDACD,CAAC,EACD,CAAE,GAAG4G,aAAa,CAAE,CAACO,IAAI,CAAE,GAAI,CAChC,CAAC;UACF;UACA1C,iBAAiB,CAAEO,YAAY,EAAE;YAChC7C,IAAI,EAAE;UACP,CAAE,CAAC;QACJ;MACD;IACD,CAAC;IACD,MAAMiF,UAAU,GAAGA,CAAA,KAAM;MACxB,IAAKlE,KAAK,CAAE,CAAC,CAAE,CAACf,IAAI,KAAKX,uBAAuB,EAAG;QAClD2E,eAAe,CAAEjD,KAAM,CAAC;MACzB,CAAC,MAAM;QACNkD,aAAa,CAAC,CAAC;MAChB;MACA,IAAKH,SAAS,EAAG;QAChBA,SAAS,CAAC,CAAC;MACZ;MACA7B,UAAU,CAAC,CAAC;IACb,CAAC;IACD,IAAIiD,eAAe;IACnB,IAAKnE,KAAK,CAACC,MAAM,KAAK,CAAC,EAAG;MACzBkE,eAAe,GAAGnH,OAAO;MACxB;MACAF,EAAE,CAAE,uCAAwC,CAAC,EAC7CgB,cAAc,CAAEkC,KAAK,CAAE,CAAC,CAAE,CAACd,KAAK,IAAIc,KAAK,CAAE,CAAC,CAAE,CAACb,IAAK,CACrD,CAAC;IACF,CAAC,MAAM,IACNa,KAAK,CAACC,MAAM,GAAG,CAAC,IAChBD,KAAK,CAAE,CAAC,CAAE,CAACf,IAAI,KAAKX,uBAAuB,EAC1C;MACD6F,eAAe,GAAGnH,OAAO;MACxB;MACAF,EAAE,CAAE,oDAAqD,CAAC,EAC1DkD,KAAK,CAACC,MACP,CAAC;IACF,CAAC,MAAM;MACNkE,eAAe,GAAGnH,OAAO;MACxB;MACAF,EAAE,CAAE,8CAA+C,CAAC,EACpDkD,KAAK,CAACC,MACP,CAAC;IACF;IACA,OACCgC,aAAA,CAAC3E,MAAM;MAAC6E,OAAO,EAAC;IAAG,GAClBF,aAAA,CAACzE,IAAI,QAAG2G,eAAuB,CAAC,EAChClC,aAAA,CAAC7E,MAAM;MAACqF,OAAO,EAAC;IAAO,GACtBR,aAAA,CAAChF,MAAM;MAACyF,OAAO,EAAC,UAAU;MAACC,OAAO,EAAGzB;IAAY,GAC9CpE,EAAE,CAAE,QAAS,CACR,CAAC,EACTmF,aAAA,CAAChF,MAAM;MAACyF,OAAO,EAAC,SAAS;MAACC,OAAO,EAAGuB;IAAY,GAC7CpH,EAAE,CAAE,QAAS,CACR,CACD,CACD,CAAC;EAEX;AACD,CAAC;AAED,OAAO,MAAMsH,WAAW,GAAG;EAC1B1E,EAAE,EAAE,cAAc;EAClBC,KAAK,EAAE7C,EAAE,CAAE,sBAAuB,CAAC;EACnC+C,UAAU,EAAIhB,IAAI,IAAM;IACvB,MAAM6B,cAAc,GAAG7B,IAAI,CAACI,IAAI,KAAKX,uBAAuB;IAC5D,MAAMwC,YAAY,GAAGJ,cAAc,IAAI7B,IAAI,CAACkC,YAAY,CAACC,cAAc;IACvE,OAAO4B,gBAAgB,CAAE/D,IAAK,CAAC,IAAIiC,YAAY;EAChD,CAAC;EACDgC,eAAe,EAAE,IAAI;EACrB7B,WAAW,EAAEA,CAAE;IAAEjB,KAAK;IAAEkB;EAAW,CAAC,KAAM;IACzC,MAAM,CAAErC,IAAI,CAAE,GAAGmB,KAAK;IACtB,MAAM;MAAEqE;IAAe,CAAC,GAAG1G,WAAW,CAAES,aAAc,CAAC;IACvD,OACC6D,aAAA,CAAC3E,MAAM;MAAC6E,OAAO,EAAC;IAAG,GAClBF,aAAA,CAACzE,IAAI,QACFV,EAAE,CACH,sDACD,CACK,CAAC,EACPmF,aAAA,CAAC7E,MAAM;MAACqF,OAAO,EAAC;IAAO,GACtBR,aAAA,CAAChF,MAAM;MAACyF,OAAO,EAAC,UAAU;MAACC,OAAO,EAAGzB;IAAY,GAC9CpE,EAAE,CAAE,QAAS,CACR,CAAC,EACTmF,aAAA,CAAChF,MAAM;MACNyF,OAAO,EAAC,SAAS;MACjBC,OAAO,EAAGA,CAAA,KAAM0B,cAAc,CAAExF,IAAK;IAAG,GAEtC/B,EAAE,CAAE,OAAQ,CACP,CACD,CACD,CAAC;EAEX;AACD,CAAC;AAED,OAAO,MAAMwH,sBAAsB,GAAG;EACrC5E,EAAE,EAAE,mBAAmB;EACvBC,KAAK,EAAE5C,EAAE,CAAE,WAAW,EAAE,cAAe,CAAC;EACxC8C,UAAU,EAAIhB,IAAI,IAAMA,IAAI,CAACI,IAAI,KAAKX,uBAAuB;EAC7DiG,WAAW,EAAExH,EAAE,CAAE,mBAAmB,EAAE,cAAe,CAAC;EACtDkE,WAAW,EAAEA,CAAE;IAAEjB,KAAK;IAAEkB;EAAW,CAAC,KAAM;IACzC,MAAM,CAAErC,IAAI,CAAE,GAAGmB,KAAK;IACtB,MAAM;MAAEwE,UAAU,GAAGjG;IAAyB,CAAC,GAAG3B,YAAY,CAC7D6H,MAAM,CAACC,QAAQ,CAACC,IACjB,CAAC;IACD,MAAMC,cAAc,GAAG/F,IAAI,CAACI,IAAI,KAAKZ,aAAa,CAACwG,KAAK;IACxD,MAAMC,OAAO,GAAGrG,UAAU,CAAC,CAAC;IAC5B,SAASsG,gBAAgBA,CAAE;MAAEC;IAAQ,CAAC,EAAG;MACxCF,OAAO,CAACG,IAAI,CAAE;QACbC,YAAY,EAAE7G,aAAa,CAACwG,KAAK;QACjCL,UAAU;QACVW,QAAQ,EAAE9G,aAAa,CAACyB,IAAI;QAC5BsF,MAAM,EAAEJ,OAAO,CAACtF;MACjB,CAAE,CAAC;MACHwB,UAAU,CAAC,CAAC;IACb;IACA,MAAMmE,eAAe,GAAG1G,wBAAwB,CAAE;MACjDqG,OAAO,EAAEJ,cAAc,GAAG/F,IAAI,GAAGA,IAAI,CAACQ,WAAW;MACjDiG,SAAS,EAAEP;IACZ,CAAE,CAAC;IACH,OACC9C,aAAA,CAACvD,0BAA0B;MAC1B6G,OAAO,EAAGrE,UAAY;MACtBsE,YAAY,EAAGzI,EAAE,CAAE,WAAW,EAAE,cAAe,CAAG;MAAA,GAC7CsI;IAAe,CACpB,CAAC;EAEJ;AACD,CAAC;AAED,OAAO,MAAMI,2BAA2B,GAAG;EAC1C/F,EAAE,EAAE,yBAAyB;EAC7BC,KAAK,EAAE5C,EAAE,CAAE,WAAW,EAAE,cAAe,CAAC;EACxC8C,UAAU,EAAIhB,IAAI,IAAMA,IAAI,CAACI,IAAI,KAAKX,uBAAuB;EAC7DiG,WAAW,EAAExH,EAAE,CAAE,yBAAyB,EAAE,cAAe,CAAC;EAC5DkE,WAAW,EAAEA,CAAE;IAAEjB,KAAK;IAAEkB;EAAW,CAAC,KAAM;IACzC,MAAM,CAAErC,IAAI,CAAE,GAAGmB,KAAK;IACtB,MAAM;MAAEsB;IAAoB,CAAC,GAAG3D,WAAW,CAAEE,YAAa,CAAC;IAC3D,MAAM;MAAE2G,UAAU,GAAGjG;IAAyB,CAAC,GAAG3B,YAAY,CAC7D6H,MAAM,CAACC,QAAQ,CAACC,IACjB,CAAC;IACD,MAAMG,OAAO,GAAGrG,UAAU,CAAC,CAAC;IAC5B,eAAeiH,qBAAqBA,CAAE3E,YAAY,EAAG;MACpDO,mBAAmB,CAClBtE,OAAO;MACN;MACAF,EAAE,CAAE,kBAAmB,CAAC,EACxB+B,IAAI,CAACK,KACN,CAAC,EACD;QAAED,IAAI,EAAE,UAAU;QAAES,EAAE,EAAE;MAA6B,CACtD,CAAC;MACDoF,OAAO,CAACG,IAAI,CAAE;QACbE,QAAQ,EAAE7G,uBAAuB;QACjC8G,MAAM,EAAErE,YAAY,EAAErB,EAAE;QACxBwF,YAAY,EAAE5G,uBAAuB;QACrCkG;MACD,CAAE,CAAC;MACHtD,UAAU,CAAC,CAAC;IACb;IACA,OACCe,aAAA,CAACzD,+BAA+B;MAC/BmH,MAAM,EAAG9G,IAAI,CAAC8G,MAAQ;MACtBC,WAAW,EAAG/G,IAAI,CAACkC,YAAY,CAAC8E,IAAM;MACtCC,YAAY,EAAG9I,OAAO,EACrB;MACAF,EAAE,CAAE,WAAY,CAAC,EACjB+B,IAAI,CAACK,KACN,CAAG;MACH6G,QAAQ,EAAGL,qBAAuB;MAClCM,OAAO,EAAG9E,UAAY;MACtBsE,YAAY,EAAGzI,EAAE,CAAE,WAAW,EAAE,cAAe;IAAG,CAClD,CAAC;EAEJ;AACD,CAAC"}
1
+ {"version":3,"names":["paramCase","kebabCase","downloadZip","getQueryArgs","downloadBlob","__","_x","sprintf","Button","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalText","Text","store","coreStore","useDispatch","useState","noticesStore","decodeEntities","reusableBlocksStore","editorStore","privateApis","routerPrivateApis","patternsPrivateApis","unlock","editSiteStore","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_DEFAULT_CATEGORY","CreateTemplatePartModalContents","useHistory","CreatePatternModalContents","useDuplicatePatternProps","getJsonFromItem","item","JSON","stringify","__file","type","title","name","content","patternPost","raw","syncStatus","wp_pattern_sync_status","exportJSONaction","id","label","supportsBulk","isEligible","user","callback","items","length","nameCount","filesToZip","map","lastModified","Date","input","blob","renameAction","isTemplatePart","isUserPattern","isCustomPattern","isCustom","hasThemeFile","templatePart","has_theme_file","RenderModal","closeModal","setTitle","editEntityRecord","saveEditedEntityRecord","createSuccessNotice","createErrorNotice","onRename","event","preventDefault","throwOnError","error","fallbackErrorMessage","errorMessage","message","code","createElement","onSubmit","spacing","__nextHasNoMarginBottom","__next40pxDefaultSize","value","onChange","required","justify","variant","onClick","canDeleteOrReset","deleteAction","hideModalHeader","onPerform","__experimentalDeleteReusableBlock","removeTemplates","deletePattern","promiseResult","Promise","allSettled","every","status","successMessage","reason","errorMessages","Set","failedPromises","filter","failedPromise","add","size","join","deleteItem","questionMessage","resetAction","removeTemplate","duplicatePatternAction","modalHeader","categoryId","window","location","href","isThemePattern","theme","history","onPatternSuccess","pattern","push","categoryType","postType","postId","duplicatedProps","onSuccess","onClose","confirmLabel","duplicateTemplatePartAction","onTemplatePartSuccess","blocks","defaultArea","area","defaultTitle","onCreate","onError"],"sources":["@wordpress/edit-site/src/components/page-patterns/dataviews-pattern-actions.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { paramCase as kebabCase } from 'change-case';\nimport { downloadZip } from 'client-zip';\n\n/**\n * WordPress dependencies\n */\nimport { getQueryArgs } from '@wordpress/url';\nimport { downloadBlob } from '@wordpress/blob';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tButton,\n\tTextControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalText as Text,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\nimport { store as editorStore } from '@wordpress/editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as patternsPrivateApis } from '@wordpress/patterns';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport {\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport { CreateTemplatePartModalContents } from '../create-template-part-modal';\n\nconst { useHistory } = unlock( routerPrivateApis );\nconst { CreatePatternModalContents, useDuplicatePatternProps } =\n\tunlock( patternsPrivateApis );\n\nfunction getJsonFromItem( item ) {\n\treturn JSON.stringify(\n\t\t{\n\t\t\t__file: item.type,\n\t\t\ttitle: item.title || item.name,\n\t\t\tcontent: item.patternPost.content.raw,\n\t\t\tsyncStatus: item.patternPost.wp_pattern_sync_status,\n\t\t},\n\t\tnull,\n\t\t2\n\t);\n}\n\nexport const exportJSONaction = {\n\tid: 'export-pattern',\n\tlabel: __( 'Export as JSON' ),\n\tsupportsBulk: true,\n\tisEligible: ( item ) => item.type === PATTERN_TYPES.user,\n\tcallback: async ( items ) => {\n\t\tif ( items.length === 1 ) {\n\t\t\treturn downloadBlob(\n\t\t\t\t`${ kebabCase( items[ 0 ].title || items[ 0 ].name ) }.json`,\n\t\t\t\tgetJsonFromItem( items[ 0 ] ),\n\t\t\t\t'application/json'\n\t\t\t);\n\t\t}\n\t\tconst nameCount = {};\n\t\tconst filesToZip = items.map( ( item ) => {\n\t\t\tconst name = kebabCase( item.title || item.name );\n\t\t\tnameCount[ name ] = ( nameCount[ name ] || 0 ) + 1;\n\t\t\treturn {\n\t\t\t\tname: `${\n\t\t\t\t\tname +\n\t\t\t\t\t( nameCount[ name ] > 1\n\t\t\t\t\t\t? '-' + ( nameCount[ name ] - 1 )\n\t\t\t\t\t\t: '' )\n\t\t\t\t}.json`,\n\t\t\t\tlastModified: new Date(),\n\t\t\t\tinput: getJsonFromItem( item ),\n\t\t\t};\n\t\t} );\n\t\treturn downloadBlob(\n\t\t\t__( 'patterns-export' ) + '.zip',\n\t\t\tawait downloadZip( filesToZip ).blob(),\n\t\t\t'application/zip'\n\t\t);\n\t},\n};\n\nexport const renameAction = {\n\tid: 'rename-pattern',\n\tlabel: __( 'Rename' ),\n\tisEligible: ( item ) => {\n\t\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\t\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\t\tconst isCustomPattern =\n\t\t\tisUserPattern || ( isTemplatePart && item.isCustom );\n\t\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\t\treturn isCustomPattern && ! hasThemeFile;\n\t},\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst [ title, setTitle ] = useState( () => item.title );\n\t\tconst { editEntityRecord, saveEditedEntityRecord } =\n\t\t\tuseDispatch( coreStore );\n\t\tconst { createSuccessNotice, createErrorNotice } =\n\t\t\tuseDispatch( noticesStore );\n\t\tasync function onRename( event ) {\n\t\t\tevent.preventDefault();\n\t\t\ttry {\n\t\t\t\tawait editEntityRecord( 'postType', item.type, item.id, {\n\t\t\t\t\ttitle,\n\t\t\t\t} );\n\t\t\t\t// Update state before saving rerenders the list.\n\t\t\t\tsetTitle( '' );\n\t\t\t\tcloseModal();\n\t\t\t\t// Persist edited entity.\n\t\t\t\tawait saveEditedEntityRecord( 'postType', item.type, item.id, {\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t} );\n\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\titem.type === TEMPLATE_PART_POST_TYPE\n\t\t\t\t\t\t? __( 'Template part renamed.' )\n\t\t\t\t\t\t: __( 'Pattern renamed.' ),\n\t\t\t\t\t{ type: 'snackbar' }\n\t\t\t\t);\n\t\t\t} catch ( error ) {\n\t\t\t\tconst fallbackErrorMessage =\n\t\t\t\t\titem.type === TEMPLATE_PART_POST_TYPE\n\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t'An error occurred while renaming the template part.'\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'An error occurred while renaming the pattern.' );\n\t\t\t\tconst errorMessage =\n\t\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t: fallbackErrorMessage;\n\t\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t\t}\n\t\t}\n\t\treturn (\n\t\t\t<form onSubmit={ onRename }>\n\t\t\t\t<VStack spacing=\"5\">\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tcloseModal();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</form>\n\t\t);\n\t},\n};\n\nconst canDeleteOrReset = ( item ) => {\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\treturn isUserPattern || ( isTemplatePart && item.isCustom );\n};\n\nexport const deleteAction = {\n\tid: 'delete-pattern',\n\tlabel: __( 'Delete' ),\n\tisEligible: ( item ) => {\n\t\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\t\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\t\treturn canDeleteOrReset( item ) && ! hasThemeFile;\n\t},\n\thideModalHeader: true,\n\tsupportsBulk: true,\n\tRenderModal: ( { items, closeModal, onPerform } ) => {\n\t\tconst { __experimentalDeleteReusableBlock } =\n\t\t\tuseDispatch( reusableBlocksStore );\n\t\tconst { createErrorNotice, createSuccessNotice } =\n\t\t\tuseDispatch( noticesStore );\n\t\tconst { removeTemplates } = unlock( useDispatch( editorStore ) );\n\n\t\tconst deletePattern = async () => {\n\t\t\tconst promiseResult = await Promise.allSettled(\n\t\t\t\titems.map( ( item ) => {\n\t\t\t\t\treturn __experimentalDeleteReusableBlock( item.id );\n\t\t\t\t} )\n\t\t\t);\n\t\t\t// If all the promises were fulfilled with success.\n\t\t\tif (\n\t\t\t\tpromiseResult.every( ( { status } ) => status === 'fulfilled' )\n\t\t\t) {\n\t\t\t\tlet successMessage;\n\t\t\t\tif ( promiseResult.length === 1 ) {\n\t\t\t\t\tsuccessMessage = sprintf(\n\t\t\t\t\t\t/* translators: The posts's title. */\n\t\t\t\t\t\t__( '\"%s\" deleted.' ),\n\t\t\t\t\t\titems[ 0 ].title\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\tsuccessMessage = __( 'The patterns were deleted.' );\n\t\t\t\t}\n\t\t\t\tcreateSuccessNotice( successMessage, {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tid: 'edit-site-page-trashed',\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\t// If there was at lease one failure.\n\t\t\t\tlet errorMessage;\n\t\t\t\t// If we were trying to delete a single pattern.\n\t\t\t\tif ( promiseResult.length === 1 ) {\n\t\t\t\t\tif ( promiseResult[ 0 ].reason?.message ) {\n\t\t\t\t\t\terrorMessage = promiseResult[ 0 ].reason.message;\n\t\t\t\t\t} else {\n\t\t\t\t\t\terrorMessage = __(\n\t\t\t\t\t\t\t'An error occurred while deleting the pattern.'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\t// If we were trying to delete multiple patterns.\n\t\t\t\t} else {\n\t\t\t\t\tconst errorMessages = new Set();\n\t\t\t\t\tconst failedPromises = promiseResult.filter(\n\t\t\t\t\t\t( { status } ) => status === 'rejected'\n\t\t\t\t\t);\n\t\t\t\t\tfor ( const failedPromise of failedPromises ) {\n\t\t\t\t\t\tif ( failedPromise.reason?.message ) {\n\t\t\t\t\t\t\terrorMessages.add( failedPromise.reason.message );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ( errorMessages.size === 0 ) {\n\t\t\t\t\t\terrorMessage = __(\n\t\t\t\t\t\t\t'An error occurred while deleting the patterns.'\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( errorMessages.size === 1 ) {\n\t\t\t\t\t\terrorMessage = sprintf(\n\t\t\t\t\t\t\t/* translators: %s: an error message */\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'An error occurred while deleting the patterns: %s'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t[ ...errorMessages ][ 0 ]\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\terrorMessage = sprintf(\n\t\t\t\t\t\t\t/* translators: %s: a list of comma separated error messages */\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'Some errors occurred while deleting the patterns: %s'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t[ ...errorMessages ].join( ',' )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tconst deleteItem = () => {\n\t\t\tif ( items[ 0 ].type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\tremoveTemplates( items );\n\t\t\t} else {\n\t\t\t\tdeletePattern();\n\t\t\t}\n\t\t\tif ( onPerform ) {\n\t\t\t\tonPerform();\n\t\t\t}\n\t\t\tcloseModal();\n\t\t};\n\t\tlet questionMessage;\n\t\tif ( items.length === 1 ) {\n\t\t\tquestionMessage = sprintf(\n\t\t\t\t// translators: %s: The page's title.\n\t\t\t\t__( 'Are you sure you want to delete \"%s\"?' ),\n\t\t\t\tdecodeEntities( items[ 0 ].title || items[ 0 ].name )\n\t\t\t);\n\t\t} else if (\n\t\t\titems.length > 1 &&\n\t\t\titems[ 0 ].type === TEMPLATE_PART_POST_TYPE\n\t\t) {\n\t\t\tquestionMessage = sprintf(\n\t\t\t\t// translators: %d: The number of template parts (2 or more).\n\t\t\t\t__( 'Are you sure you want to delete %d template parts?' ),\n\t\t\t\titems.length\n\t\t\t);\n\t\t} else {\n\t\t\tquestionMessage = sprintf(\n\t\t\t\t// translators: %d: The number of patterns (2 or more).\n\t\t\t\t__( 'Are you sure you want to delete %d patterns?' ),\n\t\t\t\titems.length\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<VStack spacing=\"5\">\n\t\t\t\t<Text>{ questionMessage }</Text>\n\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ closeModal }>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button variant=\"primary\" onClick={ deleteItem }>\n\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t);\n\t},\n};\n\nexport const resetAction = {\n\tid: 'reset-action',\n\tlabel: __( 'Reset' ),\n\tisEligible: ( item ) => {\n\t\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\t\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\t\treturn canDeleteOrReset( item ) && hasThemeFile;\n\t},\n\thideModalHeader: true,\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst { removeTemplate } = useDispatch( editSiteStore );\n\t\treturn (\n\t\t\t<VStack spacing=\"5\">\n\t\t\t\t<Text>\n\t\t\t\t\t{ __( 'Reset to default and clear all customizations?' ) }\n\t\t\t\t</Text>\n\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ closeModal }>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ () => removeTemplate( item ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t);\n\t},\n};\n\nexport const duplicatePatternAction = {\n\tid: 'duplicate-pattern',\n\tlabel: _x( 'Duplicate', 'action label' ),\n\tisEligible: ( item ) => item.type !== TEMPLATE_PART_POST_TYPE,\n\tmodalHeader: _x( 'Duplicate pattern', 'action label' ),\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst { categoryId = PATTERN_DEFAULT_CATEGORY } = getQueryArgs(\n\t\t\twindow.location.href\n\t\t);\n\t\tconst isThemePattern = item.type === PATTERN_TYPES.theme;\n\t\tconst history = useHistory();\n\t\tfunction onPatternSuccess( { pattern } ) {\n\t\t\thistory.push( {\n\t\t\t\tcategoryType: PATTERN_TYPES.theme,\n\t\t\t\tcategoryId,\n\t\t\t\tpostType: PATTERN_TYPES.user,\n\t\t\t\tpostId: pattern.id,\n\t\t\t} );\n\t\t\tcloseModal();\n\t\t}\n\t\tconst duplicatedProps = useDuplicatePatternProps( {\n\t\t\tpattern: isThemePattern ? item : item.patternPost,\n\t\t\tonSuccess: onPatternSuccess,\n\t\t} );\n\t\treturn (\n\t\t\t<CreatePatternModalContents\n\t\t\t\tonClose={ closeModal }\n\t\t\t\tconfirmLabel={ _x( 'Duplicate', 'action label' ) }\n\t\t\t\t{ ...duplicatedProps }\n\t\t\t/>\n\t\t);\n\t},\n};\n\nexport const duplicateTemplatePartAction = {\n\tid: 'duplicate-template-part',\n\tlabel: _x( 'Duplicate', 'action label' ),\n\tisEligible: ( item ) => item.type === TEMPLATE_PART_POST_TYPE,\n\tmodalHeader: _x( 'Duplicate template part', 'action label' ),\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\t\tconst { categoryId = PATTERN_DEFAULT_CATEGORY } = getQueryArgs(\n\t\t\twindow.location.href\n\t\t);\n\t\tconst history = useHistory();\n\t\tasync function onTemplatePartSuccess( templatePart ) {\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: The new template part's title e.g. 'Call to action (copy)'.\n\t\t\t\t\t__( '\"%s\" duplicated.' ),\n\t\t\t\t\titem.title\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar', id: 'edit-site-patterns-success' }\n\t\t\t);\n\t\t\thistory.push( {\n\t\t\t\tpostType: TEMPLATE_PART_POST_TYPE,\n\t\t\t\tpostId: templatePart?.id,\n\t\t\t\tcategoryType: TEMPLATE_PART_POST_TYPE,\n\t\t\t\tcategoryId,\n\t\t\t} );\n\t\t\tcloseModal();\n\t\t}\n\t\treturn (\n\t\t\t<CreateTemplatePartModalContents\n\t\t\t\tblocks={ item.blocks }\n\t\t\t\tdefaultArea={ item.templatePart.area }\n\t\t\t\tdefaultTitle={ sprintf(\n\t\t\t\t\t/* translators: %s: Existing template part title */\n\t\t\t\t\t__( '%s (Copy)' ),\n\t\t\t\t\titem.title\n\t\t\t\t) }\n\t\t\t\tonCreate={ onTemplatePartSuccess }\n\t\t\t\tonError={ closeModal }\n\t\t\t\tconfirmLabel={ _x( 'Duplicate', 'action label' ) }\n\t\t\t/>\n\t\t);\n\t},\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["MenuItem","__experimentalConfirmDialog","ConfirmDialog","store","coreStore","useDispatch","useState","decodeEntities","__","sprintf","noticesStore","privateApis","routerPrivateApis","unlock","PATTERN_TYPES","PATTERN_DEFAULT_CATEGORY","useHistory","DeleteCategoryMenuItem","category","onClose","isModalOpen","setIsModalOpen","history","createSuccessNotice","createErrorNotice","deleteEntityRecord","invalidateResolution","onDelete","id","force","throwOnError","user","per_page","label","type","push","path","categoryType","theme","categoryId","error","errorMessage","message","code","createElement","Fragment","isDestructive","onClick","isOpen","onConfirm","onCancel","confirmButtonText","className","title","size","__experimentalHideHeader"],"sources":["@wordpress/edit-site/src/components/page-patterns/delete-category-menu-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tMenuItem,\n\t__experimentalConfirmDialog as ConfirmDialog,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { PATTERN_TYPES, PATTERN_DEFAULT_CATEGORY } from '../../utils/constants';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nexport default function DeleteCategoryMenuItem( { category, onClose } ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst history = useHistory();\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { deleteEntityRecord, invalidateResolution } =\n\t\tuseDispatch( coreStore );\n\n\tconst onDelete = async () => {\n\t\ttry {\n\t\t\tawait deleteEntityRecord(\n\t\t\t\t'taxonomy',\n\t\t\t\t'wp_pattern_category',\n\t\t\t\tcategory.id,\n\t\t\t\t{ force: true },\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\t// Prevent the need to refresh the page to get up-to-date categories\n\t\t\t// and pattern categorization.\n\t\t\tinvalidateResolution( 'getUserPatternCategories' );\n\t\t\tinvalidateResolution( 'getEntityRecords', [\n\t\t\t\t'postType',\n\t\t\t\tPATTERN_TYPES.user,\n\t\t\t\t{ per_page: -1 },\n\t\t\t] );\n\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: The pattern category's name */\n\t\t\t\t\t__( '\"%s\" deleted.' ),\n\t\t\t\t\tcategory.label\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar', id: 'pattern-category-delete' }\n\t\t\t);\n\n\t\t\tonClose?.();\n\t\t\thistory.push( {\n\t\t\t\tpath: `/patterns`,\n\t\t\t\tcategoryType: PATTERN_TYPES.theme,\n\t\t\t\tcategoryId: PATTERN_DEFAULT_CATEGORY,\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __(\n\t\t\t\t\t\t\t'An error occurred while deleting the pattern category.'\n\t\t\t\t\t );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'pattern-category-delete',\n\t\t\t} );\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem isDestructive onClick={ () => setIsModalOpen( true ) }>\n\t\t\t\t{ __( 'Delete' ) }\n\t\t\t</MenuItem>\n\t\t\t<ConfirmDialog\n\t\t\t\tisOpen={ isModalOpen }\n\t\t\t\tonConfirm={ onDelete }\n\t\t\t\tonCancel={ () => setIsModalOpen( false ) }\n\t\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\t\tclassName=\"edit-site-patterns__delete-modal\"\n\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t// translators: %s: The pattern category's name.\n\t\t\t\t\t__( 'Delete \"%s\"?' ),\n\t\t\t\t\tdecodeEntities( category.label )\n\t\t\t\t) }\n\t\t\t\tsize=\"medium\"\n\t\t\t\t__experimentalHideHeader={ false }\n\t\t\t>\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: %s: The pattern category's name.\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Are you sure you want to delete the category \"%s\"? The patterns will not be deleted.'\n\t\t\t\t\t),\n\t\t\t\t\tdecodeEntities( category.label )\n\t\t\t\t) }\n\t\t\t</ConfirmDialog>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["MenuItem","__experimentalConfirmDialog","ConfirmDialog","store","coreStore","useDispatch","useState","decodeEntities","__","sprintf","noticesStore","privateApis","routerPrivateApis","unlock","PATTERN_TYPES","PATTERN_DEFAULT_CATEGORY","useHistory","DeleteCategoryMenuItem","category","onClose","isModalOpen","setIsModalOpen","history","createSuccessNotice","createErrorNotice","deleteEntityRecord","invalidateResolution","onDelete","id","force","throwOnError","user","per_page","label","type","push","path","categoryType","theme","categoryId","error","errorMessage","message","code","createElement","Fragment","isDestructive","onClick","isOpen","onConfirm","onCancel","confirmButtonText","className","title","size","__experimentalHideHeader"],"sources":["@wordpress/edit-site/src/components/page-patterns/delete-category-menu-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tMenuItem,\n\t__experimentalConfirmDialog as ConfirmDialog,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { PATTERN_TYPES, PATTERN_DEFAULT_CATEGORY } from '../../utils/constants';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nexport default function DeleteCategoryMenuItem( { category, onClose } ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst history = useHistory();\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { deleteEntityRecord, invalidateResolution } =\n\t\tuseDispatch( coreStore );\n\n\tconst onDelete = async () => {\n\t\ttry {\n\t\t\tawait deleteEntityRecord(\n\t\t\t\t'taxonomy',\n\t\t\t\t'wp_pattern_category',\n\t\t\t\tcategory.id,\n\t\t\t\t{ force: true },\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\t// Prevent the need to refresh the page to get up-to-date categories\n\t\t\t// and pattern categorization.\n\t\t\tinvalidateResolution( 'getUserPatternCategories' );\n\t\t\tinvalidateResolution( 'getEntityRecords', [\n\t\t\t\t'postType',\n\t\t\t\tPATTERN_TYPES.user,\n\t\t\t\t{ per_page: -1 },\n\t\t\t] );\n\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: The pattern category's name */\n\t\t\t\t\t__( '\"%s\" deleted.' ),\n\t\t\t\t\tcategory.label\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar', id: 'pattern-category-delete' }\n\t\t\t);\n\n\t\t\tonClose?.();\n\t\t\thistory.push( {\n\t\t\t\tpath: `/patterns`,\n\t\t\t\tcategoryType: PATTERN_TYPES.theme,\n\t\t\t\tcategoryId: PATTERN_DEFAULT_CATEGORY,\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __(\n\t\t\t\t\t\t\t'An error occurred while deleting the pattern category.'\n\t\t\t\t\t );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'pattern-category-delete',\n\t\t\t} );\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem isDestructive onClick={ () => setIsModalOpen( true ) }>\n\t\t\t\t{ __( 'Delete' ) }\n\t\t\t</MenuItem>\n\t\t\t<ConfirmDialog\n\t\t\t\tisOpen={ isModalOpen }\n\t\t\t\tonConfirm={ onDelete }\n\t\t\t\tonCancel={ () => setIsModalOpen( false ) }\n\t\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\t\tclassName=\"edit-site-patterns__delete-modal\"\n\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t// translators: %s: The pattern category's name.\n\t\t\t\t\t__( 'Delete \"%s\"?' ),\n\t\t\t\t\tdecodeEntities( category.label )\n\t\t\t\t) }\n\t\t\t\tsize=\"medium\"\n\t\t\t\t__experimentalHideHeader={ false }\n\t\t\t>\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: %s: The pattern category's name.\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Are you sure you want to delete the category \"%s\"? The patterns will not be deleted.'\n\t\t\t\t\t),\n\t\t\t\t\tdecodeEntities( category.label )\n\t\t\t\t) }\n\t\t\t</ConfirmDialog>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -28,8 +28,8 @@ export default function PatternsHeader({
28
28
  let title, description, patternCategory;
29
29
  if (type === TEMPLATE_PART_POST_TYPE) {
30
30
  const templatePartArea = templatePartAreas.find(area => area.area === categoryId);
31
- title = templatePartArea?.label;
32
- description = templatePartArea?.description;
31
+ title = templatePartArea?.label || __('All Template Parts');
32
+ description = templatePartArea?.description || __('Includes every template part defined for any area.');
33
33
  } else if (type === PATTERN_TYPES.theme) {
34
34
  patternCategory = patternCategories.find(category => category.name === categoryId);
35
35
  title = patternCategory?.label;
@@ -1 +1 @@
1
- {"version":3,"names":["DropdownMenu","MenuGroup","__experimentalHStack","HStack","__experimentalHeading","Heading","__experimentalText","Text","__experimentalVStack","VStack","store","editorStore","useSelect","__","sprintf","moreVertical","RenameCategoryMenuItem","DeleteCategoryMenuItem","usePatternCategories","TEMPLATE_PART_POST_TYPE","PATTERN_TYPES","PatternsHeader","categoryId","type","titleId","descriptionId","patternCategories","templatePartAreas","select","__experimentalGetDefaultTemplatePartAreas","title","description","patternCategory","templatePartArea","find","area","label","theme","category","name","createElement","className","justify","as","level","id","icon","toggleProps","describedBy","size","onClose","variant"],"sources":["@wordpress/edit-site/src/components/page-patterns/header.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tDropdownMenu,\n\tMenuGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalHeading as Heading,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useSelect } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { moreVertical } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport RenameCategoryMenuItem from './rename-category-menu-item';\nimport DeleteCategoryMenuItem from './delete-category-menu-item';\nimport usePatternCategories from '../sidebar-navigation-screen-patterns/use-pattern-categories';\nimport { TEMPLATE_PART_POST_TYPE, PATTERN_TYPES } from '../../utils/constants';\n\nexport default function PatternsHeader( {\n\tcategoryId,\n\ttype,\n\ttitleId,\n\tdescriptionId,\n} ) {\n\tconst { patternCategories } = usePatternCategories();\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\n\tlet title, description, patternCategory;\n\tif ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\tconst templatePartArea = templatePartAreas.find(\n\t\t\t( area ) => area.area === categoryId\n\t\t);\n\t\ttitle = templatePartArea?.label;\n\t\tdescription = templatePartArea?.description;\n\t} else if ( type === PATTERN_TYPES.theme ) {\n\t\tpatternCategory = patternCategories.find(\n\t\t\t( category ) => category.name === categoryId\n\t\t);\n\t\ttitle = patternCategory?.label;\n\t\tdescription = patternCategory?.description;\n\t}\n\n\tif ( ! title ) return null;\n\n\treturn (\n\t\t<VStack className=\"edit-site-patterns__section-header\">\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<Heading as=\"h2\" level={ 4 } id={ titleId }>\n\t\t\t\t\t{ title }\n\t\t\t\t</Heading>\n\t\t\t\t{ !! patternCategory?.id && (\n\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\tclassName: 'edit-site-patterns__button',\n\t\t\t\t\t\t\tdescribedBy: sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: pattern category name */\n\t\t\t\t\t\t\t\t__( 'Action menu for %s pattern category' ),\n\t\t\t\t\t\t\t\ttitle\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tsize: 'compact',\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t<RenameCategoryMenuItem\n\t\t\t\t\t\t\t\t\tcategory={ patternCategory }\n\t\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<DeleteCategoryMenuItem\n\t\t\t\t\t\t\t\t\tcategory={ patternCategory }\n\t\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</DropdownMenu>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t\t{ description ? (\n\t\t\t\t<Text variant=\"muted\" as=\"p\" id={ descriptionId }>\n\t\t\t\t\t{ description }\n\t\t\t\t</Text>\n\t\t\t) : null }\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["DropdownMenu","MenuGroup","__experimentalHStack","HStack","__experimentalHeading","Heading","__experimentalText","Text","__experimentalVStack","VStack","store","editorStore","useSelect","__","sprintf","moreVertical","RenameCategoryMenuItem","DeleteCategoryMenuItem","usePatternCategories","TEMPLATE_PART_POST_TYPE","PATTERN_TYPES","PatternsHeader","categoryId","type","titleId","descriptionId","patternCategories","templatePartAreas","select","__experimentalGetDefaultTemplatePartAreas","title","description","patternCategory","templatePartArea","find","area","label","theme","category","name","createElement","className","justify","as","level","id","icon","toggleProps","describedBy","size","onClose","variant"],"sources":["@wordpress/edit-site/src/components/page-patterns/header.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tDropdownMenu,\n\tMenuGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalHeading as Heading,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useSelect } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { moreVertical } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport RenameCategoryMenuItem from './rename-category-menu-item';\nimport DeleteCategoryMenuItem from './delete-category-menu-item';\nimport usePatternCategories from '../sidebar-navigation-screen-patterns/use-pattern-categories';\nimport { TEMPLATE_PART_POST_TYPE, PATTERN_TYPES } from '../../utils/constants';\n\nexport default function PatternsHeader( {\n\tcategoryId,\n\ttype,\n\ttitleId,\n\tdescriptionId,\n} ) {\n\tconst { patternCategories } = usePatternCategories();\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\n\tlet title, description, patternCategory;\n\tif ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\tconst templatePartArea = templatePartAreas.find(\n\t\t\t( area ) => area.area === categoryId\n\t\t);\n\t\ttitle = templatePartArea?.label || __( 'All Template Parts' );\n\t\tdescription =\n\t\t\ttemplatePartArea?.description ||\n\t\t\t__( 'Includes every template part defined for any area.' );\n\t} else if ( type === PATTERN_TYPES.theme ) {\n\t\tpatternCategory = patternCategories.find(\n\t\t\t( category ) => category.name === categoryId\n\t\t);\n\t\ttitle = patternCategory?.label;\n\t\tdescription = patternCategory?.description;\n\t}\n\n\tif ( ! title ) return null;\n\n\treturn (\n\t\t<VStack className=\"edit-site-patterns__section-header\">\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<Heading as=\"h2\" level={ 4 } id={ titleId }>\n\t\t\t\t\t{ title }\n\t\t\t\t</Heading>\n\t\t\t\t{ !! patternCategory?.id && (\n\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\tclassName: 'edit-site-patterns__button',\n\t\t\t\t\t\t\tdescribedBy: sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: pattern category name */\n\t\t\t\t\t\t\t\t__( 'Action menu for %s pattern category' ),\n\t\t\t\t\t\t\t\ttitle\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tsize: 'compact',\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t<RenameCategoryMenuItem\n\t\t\t\t\t\t\t\t\tcategory={ patternCategory }\n\t\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<DeleteCategoryMenuItem\n\t\t\t\t\t\t\t\t\tcategory={ patternCategory }\n\t\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</DropdownMenu>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t\t{ description ? (\n\t\t\t\t<Text variant=\"muted\" as=\"p\" id={ descriptionId }>\n\t\t\t\t\t{ description }\n\t\t\t\t</Text>\n\t\t\t) : null }\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,9 @@
1
- import { createElement, Fragment } from "react";
1
+ import { createElement } from "react";
2
+ /**
3
+ * External dependencies
4
+ */
5
+ import classnames from 'classnames';
6
+
2
7
  /**
3
8
  * WordPress dependencies
4
9
  */
@@ -10,22 +15,33 @@ import { BlockPreview, privateApis as blockEditorPrivateApis } from '@wordpress/
10
15
  import { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';
11
16
  import { Icon, header, footer, symbolFilled as uncategorized, symbol, lockSmall } from '@wordpress/icons';
12
17
  import { usePrevious } from '@wordpress/compose';
18
+ import { useEntityRecords } from '@wordpress/core-data';
19
+ import { privateApis as editorPrivateApis } from '@wordpress/editor';
20
+ import { privateApis as routerPrivateApis } from '@wordpress/router';
13
21
 
14
22
  /**
15
23
  * Internal dependencies
16
24
  */
25
+ import { Async } from '../async';
17
26
  import Page from '../page';
18
- import { LAYOUT_GRID, LAYOUT_TABLE, PATTERN_TYPES, TEMPLATE_PART_POST_TYPE, PATTERN_SYNC_TYPES, PATTERN_DEFAULT_CATEGORY, ENUMERATION_TYPE, OPERATOR_IS } from '../../utils/constants';
27
+ import { LAYOUT_GRID, LAYOUT_TABLE, LAYOUT_LIST, PATTERN_TYPES, TEMPLATE_PART_POST_TYPE, PATTERN_SYNC_TYPES, PATTERN_DEFAULT_CATEGORY, ENUMERATION_TYPE, OPERATOR_IS } from '../../utils/constants';
19
28
  import { exportJSONaction, renameAction, resetAction, deleteAction, duplicatePatternAction, duplicateTemplatePartAction } from './dataviews-pattern-actions';
20
29
  import usePatternSettings from './use-pattern-settings';
21
30
  import { unlock } from '../../lock-unlock';
22
31
  import usePatterns from './use-patterns';
23
32
  import PatternsHeader from './header';
24
33
  import { useLink } from '../routes/link';
34
+ import { useAddedBy } from '../page-templates-template-parts/hooks';
25
35
  const {
26
36
  ExperimentalBlockEditorProvider,
27
37
  useGlobalStyle
28
38
  } = unlock(blockEditorPrivateApis);
39
+ const {
40
+ usePostActions
41
+ } = unlock(editorPrivateApis);
42
+ const {
43
+ useHistory
44
+ } = unlock(routerPrivateApis);
29
45
  const templatePartIcons = {
30
46
  header,
31
47
  footer,
@@ -38,7 +54,8 @@ const defaultConfigPerViewType = {
38
54
  },
39
55
  [LAYOUT_GRID]: {
40
56
  mediaField: 'preview',
41
- primaryField: 'title'
57
+ primaryField: 'title',
58
+ badgeFields: ['sync-status']
42
59
  }
43
60
  };
44
61
  const DEFAULT_VIEW = {
@@ -97,9 +114,6 @@ function Preview({
97
114
  } else if (item.description) {
98
115
  ariaDescriptions.push(item.description);
99
116
  }
100
- if (isNonUserPattern) {
101
- ariaDescriptions.push(__('Theme & plugin patterns cannot be edited.'));
102
- }
103
117
  const [backgroundColor] = useGlobalStyle('color.background');
104
118
  const {
105
119
  onClick
@@ -110,7 +124,7 @@ function Preview({
110
124
  categoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,
111
125
  canvas: 'edit'
112
126
  });
113
- return createElement(Fragment, null, createElement("div", {
127
+ return createElement("div", {
114
128
  className: `page-patterns-preview-field is-viewtype-${viewType}`,
115
129
  style: {
116
130
  backgroundColor
@@ -119,15 +133,45 @@ function Preview({
119
133
  item: item,
120
134
  onClick: onClick,
121
135
  ariaDescribedBy: ariaDescriptions.length ? ariaDescriptions.map((_, index) => `${descriptionId}-${index}`).join(' ') : undefined
122
- }, isEmpty && isTemplatePart && __('Empty template part'), isEmpty && !isTemplatePart && __('Empty pattern'), !isEmpty && createElement(BlockPreview, {
136
+ }, isEmpty && isTemplatePart && __('Empty template part'), isEmpty && !isTemplatePart && __('Empty pattern'), !isEmpty && createElement(Async, null, createElement(BlockPreview, {
123
137
  blocks: item.blocks,
124
138
  viewportWidth: item.viewportWidth
125
- }))), ariaDescriptions.map((ariaDescription, index) => createElement("div", {
139
+ }))), !isNonUserPattern && ariaDescriptions.map((ariaDescription, index) => createElement("div", {
126
140
  key: index,
127
141
  hidden: true,
128
142
  id: `${descriptionId}-${index}`
129
143
  }, ariaDescription)));
130
144
  }
145
+ function Author({
146
+ item,
147
+ viewType
148
+ }) {
149
+ const [isImageLoaded, setIsImageLoaded] = useState(false);
150
+ const {
151
+ text,
152
+ icon,
153
+ imageUrl
154
+ } = useAddedBy(item.type, item.id);
155
+ const withIcon = viewType !== LAYOUT_LIST;
156
+ return createElement(HStack, {
157
+ alignment: "left",
158
+ spacing: 1
159
+ }, withIcon && imageUrl && createElement("div", {
160
+ className: classnames('page-templates-author-field__avatar', {
161
+ 'is-loaded': isImageLoaded
162
+ })
163
+ }, createElement("img", {
164
+ onLoad: () => setIsImageLoaded(true),
165
+ alt: "",
166
+ src: imageUrl
167
+ })), withIcon && !imageUrl && createElement("div", {
168
+ className: "page-templates-author-field__icon"
169
+ }, createElement(Icon, {
170
+ icon: icon
171
+ })), createElement("span", {
172
+ className: "page-templates-author-field__name"
173
+ }, text));
174
+ }
131
175
  function Title({
132
176
  item,
133
177
  categoryId
@@ -200,6 +244,24 @@ export default function DataviewsPatterns() {
200
244
  search: view.search,
201
245
  syncStatus: viewSyncStatus
202
246
  });
247
+ const {
248
+ records
249
+ } = useEntityRecords('postType', TEMPLATE_PART_POST_TYPE, {
250
+ per_page: -1
251
+ });
252
+ const authors = useMemo(() => {
253
+ if (!records) {
254
+ return EMPTY_ARRAY;
255
+ }
256
+ const authorsSet = new Set();
257
+ records.forEach(template => {
258
+ authorsSet.add(template.author_text);
259
+ });
260
+ return Array.from(authorsSet).map(author => ({
261
+ value: author,
262
+ label: author
263
+ }));
264
+ }, [records]);
203
265
  const fields = useMemo(() => {
204
266
  const _fields = [{
205
267
  header: __('Preview'),
@@ -226,18 +288,20 @@ export default function DataviewsPatterns() {
226
288
  }];
227
289
  if (type === PATTERN_TYPES.theme) {
228
290
  _fields.push({
229
- header: __('Sync Status'),
291
+ header: __('Sync status'),
230
292
  id: 'sync-status',
231
293
  render: ({
232
294
  item
233
295
  }) => {
234
296
  // User patterns can have their sync statuses checked directly.
235
297
  // Non-user patterns are all unsynced for the time being.
236
- return SYNC_FILTERS.find(({
298
+ return createElement("span", {
299
+ className: `edit-site-patterns__field-sync-status-${item.syncStatus}`
300
+ }, SYNC_FILTERS.find(({
237
301
  value
238
302
  }) => value === item.syncStatus)?.label || SYNC_FILTERS.find(({
239
303
  value
240
- }) => value === PATTERN_SYNC_TYPES.unsynced).label;
304
+ }) => value === PATTERN_SYNC_TYPES.unsynced).label);
241
305
  },
242
306
  type: ENUMERATION_TYPE,
243
307
  elements: SYNC_FILTERS,
@@ -247,9 +311,32 @@ export default function DataviewsPatterns() {
247
311
  },
248
312
  enableSorting: false
249
313
  });
314
+ } else if (type === TEMPLATE_PART_POST_TYPE) {
315
+ _fields.push({
316
+ header: __('Author'),
317
+ id: 'author',
318
+ getValue: ({
319
+ item
320
+ }) => item.templatePart.author_text,
321
+ render: ({
322
+ item
323
+ }) => {
324
+ return createElement(Author, {
325
+ viewType: view.type,
326
+ item: item
327
+ });
328
+ },
329
+ type: ENUMERATION_TYPE,
330
+ elements: authors,
331
+ filterBy: {
332
+ isPrimary: true
333
+ },
334
+ width: '1%'
335
+ });
250
336
  }
251
337
  return _fields;
252
- }, [view.type, categoryId, type]);
338
+ }, [view.type, categoryId, type, authors]);
339
+
253
340
  // Reset the page number when the category changes.
254
341
  useEffect(() => {
255
342
  if (previousCategoryId !== categoryId) {
@@ -260,16 +347,37 @@ export default function DataviewsPatterns() {
260
347
  data,
261
348
  paginationInfo
262
349
  } = useMemo(() => {
263
- // Since filters are applied server-side,
264
- // we need to remove them from the view
350
+ // Search is managed server-side as well as filters for patterns.
351
+ // However, the author filter in template parts is done client-side.
265
352
  const viewWithoutFilters = {
266
353
  ...view
267
354
  };
268
355
  delete viewWithoutFilters.search;
269
- viewWithoutFilters.filters = [];
356
+ if (type !== TEMPLATE_PART_POST_TYPE) {
357
+ viewWithoutFilters.filters = [];
358
+ }
270
359
  return filterSortAndPaginate(patterns, viewWithoutFilters, fields);
271
- }, [patterns, view, fields]);
272
- const actions = useMemo(() => [renameAction, duplicatePatternAction, duplicateTemplatePartAction, exportJSONaction, resetAction, deleteAction], []);
360
+ }, [patterns, view, fields, type]);
361
+ const history = useHistory();
362
+ const onActionPerformed = useCallback((actionId, items) => {
363
+ if (actionId === 'edit-post') {
364
+ const post = items[0];
365
+ history.push({
366
+ postId: post.id,
367
+ postType: post.type,
368
+ categoryId,
369
+ categoryType: type,
370
+ canvas: 'edit'
371
+ });
372
+ }
373
+ }, [history, categoryId, type]);
374
+ const [editAction, viewRevisionsAction] = usePostActions(onActionPerformed, ['edit-post', 'view-post-revisions']);
375
+ const actions = useMemo(() => {
376
+ if (type === TEMPLATE_PART_POST_TYPE) {
377
+ return [editAction, renameAction, duplicateTemplatePartAction, viewRevisionsAction, resetAction, deleteAction];
378
+ }
379
+ return [renameAction, duplicatePatternAction, exportJSONaction, resetAction, deleteAction];
380
+ }, [type, editAction, viewRevisionsAction]);
273
381
  const onChangeView = useCallback(newView => {
274
382
  if (newView.type !== view.type) {
275
383
  newView = {
@@ -306,7 +414,6 @@ export default function DataviewsPatterns() {
306
414
  isLoading: isResolving,
307
415
  view: view,
308
416
  onChangeView: onChangeView,
309
- deferredRendering: true,
310
417
  supportedLayouts: [LAYOUT_GRID, LAYOUT_TABLE]
311
418
  })));
312
419
  }
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalHStack","HStack","Button","Tooltip","Flex","getQueryArgs","__","_x","useState","useMemo","useCallback","useId","useEffect","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","filterSortAndPaginate","Icon","header","footer","symbolFilled","uncategorized","symbol","lockSmall","usePrevious","Page","LAYOUT_GRID","LAYOUT_TABLE","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_SYNC_TYPES","PATTERN_DEFAULT_CATEGORY","ENUMERATION_TYPE","OPERATOR_IS","exportJSONaction","renameAction","resetAction","deleteAction","duplicatePatternAction","duplicateTemplatePartAction","usePatternSettings","unlock","usePatterns","PatternsHeader","useLink","ExperimentalBlockEditorProvider","useGlobalStyle","templatePartIcons","EMPTY_ARRAY","defaultConfigPerViewType","primaryField","mediaField","DEFAULT_VIEW","type","search","page","perPage","hiddenFields","layout","filters","SYNC_FILTERS","value","full","label","description","unsynced","PreviewWrapper","item","onClick","ariaDescribedBy","children","theme","createElement","className","title","Preview","categoryId","viewType","descriptionId","isUserPattern","user","isNonUserPattern","isTemplatePart","isEmpty","blocks","length","isCustomPattern","isCustom","ariaDescriptions","push","backgroundColor","postType","postId","id","name","categoryType","canvas","Fragment","style","map","_","index","join","undefined","viewportWidth","ariaDescription","key","hidden","Title","itemIcon","syncStatus","alignment","justify","spacing","as","gap","variant","tabIndex","placement","text","icon","size","DataviewsPatterns","window","location","href","view","setView","isUncategorizedThemePatterns","previousCategoryId","viewSyncStatus","find","field","patterns","isResolving","fields","_fields","render","enableSorting","enableHiding","elements","filterBy","operators","isPrimary","data","paginationInfo","viewWithoutFilters","actions","onChangeView","newView","settings","hideTitleFromUI","titleId","getItemId","isLoading","deferredRendering","supportedLayouts"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\tButton,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\nimport { getQueryArgs } from '@wordpress/url';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tuseState,\n\tuseMemo,\n\tuseCallback,\n\tuseId,\n\tuseEffect,\n} from '@wordpress/element';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport {\n\tIcon,\n\theader,\n\tfooter,\n\tsymbolFilled as uncategorized,\n\tsymbol,\n\tlockSmall,\n} from '@wordpress/icons';\nimport { usePrevious } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_SYNC_TYPES,\n\tPATTERN_DEFAULT_CATEGORY,\n\tENUMERATION_TYPE,\n\tOPERATOR_IS,\n} from '../../utils/constants';\nimport {\n\texportJSONaction,\n\trenameAction,\n\tresetAction,\n\tdeleteAction,\n\tduplicatePatternAction,\n\tduplicateTemplatePartAction,\n} from './dataviews-pattern-actions';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns from './use-patterns';\nimport PatternsHeader from './header';\nimport { useLink } from '../routes/link';\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\n\nconst templatePartIcons = { header, footer, uncategorized };\nconst EMPTY_ARRAY = [];\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\thiddenFields: [ 'sync-status' ],\n\tlayout: {\n\t\t...defaultConfigPerViewType[ LAYOUT_GRID ],\n\t},\n\tfilters: [],\n};\n\nconst SYNC_FILTERS = [\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.full,\n\t\tlabel: _x( 'Synced', 'Option that shows all synchronized patterns' ),\n\t\tdescription: __( 'Patterns that are kept in sync across the site.' ),\n\t},\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.unsynced,\n\t\tlabel: _x(\n\t\t\t'Not synced',\n\t\t\t'Option that shows all patterns that are not synchronized'\n\t\t),\n\t\tdescription: __(\n\t\t\t'Patterns that can be changed freely without affecting the site.'\n\t\t),\n\t},\n];\n\nfunction PreviewWrapper( { item, onClick, ariaDescribedBy, children } ) {\n\tif ( item.type === PATTERN_TYPES.theme ) {\n\t\treturn children;\n\t}\n\treturn (\n\t\t<button\n\t\t\tclassName=\"page-patterns-preview-field__button\"\n\t\t\ttype=\"button\"\n\t\t\tonClick={ onClick }\n\t\t\taria-label={ item.title }\n\t\t\taria-describedby={ ariaDescribedBy }\n\t\t>\n\t\t\t{ children }\n\t\t</button>\n\t);\n}\n\nfunction Preview( { item, categoryId, viewType } ) {\n\tconst descriptionId = useId();\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isNonUserPattern = item.type === PATTERN_TYPES.theme;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst isEmpty = ! item.blocks?.length;\n\t// Only custom patterns or custom template parts can be renamed or deleted.\n\tconst isCustomPattern =\n\t\tisUserPattern || ( isTemplatePart && item.isCustom );\n\tconst ariaDescriptions = [];\n\tif ( isCustomPattern ) {\n\t\t// User patterns don't have descriptions, but can be edited and deleted, so include some help text.\n\t\tariaDescriptions.push(\n\t\t\t__( 'Press Enter to edit, or Delete to delete the pattern.' )\n\t\t);\n\t} else if ( item.description ) {\n\t\tariaDescriptions.push( item.description );\n\t}\n\n\tif ( isNonUserPattern ) {\n\t\tariaDescriptions.push(\n\t\t\t__( 'Theme & plugin patterns cannot be edited.' )\n\t\t);\n\t}\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t\tcanvas: 'edit',\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tclassName={ `page-patterns-preview-field is-viewtype-${ viewType }` }\n\t\t\t\tstyle={ { backgroundColor } }\n\t\t\t>\n\t\t\t\t<PreviewWrapper\n\t\t\t\t\titem={ item }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\tariaDescribedBy={\n\t\t\t\t\t\tariaDescriptions.length\n\t\t\t\t\t\t\t? ariaDescriptions\n\t\t\t\t\t\t\t\t\t.map(\n\t\t\t\t\t\t\t\t\t\t( _, index ) =>\n\t\t\t\t\t\t\t\t\t\t\t`${ descriptionId }-${ index }`\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t.join( ' ' )\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t{ isEmpty && isTemplatePart && __( 'Empty template part' ) }\n\t\t\t\t\t{ isEmpty && ! isTemplatePart && __( 'Empty pattern' ) }\n\t\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\t\tblocks={ item.blocks }\n\t\t\t\t\t\t\tviewportWidth={ item.viewportWidth }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PreviewWrapper>\n\t\t\t</div>\n\t\t\t{ ariaDescriptions.map( ( ariaDescription, index ) => (\n\t\t\t\t<div\n\t\t\t\t\tkey={ index }\n\t\t\t\t\thidden\n\t\t\t\t\tid={ `${ descriptionId }-${ index }` }\n\t\t\t\t>\n\t\t\t\t\t{ ariaDescription }\n\t\t\t\t</div>\n\t\t\t) ) }\n\t\t</>\n\t);\n}\n\nfunction Title( { item, categoryId } ) {\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isNonUserPattern = item.type === PATTERN_TYPES.theme;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tlet itemIcon;\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t\tcanvas: 'edit',\n\t} );\n\tif ( ! isUserPattern && templatePartIcons[ categoryId ] ) {\n\t\titemIcon = templatePartIcons[ categoryId ];\n\t} else {\n\t\titemIcon =\n\t\t\titem.syncStatus === PATTERN_SYNC_TYPES.full ? symbol : undefined;\n\t}\n\treturn (\n\t\t<HStack alignment=\"center\" justify=\"flex-start\" spacing={ 2 }>\n\t\t\t<Flex\n\t\t\t\tas=\"div\"\n\t\t\t\tgap={ 0 }\n\t\t\t\tjustify=\"left\"\n\t\t\t\tclassName=\"edit-site-patterns__pattern-title\"\n\t\t\t>\n\t\t\t\t{ item.type === PATTERN_TYPES.theme ? (\n\t\t\t\t\titem.title\n\t\t\t\t) : (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t// Required for the grid's roving tab index system.\n\t\t\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/51898#discussion_r1243399243.\n\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ item.title || item.name }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t</Flex>\n\t\t\t{ itemIcon && ! isNonUserPattern && (\n\t\t\t\t<Tooltip\n\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\ttext={ __(\n\t\t\t\t\t\t'Editing this pattern will also update anywhere it is used'\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-icon\"\n\t\t\t\t\t\ticon={ itemIcon }\n\t\t\t\t\t/>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t\t{ item.type === PATTERN_TYPES.theme && (\n\t\t\t\t<Tooltip\n\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\ttext={ __( 'This pattern cannot be edited.' ) }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-lock-icon\"\n\t\t\t\t\t\ticon={ lockSmall }\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t/>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t</HStack>\n\t);\n}\n\nexport default function DataviewsPatterns() {\n\tconst { categoryType, categoryId = PATTERN_DEFAULT_CATEGORY } =\n\t\tgetQueryArgs( window.location.href );\n\tconst type = categoryType || PATTERN_TYPES.theme;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst isUncategorizedThemePatterns =\n\t\ttype === PATTERN_TYPES.theme && categoryId === 'uncategorized';\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns(\n\t\ttype,\n\t\tisUncategorizedThemePatterns ? '' : categoryId,\n\t\t{\n\t\t\tsearch: view.search,\n\t\t\tsyncStatus: viewSyncStatus,\n\t\t}\n\t);\n\tconst fields = useMemo( () => {\n\t\tconst _fields = [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Preview\n\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\tviewType={ view.type }\n\t\t\t\t\t/>\n\t\t\t\t),\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Title item={ item } categoryId={ categoryId } />\n\t\t\t\t),\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t];\n\t\tif ( type === PATTERN_TYPES.theme ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Sync Status' ),\n\t\t\t\tid: 'sync-status',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\t// User patterns can have their sync statuses checked directly.\n\t\t\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\t\t\treturn (\n\t\t\t\t\t\tSYNC_FILTERS.find(\n\t\t\t\t\t\t\t( { value } ) => value === item.syncStatus\n\t\t\t\t\t\t)?.label ||\n\t\t\t\t\t\tSYNC_FILTERS.find(\n\t\t\t\t\t\t\t( { value } ) =>\n\t\t\t\t\t\t\t\tvalue === PATTERN_SYNC_TYPES.unsynced\n\t\t\t\t\t\t).label\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\ttype: ENUMERATION_TYPE,\n\t\t\t\telements: SYNC_FILTERS,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [ OPERATOR_IS ],\n\t\t\t\t\tisPrimary: true,\n\t\t\t\t},\n\t\t\t\tenableSorting: false,\n\t\t\t} );\n\t\t}\n\t\treturn _fields;\n\t}, [ view.type, categoryId, type ] );\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif ( previousCategoryId !== categoryId ) {\n\t\t\tsetView( DEFAULT_VIEW );\n\t\t}\n\t}, [ categoryId, previousCategoryId ] );\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\t// Since filters are applied server-side,\n\t\t// we need to remove them from the view\n\t\tconst viewWithoutFilters = { ...view };\n\t\tdelete viewWithoutFilters.search;\n\t\tviewWithoutFilters.filters = [];\n\t\treturn filterSortAndPaginate( patterns, viewWithoutFilters, fields );\n\t}, [ patterns, view, fields ] );\n\n\tconst actions = useMemo(\n\t\t() => [\n\t\t\trenameAction,\n\t\t\tduplicatePatternAction,\n\t\t\tduplicateTemplatePartAction,\n\t\t\texportJSONaction,\n\t\t\tresetAction,\n\t\t\tdeleteAction,\n\t\t],\n\t\t[]\n\t);\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView ]\n\t);\n\tconst id = useId();\n\tconst settings = usePatternSettings();\n\t// Wrap everything in a block editor provider.\n\t// This ensures 'styles' that are needed for the previews are synced\n\t// from the site editor store to the block editor store.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<Page\n\t\t\t\ttitle={ __( 'Patterns content' ) }\n\t\t\t\tclassName=\"edit-site-page-patterns-dataviews\"\n\t\t\t\thideTitleFromUI\n\t\t\t>\n\t\t\t\t<PatternsHeader\n\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\ttype={ type }\n\t\t\t\t\ttitleId={ `${ id }-title` }\n\t\t\t\t\tdescriptionId={ `${ id }-description` }\n\t\t\t\t/>\n\t\t\t\t<DataViews\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tfields={ fields }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tdeferredRendering\n\t\t\t\t\tsupportedLayouts={ [ LAYOUT_GRID, LAYOUT_TABLE ] }\n\t\t\t\t/>\n\t\t\t</Page>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","__experimentalHStack","HStack","Button","Tooltip","Flex","getQueryArgs","__","_x","useState","useMemo","useCallback","useId","useEffect","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","filterSortAndPaginate","Icon","header","footer","symbolFilled","uncategorized","symbol","lockSmall","usePrevious","useEntityRecords","editorPrivateApis","routerPrivateApis","Async","Page","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_SYNC_TYPES","PATTERN_DEFAULT_CATEGORY","ENUMERATION_TYPE","OPERATOR_IS","exportJSONaction","renameAction","resetAction","deleteAction","duplicatePatternAction","duplicateTemplatePartAction","usePatternSettings","unlock","usePatterns","PatternsHeader","useLink","useAddedBy","ExperimentalBlockEditorProvider","useGlobalStyle","usePostActions","useHistory","templatePartIcons","EMPTY_ARRAY","defaultConfigPerViewType","primaryField","mediaField","badgeFields","DEFAULT_VIEW","type","search","page","perPage","hiddenFields","layout","filters","SYNC_FILTERS","value","full","label","description","unsynced","PreviewWrapper","item","onClick","ariaDescribedBy","children","theme","createElement","className","title","Preview","categoryId","viewType","descriptionId","isUserPattern","user","isNonUserPattern","isTemplatePart","isEmpty","blocks","length","isCustomPattern","isCustom","ariaDescriptions","push","backgroundColor","postType","postId","id","name","categoryType","canvas","style","map","_","index","join","undefined","viewportWidth","ariaDescription","key","hidden","Author","isImageLoaded","setIsImageLoaded","text","icon","imageUrl","withIcon","alignment","spacing","onLoad","alt","src","Title","itemIcon","syncStatus","justify","as","gap","variant","tabIndex","placement","size","DataviewsPatterns","window","location","href","view","setView","isUncategorizedThemePatterns","previousCategoryId","viewSyncStatus","find","field","patterns","isResolving","records","per_page","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","author","fields","_fields","render","enableSorting","enableHiding","elements","filterBy","operators","isPrimary","getValue","templatePart","width","data","paginationInfo","viewWithoutFilters","history","onActionPerformed","actionId","items","post","editAction","viewRevisionsAction","actions","onChangeView","newView","settings","hideTitleFromUI","titleId","getItemId","isLoading","supportedLayouts"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\tButton,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\nimport { getQueryArgs } from '@wordpress/url';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tuseState,\n\tuseMemo,\n\tuseCallback,\n\tuseId,\n\tuseEffect,\n} from '@wordpress/element';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport {\n\tIcon,\n\theader,\n\tfooter,\n\tsymbolFilled as uncategorized,\n\tsymbol,\n\tlockSmall,\n} from '@wordpress/icons';\nimport { usePrevious } from '@wordpress/compose';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { Async } from '../async';\nimport Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_SYNC_TYPES,\n\tPATTERN_DEFAULT_CATEGORY,\n\tENUMERATION_TYPE,\n\tOPERATOR_IS,\n} from '../../utils/constants';\nimport {\n\texportJSONaction,\n\trenameAction,\n\tresetAction,\n\tdeleteAction,\n\tduplicatePatternAction,\n\tduplicateTemplatePartAction,\n} from './dataviews-pattern-actions';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns from './use-patterns';\nimport PatternsHeader from './header';\nimport { useLink } from '../routes/link';\nimport { useAddedBy } from '../page-templates-template-parts/hooks';\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useHistory } = unlock( routerPrivateApis );\n\nconst templatePartIcons = { header, footer, uncategorized };\nconst EMPTY_ARRAY = [];\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t\tbadgeFields: [ 'sync-status' ],\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\thiddenFields: [ 'sync-status' ],\n\tlayout: {\n\t\t...defaultConfigPerViewType[ LAYOUT_GRID ],\n\t},\n\tfilters: [],\n};\n\nconst SYNC_FILTERS = [\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.full,\n\t\tlabel: _x( 'Synced', 'Option that shows all synchronized patterns' ),\n\t\tdescription: __( 'Patterns that are kept in sync across the site.' ),\n\t},\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.unsynced,\n\t\tlabel: _x(\n\t\t\t'Not synced',\n\t\t\t'Option that shows all patterns that are not synchronized'\n\t\t),\n\t\tdescription: __(\n\t\t\t'Patterns that can be changed freely without affecting the site.'\n\t\t),\n\t},\n];\n\nfunction PreviewWrapper( { item, onClick, ariaDescribedBy, children } ) {\n\tif ( item.type === PATTERN_TYPES.theme ) {\n\t\treturn children;\n\t}\n\treturn (\n\t\t<button\n\t\t\tclassName=\"page-patterns-preview-field__button\"\n\t\t\ttype=\"button\"\n\t\t\tonClick={ onClick }\n\t\t\taria-label={ item.title }\n\t\t\taria-describedby={ ariaDescribedBy }\n\t\t>\n\t\t\t{ children }\n\t\t</button>\n\t);\n}\n\nfunction Preview( { item, categoryId, viewType } ) {\n\tconst descriptionId = useId();\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isNonUserPattern = item.type === PATTERN_TYPES.theme;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst isEmpty = ! item.blocks?.length;\n\t// Only custom patterns or custom template parts can be renamed or deleted.\n\tconst isCustomPattern =\n\t\tisUserPattern || ( isTemplatePart && item.isCustom );\n\tconst ariaDescriptions = [];\n\tif ( isCustomPattern ) {\n\t\t// User patterns don't have descriptions, but can be edited and deleted, so include some help text.\n\t\tariaDescriptions.push(\n\t\t\t__( 'Press Enter to edit, or Delete to delete the pattern.' )\n\t\t);\n\t} else if ( item.description ) {\n\t\tariaDescriptions.push( item.description );\n\t}\n\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t\tcanvas: 'edit',\n\t} );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ `page-patterns-preview-field is-viewtype-${ viewType }` }\n\t\t\tstyle={ { backgroundColor } }\n\t\t>\n\t\t\t<PreviewWrapper\n\t\t\t\titem={ item }\n\t\t\t\tonClick={ onClick }\n\t\t\t\tariaDescribedBy={\n\t\t\t\t\tariaDescriptions.length\n\t\t\t\t\t\t? ariaDescriptions\n\t\t\t\t\t\t\t\t.map(\n\t\t\t\t\t\t\t\t\t( _, index ) =>\n\t\t\t\t\t\t\t\t\t\t`${ descriptionId }-${ index }`\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t.join( ' ' )\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{ isEmpty && isTemplatePart && __( 'Empty template part' ) }\n\t\t\t\t{ isEmpty && ! isTemplatePart && __( 'Empty pattern' ) }\n\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t<Async>\n\t\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\t\tblocks={ item.blocks }\n\t\t\t\t\t\t\tviewportWidth={ item.viewportWidth }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Async>\n\t\t\t\t) }\n\t\t\t</PreviewWrapper>\n\t\t\t{ ! isNonUserPattern &&\n\t\t\t\tariaDescriptions.map( ( ariaDescription, index ) => (\n\t\t\t\t\t<div\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\thidden\n\t\t\t\t\t\tid={ `${ descriptionId }-${ index }` }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ariaDescription }\n\t\t\t\t\t</div>\n\t\t\t\t) ) }\n\t\t</div>\n\t);\n}\n\nfunction Author( { item, viewType } ) {\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\tconst withIcon = viewType !== LAYOUT_LIST;\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 1 }>\n\t\t\t{ withIcon && imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'page-templates-author-field__avatar',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t\t}\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ withIcon && ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Title( { item, categoryId } ) {\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isNonUserPattern = item.type === PATTERN_TYPES.theme;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tlet itemIcon;\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t\tcanvas: 'edit',\n\t} );\n\tif ( ! isUserPattern && templatePartIcons[ categoryId ] ) {\n\t\titemIcon = templatePartIcons[ categoryId ];\n\t} else {\n\t\titemIcon =\n\t\t\titem.syncStatus === PATTERN_SYNC_TYPES.full ? symbol : undefined;\n\t}\n\treturn (\n\t\t<HStack alignment=\"center\" justify=\"flex-start\" spacing={ 2 }>\n\t\t\t<Flex\n\t\t\t\tas=\"div\"\n\t\t\t\tgap={ 0 }\n\t\t\t\tjustify=\"left\"\n\t\t\t\tclassName=\"edit-site-patterns__pattern-title\"\n\t\t\t>\n\t\t\t\t{ item.type === PATTERN_TYPES.theme ? (\n\t\t\t\t\titem.title\n\t\t\t\t) : (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t// Required for the grid's roving tab index system.\n\t\t\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/51898#discussion_r1243399243.\n\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ item.title || item.name }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t</Flex>\n\t\t\t{ itemIcon && ! isNonUserPattern && (\n\t\t\t\t<Tooltip\n\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\ttext={ __(\n\t\t\t\t\t\t'Editing this pattern will also update anywhere it is used'\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-icon\"\n\t\t\t\t\t\ticon={ itemIcon }\n\t\t\t\t\t/>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t\t{ item.type === PATTERN_TYPES.theme && (\n\t\t\t\t<Tooltip\n\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\ttext={ __( 'This pattern cannot be edited.' ) }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-lock-icon\"\n\t\t\t\t\t\ticon={ lockSmall }\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t/>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t</HStack>\n\t);\n}\n\nexport default function DataviewsPatterns() {\n\tconst { categoryType, categoryId = PATTERN_DEFAULT_CATEGORY } =\n\t\tgetQueryArgs( window.location.href );\n\tconst type = categoryType || PATTERN_TYPES.theme;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst isUncategorizedThemePatterns =\n\t\ttype === PATTERN_TYPES.theme && categoryId === 'uncategorized';\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns(\n\t\ttype,\n\t\tisUncategorizedThemePatterns ? '' : categoryId,\n\t\t{\n\t\t\tsearch: view.search,\n\t\t\tsyncStatus: viewSyncStatus,\n\t\t}\n\t);\n\n\tconst { records } = useEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, {\n\t\tper_page: -1,\n\t} );\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo( () => {\n\t\tconst _fields = [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Preview\n\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\tviewType={ view.type }\n\t\t\t\t\t/>\n\t\t\t\t),\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Title item={ item } categoryId={ categoryId } />\n\t\t\t\t),\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t];\n\n\t\tif ( type === PATTERN_TYPES.theme ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Sync status' ),\n\t\t\t\tid: 'sync-status',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\t// User patterns can have their sync statuses checked directly.\n\t\t\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclassName={ `edit-site-patterns__field-sync-status-${ item.syncStatus }` }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ SYNC_FILTERS.find(\n\t\t\t\t\t\t\t\t( { value } ) => value === item.syncStatus\n\t\t\t\t\t\t\t)?.label ||\n\t\t\t\t\t\t\t\tSYNC_FILTERS.find(\n\t\t\t\t\t\t\t\t\t( { value } ) =>\n\t\t\t\t\t\t\t\t\t\tvalue === PATTERN_SYNC_TYPES.unsynced\n\t\t\t\t\t\t\t\t).label }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\ttype: ENUMERATION_TYPE,\n\t\t\t\telements: SYNC_FILTERS,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [ OPERATOR_IS ],\n\t\t\t\t\tisPrimary: true,\n\t\t\t\t},\n\t\t\t\tenableSorting: false,\n\t\t\t} );\n\t\t} else if ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item.templatePart.author_text,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <Author viewType={ view.type } item={ item } />;\n\t\t\t\t},\n\t\t\t\ttype: ENUMERATION_TYPE,\n\t\t\t\telements: authors,\n\t\t\t\tfilterBy: {\n\t\t\t\t\tisPrimary: true,\n\t\t\t\t},\n\t\t\t\twidth: '1%',\n\t\t\t} );\n\t\t}\n\n\t\treturn _fields;\n\t}, [ view.type, categoryId, type, authors ] );\n\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif ( previousCategoryId !== categoryId ) {\n\t\t\tsetView( DEFAULT_VIEW );\n\t\t}\n\t}, [ categoryId, previousCategoryId ] );\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\t// Search is managed server-side as well as filters for patterns.\n\t\t// However, the author filter in template parts is done client-side.\n\t\tconst viewWithoutFilters = { ...view };\n\t\tdelete viewWithoutFilters.search;\n\t\tif ( type !== TEMPLATE_PART_POST_TYPE ) {\n\t\t\tviewWithoutFilters.filters = [];\n\t\t}\n\t\treturn filterSortAndPaginate( patterns, viewWithoutFilters, fields );\n\t}, [ patterns, view, fields, type ] );\n\n\tconst history = useHistory();\n\tconst onActionPerformed = useCallback(\n\t\t( actionId, items ) => {\n\t\t\tif ( actionId === 'edit-post' ) {\n\t\t\t\tconst post = items[ 0 ];\n\t\t\t\thistory.push( {\n\t\t\t\t\tpostId: post.id,\n\t\t\t\t\tpostType: post.type,\n\t\t\t\t\tcategoryId,\n\t\t\t\t\tcategoryType: type,\n\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history, categoryId, type ]\n\t);\n\tconst [ editAction, viewRevisionsAction ] = usePostActions(\n\t\tonActionPerformed,\n\t\t[ 'edit-post', 'view-post-revisions' ]\n\t);\n\tconst actions = useMemo( () => {\n\t\tif ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\treturn [\n\t\t\t\teditAction,\n\t\t\t\trenameAction,\n\t\t\t\tduplicateTemplatePartAction,\n\t\t\t\tviewRevisionsAction,\n\t\t\t\tresetAction,\n\t\t\t\tdeleteAction,\n\t\t\t];\n\t\t}\n\t\treturn [\n\t\t\trenameAction,\n\t\t\tduplicatePatternAction,\n\t\t\texportJSONaction,\n\t\t\tresetAction,\n\t\t\tdeleteAction,\n\t\t];\n\t}, [ type, editAction, viewRevisionsAction ] );\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView ]\n\t);\n\tconst id = useId();\n\tconst settings = usePatternSettings();\n\t// Wrap everything in a block editor provider.\n\t// This ensures 'styles' that are needed for the previews are synced\n\t// from the site editor store to the block editor store.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<Page\n\t\t\t\ttitle={ __( 'Patterns content' ) }\n\t\t\t\tclassName=\"edit-site-page-patterns-dataviews\"\n\t\t\t\thideTitleFromUI\n\t\t\t>\n\t\t\t\t<PatternsHeader\n\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\ttype={ type }\n\t\t\t\t\ttitleId={ `${ id }-title` }\n\t\t\t\t\tdescriptionId={ `${ id }-description` }\n\t\t\t\t/>\n\t\t\t\t<DataViews\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tfields={ fields }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tsupportedLayouts={ [ LAYOUT_GRID, LAYOUT_TABLE ] }\n\t\t\t\t/>\n\t\t\t</Page>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}