@wordpress/edit-site 5.33.0 → 5.35.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 (543) hide show
  1. package/CHANGELOG.md +11 -3
  2. package/build/components/add-new-page/index.js +3 -0
  3. package/build/components/add-new-page/index.js.map +1 -1
  4. package/build/components/add-new-pattern/index.js +8 -7
  5. package/build/components/add-new-pattern/index.js.map +1 -1
  6. package/build/components/add-new-template/add-custom-generic-template-modal-content.js +3 -0
  7. package/build/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -1
  8. package/build/components/add-new-template/add-custom-template-modal-content.js +3 -1
  9. package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  10. package/build/components/add-new-template/index.js +2 -2
  11. package/build/components/add-new-template/index.js.map +1 -1
  12. package/build/components/app/index.js +4 -2
  13. package/build/components/app/index.js.map +1 -1
  14. package/build/components/block-editor/editor-canvas.js +4 -18
  15. package/build/components/block-editor/editor-canvas.js.map +1 -1
  16. package/build/components/block-editor/resize-handle.js +20 -5
  17. package/build/components/block-editor/resize-handle.js.map +1 -1
  18. package/build/components/block-editor/site-editor-canvas.js +2 -2
  19. package/build/components/block-editor/site-editor-canvas.js.map +1 -1
  20. package/build/components/create-template-part-modal/index.js +3 -0
  21. package/build/components/create-template-part-modal/index.js.map +1 -1
  22. package/build/components/dataviews-actions/index.js +46 -0
  23. package/build/components/dataviews-actions/index.js.map +1 -0
  24. package/build/components/editor/index.js +95 -16
  25. package/build/components/editor/index.js.map +1 -1
  26. package/build/components/global-styles/background-panel.js +13 -1
  27. package/build/components/global-styles/background-panel.js.map +1 -1
  28. package/build/components/global-styles/color-indicator-wrapper.js +2 -2
  29. package/build/components/global-styles/color-indicator-wrapper.js.map +1 -1
  30. package/build/components/global-styles/color-palette-panel.js +5 -2
  31. package/build/components/global-styles/color-palette-panel.js.map +1 -1
  32. package/build/components/global-styles/font-library-modal/context.js +9 -3
  33. package/build/components/global-styles/font-library-modal/context.js.map +1 -1
  34. package/build/components/global-styles/font-library-modal/font-collection.js +7 -2
  35. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  36. package/build/components/global-styles/font-library-modal/installed-fonts.js +22 -20
  37. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  38. package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js +6 -2
  39. package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -1
  40. package/build/components/global-styles/gradients-palette-panel.js +1 -2
  41. package/build/components/global-styles/gradients-palette-panel.js.map +1 -1
  42. package/build/components/global-styles/hooks.js +5 -2
  43. package/build/components/global-styles/hooks.js.map +1 -1
  44. package/build/components/global-styles/icon-with-current-color.js +2 -2
  45. package/build/components/global-styles/icon-with-current-color.js.map +1 -1
  46. package/build/components/global-styles/preset-colors.js +29 -0
  47. package/build/components/global-styles/preset-colors.js.map +1 -0
  48. package/build/components/global-styles/preview-colors.js +3 -7
  49. package/build/components/global-styles/preview-colors.js.map +1 -1
  50. package/build/components/global-styles/screen-color-palette.js +5 -5
  51. package/build/components/global-styles/screen-color-palette.js.map +1 -1
  52. package/build/components/global-styles/screen-colors.js +1 -4
  53. package/build/components/global-styles/screen-colors.js.map +1 -1
  54. package/build/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
  55. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  56. package/build/components/global-styles/style-variations-container.js +8 -2
  57. package/build/components/global-styles/style-variations-container.js.map +1 -1
  58. package/build/components/global-styles/typography-example.js +5 -2
  59. package/build/components/global-styles/typography-example.js.map +1 -1
  60. package/build/components/global-styles/ui.js +4 -1
  61. package/build/components/global-styles/ui.js.map +1 -1
  62. package/build/components/global-styles/variations/variation.js +12 -6
  63. package/build/components/global-styles/variations/variation.js.map +1 -1
  64. package/build/components/global-styles/variations/variations-color.js +5 -5
  65. package/build/components/global-styles/variations/variations-color.js.map +1 -1
  66. package/build/components/global-styles-sidebar/default-sidebar.js.map +1 -0
  67. package/build/components/{sidebar-edit-mode/global-styles-sidebar.js → global-styles-sidebar/index.js} +8 -5
  68. package/build/components/global-styles-sidebar/index.js.map +1 -0
  69. package/build/components/header-edit-mode/index.js +21 -137
  70. package/build/components/header-edit-mode/index.js.map +1 -1
  71. package/build/components/header-edit-mode/more-menu/index.js +3 -97
  72. package/build/components/header-edit-mode/more-menu/index.js.map +1 -1
  73. package/build/components/keyboard-shortcuts/register.js +0 -49
  74. package/build/components/keyboard-shortcuts/register.js.map +1 -1
  75. package/build/components/layout/index.js +9 -9
  76. package/build/components/layout/index.js.map +1 -1
  77. package/build/components/layout/router.js +70 -44
  78. package/build/components/layout/router.js.map +1 -1
  79. package/build/components/page/index.js +2 -2
  80. package/build/components/page/index.js.map +1 -1
  81. package/build/components/page-pages/index.js +4 -14
  82. package/build/components/page-pages/index.js.map +1 -1
  83. package/build/components/page-patterns/dataviews-pattern-actions.js +15 -87
  84. package/build/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
  85. package/build/components/page-patterns/header.js +3 -1
  86. package/build/components/page-patterns/header.js.map +1 -1
  87. package/build/components/page-patterns/index.js +28 -68
  88. package/build/components/page-patterns/index.js.map +1 -1
  89. package/build/components/page-patterns/use-patterns.js +1 -0
  90. package/build/components/page-patterns/use-patterns.js.map +1 -1
  91. package/build/components/page-templates/hooks.js.map +1 -0
  92. package/build/components/{page-templates-template-parts → page-templates}/index.js +73 -94
  93. package/build/components/page-templates/index.js.map +1 -0
  94. package/build/components/pagination/index.js +2 -2
  95. package/build/components/pagination/index.js.map +1 -1
  96. package/build/components/pattern-modal/duplicate.js +7 -5
  97. package/build/components/pattern-modal/duplicate.js.map +1 -1
  98. package/build/components/plugin-template-setting-panel/index.js +9 -0
  99. package/build/components/plugin-template-setting-panel/index.js.map +1 -1
  100. package/build/components/resizable-frame/index.js +20 -9
  101. package/build/components/resizable-frame/index.js.map +1 -1
  102. package/build/components/revisions/index.js +5 -2
  103. package/build/components/revisions/index.js.map +1 -1
  104. package/build/components/save-panel/index.js +4 -4
  105. package/build/components/save-panel/index.js.map +1 -1
  106. package/build/components/sidebar/index.js +61 -31
  107. package/build/components/sidebar/index.js.map +1 -1
  108. package/build/components/sidebar-button/index.js +2 -2
  109. package/build/components/sidebar-button/index.js.map +1 -1
  110. package/build/components/sidebar-dataviews/dataview-item.js +2 -2
  111. package/build/components/sidebar-dataviews/dataview-item.js.map +1 -1
  112. package/build/components/sidebar-navigation-item/index.js +5 -3
  113. package/build/components/sidebar-navigation-item/index.js.map +1 -1
  114. package/build/components/sidebar-navigation-screen/index.js +6 -32
  115. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  116. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -2
  117. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
  118. package/build/components/sidebar-navigation-screen-global-styles/index.js +4 -1
  119. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  120. package/build/components/sidebar-navigation-screen-navigation-menu/index.js +10 -3
  121. package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  122. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +16 -1
  123. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  124. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -0
  125. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
  126. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +16 -6
  127. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  128. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +2 -9
  129. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  130. package/build/components/sidebar-navigation-screen-page/index.js +39 -8
  131. package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
  132. package/build/components/sidebar-navigation-screen-page/status-label.js +2 -2
  133. package/build/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
  134. package/build/components/sidebar-navigation-screen-pattern/index.js +3 -15
  135. package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
  136. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +3 -1
  137. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -1
  138. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +1 -1
  139. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  140. package/build/components/sidebar-navigation-screen-patterns/category-item.js +3 -2
  141. package/build/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  142. package/build/components/sidebar-navigation-screen-patterns/index.js +25 -29
  143. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  144. package/build/components/sidebar-navigation-screen-template/index.js +5 -2
  145. package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
  146. package/build/components/sidebar-navigation-screen-templates-browse/content.js +3 -3
  147. package/build/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
  148. package/build/components/sidebar-navigation-screen-templates-browse/index.js +6 -33
  149. package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  150. package/build/components/site-hub/index.js +3 -3
  151. package/build/components/site-hub/index.js.map +1 -1
  152. package/build/components/site-icon/index.js +2 -2
  153. package/build/components/site-icon/index.js.map +1 -1
  154. package/build/components/style-book/index.js +10 -7
  155. package/build/components/style-book/index.js.map +1 -1
  156. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +0 -8
  157. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  158. package/build/components/template-actions/index.js +1 -1
  159. package/build/components/template-actions/index.js.map +1 -1
  160. package/build/components/template-part-converter/index.js +18 -1
  161. package/build/components/template-part-converter/index.js.map +1 -1
  162. package/build/deprecated.js +55 -0
  163. package/build/deprecated.js.map +1 -0
  164. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +40 -6
  165. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  166. package/build/index.js +18 -18
  167. package/build/index.js.map +1 -1
  168. package/build/utils/constants.js +1 -2
  169. package/build/utils/constants.js.map +1 -1
  170. package/build/utils/get-is-list-page.js +1 -1
  171. package/build/utils/get-is-list-page.js.map +1 -1
  172. package/build/utils/use-activate-theme.js +9 -6
  173. package/build/utils/use-activate-theme.js.map +1 -1
  174. package/build-module/components/add-new-page/index.js +3 -0
  175. package/build-module/components/add-new-page/index.js.map +1 -1
  176. package/build-module/components/add-new-pattern/index.js +8 -7
  177. package/build-module/components/add-new-pattern/index.js.map +1 -1
  178. package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js +3 -0
  179. package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -1
  180. package/build-module/components/add-new-template/add-custom-template-modal-content.js +3 -1
  181. package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  182. package/build-module/components/add-new-template/index.js +2 -2
  183. package/build-module/components/add-new-template/index.js.map +1 -1
  184. package/build-module/components/app/index.js +4 -2
  185. package/build-module/components/app/index.js.map +1 -1
  186. package/build-module/components/block-editor/editor-canvas.js +4 -18
  187. package/build-module/components/block-editor/editor-canvas.js.map +1 -1
  188. package/build-module/components/block-editor/resize-handle.js +21 -6
  189. package/build-module/components/block-editor/resize-handle.js.map +1 -1
  190. package/build-module/components/block-editor/site-editor-canvas.js +2 -2
  191. package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
  192. package/build-module/components/create-template-part-modal/index.js +3 -0
  193. package/build-module/components/create-template-part-modal/index.js.map +1 -1
  194. package/build-module/components/dataviews-actions/index.js +38 -0
  195. package/build-module/components/dataviews-actions/index.js.map +1 -0
  196. package/build-module/components/editor/index.js +96 -17
  197. package/build-module/components/editor/index.js.map +1 -1
  198. package/build-module/components/global-styles/background-panel.js +12 -1
  199. package/build-module/components/global-styles/background-panel.js.map +1 -1
  200. package/build-module/components/global-styles/color-indicator-wrapper.js +2 -2
  201. package/build-module/components/global-styles/color-indicator-wrapper.js.map +1 -1
  202. package/build-module/components/global-styles/color-palette-panel.js +4 -2
  203. package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
  204. package/build-module/components/global-styles/font-library-modal/context.js +9 -3
  205. package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
  206. package/build-module/components/global-styles/font-library-modal/font-collection.js +7 -2
  207. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  208. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +22 -20
  209. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  210. package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js +6 -2
  211. package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -1
  212. package/build-module/components/global-styles/gradients-palette-panel.js +1 -2
  213. package/build-module/components/global-styles/gradients-palette-panel.js.map +1 -1
  214. package/build-module/components/global-styles/hooks.js +4 -1
  215. package/build-module/components/global-styles/hooks.js.map +1 -1
  216. package/build-module/components/global-styles/icon-with-current-color.js +2 -2
  217. package/build-module/components/global-styles/icon-with-current-color.js.map +1 -1
  218. package/build-module/components/global-styles/preset-colors.js +22 -0
  219. package/build-module/components/global-styles/preset-colors.js.map +1 -0
  220. package/build-module/components/global-styles/preview-colors.js +3 -7
  221. package/build-module/components/global-styles/preview-colors.js.map +1 -1
  222. package/build-module/components/global-styles/screen-color-palette.js +5 -5
  223. package/build-module/components/global-styles/screen-color-palette.js.map +1 -1
  224. package/build-module/components/global-styles/screen-colors.js +1 -4
  225. package/build-module/components/global-styles/screen-colors.js.map +1 -1
  226. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
  227. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  228. package/build-module/components/global-styles/style-variations-container.js +8 -2
  229. package/build-module/components/global-styles/style-variations-container.js.map +1 -1
  230. package/build-module/components/global-styles/typography-example.js +4 -1
  231. package/build-module/components/global-styles/typography-example.js.map +1 -1
  232. package/build-module/components/global-styles/ui.js +4 -1
  233. package/build-module/components/global-styles/ui.js.map +1 -1
  234. package/build-module/components/global-styles/variations/variation.js +11 -5
  235. package/build-module/components/global-styles/variations/variation.js.map +1 -1
  236. package/build-module/components/global-styles/variations/variations-color.js +6 -6
  237. package/build-module/components/global-styles/variations/variations-color.js.map +1 -1
  238. package/build-module/components/global-styles-sidebar/default-sidebar.js.map +1 -0
  239. package/build-module/components/{sidebar-edit-mode/global-styles-sidebar.js → global-styles-sidebar/index.js} +8 -5
  240. package/build-module/components/global-styles-sidebar/index.js.map +1 -0
  241. package/build-module/components/header-edit-mode/index.js +22 -138
  242. package/build-module/components/header-edit-mode/index.js.map +1 -1
  243. package/build-module/components/header-edit-mode/more-menu/index.js +5 -99
  244. package/build-module/components/header-edit-mode/more-menu/index.js.map +1 -1
  245. package/build-module/components/keyboard-shortcuts/register.js +0 -49
  246. package/build-module/components/keyboard-shortcuts/register.js.map +1 -1
  247. package/build-module/components/layout/index.js +9 -9
  248. package/build-module/components/layout/index.js.map +1 -1
  249. package/build-module/components/layout/router.js +70 -45
  250. package/build-module/components/layout/router.js.map +1 -1
  251. package/build-module/components/page/index.js +2 -2
  252. package/build-module/components/page/index.js.map +1 -1
  253. package/build-module/components/page-pages/index.js +5 -15
  254. package/build-module/components/page-pages/index.js.map +1 -1
  255. package/build-module/components/page-patterns/dataviews-pattern-actions.js +15 -87
  256. package/build-module/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
  257. package/build-module/components/page-patterns/header.js +3 -1
  258. package/build-module/components/page-patterns/header.js.map +1 -1
  259. package/build-module/components/page-patterns/index.js +31 -71
  260. package/build-module/components/page-patterns/index.js.map +1 -1
  261. package/build-module/components/page-patterns/use-patterns.js +1 -0
  262. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  263. package/build-module/components/page-templates/hooks.js.map +1 -0
  264. package/build-module/components/{page-templates-template-parts → page-templates}/index.js +73 -94
  265. package/build-module/components/page-templates/index.js.map +1 -0
  266. package/build-module/components/pagination/index.js +2 -2
  267. package/build-module/components/pagination/index.js.map +1 -1
  268. package/build-module/components/pattern-modal/duplicate.js +7 -5
  269. package/build-module/components/pattern-modal/duplicate.js.map +1 -1
  270. package/build-module/components/plugin-template-setting-panel/index.js +8 -0
  271. package/build-module/components/plugin-template-setting-panel/index.js.map +1 -1
  272. package/build-module/components/resizable-frame/index.js +21 -10
  273. package/build-module/components/resizable-frame/index.js.map +1 -1
  274. package/build-module/components/revisions/index.js +4 -1
  275. package/build-module/components/revisions/index.js.map +1 -1
  276. package/build-module/components/save-panel/index.js +4 -4
  277. package/build-module/components/save-panel/index.js.map +1 -1
  278. package/build-module/components/sidebar/index.js +62 -32
  279. package/build-module/components/sidebar/index.js.map +1 -1
  280. package/build-module/components/sidebar-button/index.js +2 -2
  281. package/build-module/components/sidebar-button/index.js.map +1 -1
  282. package/build-module/components/sidebar-dataviews/dataview-item.js +2 -2
  283. package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
  284. package/build-module/components/sidebar-navigation-item/index.js +5 -3
  285. package/build-module/components/sidebar-navigation-item/index.js.map +1 -1
  286. package/build-module/components/sidebar-navigation-screen/index.js +6 -32
  287. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  288. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -2
  289. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
  290. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +4 -1
  291. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  292. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js +10 -3
  293. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  294. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +16 -1
  295. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  296. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -0
  297. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
  298. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +16 -6
  299. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  300. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +2 -9
  301. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  302. package/build-module/components/sidebar-navigation-screen-page/index.js +40 -9
  303. package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
  304. package/build-module/components/sidebar-navigation-screen-page/status-label.js +2 -2
  305. package/build-module/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
  306. package/build-module/components/sidebar-navigation-screen-pattern/index.js +3 -15
  307. package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
  308. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +3 -1
  309. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -1
  310. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +1 -1
  311. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  312. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js +3 -2
  313. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  314. package/build-module/components/sidebar-navigation-screen-patterns/index.js +26 -30
  315. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  316. package/build-module/components/sidebar-navigation-screen-template/index.js +5 -2
  317. package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
  318. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js +3 -3
  319. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
  320. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +6 -33
  321. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  322. package/build-module/components/site-hub/index.js +3 -3
  323. package/build-module/components/site-hub/index.js.map +1 -1
  324. package/build-module/components/site-icon/index.js +2 -2
  325. package/build-module/components/site-icon/index.js.map +1 -1
  326. package/build-module/components/style-book/index.js +9 -6
  327. package/build-module/components/style-book/index.js.map +1 -1
  328. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +0 -8
  329. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  330. package/build-module/components/template-actions/index.js +1 -1
  331. package/build-module/components/template-actions/index.js.map +1 -1
  332. package/build-module/components/template-part-converter/index.js +18 -1
  333. package/build-module/components/template-part-converter/index.js.map +1 -1
  334. package/build-module/deprecated.js +45 -0
  335. package/build-module/deprecated.js.map +1 -0
  336. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +38 -5
  337. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  338. package/build-module/index.js +2 -4
  339. package/build-module/index.js.map +1 -1
  340. package/build-module/utils/constants.js +0 -1
  341. package/build-module/utils/constants.js.map +1 -1
  342. package/build-module/utils/get-is-list-page.js +1 -1
  343. package/build-module/utils/get-is-list-page.js.map +1 -1
  344. package/build-module/utils/use-activate-theme.js +9 -6
  345. package/build-module/utils/use-activate-theme.js.map +1 -1
  346. package/build-style/style-rtl.css +208 -484
  347. package/build-style/style.css +208 -484
  348. package/package.json +43 -45
  349. package/src/components/add-new-page/index.js +7 -1
  350. package/src/components/add-new-pattern/index.js +15 -12
  351. package/src/components/add-new-template/add-custom-generic-template-modal-content.js +3 -0
  352. package/src/components/add-new-template/add-custom-template-modal-content.js +3 -1
  353. package/src/components/add-new-template/index.js +2 -2
  354. package/src/components/app/index.js +5 -2
  355. package/src/components/block-editor/editor-canvas.js +6 -26
  356. package/src/components/block-editor/resize-handle.js +30 -11
  357. package/src/components/block-editor/site-editor-canvas.js +2 -2
  358. package/src/components/block-editor/style.scss +12 -17
  359. package/src/components/create-template-part-modal/index.js +3 -0
  360. package/src/components/dataviews-actions/index.js +38 -0
  361. package/src/components/editor/index.js +117 -18
  362. package/src/components/editor/style.scss +6 -5
  363. package/src/components/global-styles/background-panel.js +17 -2
  364. package/src/components/global-styles/color-indicator-wrapper.js +2 -2
  365. package/src/components/global-styles/color-palette-panel.js +3 -4
  366. package/src/components/global-styles/font-library-modal/context.js +9 -3
  367. package/src/components/global-styles/font-library-modal/font-collection.js +31 -12
  368. package/src/components/global-styles/font-library-modal/installed-fonts.js +82 -54
  369. package/src/components/global-styles/font-library-modal/style.scss +17 -0
  370. package/src/components/global-styles/font-library-modal/utils/sort-font-faces.js +6 -2
  371. package/src/components/global-styles/gradients-palette-panel.js +1 -4
  372. package/src/components/global-styles/hooks.js +2 -1
  373. package/src/components/global-styles/icon-with-current-color.js +2 -2
  374. package/src/components/global-styles/preset-colors.js +18 -0
  375. package/src/components/global-styles/preview-colors.js +4 -7
  376. package/src/components/global-styles/screen-color-palette.js +4 -4
  377. package/src/components/global-styles/screen-colors.js +0 -2
  378. package/src/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
  379. package/src/components/global-styles/stories/index.story.js +2 -1
  380. package/src/components/global-styles/style-variations-container.js +11 -2
  381. package/src/components/global-styles/typography-example.js +2 -1
  382. package/src/components/global-styles/ui.js +5 -1
  383. package/src/components/global-styles/variations/style.scss +15 -31
  384. package/src/components/global-styles/variations/variation.js +13 -10
  385. package/src/components/global-styles/variations/variations-color.js +5 -8
  386. package/src/components/{sidebar-edit-mode/global-styles-sidebar.js → global-styles-sidebar/index.js} +7 -2
  387. package/src/components/{sidebar-edit-mode → global-styles-sidebar}/style.scss +0 -11
  388. package/src/components/header-edit-mode/index.js +25 -184
  389. package/src/components/header-edit-mode/more-menu/index.js +8 -145
  390. package/src/components/header-edit-mode/style.scss +1 -271
  391. package/src/components/keyboard-shortcuts/register.js +0 -58
  392. package/src/components/layout/index.js +14 -10
  393. package/src/components/layout/router.js +66 -56
  394. package/src/components/layout/style.scss +2 -1
  395. package/src/components/page/index.js +2 -2
  396. package/src/components/page-pages/index.js +8 -28
  397. package/src/components/page-patterns/dataviews-pattern-actions.js +11 -101
  398. package/src/components/page-patterns/header.js +3 -1
  399. package/src/components/page-patterns/index.js +32 -110
  400. package/src/components/page-patterns/style.scss +14 -1
  401. package/src/components/page-patterns/use-patterns.js +1 -0
  402. package/src/components/{page-templates-template-parts → page-templates}/index.js +33 -75
  403. package/src/components/{page-templates-template-parts → page-templates}/style.scss +2 -2
  404. package/src/components/pagination/index.js +2 -2
  405. package/src/components/pattern-modal/duplicate.js +4 -3
  406. package/src/components/plugin-template-setting-panel/index.js +8 -0
  407. package/src/components/resizable-frame/index.js +20 -7
  408. package/src/components/revisions/index.js +2 -1
  409. package/src/components/save-panel/index.js +4 -4
  410. package/src/components/sidebar/index.js +61 -37
  411. package/src/components/sidebar-button/index.js +2 -5
  412. package/src/components/sidebar-dataviews/dataview-item.js +4 -7
  413. package/src/components/sidebar-navigation-item/index.js +3 -3
  414. package/src/components/sidebar-navigation-screen/index.js +7 -31
  415. package/src/components/sidebar-navigation-screen/style.scss +11 -9
  416. package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -2
  417. package/src/components/sidebar-navigation-screen-global-styles/index.js +2 -1
  418. package/src/components/sidebar-navigation-screen-navigation-menu/index.js +6 -1
  419. package/src/components/sidebar-navigation-screen-navigation-menu/more-menu.js +18 -1
  420. package/src/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -0
  421. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +8 -4
  422. package/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +0 -10
  423. package/src/components/sidebar-navigation-screen-page/index.js +48 -9
  424. package/src/components/sidebar-navigation-screen-page/status-label.js +2 -2
  425. package/src/components/sidebar-navigation-screen-pattern/index.js +1 -12
  426. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +3 -1
  427. package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +1 -1
  428. package/src/components/sidebar-navigation-screen-patterns/category-item.js +2 -1
  429. package/src/components/sidebar-navigation-screen-patterns/index.js +20 -39
  430. package/src/components/sidebar-navigation-screen-template/index.js +3 -2
  431. package/src/components/sidebar-navigation-screen-templates-browse/content.js +3 -3
  432. package/src/components/sidebar-navigation-screen-templates-browse/index.js +8 -39
  433. package/src/components/site-hub/index.js +3 -3
  434. package/src/components/site-icon/index.js +2 -2
  435. package/src/components/style-book/index.js +7 -6
  436. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +0 -4
  437. package/src/components/template-actions/index.js +1 -1
  438. package/src/components/template-part-converter/index.js +16 -3
  439. package/src/deprecated.js +42 -0
  440. package/src/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +71 -17
  441. package/src/index.js +2 -9
  442. package/src/style.scss +2 -16
  443. package/src/utils/constants.js +1 -1
  444. package/src/utils/get-is-list-page.js +1 -3
  445. package/src/utils/use-activate-theme.js +4 -4
  446. package/build/components/global-styles/global-styles-provider.js +0 -129
  447. package/build/components/global-styles/global-styles-provider.js.map +0 -1
  448. package/build/components/header-edit-mode/document-tools/index.js +0 -68
  449. package/build/components/header-edit-mode/document-tools/index.js.map +0 -1
  450. package/build/components/header-edit-mode/more-menu/copy-content-menu-item.js +0 -59
  451. package/build/components/header-edit-mode/more-menu/copy-content-menu-item.js.map +0 -1
  452. package/build/components/header-edit-mode/tools-more-menu-group/index.js +0 -23
  453. package/build/components/header-edit-mode/tools-more-menu-group/index.js.map +0 -1
  454. package/build/components/keyboard-shortcuts/edit-mode.js +0 -56
  455. package/build/components/keyboard-shortcuts/edit-mode.js.map +0 -1
  456. package/build/components/page-templates-template-parts/add-new-template-part.js +0 -65
  457. package/build/components/page-templates-template-parts/add-new-template-part.js.map +0 -1
  458. package/build/components/page-templates-template-parts/hooks.js.map +0 -1
  459. package/build/components/page-templates-template-parts/index.js.map +0 -1
  460. package/build/components/sidebar-edit-mode/default-sidebar.js.map +0 -1
  461. package/build/components/sidebar-edit-mode/global-styles-sidebar.js.map +0 -1
  462. package/build/components/sidebar-edit-mode/index.js +0 -146
  463. package/build/components/sidebar-edit-mode/index.js.map +0 -1
  464. package/build/components/sidebar-edit-mode/page-panels/index.js +0 -98
  465. package/build/components/sidebar-edit-mode/page-panels/index.js.map +0 -1
  466. package/build/components/sidebar-edit-mode/page-panels/page-content.js +0 -34
  467. package/build/components/sidebar-edit-mode/page-panels/page-content.js.map +0 -1
  468. package/build/components/sidebar-edit-mode/page-panels/page-status.js +0 -188
  469. package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +0 -1
  470. package/build/components/sidebar-edit-mode/page-panels/page-summary.js +0 -39
  471. package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +0 -1
  472. package/build/components/sidebar-edit-mode/settings-header/index.js +0 -42
  473. package/build/components/sidebar-edit-mode/settings-header/index.js.map +0 -1
  474. package/build/components/sidebar-edit-mode/template-panel/hooks.js +0 -86
  475. package/build/components/sidebar-edit-mode/template-panel/hooks.js.map +0 -1
  476. package/build/components/sidebar-edit-mode/template-panel/index.js +0 -130
  477. package/build/components/sidebar-edit-mode/template-panel/index.js.map +0 -1
  478. package/build/components/start-template-options/index.js +0 -191
  479. package/build/components/start-template-options/index.js.map +0 -1
  480. package/build/utils/math.js +0 -98
  481. package/build/utils/math.js.map +0 -1
  482. package/build-module/components/global-styles/global-styles-provider.js +0 -120
  483. package/build-module/components/global-styles/global-styles-provider.js.map +0 -1
  484. package/build-module/components/header-edit-mode/document-tools/index.js +0 -61
  485. package/build-module/components/header-edit-mode/document-tools/index.js.map +0 -1
  486. package/build-module/components/header-edit-mode/more-menu/copy-content-menu-item.js +0 -52
  487. package/build-module/components/header-edit-mode/more-menu/copy-content-menu-item.js.map +0 -1
  488. package/build-module/components/header-edit-mode/tools-more-menu-group/index.js +0 -16
  489. package/build-module/components/header-edit-mode/tools-more-menu-group/index.js.map +0 -1
  490. package/build-module/components/keyboard-shortcuts/edit-mode.js +0 -49
  491. package/build-module/components/keyboard-shortcuts/edit-mode.js.map +0 -1
  492. package/build-module/components/page-templates-template-parts/add-new-template-part.js +0 -57
  493. package/build-module/components/page-templates-template-parts/add-new-template-part.js.map +0 -1
  494. package/build-module/components/page-templates-template-parts/hooks.js.map +0 -1
  495. package/build-module/components/page-templates-template-parts/index.js.map +0 -1
  496. package/build-module/components/sidebar-edit-mode/default-sidebar.js.map +0 -1
  497. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js.map +0 -1
  498. package/build-module/components/sidebar-edit-mode/index.js +0 -137
  499. package/build-module/components/sidebar-edit-mode/index.js.map +0 -1
  500. package/build-module/components/sidebar-edit-mode/page-panels/index.js +0 -90
  501. package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +0 -1
  502. package/build-module/components/sidebar-edit-mode/page-panels/page-content.js +0 -27
  503. package/build-module/components/sidebar-edit-mode/page-panels/page-content.js.map +0 -1
  504. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js +0 -180
  505. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js.map +0 -1
  506. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +0 -31
  507. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +0 -1
  508. package/build-module/components/sidebar-edit-mode/settings-header/index.js +0 -35
  509. package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +0 -1
  510. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js +0 -79
  511. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js.map +0 -1
  512. package/build-module/components/sidebar-edit-mode/template-panel/index.js +0 -122
  513. package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +0 -1
  514. package/build-module/components/start-template-options/index.js +0 -184
  515. package/build-module/components/start-template-options/index.js.map +0 -1
  516. package/build-module/utils/math.js +0 -92
  517. package/build-module/utils/math.js.map +0 -1
  518. package/src/components/global-styles/global-styles-provider.js +0 -162
  519. package/src/components/header-edit-mode/document-tools/index.js +0 -68
  520. package/src/components/header-edit-mode/more-menu/copy-content-menu-item.js +0 -51
  521. package/src/components/header-edit-mode/tools-more-menu-group/index.js +0 -16
  522. package/src/components/keyboard-shortcuts/edit-mode.js +0 -59
  523. package/src/components/page-templates-template-parts/add-new-template-part.js +0 -62
  524. package/src/components/sidebar-edit-mode/index.js +0 -162
  525. package/src/components/sidebar-edit-mode/page-panels/index.js +0 -105
  526. package/src/components/sidebar-edit-mode/page-panels/page-content.js +0 -29
  527. package/src/components/sidebar-edit-mode/page-panels/page-status.js +0 -249
  528. package/src/components/sidebar-edit-mode/page-panels/page-summary.js +0 -49
  529. package/src/components/sidebar-edit-mode/page-panels/style.scss +0 -34
  530. package/src/components/sidebar-edit-mode/settings-header/index.js +0 -43
  531. package/src/components/sidebar-edit-mode/settings-header/style.scss +0 -14
  532. package/src/components/sidebar-edit-mode/template-panel/hooks.js +0 -114
  533. package/src/components/sidebar-edit-mode/template-panel/index.js +0 -144
  534. package/src/components/sidebar-edit-mode/template-panel/style.scss +0 -16
  535. package/src/components/start-template-options/index.js +0 -231
  536. package/src/components/start-template-options/style.scss +0 -55
  537. package/src/utils/math.js +0 -93
  538. /package/build/components/{sidebar-edit-mode → global-styles-sidebar}/default-sidebar.js +0 -0
  539. /package/build/components/{page-templates-template-parts → page-templates}/hooks.js +0 -0
  540. /package/build-module/components/{sidebar-edit-mode → global-styles-sidebar}/default-sidebar.js +0 -0
  541. /package/build-module/components/{page-templates-template-parts → page-templates}/hooks.js +0 -0
  542. /package/src/components/{sidebar-edit-mode → global-styles-sidebar}/default-sidebar.js +0 -0
  543. /package/src/components/{page-templates-template-parts → page-templates}/hooks.js +0 -0
@@ -2,18 +2,17 @@ import { createElement } from "react";
2
2
  /**
3
3
  * External dependencies
4
4
  */
5
- import classnames from 'classnames';
5
+ import clsx from 'clsx';
6
6
 
7
7
  /**
8
8
  * WordPress dependencies
9
9
  */
10
10
  import { __experimentalHStack as HStack, Button, Tooltip, Flex } from '@wordpress/components';
11
- import { getQueryArgs } from '@wordpress/url';
12
11
  import { __, _x } from '@wordpress/i18n';
13
12
  import { useState, useMemo, useCallback, useId, useEffect } from '@wordpress/element';
14
13
  import { BlockPreview, privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
15
14
  import { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';
16
- import { Icon, header, footer, symbolFilled as uncategorized, symbol, lockSmall } from '@wordpress/icons';
15
+ import { Icon, lockSmall } from '@wordpress/icons';
17
16
  import { usePrevious } from '@wordpress/compose';
18
17
  import { useEntityRecords } from '@wordpress/core-data';
19
18
  import { privateApis as editorPrivateApis } from '@wordpress/editor';
@@ -24,14 +23,15 @@ import { privateApis as routerPrivateApis } from '@wordpress/router';
24
23
  */
25
24
  import { Async } from '../async';
26
25
  import Page from '../page';
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';
28
- import { exportJSONaction, renameAction, resetAction, deleteAction, duplicatePatternAction, duplicateTemplatePartAction } from './dataviews-pattern-actions';
26
+ import { LAYOUT_GRID, LAYOUT_TABLE, LAYOUT_LIST, PATTERN_TYPES, TEMPLATE_PART_POST_TYPE, PATTERN_SYNC_TYPES, PATTERN_DEFAULT_CATEGORY, OPERATOR_IS } from '../../utils/constants';
27
+ import { exportJSONaction, resetAction, deleteAction, duplicatePatternAction, duplicateTemplatePartAction } from './dataviews-pattern-actions';
29
28
  import usePatternSettings from './use-pattern-settings';
30
29
  import { unlock } from '../../lock-unlock';
31
30
  import usePatterns from './use-patterns';
32
31
  import PatternsHeader from './header';
33
32
  import { useLink } from '../routes/link';
34
- import { useAddedBy } from '../page-templates-template-parts/hooks';
33
+ import { useAddedBy } from '../page-templates/hooks';
34
+ import { useEditPostAction } from '../dataviews-actions';
35
35
  const {
36
36
  ExperimentalBlockEditorProvider,
37
37
  useGlobalStyle
@@ -40,13 +40,8 @@ const {
40
40
  usePostActions
41
41
  } = unlock(editorPrivateApis);
42
42
  const {
43
- useHistory
43
+ useLocation
44
44
  } = unlock(routerPrivateApis);
45
- const templatePartIcons = {
46
- header,
47
- footer,
48
- uncategorized
49
- };
50
45
  const EMPTY_ARRAY = [];
51
46
  const defaultConfigPerViewType = {
52
47
  [LAYOUT_TABLE]: {
@@ -63,7 +58,7 @@ const DEFAULT_VIEW = {
63
58
  search: '',
64
59
  page: 1,
65
60
  perPage: 20,
66
- hiddenFields: ['sync-status'],
61
+ hiddenFields: [],
67
62
  layout: {
68
63
  ...defaultConfigPerViewType[LAYOUT_GRID]
69
64
  },
@@ -84,15 +79,13 @@ function PreviewWrapper({
84
79
  ariaDescribedBy,
85
80
  children
86
81
  }) {
87
- if (item.type === PATTERN_TYPES.theme) {
88
- return children;
89
- }
90
82
  return createElement("button", {
91
83
  className: "page-patterns-preview-field__button",
92
84
  type: "button",
93
- onClick: onClick,
85
+ onClick: item.type !== PATTERN_TYPES.theme ? onClick : undefined,
94
86
  "aria-label": item.title,
95
- "aria-describedby": ariaDescribedBy
87
+ "aria-describedby": ariaDescribedBy,
88
+ "aria-disabled": item.type === PATTERN_TYPES.theme
96
89
  }, children);
97
90
  }
98
91
  function Preview({
@@ -102,18 +95,8 @@ function Preview({
102
95
  }) {
103
96
  const descriptionId = useId();
104
97
  const isUserPattern = item.type === PATTERN_TYPES.user;
105
- const isNonUserPattern = item.type === PATTERN_TYPES.theme;
106
98
  const isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;
107
99
  const isEmpty = !item.blocks?.length;
108
- // Only custom patterns or custom template parts can be renamed or deleted.
109
- const isCustomPattern = isUserPattern || isTemplatePart && item.isCustom;
110
- const ariaDescriptions = [];
111
- if (isCustomPattern) {
112
- // User patterns don't have descriptions, but can be edited and deleted, so include some help text.
113
- ariaDescriptions.push(__('Press Enter to edit, or Delete to delete the pattern.'));
114
- } else if (item.description) {
115
- ariaDescriptions.push(item.description);
116
- }
117
100
  const [backgroundColor] = useGlobalStyle('color.background');
118
101
  const {
119
102
  onClick
@@ -132,15 +115,14 @@ function Preview({
132
115
  }, createElement(PreviewWrapper, {
133
116
  item: item,
134
117
  onClick: onClick,
135
- ariaDescribedBy: ariaDescriptions.length ? ariaDescriptions.map((_, index) => `${descriptionId}-${index}`).join(' ') : undefined
118
+ ariaDescribedBy: item.description ? descriptionId : undefined
136
119
  }, isEmpty && isTemplatePart && __('Empty template part'), isEmpty && !isTemplatePart && __('Empty pattern'), !isEmpty && createElement(Async, null, createElement(BlockPreview, {
137
120
  blocks: item.blocks,
138
121
  viewportWidth: item.viewportWidth
139
- }))), !isNonUserPattern && ariaDescriptions.map((ariaDescription, index) => createElement("div", {
140
- key: index,
122
+ }))), item.description && createElement("div", {
141
123
  hidden: true,
142
- id: `${descriptionId}-${index}`
143
- }, ariaDescription)));
124
+ id: descriptionId
125
+ }, item.description));
144
126
  }
145
127
  function Author({
146
128
  item,
@@ -157,7 +139,7 @@ function Author({
157
139
  alignment: "left",
158
140
  spacing: 1
159
141
  }, withIcon && imageUrl && createElement("div", {
160
- className: classnames('page-templates-author-field__avatar', {
142
+ className: clsx('page-templates-author-field__avatar', {
161
143
  'is-loaded': isImageLoaded
162
144
  })
163
145
  }, createElement("img", {
@@ -177,9 +159,7 @@ function Title({
177
159
  categoryId
178
160
  }) {
179
161
  const isUserPattern = item.type === PATTERN_TYPES.user;
180
- const isNonUserPattern = item.type === PATTERN_TYPES.theme;
181
162
  const isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;
182
- let itemIcon;
183
163
  const {
184
164
  onClick
185
165
  } = useLink({
@@ -189,11 +169,6 @@ function Title({
189
169
  categoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,
190
170
  canvas: 'edit'
191
171
  });
192
- if (!isUserPattern && templatePartIcons[categoryId]) {
193
- itemIcon = templatePartIcons[categoryId];
194
- } else {
195
- itemIcon = item.syncStatus === PATTERN_SYNC_TYPES.full ? symbol : undefined;
196
- }
197
172
  return createElement(HStack, {
198
173
  alignment: "center",
199
174
  justify: "flex-start",
@@ -210,13 +185,7 @@ function Title({
210
185
  // See https://github.com/WordPress/gutenberg/pull/51898#discussion_r1243399243.
211
186
  ,
212
187
  tabIndex: "-1"
213
- }, item.title || item.name)), itemIcon && !isNonUserPattern && createElement(Tooltip, {
214
- placement: "top",
215
- text: __('Editing this pattern will also update anywhere it is used')
216
- }, createElement(Icon, {
217
- className: "edit-site-patterns__pattern-icon",
218
- icon: itemIcon
219
- })), item.type === PATTERN_TYPES.theme && createElement(Tooltip, {
188
+ }, item.title || item.name)), item.type === PATTERN_TYPES.theme && createElement(Tooltip, {
220
189
  placement: "top",
221
190
  text: __('This pattern cannot be edited.')
222
191
  }, createElement(Icon, {
@@ -227,10 +196,13 @@ function Title({
227
196
  }
228
197
  export default function DataviewsPatterns() {
229
198
  const {
230
- categoryType,
231
- categoryId = PATTERN_DEFAULT_CATEGORY
232
- } = getQueryArgs(window.location.href);
199
+ params: {
200
+ categoryType,
201
+ categoryId: categoryIdFromURL
202
+ }
203
+ } = useLocation();
233
204
  const type = categoryType || PATTERN_TYPES.theme;
205
+ const categoryId = categoryIdFromURL || PATTERN_DEFAULT_CATEGORY;
234
206
  const [view, setView] = useState(DEFAULT_VIEW);
235
207
  const isUncategorizedThemePatterns = type === PATTERN_TYPES.theme && categoryId === 'uncategorized';
236
208
  const previousCategoryId = usePrevious(categoryId);
@@ -274,7 +246,8 @@ export default function DataviewsPatterns() {
274
246
  viewType: view.type
275
247
  }),
276
248
  enableSorting: false,
277
- enableHiding: false
249
+ enableHiding: false,
250
+ width: '1%'
278
251
  }, {
279
252
  header: __('Title'),
280
253
  id: 'title',
@@ -303,7 +276,6 @@ export default function DataviewsPatterns() {
303
276
  value
304
277
  }) => value === PATTERN_SYNC_TYPES.unsynced).label);
305
278
  },
306
- type: ENUMERATION_TYPE,
307
279
  elements: SYNC_FILTERS,
308
280
  filterBy: {
309
281
  operators: [OPERATOR_IS],
@@ -326,7 +298,6 @@ export default function DataviewsPatterns() {
326
298
  item: item
327
299
  });
328
300
  },
329
- type: ENUMERATION_TYPE,
330
301
  elements: authors,
331
302
  filterBy: {
332
303
  isPrimary: true
@@ -358,26 +329,15 @@ export default function DataviewsPatterns() {
358
329
  }
359
330
  return filterSortAndPaginate(patterns, viewWithoutFilters, fields);
360
331
  }, [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']);
332
+ const templatePartActions = usePostActions(TEMPLATE_PART_POST_TYPE);
333
+ const patternActions = usePostActions(PATTERN_TYPES.user);
334
+ const editAction = useEditPostAction();
375
335
  const actions = useMemo(() => {
376
336
  if (type === TEMPLATE_PART_POST_TYPE) {
377
- return [editAction, renameAction, duplicateTemplatePartAction, viewRevisionsAction, resetAction, deleteAction];
337
+ return [editAction, ...templatePartActions, duplicateTemplatePartAction, resetAction, deleteAction].filter(Boolean);
378
338
  }
379
- return [renameAction, duplicatePatternAction, exportJSONaction, resetAction, deleteAction];
380
- }, [type, editAction, viewRevisionsAction]);
339
+ return [editAction, ...patternActions, duplicatePatternAction, exportJSONaction, resetAction, deleteAction].filter(Boolean);
340
+ }, [editAction, type, templatePartActions, patternActions]);
381
341
  const onChangeView = useCallback(newView => {
382
342
  if (newView.type !== view.type) {
383
343
  newView = {
@@ -1 +1 @@
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":[]}
1
+ {"version":3,"names":["clsx","__experimentalHStack","HStack","Button","Tooltip","Flex","__","_x","useState","useMemo","useCallback","useId","useEffect","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","filterSortAndPaginate","Icon","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","OPERATOR_IS","exportJSONaction","resetAction","deleteAction","duplicatePatternAction","duplicateTemplatePartAction","usePatternSettings","unlock","usePatterns","PatternsHeader","useLink","useAddedBy","useEditPostAction","ExperimentalBlockEditorProvider","useGlobalStyle","usePostActions","useLocation","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","createElement","className","theme","undefined","title","Preview","categoryId","viewType","descriptionId","isUserPattern","user","isTemplatePart","isEmpty","blocks","length","backgroundColor","postType","postId","id","name","categoryType","canvas","style","viewportWidth","hidden","Author","isImageLoaded","setIsImageLoaded","text","icon","imageUrl","withIcon","alignment","spacing","onLoad","alt","src","Title","justify","as","gap","variant","tabIndex","placement","size","DataviewsPatterns","params","categoryIdFromURL","view","setView","isUncategorizedThemePatterns","previousCategoryId","viewSyncStatus","find","field","patterns","isResolving","syncStatus","records","per_page","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","author","fields","_fields","header","render","enableSorting","enableHiding","width","push","elements","filterBy","operators","isPrimary","getValue","templatePart","data","paginationInfo","viewWithoutFilters","templatePartActions","patternActions","editAction","actions","filter","Boolean","onChangeView","newView","settings","hideTitleFromUI","titleId","getItemId","isLoading","supportedLayouts"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\tButton,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\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 { Icon, lockSmall } 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\tOPERATOR_IS,\n} from '../../utils/constants';\nimport {\n\texportJSONaction,\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/hooks';\nimport { useEditPostAction } from '../dataviews-actions';\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useLocation } = unlock( routerPrivateApis );\n\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: [],\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\treturn (\n\t\t<button\n\t\t\tclassName=\"page-patterns-preview-field__button\"\n\t\t\ttype=\"button\"\n\t\t\tonClick={ item.type !== PATTERN_TYPES.theme ? onClick : undefined }\n\t\t\taria-label={ item.title }\n\t\t\taria-describedby={ ariaDescribedBy }\n\t\t\taria-disabled={ item.type === PATTERN_TYPES.theme }\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 isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst isEmpty = ! item.blocks?.length;\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={ item.description ? descriptionId : undefined }\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{ item.description && (\n\t\t\t\t<div hidden id={ descriptionId }>\n\t\t\t\t\t{ item.description }\n\t\t\t\t</div>\n\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={ clsx( 'page-templates-author-field__avatar', {\n\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ withIcon && ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Title( { item, categoryId } ) {\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\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\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{ 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 {\n\t\tparams: { categoryType, categoryId: categoryIdFromURL },\n\t} = useLocation();\n\tconst type = categoryType || PATTERN_TYPES.theme;\n\tconst categoryId = categoryIdFromURL || PATTERN_DEFAULT_CATEGORY;\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\twidth: '1%',\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\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\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\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 templatePartActions = usePostActions( TEMPLATE_PART_POST_TYPE );\n\tconst patternActions = usePostActions( PATTERN_TYPES.user );\n\tconst editAction = useEditPostAction();\n\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\t...templatePartActions,\n\t\t\t\tduplicateTemplatePartAction,\n\t\t\t\tresetAction,\n\t\t\t\tdeleteAction,\n\t\t\t].filter( Boolean );\n\t\t}\n\t\treturn [\n\t\t\teditAction,\n\t\t\t...patternActions,\n\t\t\tduplicatePatternAction,\n\t\t\texportJSONaction,\n\t\t\tresetAction,\n\t\t\tdeleteAction,\n\t\t].filter( Boolean );\n\t}, [ editAction, type, templatePartActions, patternActions ] );\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":[]}
@@ -151,6 +151,7 @@ const convertPatternPostToItem = (patternPost, categories) => ({
151
151
  syncStatus: patternPost.wp_pattern_sync_status || PATTERN_SYNC_TYPES.full,
152
152
  title: patternPost.title.raw,
153
153
  type: patternPost.type,
154
+ description: patternPost.excerpt.raw,
154
155
  patternPost
155
156
  });
156
157
  const selectUserPatterns = createSelector((select, syncStatus, search = '') => {
@@ -1 +1 @@
1
- {"version":3,"names":["parse","useSelect","createSelector","store","coreStore","editorStore","decodeEntities","filterOutDuplicatesByName","EXCLUDED_PATTERN_SOURCES","PATTERN_TYPES","PATTERN_SYNC_TYPES","TEMPLATE_PART_POST_TYPE","TEMPLATE_ORIGINS","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","unlock","searchItems","editSiteStore","EMPTY_PATTERN_LIST","createTemplatePartId","theme","slug","templatePartToPattern","templatePart","blocks","content","raw","__unstableSkipMigrationLogs","categories","area","description","isCustom","source","custom","keywords","id","name","title","rendered","type","_links","selectTemplatePartsAsPatterns","select","categoryId","search","_getEntityRecords","getEntityRecords","isResolving","isResolvingSelector","__experimentalGetDefaultTemplatePartAreas","query","per_page","rawTemplateParts","templateParts","map","knownAreas","templatePartAreas","templatePartHasCategory","item","category","includes","patterns","hasCategory","selectThemePatterns","_settings$__experimen","getSettings","settings","blockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","filter","pattern","inserter","selectPatterns","syncStatus","themePatterns","isResolvingThemePatterns","userPatterns","isResolvingUserPatterns","selectUserPatterns","user","unsynced","currentCategory","hasOwnProperty","convertPatternPostToItem","patternPost","wp_pattern_category","length","patternCategoryId","get","termLabels","label","wp_pattern_sync_status","full","getUserPatternCategories","patternPosts","userPatternCategories","Map","forEach","userCategory","set","record","usePatterns","categoryType"],"sources":["@wordpress/edit-site/src/components/page-patterns/use-patterns.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect, createSelector } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { filterOutDuplicatesByName } from './utils';\nimport {\n\tEXCLUDED_PATTERN_SOURCES,\n\tPATTERN_TYPES,\n\tPATTERN_SYNC_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_ORIGINS,\n\tTEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport { searchItems } from './search-items';\nimport { store as editSiteStore } from '../../store';\n\nconst EMPTY_PATTERN_LIST = [];\n\nconst createTemplatePartId = ( theme, slug ) =>\n\ttheme && slug ? theme + '//' + slug : null;\n\nconst templatePartToPattern = ( templatePart ) => ( {\n\tblocks: parse( templatePart.content.raw, {\n\t\t__unstableSkipMigrationLogs: true,\n\t} ),\n\tcategories: [ templatePart.area ],\n\tdescription: templatePart.description || '',\n\tisCustom: templatePart.source === TEMPLATE_ORIGINS.custom,\n\tkeywords: templatePart.keywords || [],\n\tid: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\tname: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\ttitle: decodeEntities( templatePart.title.rendered ),\n\ttype: templatePart.type,\n\t_links: templatePart._links,\n\ttemplatePart,\n} );\n\nconst selectTemplatePartsAsPatterns = createSelector(\n\t( select, categoryId, search = '' ) => {\n\t\tconst { getEntityRecords, isResolving: isResolvingSelector } =\n\t\t\tselect( coreStore );\n\t\tconst { __experimentalGetDefaultTemplatePartAreas } =\n\t\t\tselect( editorStore );\n\t\tconst query = { per_page: -1 };\n\t\tconst rawTemplateParts =\n\t\t\tgetEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, query ) ??\n\t\t\tEMPTY_PATTERN_LIST;\n\t\tconst templateParts = rawTemplateParts.map( ( templatePart ) =>\n\t\t\ttemplatePartToPattern( templatePart )\n\t\t);\n\n\t\t// In the case where a custom template part area has been removed we need\n\t\t// the current list of areas to cross check against so orphaned template\n\t\t// parts can be treated as uncategorized.\n\t\tconst knownAreas = __experimentalGetDefaultTemplatePartAreas() || [];\n\t\tconst templatePartAreas = knownAreas.map( ( area ) => area.area );\n\n\t\tconst templatePartHasCategory = ( item, category ) => {\n\t\t\tif ( category !== TEMPLATE_PART_AREA_DEFAULT_CATEGORY ) {\n\t\t\t\treturn item.templatePart.area === category;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\titem.templatePart.area === category ||\n\t\t\t\t! templatePartAreas.includes( item.templatePart.area )\n\t\t\t);\n\t\t};\n\n\t\tconst isResolving = isResolvingSelector( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\tquery,\n\t\t] );\n\n\t\tconst patterns = searchItems( templateParts, search, {\n\t\t\tcategoryId,\n\t\t\thasCategory: templatePartHasCategory,\n\t\t} );\n\n\t\treturn { patterns, isResolving };\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords(\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{\n\t\t\t\tper_page: -1,\n\t\t\t}\n\t\t),\n\t\tselect( coreStore ).isResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t]\n);\n\nconst selectThemePatterns = createSelector(\n\t( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\tconst { isResolving: isResolvingSelector } = select( coreStore );\n\t\tconst settings = getSettings();\n\t\tconst blockPatterns =\n\t\t\tsettings.__experimentalAdditionalBlockPatterns ??\n\t\t\tsettings.__experimentalBlockPatterns;\n\n\t\tconst restBlockPatterns = select( coreStore ).getBlockPatterns();\n\n\t\tconst patterns = [\n\t\t\t...( blockPatterns || [] ),\n\t\t\t...( restBlockPatterns || [] ),\n\t\t]\n\t\t\t.filter(\n\t\t\t\t( pattern ) =>\n\t\t\t\t\t! EXCLUDED_PATTERN_SOURCES.includes( pattern.source )\n\t\t\t)\n\t\t\t.filter( filterOutDuplicatesByName )\n\t\t\t.filter( ( pattern ) => pattern.inserter !== false )\n\t\t\t.map( ( pattern ) => ( {\n\t\t\t\t...pattern,\n\t\t\t\tkeywords: pattern.keywords || [],\n\t\t\t\ttype: PATTERN_TYPES.theme,\n\t\t\t\tblocks: parse( pattern.content, {\n\t\t\t\t\t__unstableSkipMigrationLogs: true,\n\t\t\t\t} ),\n\t\t\t} ) );\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving: isResolvingSelector( 'getBlockPatterns' ),\n\t\t};\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getBlockPatterns(),\n\t\tselect( coreStore ).isResolving( 'getBlockPatterns' ),\n\t\tunlock( select( editSiteStore ) ).getSettings(),\n\t]\n);\n\nconst selectPatterns = createSelector(\n\t( select, categoryId, syncStatus, search = '' ) => {\n\t\tconst {\n\t\t\tpatterns: themePatterns,\n\t\t\tisResolving: isResolvingThemePatterns,\n\t\t} = selectThemePatterns( select );\n\t\tconst { patterns: userPatterns, isResolving: isResolvingUserPatterns } =\n\t\t\tselectUserPatterns( select );\n\n\t\tlet patterns = [\n\t\t\t...( themePatterns || [] ),\n\t\t\t...( userPatterns || [] ),\n\t\t];\n\n\t\tif ( syncStatus ) {\n\t\t\t// User patterns can have their sync statuses checked directly\n\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\tpatterns = patterns.filter( ( pattern ) => {\n\t\t\t\treturn pattern.type === PATTERN_TYPES.user\n\t\t\t\t\t? pattern.syncStatus === syncStatus\n\t\t\t\t\t: syncStatus === PATTERN_SYNC_TYPES.unsynced;\n\t\t\t} );\n\t\t}\n\n\t\tif ( categoryId ) {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\tcategoryId,\n\t\t\t\thasCategory: ( item, currentCategory ) =>\n\t\t\t\t\titem.categories?.includes( currentCategory ),\n\t\t\t} );\n\t\t} else {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\thasCategory: ( item ) => ! item.hasOwnProperty( 'categories' ),\n\t\t\t} );\n\t\t}\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving: isResolvingThemePatterns || isResolvingUserPatterns,\n\t\t};\n\t},\n\t( select ) => [\n\t\tselectThemePatterns( select ),\n\t\tselectUserPatterns( select ),\n\t]\n);\n\n/**\n * Converts a post of type `wp_block` to a 'pattern item' that more closely\n * matches the structure of theme provided patterns.\n *\n * @param {Object} patternPost The `wp_block` record being normalized.\n * @param {Map} categories A Map of user created categories.\n *\n * @return {Object} The normalized item.\n */\nconst convertPatternPostToItem = ( patternPost, categories ) => ( {\n\tblocks: parse( patternPost.content.raw, {\n\t\t__unstableSkipMigrationLogs: true,\n\t} ),\n\t...( patternPost.wp_pattern_category.length > 0 && {\n\t\tcategories: patternPost.wp_pattern_category.map(\n\t\t\t( patternCategoryId ) =>\n\t\t\t\tcategories && categories.get( patternCategoryId )\n\t\t\t\t\t? categories.get( patternCategoryId ).slug\n\t\t\t\t\t: patternCategoryId\n\t\t),\n\t} ),\n\ttermLabels: patternPost.wp_pattern_category.map( ( patternCategoryId ) =>\n\t\tcategories?.get( patternCategoryId )\n\t\t\t? categories.get( patternCategoryId ).label\n\t\t\t: patternCategoryId\n\t),\n\tid: patternPost.id,\n\tname: patternPost.slug,\n\tsyncStatus: patternPost.wp_pattern_sync_status || PATTERN_SYNC_TYPES.full,\n\ttitle: patternPost.title.raw,\n\ttype: patternPost.type,\n\tpatternPost,\n} );\n\nconst selectUserPatterns = createSelector(\n\t( select, syncStatus, search = '' ) => {\n\t\tconst {\n\t\t\tgetEntityRecords,\n\t\t\tisResolving: isResolvingSelector,\n\t\t\tgetUserPatternCategories,\n\t\t} = select( coreStore );\n\n\t\tconst query = { per_page: -1 };\n\t\tconst patternPosts = getEntityRecords(\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery\n\t\t);\n\t\tconst userPatternCategories = getUserPatternCategories();\n\t\tconst categories = new Map();\n\t\tuserPatternCategories.forEach( ( userCategory ) =>\n\t\t\tcategories.set( userCategory.id, userCategory )\n\t\t);\n\t\tlet patterns = patternPosts\n\t\t\t? patternPosts.map( ( record ) =>\n\t\t\t\t\tconvertPatternPostToItem( record, categories )\n\t\t\t )\n\t\t\t: EMPTY_PATTERN_LIST;\n\n\t\tconst isResolving = isResolvingSelector( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery,\n\t\t] );\n\n\t\tif ( syncStatus ) {\n\t\t\tpatterns = patterns.filter(\n\t\t\t\t( pattern ) => pattern.syncStatus === syncStatus\n\t\t\t);\n\t\t}\n\n\t\tpatterns = searchItems( patterns, search, {\n\t\t\t// We exit user pattern retrieval early if we aren't in the\n\t\t\t// catch-all category for user created patterns, so it has\n\t\t\t// to be in the category.\n\t\t\thasCategory: () => true,\n\t\t} );\n\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving,\n\t\t\tcategories: userPatternCategories,\n\t\t};\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords( 'postType', PATTERN_TYPES.user, {\n\t\t\tper_page: -1,\n\t\t} ),\n\t\tselect( coreStore ).isResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( coreStore ).getUserPatternCategories(),\n\t]\n);\n\nexport const usePatterns = (\n\tcategoryType,\n\tcategoryId,\n\t{ search = '', syncStatus } = {}\n) => {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tif ( categoryType === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\treturn selectTemplatePartsAsPatterns(\n\t\t\t\t\tselect,\n\t\t\t\t\tcategoryId,\n\t\t\t\t\tsearch\n\t\t\t\t);\n\t\t\t} else if ( categoryType === PATTERN_TYPES.theme ) {\n\t\t\t\treturn selectPatterns( select, categoryId, syncStatus, search );\n\t\t\t} else if ( categoryType === PATTERN_TYPES.user ) {\n\t\t\t\treturn selectUserPatterns( select, syncStatus, search );\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tpatterns: EMPTY_PATTERN_LIST,\n\t\t\t\tisResolving: false,\n\t\t\t};\n\t\t},\n\t\t[ categoryId, categoryType, search, syncStatus ]\n\t);\n};\n\nexport default usePatterns;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["parse","useSelect","createSelector","store","coreStore","editorStore","decodeEntities","filterOutDuplicatesByName","EXCLUDED_PATTERN_SOURCES","PATTERN_TYPES","PATTERN_SYNC_TYPES","TEMPLATE_PART_POST_TYPE","TEMPLATE_ORIGINS","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","unlock","searchItems","editSiteStore","EMPTY_PATTERN_LIST","createTemplatePartId","theme","slug","templatePartToPattern","templatePart","blocks","content","raw","__unstableSkipMigrationLogs","categories","area","description","isCustom","source","custom","keywords","id","name","title","rendered","type","_links","selectTemplatePartsAsPatterns","select","categoryId","search","_getEntityRecords","getEntityRecords","isResolving","isResolvingSelector","__experimentalGetDefaultTemplatePartAreas","query","per_page","rawTemplateParts","templateParts","map","knownAreas","templatePartAreas","templatePartHasCategory","item","category","includes","patterns","hasCategory","selectThemePatterns","_settings$__experimen","getSettings","settings","blockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","filter","pattern","inserter","selectPatterns","syncStatus","themePatterns","isResolvingThemePatterns","userPatterns","isResolvingUserPatterns","selectUserPatterns","user","unsynced","currentCategory","hasOwnProperty","convertPatternPostToItem","patternPost","wp_pattern_category","length","patternCategoryId","get","termLabels","label","wp_pattern_sync_status","full","excerpt","getUserPatternCategories","patternPosts","userPatternCategories","Map","forEach","userCategory","set","record","usePatterns","categoryType"],"sources":["@wordpress/edit-site/src/components/page-patterns/use-patterns.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect, createSelector } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { filterOutDuplicatesByName } from './utils';\nimport {\n\tEXCLUDED_PATTERN_SOURCES,\n\tPATTERN_TYPES,\n\tPATTERN_SYNC_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_ORIGINS,\n\tTEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport { searchItems } from './search-items';\nimport { store as editSiteStore } from '../../store';\n\nconst EMPTY_PATTERN_LIST = [];\n\nconst createTemplatePartId = ( theme, slug ) =>\n\ttheme && slug ? theme + '//' + slug : null;\n\nconst templatePartToPattern = ( templatePart ) => ( {\n\tblocks: parse( templatePart.content.raw, {\n\t\t__unstableSkipMigrationLogs: true,\n\t} ),\n\tcategories: [ templatePart.area ],\n\tdescription: templatePart.description || '',\n\tisCustom: templatePart.source === TEMPLATE_ORIGINS.custom,\n\tkeywords: templatePart.keywords || [],\n\tid: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\tname: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\ttitle: decodeEntities( templatePart.title.rendered ),\n\ttype: templatePart.type,\n\t_links: templatePart._links,\n\ttemplatePart,\n} );\n\nconst selectTemplatePartsAsPatterns = createSelector(\n\t( select, categoryId, search = '' ) => {\n\t\tconst { getEntityRecords, isResolving: isResolvingSelector } =\n\t\t\tselect( coreStore );\n\t\tconst { __experimentalGetDefaultTemplatePartAreas } =\n\t\t\tselect( editorStore );\n\t\tconst query = { per_page: -1 };\n\t\tconst rawTemplateParts =\n\t\t\tgetEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, query ) ??\n\t\t\tEMPTY_PATTERN_LIST;\n\t\tconst templateParts = rawTemplateParts.map( ( templatePart ) =>\n\t\t\ttemplatePartToPattern( templatePart )\n\t\t);\n\n\t\t// In the case where a custom template part area has been removed we need\n\t\t// the current list of areas to cross check against so orphaned template\n\t\t// parts can be treated as uncategorized.\n\t\tconst knownAreas = __experimentalGetDefaultTemplatePartAreas() || [];\n\t\tconst templatePartAreas = knownAreas.map( ( area ) => area.area );\n\n\t\tconst templatePartHasCategory = ( item, category ) => {\n\t\t\tif ( category !== TEMPLATE_PART_AREA_DEFAULT_CATEGORY ) {\n\t\t\t\treturn item.templatePart.area === category;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\titem.templatePart.area === category ||\n\t\t\t\t! templatePartAreas.includes( item.templatePart.area )\n\t\t\t);\n\t\t};\n\n\t\tconst isResolving = isResolvingSelector( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\tquery,\n\t\t] );\n\n\t\tconst patterns = searchItems( templateParts, search, {\n\t\t\tcategoryId,\n\t\t\thasCategory: templatePartHasCategory,\n\t\t} );\n\n\t\treturn { patterns, isResolving };\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords(\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{\n\t\t\t\tper_page: -1,\n\t\t\t}\n\t\t),\n\t\tselect( coreStore ).isResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t]\n);\n\nconst selectThemePatterns = createSelector(\n\t( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\tconst { isResolving: isResolvingSelector } = select( coreStore );\n\t\tconst settings = getSettings();\n\t\tconst blockPatterns =\n\t\t\tsettings.__experimentalAdditionalBlockPatterns ??\n\t\t\tsettings.__experimentalBlockPatterns;\n\n\t\tconst restBlockPatterns = select( coreStore ).getBlockPatterns();\n\n\t\tconst patterns = [\n\t\t\t...( blockPatterns || [] ),\n\t\t\t...( restBlockPatterns || [] ),\n\t\t]\n\t\t\t.filter(\n\t\t\t\t( pattern ) =>\n\t\t\t\t\t! EXCLUDED_PATTERN_SOURCES.includes( pattern.source )\n\t\t\t)\n\t\t\t.filter( filterOutDuplicatesByName )\n\t\t\t.filter( ( pattern ) => pattern.inserter !== false )\n\t\t\t.map( ( pattern ) => ( {\n\t\t\t\t...pattern,\n\t\t\t\tkeywords: pattern.keywords || [],\n\t\t\t\ttype: PATTERN_TYPES.theme,\n\t\t\t\tblocks: parse( pattern.content, {\n\t\t\t\t\t__unstableSkipMigrationLogs: true,\n\t\t\t\t} ),\n\t\t\t} ) );\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving: isResolvingSelector( 'getBlockPatterns' ),\n\t\t};\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getBlockPatterns(),\n\t\tselect( coreStore ).isResolving( 'getBlockPatterns' ),\n\t\tunlock( select( editSiteStore ) ).getSettings(),\n\t]\n);\n\nconst selectPatterns = createSelector(\n\t( select, categoryId, syncStatus, search = '' ) => {\n\t\tconst {\n\t\t\tpatterns: themePatterns,\n\t\t\tisResolving: isResolvingThemePatterns,\n\t\t} = selectThemePatterns( select );\n\t\tconst { patterns: userPatterns, isResolving: isResolvingUserPatterns } =\n\t\t\tselectUserPatterns( select );\n\n\t\tlet patterns = [\n\t\t\t...( themePatterns || [] ),\n\t\t\t...( userPatterns || [] ),\n\t\t];\n\n\t\tif ( syncStatus ) {\n\t\t\t// User patterns can have their sync statuses checked directly\n\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\tpatterns = patterns.filter( ( pattern ) => {\n\t\t\t\treturn pattern.type === PATTERN_TYPES.user\n\t\t\t\t\t? pattern.syncStatus === syncStatus\n\t\t\t\t\t: syncStatus === PATTERN_SYNC_TYPES.unsynced;\n\t\t\t} );\n\t\t}\n\n\t\tif ( categoryId ) {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\tcategoryId,\n\t\t\t\thasCategory: ( item, currentCategory ) =>\n\t\t\t\t\titem.categories?.includes( currentCategory ),\n\t\t\t} );\n\t\t} else {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\thasCategory: ( item ) => ! item.hasOwnProperty( 'categories' ),\n\t\t\t} );\n\t\t}\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving: isResolvingThemePatterns || isResolvingUserPatterns,\n\t\t};\n\t},\n\t( select ) => [\n\t\tselectThemePatterns( select ),\n\t\tselectUserPatterns( select ),\n\t]\n);\n\n/**\n * Converts a post of type `wp_block` to a 'pattern item' that more closely\n * matches the structure of theme provided patterns.\n *\n * @param {Object} patternPost The `wp_block` record being normalized.\n * @param {Map} categories A Map of user created categories.\n *\n * @return {Object} The normalized item.\n */\nconst convertPatternPostToItem = ( patternPost, categories ) => ( {\n\tblocks: parse( patternPost.content.raw, {\n\t\t__unstableSkipMigrationLogs: true,\n\t} ),\n\t...( patternPost.wp_pattern_category.length > 0 && {\n\t\tcategories: patternPost.wp_pattern_category.map(\n\t\t\t( patternCategoryId ) =>\n\t\t\t\tcategories && categories.get( patternCategoryId )\n\t\t\t\t\t? categories.get( patternCategoryId ).slug\n\t\t\t\t\t: patternCategoryId\n\t\t),\n\t} ),\n\ttermLabels: patternPost.wp_pattern_category.map( ( patternCategoryId ) =>\n\t\tcategories?.get( patternCategoryId )\n\t\t\t? categories.get( patternCategoryId ).label\n\t\t\t: patternCategoryId\n\t),\n\tid: patternPost.id,\n\tname: patternPost.slug,\n\tsyncStatus: patternPost.wp_pattern_sync_status || PATTERN_SYNC_TYPES.full,\n\ttitle: patternPost.title.raw,\n\ttype: patternPost.type,\n\tdescription: patternPost.excerpt.raw,\n\tpatternPost,\n} );\n\nconst selectUserPatterns = createSelector(\n\t( select, syncStatus, search = '' ) => {\n\t\tconst {\n\t\t\tgetEntityRecords,\n\t\t\tisResolving: isResolvingSelector,\n\t\t\tgetUserPatternCategories,\n\t\t} = select( coreStore );\n\n\t\tconst query = { per_page: -1 };\n\t\tconst patternPosts = getEntityRecords(\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery\n\t\t);\n\t\tconst userPatternCategories = getUserPatternCategories();\n\t\tconst categories = new Map();\n\t\tuserPatternCategories.forEach( ( userCategory ) =>\n\t\t\tcategories.set( userCategory.id, userCategory )\n\t\t);\n\t\tlet patterns = patternPosts\n\t\t\t? patternPosts.map( ( record ) =>\n\t\t\t\t\tconvertPatternPostToItem( record, categories )\n\t\t\t )\n\t\t\t: EMPTY_PATTERN_LIST;\n\n\t\tconst isResolving = isResolvingSelector( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery,\n\t\t] );\n\n\t\tif ( syncStatus ) {\n\t\t\tpatterns = patterns.filter(\n\t\t\t\t( pattern ) => pattern.syncStatus === syncStatus\n\t\t\t);\n\t\t}\n\n\t\tpatterns = searchItems( patterns, search, {\n\t\t\t// We exit user pattern retrieval early if we aren't in the\n\t\t\t// catch-all category for user created patterns, so it has\n\t\t\t// to be in the category.\n\t\t\thasCategory: () => true,\n\t\t} );\n\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving,\n\t\t\tcategories: userPatternCategories,\n\t\t};\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords( 'postType', PATTERN_TYPES.user, {\n\t\t\tper_page: -1,\n\t\t} ),\n\t\tselect( coreStore ).isResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( coreStore ).getUserPatternCategories(),\n\t]\n);\n\nexport const usePatterns = (\n\tcategoryType,\n\tcategoryId,\n\t{ search = '', syncStatus } = {}\n) => {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tif ( categoryType === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\treturn selectTemplatePartsAsPatterns(\n\t\t\t\t\tselect,\n\t\t\t\t\tcategoryId,\n\t\t\t\t\tsearch\n\t\t\t\t);\n\t\t\t} else if ( categoryType === PATTERN_TYPES.theme ) {\n\t\t\t\treturn selectPatterns( select, categoryId, syncStatus, search );\n\t\t\t} else if ( categoryType === PATTERN_TYPES.user ) {\n\t\t\t\treturn selectUserPatterns( select, syncStatus, search );\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tpatterns: EMPTY_PATTERN_LIST,\n\t\t\t\tisResolving: false,\n\t\t\t};\n\t\t},\n\t\t[ categoryId, categoryType, search, syncStatus ]\n\t);\n};\n\nexport default usePatterns;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,QAAQ,mBAAmB;AACzC,SAASC,SAAS,EAAEC,cAAc,QAAQ,iBAAiB;AAC3D,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASD,KAAK,IAAIE,WAAW,QAAQ,mBAAmB;AACxD,SAASC,cAAc,QAAQ,0BAA0B;;AAEzD;AACA;AACA;AACA,SAASC,yBAAyB,QAAQ,SAAS;AACnD,SACCC,wBAAwB,EACxBC,aAAa,EACbC,kBAAkB,EAClBC,uBAAuB,EACvBC,gBAAgB,EAChBC,mCAAmC,QAC7B,uBAAuB;AAC9B,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASC,WAAW,QAAQ,gBAAgB;AAC5C,SAASZ,KAAK,IAAIa,aAAa,QAAQ,aAAa;AAEpD,MAAMC,kBAAkB,GAAG,EAAE;AAE7B,MAAMC,oBAAoB,GAAGA,CAAEC,KAAK,EAAEC,IAAI,KACzCD,KAAK,IAAIC,IAAI,GAAGD,KAAK,GAAG,IAAI,GAAGC,IAAI,GAAG,IAAI;AAE3C,MAAMC,qBAAqB,GAAKC,YAAY,KAAQ;EACnDC,MAAM,EAAEvB,KAAK,CAAEsB,YAAY,CAACE,OAAO,CAACC,GAAG,EAAE;IACxCC,2BAA2B,EAAE;EAC9B,CAAE,CAAC;EACHC,UAAU,EAAE,CAAEL,YAAY,CAACM,IAAI,CAAE;EACjCC,WAAW,EAAEP,YAAY,CAACO,WAAW,IAAI,EAAE;EAC3CC,QAAQ,EAAER,YAAY,CAACS,MAAM,KAAKnB,gBAAgB,CAACoB,MAAM;EACzDC,QAAQ,EAAEX,YAAY,CAACW,QAAQ,IAAI,EAAE;EACrCC,EAAE,EAAEhB,oBAAoB,CAAEI,YAAY,CAACH,KAAK,EAAEG,YAAY,CAACF,IAAK,CAAC;EACjEe,IAAI,EAAEjB,oBAAoB,CAAEI,YAAY,CAACH,KAAK,EAAEG,YAAY,CAACF,IAAK,CAAC;EACnEgB,KAAK,EAAE9B,cAAc,CAAEgB,YAAY,CAACc,KAAK,CAACC,QAAS,CAAC;EACpDC,IAAI,EAAEhB,YAAY,CAACgB,IAAI;EACvBC,MAAM,EAAEjB,YAAY,CAACiB,MAAM;EAC3BjB;AACD,CAAC,CAAE;AAEH,MAAMkB,6BAA6B,GAAGtC,cAAc,CACnD,CAAEuC,MAAM,EAAEC,UAAU,EAAEC,MAAM,GAAG,EAAE,KAAM;EAAA,IAAAC,iBAAA;EACtC,MAAM;IAAEC,gBAAgB;IAAEC,WAAW,EAAEC;EAAoB,CAAC,GAC3DN,MAAM,CAAErC,SAAU,CAAC;EACpB,MAAM;IAAE4C;EAA0C,CAAC,GAClDP,MAAM,CAAEpC,WAAY,CAAC;EACtB,MAAM4C,KAAK,GAAG;IAAEC,QAAQ,EAAE,CAAC;EAAE,CAAC;EAC9B,MAAMC,gBAAgB,IAAAP,iBAAA,GACrBC,gBAAgB,CAAE,UAAU,EAAElC,uBAAuB,EAAEsC,KAAM,CAAC,cAAAL,iBAAA,cAAAA,iBAAA,GAC9D3B,kBAAkB;EACnB,MAAMmC,aAAa,GAAGD,gBAAgB,CAACE,GAAG,CAAI/B,YAAY,IACzDD,qBAAqB,CAAEC,YAAa,CACrC,CAAC;;EAED;EACA;EACA;EACA,MAAMgC,UAAU,GAAGN,yCAAyC,CAAC,CAAC,IAAI,EAAE;EACpE,MAAMO,iBAAiB,GAAGD,UAAU,CAACD,GAAG,CAAIzB,IAAI,IAAMA,IAAI,CAACA,IAAK,CAAC;EAEjE,MAAM4B,uBAAuB,GAAGA,CAAEC,IAAI,EAAEC,QAAQ,KAAM;IACrD,IAAKA,QAAQ,KAAK7C,mCAAmC,EAAG;MACvD,OAAO4C,IAAI,CAACnC,YAAY,CAACM,IAAI,KAAK8B,QAAQ;IAC3C;IAEA,OACCD,IAAI,CAACnC,YAAY,CAACM,IAAI,KAAK8B,QAAQ,IACnC,CAAEH,iBAAiB,CAACI,QAAQ,CAAEF,IAAI,CAACnC,YAAY,CAACM,IAAK,CAAC;EAExD,CAAC;EAED,MAAMkB,WAAW,GAAGC,mBAAmB,CAAE,kBAAkB,EAAE,CAC5D,UAAU,EACVpC,uBAAuB,EACvBsC,KAAK,CACJ,CAAC;EAEH,MAAMW,QAAQ,GAAG7C,WAAW,CAAEqC,aAAa,EAAET,MAAM,EAAE;IACpDD,UAAU;IACVmB,WAAW,EAAEL;EACd,CAAE,CAAC;EAEH,OAAO;IAAEI,QAAQ;IAAEd;EAAY,CAAC;AACjC,CAAC,EACCL,MAAM,IAAM,CACbA,MAAM,CAAErC,SAAU,CAAC,CAACyC,gBAAgB,CACnC,UAAU,EACVlC,uBAAuB,EACvB;EACCuC,QAAQ,EAAE,CAAC;AACZ,CACD,CAAC,EACDT,MAAM,CAAErC,SAAU,CAAC,CAAC0C,WAAW,CAAE,kBAAkB,EAAE,CACpD,UAAU,EACVnC,uBAAuB,EACvB;EAAEuC,QAAQ,EAAE,CAAC;AAAE,CAAC,CACf,CAAC,EACHT,MAAM,CAAEpC,WAAY,CAAC,CAAC2C,yCAAyC,CAAC,CAAC,CAEnE,CAAC;AAED,MAAMc,mBAAmB,GAAG5D,cAAc,CACvCuC,MAAM,IAAM;EAAA,IAAAsB,qBAAA;EACb,MAAM;IAAEC;EAAY,CAAC,GAAGlD,MAAM,CAAE2B,MAAM,CAAEzB,aAAc,CAAE,CAAC;EACzD,MAAM;IAAE8B,WAAW,EAAEC;EAAoB,CAAC,GAAGN,MAAM,CAAErC,SAAU,CAAC;EAChE,MAAM6D,QAAQ,GAAGD,WAAW,CAAC,CAAC;EAC9B,MAAME,aAAa,IAAAH,qBAAA,GAClBE,QAAQ,CAACE,qCAAqC,cAAAJ,qBAAA,cAAAA,qBAAA,GAC9CE,QAAQ,CAACG,2BAA2B;EAErC,MAAMC,iBAAiB,GAAG5B,MAAM,CAAErC,SAAU,CAAC,CAACkE,gBAAgB,CAAC,CAAC;EAEhE,MAAMV,QAAQ,GAAG,CAChB,IAAKM,aAAa,IAAI,EAAE,CAAE,EAC1B,IAAKG,iBAAiB,IAAI,EAAE,CAAE,CAC9B,CACCE,MAAM,CACJC,OAAO,IACR,CAAEhE,wBAAwB,CAACmD,QAAQ,CAAEa,OAAO,CAACzC,MAAO,CACtD,CAAC,CACAwC,MAAM,CAAEhE,yBAA0B,CAAC,CACnCgE,MAAM,CAAIC,OAAO,IAAMA,OAAO,CAACC,QAAQ,KAAK,KAAM,CAAC,CACnDpB,GAAG,CAAImB,OAAO,KAAQ;IACtB,GAAGA,OAAO;IACVvC,QAAQ,EAAEuC,OAAO,CAACvC,QAAQ,IAAI,EAAE;IAChCK,IAAI,EAAE7B,aAAa,CAACU,KAAK;IACzBI,MAAM,EAAEvB,KAAK,CAAEwE,OAAO,CAAChD,OAAO,EAAE;MAC/BE,2BAA2B,EAAE;IAC9B,CAAE;EACH,CAAC,CAAG,CAAC;EACN,OAAO;IACNkC,QAAQ;IACRd,WAAW,EAAEC,mBAAmB,CAAE,kBAAmB;EACtD,CAAC;AACF,CAAC,EACCN,MAAM,IAAM,CACbA,MAAM,CAAErC,SAAU,CAAC,CAACkE,gBAAgB,CAAC,CAAC,EACtC7B,MAAM,CAAErC,SAAU,CAAC,CAAC0C,WAAW,CAAE,kBAAmB,CAAC,EACrDhC,MAAM,CAAE2B,MAAM,CAAEzB,aAAc,CAAE,CAAC,CAACgD,WAAW,CAAC,CAAC,CAEjD,CAAC;AAED,MAAMU,cAAc,GAAGxE,cAAc,CACpC,CAAEuC,MAAM,EAAEC,UAAU,EAAEiC,UAAU,EAAEhC,MAAM,GAAG,EAAE,KAAM;EAClD,MAAM;IACLiB,QAAQ,EAAEgB,aAAa;IACvB9B,WAAW,EAAE+B;EACd,CAAC,GAAGf,mBAAmB,CAAErB,MAAO,CAAC;EACjC,MAAM;IAAEmB,QAAQ,EAAEkB,YAAY;IAAEhC,WAAW,EAAEiC;EAAwB,CAAC,GACrEC,kBAAkB,CAAEvC,MAAO,CAAC;EAE7B,IAAImB,QAAQ,GAAG,CACd,IAAKgB,aAAa,IAAI,EAAE,CAAE,EAC1B,IAAKE,YAAY,IAAI,EAAE,CAAE,CACzB;EAED,IAAKH,UAAU,EAAG;IACjB;IACA;IACAf,QAAQ,GAAGA,QAAQ,CAACW,MAAM,CAAIC,OAAO,IAAM;MAC1C,OAAOA,OAAO,CAAClC,IAAI,KAAK7B,aAAa,CAACwE,IAAI,GACvCT,OAAO,CAACG,UAAU,KAAKA,UAAU,GACjCA,UAAU,KAAKjE,kBAAkB,CAACwE,QAAQ;IAC9C,CAAE,CAAC;EACJ;EAEA,IAAKxC,UAAU,EAAG;IACjBkB,QAAQ,GAAG7C,WAAW,CAAE6C,QAAQ,EAAEjB,MAAM,EAAE;MACzCD,UAAU;MACVmB,WAAW,EAAEA,CAAEJ,IAAI,EAAE0B,eAAe,KACnC1B,IAAI,CAAC9B,UAAU,EAAEgC,QAAQ,CAAEwB,eAAgB;IAC7C,CAAE,CAAC;EACJ,CAAC,MAAM;IACNvB,QAAQ,GAAG7C,WAAW,CAAE6C,QAAQ,EAAEjB,MAAM,EAAE;MACzCkB,WAAW,EAAIJ,IAAI,IAAM,CAAEA,IAAI,CAAC2B,cAAc,CAAE,YAAa;IAC9D,CAAE,CAAC;EACJ;EACA,OAAO;IACNxB,QAAQ;IACRd,WAAW,EAAE+B,wBAAwB,IAAIE;EAC1C,CAAC;AACF,CAAC,EACCtC,MAAM,IAAM,CACbqB,mBAAmB,CAAErB,MAAO,CAAC,EAC7BuC,kBAAkB,CAAEvC,MAAO,CAAC,CAE9B,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM4C,wBAAwB,GAAGA,CAAEC,WAAW,EAAE3D,UAAU,MAAQ;EACjEJ,MAAM,EAAEvB,KAAK,CAAEsF,WAAW,CAAC9D,OAAO,CAACC,GAAG,EAAE;IACvCC,2BAA2B,EAAE;EAC9B,CAAE,CAAC;EACH,IAAK4D,WAAW,CAACC,mBAAmB,CAACC,MAAM,GAAG,CAAC,IAAI;IAClD7D,UAAU,EAAE2D,WAAW,CAACC,mBAAmB,CAAClC,GAAG,CAC5CoC,iBAAiB,IAClB9D,UAAU,IAAIA,UAAU,CAAC+D,GAAG,CAAED,iBAAkB,CAAC,GAC9C9D,UAAU,CAAC+D,GAAG,CAAED,iBAAkB,CAAC,CAACrE,IAAI,GACxCqE,iBACL;EACD,CAAC,CAAE;EACHE,UAAU,EAAEL,WAAW,CAACC,mBAAmB,CAAClC,GAAG,CAAIoC,iBAAiB,IACnE9D,UAAU,EAAE+D,GAAG,CAAED,iBAAkB,CAAC,GACjC9D,UAAU,CAAC+D,GAAG,CAAED,iBAAkB,CAAC,CAACG,KAAK,GACzCH,iBACJ,CAAC;EACDvD,EAAE,EAAEoD,WAAW,CAACpD,EAAE;EAClBC,IAAI,EAAEmD,WAAW,CAAClE,IAAI;EACtBuD,UAAU,EAAEW,WAAW,CAACO,sBAAsB,IAAInF,kBAAkB,CAACoF,IAAI;EACzE1D,KAAK,EAAEkD,WAAW,CAAClD,KAAK,CAACX,GAAG;EAC5Ba,IAAI,EAAEgD,WAAW,CAAChD,IAAI;EACtBT,WAAW,EAAEyD,WAAW,CAACS,OAAO,CAACtE,GAAG;EACpC6D;AACD,CAAC,CAAE;AAEH,MAAMN,kBAAkB,GAAG9E,cAAc,CACxC,CAAEuC,MAAM,EAAEkC,UAAU,EAAEhC,MAAM,GAAG,EAAE,KAAM;EACtC,MAAM;IACLE,gBAAgB;IAChBC,WAAW,EAAEC,mBAAmB;IAChCiD;EACD,CAAC,GAAGvD,MAAM,CAAErC,SAAU,CAAC;EAEvB,MAAM6C,KAAK,GAAG;IAAEC,QAAQ,EAAE,CAAC;EAAE,CAAC;EAC9B,MAAM+C,YAAY,GAAGpD,gBAAgB,CACpC,UAAU,EACVpC,aAAa,CAACwE,IAAI,EAClBhC,KACD,CAAC;EACD,MAAMiD,qBAAqB,GAAGF,wBAAwB,CAAC,CAAC;EACxD,MAAMrE,UAAU,GAAG,IAAIwE,GAAG,CAAC,CAAC;EAC5BD,qBAAqB,CAACE,OAAO,CAAIC,YAAY,IAC5C1E,UAAU,CAAC2E,GAAG,CAAED,YAAY,CAACnE,EAAE,EAAEmE,YAAa,CAC/C,CAAC;EACD,IAAIzC,QAAQ,GAAGqC,YAAY,GACxBA,YAAY,CAAC5C,GAAG,CAAIkD,MAAM,IAC1BlB,wBAAwB,CAAEkB,MAAM,EAAE5E,UAAW,CAC7C,CAAC,GACDV,kBAAkB;EAErB,MAAM6B,WAAW,GAAGC,mBAAmB,CAAE,kBAAkB,EAAE,CAC5D,UAAU,EACVtC,aAAa,CAACwE,IAAI,EAClBhC,KAAK,CACJ,CAAC;EAEH,IAAK0B,UAAU,EAAG;IACjBf,QAAQ,GAAGA,QAAQ,CAACW,MAAM,CACvBC,OAAO,IAAMA,OAAO,CAACG,UAAU,KAAKA,UACvC,CAAC;EACF;EAEAf,QAAQ,GAAG7C,WAAW,CAAE6C,QAAQ,EAAEjB,MAAM,EAAE;IACzC;IACA;IACA;IACAkB,WAAW,EAAEA,CAAA,KAAM;EACpB,CAAE,CAAC;EAEH,OAAO;IACND,QAAQ;IACRd,WAAW;IACXnB,UAAU,EAAEuE;EACb,CAAC;AACF,CAAC,EACCzD,MAAM,IAAM,CACbA,MAAM,CAAErC,SAAU,CAAC,CAACyC,gBAAgB,CAAE,UAAU,EAAEpC,aAAa,CAACwE,IAAI,EAAE;EACrE/B,QAAQ,EAAE,CAAC;AACZ,CAAE,CAAC,EACHT,MAAM,CAAErC,SAAU,CAAC,CAAC0C,WAAW,CAAE,kBAAkB,EAAE,CACpD,UAAU,EACVrC,aAAa,CAACwE,IAAI,EAClB;EAAE/B,QAAQ,EAAE,CAAC;AAAE,CAAC,CACf,CAAC,EACHT,MAAM,CAAErC,SAAU,CAAC,CAAC4F,wBAAwB,CAAC,CAAC,CAEhD,CAAC;AAED,OAAO,MAAMQ,WAAW,GAAGA,CAC1BC,YAAY,EACZ/D,UAAU,EACV;EAAEC,MAAM,GAAG,EAAE;EAAEgC;AAAW,CAAC,GAAG,CAAC,CAAC,KAC5B;EACJ,OAAO1E,SAAS,CACbwC,MAAM,IAAM;IACb,IAAKgE,YAAY,KAAK9F,uBAAuB,EAAG;MAC/C,OAAO6B,6BAA6B,CACnCC,MAAM,EACNC,UAAU,EACVC,MACD,CAAC;IACF,CAAC,MAAM,IAAK8D,YAAY,KAAKhG,aAAa,CAACU,KAAK,EAAG;MAClD,OAAOuD,cAAc,CAAEjC,MAAM,EAAEC,UAAU,EAAEiC,UAAU,EAAEhC,MAAO,CAAC;IAChE,CAAC,MAAM,IAAK8D,YAAY,KAAKhG,aAAa,CAACwE,IAAI,EAAG;MACjD,OAAOD,kBAAkB,CAAEvC,MAAM,EAAEkC,UAAU,EAAEhC,MAAO,CAAC;IACxD;IACA,OAAO;MACNiB,QAAQ,EAAE3C,kBAAkB;MAC5B6B,WAAW,EAAE;IACd,CAAC;EACF,CAAC,EACD,CAAEJ,UAAU,EAAE+D,YAAY,EAAE9D,MAAM,EAAEgC,UAAU,CAC/C,CAAC;AACF,CAAC;AAED,eAAe6B,WAAW","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"names":["store","coreStore","useSelect","commentAuthorAvatar","authorIcon","layout","themeIcon","plugins","pluginIcon","globe","globeIcon","TEMPLATE_ORIGINS","useAddedBy","postType","postId","select","getEntityRecord","getMedia","getUser","getEditedEntityRecord","template","originalSource","original_source","authorText","author_text","type","icon","text","isCustomized","source","custom","siteData","imageUrl","site_logo","source_url","undefined","user","author","avatar_urls"],"sources":["@wordpress/edit-site/src/components/page-templates/hooks.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport {\n\tcommentAuthorAvatar as authorIcon,\n\tlayout as themeIcon,\n\tplugins as pluginIcon,\n\tglobe as globeIcon,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_ORIGINS } from '../../utils/constants';\n\n/** @typedef {'wp_template'|'wp_template_part'} TemplateType */\n\n/**\n * @typedef {'theme'|'plugin'|'site'|'user'} AddedByType\n *\n * @typedef AddedByData\n * @type {Object}\n * @property {AddedByType} type The type of the data.\n * @property {JSX.Element} icon The icon to display.\n * @property {string} [imageUrl] The optional image URL to display.\n * @property {string} [text] The text to display.\n * @property {boolean} isCustomized Whether the template has been customized.\n *\n * @param {TemplateType} postType The template post type.\n * @param {number} postId The template post id.\n * @return {AddedByData} The added by object or null.\n */\nexport function useAddedBy( postType, postId ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetEntityRecord,\n\t\t\t\tgetMedia,\n\t\t\t\tgetUser,\n\t\t\t\tgetEditedEntityRecord,\n\t\t\t} = select( coreStore );\n\t\t\tconst template = getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId\n\t\t\t);\n\t\t\tconst originalSource = template?.original_source;\n\t\t\tconst authorText = template?.author_text;\n\n\t\t\tswitch ( originalSource ) {\n\t\t\t\tcase 'theme': {\n\t\t\t\t\treturn {\n\t\t\t\t\t\ttype: originalSource,\n\t\t\t\t\t\ticon: themeIcon,\n\t\t\t\t\t\ttext: authorText,\n\t\t\t\t\t\tisCustomized:\n\t\t\t\t\t\t\ttemplate.source === TEMPLATE_ORIGINS.custom,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tcase 'plugin': {\n\t\t\t\t\treturn {\n\t\t\t\t\t\ttype: originalSource,\n\t\t\t\t\t\ticon: pluginIcon,\n\t\t\t\t\t\ttext: authorText,\n\t\t\t\t\t\tisCustomized:\n\t\t\t\t\t\t\ttemplate.source === TEMPLATE_ORIGINS.custom,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tcase 'site': {\n\t\t\t\t\tconst siteData = getEntityRecord(\n\t\t\t\t\t\t'root',\n\t\t\t\t\t\t'__unstableBase'\n\t\t\t\t\t);\n\t\t\t\t\treturn {\n\t\t\t\t\t\ttype: originalSource,\n\t\t\t\t\t\ticon: globeIcon,\n\t\t\t\t\t\timageUrl: siteData?.site_logo\n\t\t\t\t\t\t\t? getMedia( siteData.site_logo )?.source_url\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\ttext: authorText,\n\t\t\t\t\t\tisCustomized: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tdefault: {\n\t\t\t\t\tconst user = getUser( template.author );\n\t\t\t\t\treturn {\n\t\t\t\t\t\ttype: 'user',\n\t\t\t\t\t\ticon: authorIcon,\n\t\t\t\t\t\timageUrl: user?.avatar_urls?.[ 48 ],\n\t\t\t\t\t\ttext: authorText,\n\t\t\t\t\t\tisCustomized: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[ postType, postId ]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SACCC,mBAAmB,IAAIC,UAAU,EACjCC,MAAM,IAAIC,SAAS,EACnBC,OAAO,IAAIC,UAAU,EACrBC,KAAK,IAAIC,SAAS,QACZ,kBAAkB;;AAEzB;AACA;AACA;AACA,SAASC,gBAAgB,QAAQ,uBAAuB;;AAExD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,UAAUA,CAAEC,QAAQ,EAAEC,MAAM,EAAG;EAC9C,OAAOZ,SAAS,CACba,MAAM,IAAM;IACb,MAAM;MACLC,eAAe;MACfC,QAAQ;MACRC,OAAO;MACPC;IACD,CAAC,GAAGJ,MAAM,CAAEd,SAAU,CAAC;IACvB,MAAMmB,QAAQ,GAAGD,qBAAqB,CACrC,UAAU,EACVN,QAAQ,EACRC,MACD,CAAC;IACD,MAAMO,cAAc,GAAGD,QAAQ,EAAEE,eAAe;IAChD,MAAMC,UAAU,GAAGH,QAAQ,EAAEI,WAAW;IAExC,QAASH,cAAc;MACtB,KAAK,OAAO;QAAE;UACb,OAAO;YACNI,IAAI,EAAEJ,cAAc;YACpBK,IAAI,EAAEpB,SAAS;YACfqB,IAAI,EAAEJ,UAAU;YAChBK,YAAY,EACXR,QAAQ,CAACS,MAAM,KAAKlB,gBAAgB,CAACmB;UACvC,CAAC;QACF;MACA,KAAK,QAAQ;QAAE;UACd,OAAO;YACNL,IAAI,EAAEJ,cAAc;YACpBK,IAAI,EAAElB,UAAU;YAChBmB,IAAI,EAAEJ,UAAU;YAChBK,YAAY,EACXR,QAAQ,CAACS,MAAM,KAAKlB,gBAAgB,CAACmB;UACvC,CAAC;QACF;MACA,KAAK,MAAM;QAAE;UACZ,MAAMC,QAAQ,GAAGf,eAAe,CAC/B,MAAM,EACN,gBACD,CAAC;UACD,OAAO;YACNS,IAAI,EAAEJ,cAAc;YACpBK,IAAI,EAAEhB,SAAS;YACfsB,QAAQ,EAAED,QAAQ,EAAEE,SAAS,GAC1BhB,QAAQ,CAAEc,QAAQ,CAACE,SAAU,CAAC,EAAEC,UAAU,GAC1CC,SAAS;YACZR,IAAI,EAAEJ,UAAU;YAChBK,YAAY,EAAE;UACf,CAAC;QACF;MACA;QAAS;UACR,MAAMQ,IAAI,GAAGlB,OAAO,CAAEE,QAAQ,CAACiB,MAAO,CAAC;UACvC,OAAO;YACNZ,IAAI,EAAE,MAAM;YACZC,IAAI,EAAEtB,UAAU;YAChB4B,QAAQ,EAAEI,IAAI,EAAEE,WAAW,GAAI,EAAE,CAAE;YACnCX,IAAI,EAAEJ,UAAU;YAChBK,YAAY,EAAE;UACf,CAAC;QACF;IACD;EACD,CAAC,EACD,CAAEf,QAAQ,EAAEC,MAAM,CACnB,CAAC;AACF","ignoreList":[]}