@wordpress/edit-site 5.14.0 → 5.15.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 (341) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/add-new-page/index.js +1 -6
  3. package/build/components/add-new-page/index.js.map +1 -1
  4. package/build/components/add-new-pattern/index.js +21 -7
  5. package/build/components/add-new-pattern/index.js.map +1 -1
  6. package/build/components/add-new-template/utils.js +10 -8
  7. package/build/components/add-new-template/utils.js.map +1 -1
  8. package/build/components/block-editor/constants.js +1 -1
  9. package/build/components/block-editor/constants.js.map +1 -1
  10. package/build/components/block-editor/editor-canvas.js +1 -1
  11. package/build/components/block-editor/editor-canvas.js.map +1 -1
  12. package/build/components/block-editor/index.js +0 -4
  13. package/build/components/block-editor/index.js.map +1 -1
  14. package/build/components/block-editor/use-site-editor-settings.js +87 -13
  15. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  16. package/build/components/code-editor/index.js +60 -28
  17. package/build/components/code-editor/index.js.map +1 -1
  18. package/build/components/create-pattern-modal/index.js +7 -3
  19. package/build/components/create-pattern-modal/index.js.map +1 -1
  20. package/build/components/editor/index.js +1 -1
  21. package/build/components/editor/index.js.map +1 -1
  22. package/build/components/header-edit-mode/index.js +13 -9
  23. package/build/components/header-edit-mode/index.js.map +1 -1
  24. package/build/components/layout/index.js +8 -3
  25. package/build/components/layout/index.js.map +1 -1
  26. package/build/components/page-actions/index.js +2 -2
  27. package/build/components/page-actions/index.js.map +1 -1
  28. package/build/components/page-actions/{delete-page-menu-item.js → trash-page-menu-item.js} +8 -16
  29. package/build/components/page-actions/trash-page-menu-item.js.map +1 -0
  30. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +5 -5
  31. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
  32. package/build/components/page-patterns/duplicate-menu-item.js +163 -0
  33. package/build/components/page-patterns/duplicate-menu-item.js.map +1 -0
  34. package/build/components/page-patterns/grid-item.js +83 -58
  35. package/build/components/page-patterns/grid-item.js.map +1 -1
  36. package/build/components/page-patterns/grid.js +5 -18
  37. package/build/components/page-patterns/grid.js.map +1 -1
  38. package/build/components/page-patterns/header.js +69 -0
  39. package/build/components/page-patterns/header.js.map +1 -0
  40. package/build/components/page-patterns/index.js +3 -1
  41. package/build/components/page-patterns/index.js.map +1 -1
  42. package/build/components/page-patterns/pagination.js +63 -0
  43. package/build/components/page-patterns/pagination.js.map +1 -0
  44. package/build/components/page-patterns/patterns-list.js +95 -30
  45. package/build/components/page-patterns/patterns-list.js.map +1 -1
  46. package/build/components/page-patterns/rename-menu-item.js +109 -0
  47. package/build/components/page-patterns/rename-menu-item.js.map +1 -0
  48. package/build/components/page-patterns/use-patterns.js +102 -121
  49. package/build/components/page-patterns/use-patterns.js.map +1 -1
  50. package/build/components/page-template-parts/add-new-template-part.js +74 -0
  51. package/build/components/page-template-parts/add-new-template-part.js.map +1 -0
  52. package/build/components/page-template-parts/index.js +2 -23
  53. package/build/components/page-template-parts/index.js.map +1 -1
  54. package/build/components/resizable-frame/index.js +78 -36
  55. package/build/components/resizable-frame/index.js.map +1 -1
  56. package/build/components/save-panel/index.js +5 -5
  57. package/build/components/save-panel/index.js.map +1 -1
  58. package/build/components/sidebar-edit-mode/page-panels/page-content.js +4 -3
  59. package/build/components/sidebar-edit-mode/page-panels/page-content.js.map +1 -1
  60. package/build/components/sidebar-edit-mode/page-panels/page-status.js +3 -8
  61. package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
  62. package/build/components/sidebar-navigation-screen/index.js +14 -8
  63. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  64. package/build/components/sidebar-navigation-screen-main/index.js +4 -2
  65. package/build/components/sidebar-navigation-screen-main/index.js.map +1 -1
  66. package/build/components/sidebar-navigation-screen-main/template-part-hint.js +45 -0
  67. package/build/components/sidebar-navigation-screen-main/template-part-hint.js.map +1 -0
  68. package/build/components/sidebar-navigation-screen-navigation-menu/index.js +4 -4
  69. package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  70. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +1 -0
  71. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  72. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -3
  73. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
  74. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +4 -3
  75. package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  76. package/build/components/sidebar-navigation-screen-navigation-menus/constants.js +2 -0
  77. package/build/components/sidebar-navigation-screen-navigation-menus/constants.js.map +1 -1
  78. package/build/components/sidebar-navigation-screen-page/index.js +2 -3
  79. package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
  80. package/build/components/sidebar-navigation-screen-page/status-label.js +1 -34
  81. package/build/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
  82. package/build/components/sidebar-navigation-screen-pages/index.js +33 -25
  83. package/build/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  84. package/build/components/sidebar-navigation-screen-pattern/index.js +9 -7
  85. package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
  86. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +3 -2
  87. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
  88. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +3 -2
  89. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -1
  90. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +11 -3
  91. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
  92. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +5 -2
  93. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  94. package/build/components/sidebar-navigation-screen-patterns/index.js +72 -51
  95. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  96. package/build/components/sidebar-navigation-screen-patterns/use-my-patterns.js +9 -5
  97. package/build/components/sidebar-navigation-screen-patterns/use-my-patterns.js.map +1 -1
  98. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +11 -1
  99. package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  100. package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +20 -9
  101. package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -1
  102. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +1 -1
  103. package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  104. package/build/components/site-hub/index.js +24 -11
  105. package/build/components/site-hub/index.js.map +1 -1
  106. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +10 -5
  107. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  108. package/build/components/sync-state-with-url/use-sync-path-with-url.js +15 -12
  109. package/build/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
  110. package/build/components/template-actions/index.js +3 -1
  111. package/build/components/template-actions/index.js.map +1 -1
  112. package/build/components/template-actions/rename-menu-item.js +12 -8
  113. package/build/components/template-actions/rename-menu-item.js.map +1 -1
  114. package/build/components/use-edited-entity-record/index.js +6 -1
  115. package/build/components/use-edited-entity-record/index.js.map +1 -1
  116. package/build/hooks/commands/use-common-commands.js +78 -20
  117. package/build/hooks/commands/use-common-commands.js.map +1 -1
  118. package/build/hooks/push-changes-to-global-styles/index.js +56 -10
  119. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  120. package/build/store/private-actions.js +7 -1
  121. package/build/store/private-actions.js.map +1 -1
  122. package/build/utils/normalize-record-key.js +19 -0
  123. package/build/utils/normalize-record-key.js.map +1 -0
  124. package/build/utils/use-activate-theme.js +1 -1
  125. package/build/utils/use-activate-theme.js.map +1 -1
  126. package/build-module/components/add-new-page/index.js +1 -6
  127. package/build-module/components/add-new-page/index.js.map +1 -1
  128. package/build-module/components/add-new-pattern/index.js +19 -7
  129. package/build-module/components/add-new-pattern/index.js.map +1 -1
  130. package/build-module/components/add-new-template/utils.js +9 -6
  131. package/build-module/components/add-new-template/utils.js.map +1 -1
  132. package/build-module/components/block-editor/constants.js +1 -1
  133. package/build-module/components/block-editor/constants.js.map +1 -1
  134. package/build-module/components/block-editor/editor-canvas.js +1 -1
  135. package/build-module/components/block-editor/editor-canvas.js.map +1 -1
  136. package/build-module/components/block-editor/index.js +0 -4
  137. package/build-module/components/block-editor/index.js.map +1 -1
  138. package/build-module/components/block-editor/use-site-editor-settings.js +89 -14
  139. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  140. package/build-module/components/code-editor/index.js +62 -30
  141. package/build-module/components/code-editor/index.js.map +1 -1
  142. package/build-module/components/create-pattern-modal/index.js +6 -3
  143. package/build-module/components/create-pattern-modal/index.js.map +1 -1
  144. package/build-module/components/editor/index.js +1 -1
  145. package/build-module/components/editor/index.js.map +1 -1
  146. package/build-module/components/header-edit-mode/index.js +13 -9
  147. package/build-module/components/header-edit-mode/index.js.map +1 -1
  148. package/build-module/components/layout/index.js +8 -3
  149. package/build-module/components/layout/index.js.map +1 -1
  150. package/build-module/components/page-actions/index.js +2 -2
  151. package/build-module/components/page-actions/index.js.map +1 -1
  152. package/build-module/components/page-actions/{delete-page-menu-item.js → trash-page-menu-item.js} +8 -17
  153. package/build-module/components/page-actions/trash-page-menu-item.js.map +1 -0
  154. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js +5 -3
  155. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
  156. package/build-module/components/page-patterns/duplicate-menu-item.js +147 -0
  157. package/build-module/components/page-patterns/duplicate-menu-item.js.map +1 -0
  158. package/build-module/components/page-patterns/grid-item.js +84 -64
  159. package/build-module/components/page-patterns/grid-item.js.map +1 -1
  160. package/build-module/components/page-patterns/grid.js +5 -17
  161. package/build-module/components/page-patterns/grid.js.map +1 -1
  162. package/build-module/components/page-patterns/header.js +54 -0
  163. package/build-module/components/page-patterns/header.js.map +1 -0
  164. package/build-module/components/page-patterns/index.js +3 -1
  165. package/build-module/components/page-patterns/index.js.map +1 -1
  166. package/build-module/components/page-patterns/pagination.js +54 -0
  167. package/build-module/components/page-patterns/pagination.js.map +1 -0
  168. package/build-module/components/page-patterns/patterns-list.js +96 -33
  169. package/build-module/components/page-patterns/patterns-list.js.map +1 -1
  170. package/build-module/components/page-patterns/rename-menu-item.js +97 -0
  171. package/build-module/components/page-patterns/rename-menu-item.js.map +1 -0
  172. package/build-module/components/page-patterns/use-patterns.js +103 -122
  173. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  174. package/build-module/components/page-template-parts/add-new-template-part.js +58 -0
  175. package/build-module/components/page-template-parts/add-new-template-part.js.map +1 -0
  176. package/build-module/components/page-template-parts/index.js +3 -22
  177. package/build-module/components/page-template-parts/index.js.map +1 -1
  178. package/build-module/components/resizable-frame/index.js +79 -39
  179. package/build-module/components/resizable-frame/index.js.map +1 -1
  180. package/build-module/components/save-panel/index.js +5 -5
  181. package/build-module/components/save-panel/index.js.map +1 -1
  182. package/build-module/components/sidebar-edit-mode/page-panels/page-content.js +5 -2
  183. package/build-module/components/sidebar-edit-mode/page-panels/page-content.js.map +1 -1
  184. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js +3 -8
  185. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
  186. package/build-module/components/sidebar-navigation-screen/index.js +15 -9
  187. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  188. package/build-module/components/sidebar-navigation-screen-main/index.js +4 -3
  189. package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -1
  190. package/build-module/components/sidebar-navigation-screen-main/template-part-hint.js +33 -0
  191. package/build-module/components/sidebar-navigation-screen-main/template-part-hint.js.map +1 -0
  192. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js +4 -4
  193. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  194. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +1 -0
  195. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  196. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -3
  197. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
  198. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +4 -3
  199. package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
  200. package/build-module/components/sidebar-navigation-screen-navigation-menus/constants.js +2 -0
  201. package/build-module/components/sidebar-navigation-screen-navigation-menus/constants.js.map +1 -1
  202. package/build-module/components/sidebar-navigation-screen-page/index.js +2 -3
  203. package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
  204. package/build-module/components/sidebar-navigation-screen-page/status-label.js +1 -32
  205. package/build-module/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
  206. package/build-module/components/sidebar-navigation-screen-pages/index.js +33 -25
  207. package/build-module/components/sidebar-navigation-screen-pages/index.js.map +1 -1
  208. package/build-module/components/sidebar-navigation-screen-pattern/index.js +8 -7
  209. package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
  210. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +3 -2
  211. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
  212. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +3 -2
  213. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -1
  214. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +11 -3
  215. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
  216. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +4 -2
  217. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  218. package/build-module/components/sidebar-navigation-screen-patterns/index.js +76 -53
  219. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  220. package/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.js +9 -5
  221. package/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.js.map +1 -1
  222. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +10 -1
  223. package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
  224. package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +18 -9
  225. package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -1
  226. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +1 -1
  227. package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
  228. package/build-module/components/site-hub/index.js +24 -11
  229. package/build-module/components/site-hub/index.js.map +1 -1
  230. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +7 -5
  231. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  232. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js +16 -12
  233. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
  234. package/build-module/components/template-actions/index.js +2 -1
  235. package/build-module/components/template-actions/index.js.map +1 -1
  236. package/build-module/components/template-actions/rename-menu-item.js +11 -8
  237. package/build-module/components/template-actions/rename-menu-item.js.map +1 -1
  238. package/build-module/components/use-edited-entity-record/index.js +3 -1
  239. package/build-module/components/use-edited-entity-record/index.js.map +1 -1
  240. package/build-module/hooks/commands/use-common-commands.js +74 -20
  241. package/build-module/hooks/commands/use-common-commands.js.map +1 -1
  242. package/build-module/hooks/push-changes-to-global-styles/index.js +57 -10
  243. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  244. package/build-module/store/private-actions.js +7 -1
  245. package/build-module/store/private-actions.js.map +1 -1
  246. package/build-module/utils/normalize-record-key.js +12 -0
  247. package/build-module/utils/normalize-record-key.js.map +1 -0
  248. package/build-module/utils/use-activate-theme.js +1 -1
  249. package/build-module/utils/use-activate-theme.js.map +1 -1
  250. package/build-style/style-rtl.css +221 -63
  251. package/build-style/style.css +221 -63
  252. package/package.json +39 -40
  253. package/src/components/add-new-page/index.js +0 -3
  254. package/src/components/add-new-pattern/index.js +23 -12
  255. package/src/components/add-new-template/utils.js +9 -6
  256. package/src/components/block-editor/constants.js +5 -1
  257. package/src/components/block-editor/editor-canvas.js +1 -1
  258. package/src/components/block-editor/index.js +0 -4
  259. package/src/components/block-editor/use-site-editor-settings.js +99 -20
  260. package/src/components/canvas-spinner/style.scss +14 -0
  261. package/src/components/code-editor/index.js +51 -33
  262. package/src/components/create-pattern-modal/index.js +5 -2
  263. package/src/components/editor/index.js +2 -2
  264. package/src/components/header-edit-mode/document-actions/style.scss +4 -0
  265. package/src/components/header-edit-mode/index.js +29 -22
  266. package/src/components/layout/index.js +16 -2
  267. package/src/components/layout/style.scss +2 -1
  268. package/src/components/page-actions/index.js +2 -2
  269. package/src/components/page-actions/{delete-page-menu-item.js → trash-page-menu-item.js} +9 -22
  270. package/src/components/page-content-focus-manager/disable-non-page-content-blocks.js +12 -3
  271. package/src/components/page-patterns/duplicate-menu-item.js +196 -0
  272. package/src/components/page-patterns/grid-item.js +189 -133
  273. package/src/components/page-patterns/grid.js +3 -20
  274. package/src/components/page-patterns/header.js +69 -0
  275. package/src/components/page-patterns/index.js +6 -1
  276. package/src/components/page-patterns/pagination.js +80 -0
  277. package/src/components/page-patterns/patterns-list.js +160 -72
  278. package/src/components/page-patterns/rename-menu-item.js +115 -0
  279. package/src/components/page-patterns/style.scss +140 -30
  280. package/src/components/page-patterns/use-patterns.js +102 -172
  281. package/src/components/page-template-parts/add-new-template-part.js +57 -0
  282. package/src/components/page-template-parts/index.js +3 -22
  283. package/src/components/resizable-frame/index.js +102 -34
  284. package/src/components/resizable-frame/style.scss +9 -9
  285. package/src/components/save-panel/index.js +10 -4
  286. package/src/components/sidebar-edit-mode/page-panels/page-content.js +7 -5
  287. package/src/components/sidebar-edit-mode/page-panels/page-status.js +2 -5
  288. package/src/components/sidebar-navigation-item/style.scss +5 -12
  289. package/src/components/sidebar-navigation-screen/index.js +14 -7
  290. package/src/components/sidebar-navigation-screen/style.scss +14 -0
  291. package/src/components/sidebar-navigation-screen-main/index.js +44 -40
  292. package/src/components/sidebar-navigation-screen-main/template-part-hint.js +34 -0
  293. package/src/components/sidebar-navigation-screen-navigation-menu/index.js +4 -3
  294. package/src/components/sidebar-navigation-screen-navigation-menu/more-menu.js +1 -0
  295. package/src/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +1 -1
  296. package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +15 -5
  297. package/src/components/sidebar-navigation-screen-navigation-menus/constants.js +2 -0
  298. package/src/components/sidebar-navigation-screen-page/index.js +3 -3
  299. package/src/components/sidebar-navigation-screen-page/status-label.js +1 -35
  300. package/src/components/sidebar-navigation-screen-pages/index.js +39 -29
  301. package/src/components/sidebar-navigation-screen-pattern/index.js +5 -2
  302. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -1
  303. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +2 -1
  304. package/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +12 -2
  305. package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +5 -2
  306. package/src/components/sidebar-navigation-screen-patterns/index.js +103 -98
  307. package/src/components/sidebar-navigation-screen-patterns/style.scss +20 -0
  308. package/src/components/sidebar-navigation-screen-patterns/use-my-patterns.js +7 -6
  309. package/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +9 -0
  310. package/src/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +31 -9
  311. package/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +2 -1
  312. package/src/components/site-hub/index.js +45 -28
  313. package/src/components/site-hub/style.scss +13 -0
  314. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +8 -2
  315. package/src/components/sync-state-with-url/use-sync-path-with-url.js +73 -66
  316. package/src/components/template-actions/index.js +2 -1
  317. package/src/components/template-actions/rename-menu-item.js +17 -10
  318. package/src/components/use-edited-entity-record/index.js +6 -1
  319. package/src/hooks/commands/use-common-commands.js +56 -23
  320. package/src/hooks/push-changes-to-global-styles/index.js +63 -9
  321. package/src/store/private-actions.js +5 -1
  322. package/src/style.scss +10 -12
  323. package/src/utils/normalize-record-key.js +11 -0
  324. package/src/utils/use-activate-theme.js +1 -1
  325. package/build/components/code-editor/code-editor-text-area.js +0 -96
  326. package/build/components/code-editor/code-editor-text-area.js.map +0 -1
  327. package/build/components/keyboard-shortcuts/index.js +0 -148
  328. package/build/components/keyboard-shortcuts/index.js.map +0 -1
  329. package/build/components/page-actions/delete-page-menu-item.js.map +0 -1
  330. package/build/components/page-content-focus-manager/constants.js +0 -9
  331. package/build/components/page-content-focus-manager/constants.js.map +0 -1
  332. package/build-module/components/code-editor/code-editor-text-area.js +0 -84
  333. package/build-module/components/code-editor/code-editor-text-area.js.map +0 -1
  334. package/build-module/components/keyboard-shortcuts/index.js +0 -132
  335. package/build-module/components/keyboard-shortcuts/index.js.map +0 -1
  336. package/build-module/components/page-actions/delete-page-menu-item.js.map +0 -1
  337. package/build-module/components/page-content-focus-manager/constants.js +0 -2
  338. package/build-module/components/page-content-focus-manager/constants.js.map +0 -1
  339. package/src/components/code-editor/code-editor-text-area.js +0 -84
  340. package/src/components/keyboard-shortcuts/index.js +0 -137
  341. package/src/components/page-content-focus-manager/constants.js +0 -5
@@ -3,11 +3,11 @@ import { createElement, Fragment } from "@wordpress/element";
3
3
  /**
4
4
  * WordPress dependencies
5
5
  */
6
- import { __experimentalItemGroup as ItemGroup, __experimentalItem as Item, Flex, Icon, Tooltip } from '@wordpress/components';
6
+ import { __experimentalItemGroup as ItemGroup, __experimentalItem as Item, Flex, Icon, Tooltip, __experimentalHeading as Heading } from '@wordpress/components';
7
7
  import { useViewportMatch } from '@wordpress/compose';
8
8
  import { useSelect } from '@wordpress/data';
9
9
  import { getTemplatePartIcon } from '@wordpress/editor';
10
- import { __ } from '@wordpress/i18n';
10
+ import { __, sprintf } from '@wordpress/i18n';
11
11
  import { getQueryArgs } from '@wordpress/url';
12
12
  import { file, starFilled, lockSmall } from '@wordpress/icons';
13
13
  /**
@@ -24,12 +24,63 @@ import { useLink } from '../routes/link';
24
24
  import usePatternCategories from './use-pattern-categories';
25
25
  import useMyPatterns from './use-my-patterns';
26
26
  import useTemplatePartAreas from './use-template-part-areas';
27
- const templatePartAreaLabels = {
28
- header: __('Headers'),
29
- footer: __('Footers'),
30
- sidebar: __('Sidebar'),
31
- uncategorized: __('Uncategorized')
32
- };
27
+
28
+ function TemplatePartGroup({
29
+ areas,
30
+ currentArea,
31
+ currentType
32
+ }) {
33
+ return createElement(Fragment, null, createElement("div", {
34
+ className: "edit-site-sidebar-navigation-screen-patterns__group-header"
35
+ }, createElement(Heading, {
36
+ level: 2
37
+ }, __('Template parts'))), createElement(ItemGroup, {
38
+ className: "edit-site-sidebar-navigation-screen-patterns__group"
39
+ }, Object.entries(areas).map(([area, {
40
+ label,
41
+ templateParts
42
+ }]) => createElement(CategoryItem, {
43
+ key: area,
44
+ count: templateParts?.length,
45
+ icon: getTemplatePartIcon(area),
46
+ label: label,
47
+ id: area,
48
+ type: "wp_template_part",
49
+ isActive: currentArea === area && currentType === 'wp_template_part'
50
+ }))));
51
+ }
52
+
53
+ function ThemePatternsGroup({
54
+ categories,
55
+ currentCategory,
56
+ currentType
57
+ }) {
58
+ return createElement(Fragment, null, createElement(ItemGroup, {
59
+ className: "edit-site-sidebar-navigation-screen-patterns__group"
60
+ }, categories.map(category => createElement(CategoryItem, {
61
+ key: category.name,
62
+ count: category.count,
63
+ label: createElement(Flex, {
64
+ justify: "left",
65
+ align: "center",
66
+ gap: 0
67
+ }, category.label, createElement(Tooltip, {
68
+ position: "top center",
69
+ text: sprintf( // translators: %s: The pattern category name.
70
+ '"%s" patterns cannot be edited.', category.label)
71
+ }, createElement("span", {
72
+ className: "edit-site-sidebar-navigation-screen-pattern__lock-icon"
73
+ }, createElement(Icon, {
74
+ icon: lockSmall,
75
+ size: 24
76
+ })))),
77
+ icon: file,
78
+ id: category.name,
79
+ type: "pattern",
80
+ isActive: currentCategory === `${category.name}` && currentType === 'pattern'
81
+ }))));
82
+ }
83
+
33
84
  export default function SidebarNavigationScreenPatterns() {
34
85
  const isMobileViewport = useViewportMatch('medium', '<');
35
86
  const {
@@ -48,8 +99,7 @@ export default function SidebarNavigationScreenPatterns() {
48
99
  hasPatterns
49
100
  } = usePatternCategories();
50
101
  const {
51
- myPatterns,
52
- hasPatterns: hasMyPatterns
102
+ myPatterns
53
103
  } = useMyPatterns();
54
104
  const isTemplatePartsMode = useSelect(select => {
55
105
  const settings = select(editSiteStore).getSettings();
@@ -59,67 +109,40 @@ export default function SidebarNavigationScreenPatterns() {
59
109
  path: '/wp_template_part/all'
60
110
  });
61
111
  const footer = !isMobileViewport ? createElement(ItemGroup, null, createElement(SidebarNavigationItem, {
62
- withChevron: true,
63
- ...templatePartsLink
64
- }, __('Manage all template parts')), createElement(SidebarNavigationItem, {
65
112
  as: "a",
66
113
  href: "edit.php?post_type=wp_block",
67
114
  withChevron: true
68
- }, __('Manage all of my patterns'))) : undefined;
115
+ }, __('Manage all of my patterns')), createElement(SidebarNavigationItem, {
116
+ withChevron: true,
117
+ ...templatePartsLink
118
+ }, __('Manage all template parts'))) : undefined;
69
119
  return createElement(SidebarNavigationScreen, {
70
120
  isRoot: isTemplatePartsMode,
71
121
  title: __('Patterns'),
72
- description: __('Manage what patterns are available when editing your site.'),
122
+ description: __('Manage what patterns are available when editing the site.'),
73
123
  actions: createElement(AddNewPattern, null),
74
124
  footer: footer,
75
125
  content: createElement(Fragment, null, isLoading && __('Loading patterns'), !isLoading && createElement(Fragment, null, !hasTemplateParts && !hasPatterns && createElement(ItemGroup, {
76
126
  className: "edit-site-sidebar-navigation-screen-patterns__group"
77
- }, createElement(Item, null, __('No template parts or patterns found'))), hasMyPatterns && createElement(ItemGroup, {
127
+ }, createElement(Item, null, __('No template parts or patterns found'))), createElement(ItemGroup, {
78
128
  className: "edit-site-sidebar-navigation-screen-patterns__group"
79
129
  }, createElement(CategoryItem, {
80
130
  key: myPatterns.name,
81
- count: myPatterns.count,
131
+ count: !myPatterns.count ? '0' : myPatterns.count,
82
132
  label: myPatterns.label,
83
133
  icon: starFilled,
84
134
  id: myPatterns.name,
85
135
  type: "wp_block",
86
136
  isActive: currentCategory === `${myPatterns.name}` && currentType === 'wp_block'
87
- })), hasTemplateParts && createElement(ItemGroup, {
88
- className: "edit-site-sidebar-navigation-screen-patterns__group"
89
- }, Object.entries(templatePartAreas).map(([area, parts]) => createElement(CategoryItem, {
90
- key: area,
91
- count: parts.length,
92
- icon: getTemplatePartIcon(area),
93
- label: templatePartAreaLabels[area],
94
- id: area,
95
- type: "wp_template_part",
96
- isActive: currentCategory === area && currentType === 'wp_template_part'
97
- }))), hasPatterns && createElement(ItemGroup, {
98
- className: "edit-site-sidebar-navigation-screen-patterns__group"
99
- }, patternCategories.map(category => createElement(CategoryItem, {
100
- key: category.name,
101
- count: category.count,
102
- label: createElement(Flex, {
103
- justify: "left",
104
- align: "center",
105
- gap: 0
106
- }, category.label, createElement(Tooltip, {
107
- position: "top center",
108
- text: __('Theme patterns cannot be edited.')
109
- }, createElement("span", {
110
- className: "edit-site-sidebar-navigation-screen-pattern__lock-icon"
111
- }, createElement(Icon, {
112
- style: {
113
- fill: 'currentcolor'
114
- },
115
- icon: lockSmall,
116
- size: 24
117
- })))),
118
- icon: file,
119
- id: category.name,
120
- type: "pattern",
121
- isActive: currentCategory === `${category.name}` && currentType === 'pattern'
122
- })))))
137
+ })), hasPatterns && createElement(ThemePatternsGroup, {
138
+ categories: patternCategories,
139
+ currentCategory: currentCategory,
140
+ currentType: currentType
141
+ }), hasTemplateParts && createElement(TemplatePartGroup, {
142
+ areas: templatePartAreas,
143
+ currentArea: currentCategory,
144
+ currentType: currentType
145
+ })))
123
146
  });
124
147
  }
125
148
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/index.js"],"names":["__experimentalItemGroup","ItemGroup","__experimentalItem","Item","Flex","Icon","Tooltip","useViewportMatch","useSelect","getTemplatePartIcon","__","getQueryArgs","file","starFilled","lockSmall","AddNewPattern","SidebarNavigationItem","SidebarNavigationScreen","CategoryItem","DEFAULT_CATEGORY","DEFAULT_TYPE","store","editSiteStore","useLink","usePatternCategories","useMyPatterns","useTemplatePartAreas","templatePartAreaLabels","header","footer","sidebar","uncategorized","SidebarNavigationScreenPatterns","isMobileViewport","categoryType","categoryId","window","location","href","currentCategory","currentType","templatePartAreas","hasTemplateParts","isLoading","patternCategories","hasPatterns","myPatterns","hasMyPatterns","isTemplatePartsMode","select","settings","getSettings","supportsTemplatePartsMode","templatePartsLink","path","undefined","name","count","label","Object","entries","map","area","parts","length","category","fill"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\tFlex,\n\tIcon,\n\tTooltip,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { getTemplatePartIcon } from '@wordpress/editor';\nimport { __ } from '@wordpress/i18n';\nimport { getQueryArgs } from '@wordpress/url';\nimport { file, starFilled, lockSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport AddNewPattern from '../add-new-pattern';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport CategoryItem from './category-item';\nimport { DEFAULT_CATEGORY, DEFAULT_TYPE } from '../page-patterns/utils';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport usePatternCategories from './use-pattern-categories';\nimport useMyPatterns from './use-my-patterns';\nimport useTemplatePartAreas from './use-template-part-areas';\n\nconst templatePartAreaLabels = {\n\theader: __( 'Headers' ),\n\tfooter: __( 'Footers' ),\n\tsidebar: __( 'Sidebar' ),\n\tuncategorized: __( 'Uncategorized' ),\n};\n\nexport default function SidebarNavigationScreenPatterns() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst { categoryType, categoryId } = getQueryArgs( window.location.href );\n\tconst currentCategory = categoryId || DEFAULT_CATEGORY;\n\tconst currentType = categoryType || DEFAULT_TYPE;\n\n\tconst { templatePartAreas, hasTemplateParts, isLoading } =\n\t\tuseTemplatePartAreas();\n\tconst { patternCategories, hasPatterns } = usePatternCategories();\n\tconst { myPatterns, hasPatterns: hasMyPatterns } = useMyPatterns();\n\n\tconst isTemplatePartsMode = useSelect( ( select ) => {\n\t\tconst settings = select( editSiteStore ).getSettings();\n\t\treturn !! settings.supportsTemplatePartsMode;\n\t}, [] );\n\n\tconst templatePartsLink = useLink( { path: '/wp_template_part/all' } );\n\tconst footer = ! isMobileViewport ? (\n\t\t<ItemGroup>\n\t\t\t<SidebarNavigationItem withChevron { ...templatePartsLink }>\n\t\t\t\t{ __( 'Manage all template parts' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t\t<SidebarNavigationItem\n\t\t\t\tas=\"a\"\n\t\t\t\thref=\"edit.php?post_type=wp_block\"\n\t\t\t\twithChevron\n\t\t\t>\n\t\t\t\t{ __( 'Manage all of my patterns' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t</ItemGroup>\n\t) : undefined;\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\tisRoot={ isTemplatePartsMode }\n\t\t\ttitle={ __( 'Patterns' ) }\n\t\t\tdescription={ __(\n\t\t\t\t'Manage what patterns are available when editing your site.'\n\t\t\t) }\n\t\t\tactions={ <AddNewPattern /> }\n\t\t\tfooter={ footer }\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ isLoading && __( 'Loading patterns' ) }\n\t\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! hasTemplateParts && ! hasPatterns && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t<Item>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'No template parts or patterns found'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Item>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasMyPatterns && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\t\t\t\tkey={ myPatterns.name }\n\t\t\t\t\t\t\t\t\t\tcount={ myPatterns.count }\n\t\t\t\t\t\t\t\t\t\tlabel={ myPatterns.label }\n\t\t\t\t\t\t\t\t\t\ticon={ starFilled }\n\t\t\t\t\t\t\t\t\t\tid={ myPatterns.name }\n\t\t\t\t\t\t\t\t\t\ttype=\"wp_block\"\n\t\t\t\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\t\t\t\tcurrentCategory ===\n\t\t\t\t\t\t\t\t\t\t\t\t`${ myPatterns.name }` &&\n\t\t\t\t\t\t\t\t\t\t\tcurrentType === 'wp_block'\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasTemplateParts && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t{ Object.entries( templatePartAreas ).map(\n\t\t\t\t\t\t\t\t\t\t( [ area, parts ] ) => (\n\t\t\t\t\t\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ area }\n\t\t\t\t\t\t\t\t\t\t\t\tcount={ parts.length }\n\t\t\t\t\t\t\t\t\t\t\t\ticon={ getTemplatePartIcon(\n\t\t\t\t\t\t\t\t\t\t\t\t\tarea\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\t\t\t\t\ttemplatePartAreaLabels[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tarea\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tid={ area }\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"wp_template_part\"\n\t\t\t\t\t\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\t\t\t\t\t\tcurrentCategory === area &&\n\t\t\t\t\t\t\t\t\t\t\t\t\tcurrentType ===\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'wp_template_part'\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasPatterns && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t{ patternCategories.map( ( category ) => (\n\t\t\t\t\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\t\t\t\t\t\tcount={ category.count }\n\t\t\t\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\t\t\t\t\t\t\tjustify=\"left\"\n\t\t\t\t\t\t\t\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tgap={ 0 }\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ category.label }\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttext={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'Theme patterns cannot be edited.'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-pattern__lock-icon\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfill: 'currentcolor',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlockSmall\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\ticon={ file }\n\t\t\t\t\t\t\t\t\t\t\tid={ category.name }\n\t\t\t\t\t\t\t\t\t\t\ttype=\"pattern\"\n\t\t\t\t\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\t\t\t\t\tcurrentCategory ===\n\t\t\t\t\t\t\t\t\t\t\t\t\t`${ category.name }` &&\n\t\t\t\t\t\t\t\t\t\t\t\tcurrentType === 'pattern'\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t}\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/index.js"],"names":["__experimentalItemGroup","ItemGroup","__experimentalItem","Item","Flex","Icon","Tooltip","__experimentalHeading","Heading","useViewportMatch","useSelect","getTemplatePartIcon","__","sprintf","getQueryArgs","file","starFilled","lockSmall","AddNewPattern","SidebarNavigationItem","SidebarNavigationScreen","CategoryItem","DEFAULT_CATEGORY","DEFAULT_TYPE","store","editSiteStore","useLink","usePatternCategories","useMyPatterns","useTemplatePartAreas","TemplatePartGroup","areas","currentArea","currentType","Object","entries","map","area","label","templateParts","length","ThemePatternsGroup","categories","currentCategory","category","name","count","SidebarNavigationScreenPatterns","isMobileViewport","categoryType","categoryId","window","location","href","templatePartAreas","hasTemplateParts","isLoading","patternCategories","hasPatterns","myPatterns","isTemplatePartsMode","select","settings","getSettings","supportsTemplatePartsMode","templatePartsLink","path","footer","undefined"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,uBAAuB,IAAIC,SAD5B,EAECC,kBAAkB,IAAIC,IAFvB,EAGCC,IAHD,EAICC,IAJD,EAKCC,OALD,EAMCC,qBAAqB,IAAIC,OAN1B,QAOO,uBAPP;AAQA,SAASC,gBAAT,QAAiC,oBAAjC;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,mBAAT,QAAoC,mBAApC;AACA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AACA,SAASC,YAAT,QAA6B,gBAA7B;AACA,SAASC,IAAT,EAAeC,UAAf,EAA2BC,SAA3B,QAA4C,kBAA5C;AAEA;AACA;AACA;;AACA,OAAOC,aAAP,MAA0B,oBAA1B;AACA,OAAOC,qBAAP,MAAkC,4BAAlC;AACA,OAAOC,uBAAP,MAAoC,8BAApC;AACA,OAAOC,YAAP,MAAyB,iBAAzB;AACA,SAASC,gBAAT,EAA2BC,YAA3B,QAA+C,wBAA/C;AACA,SAASC,KAAK,IAAIC,aAAlB,QAAuC,aAAvC;AACA,SAASC,OAAT,QAAwB,gBAAxB;AACA,OAAOC,oBAAP,MAAiC,0BAAjC;AACA,OAAOC,aAAP,MAA0B,mBAA1B;AACA,OAAOC,oBAAP,MAAiC,2BAAjC;;AAEA,SAASC,iBAAT,CAA4B;AAAEC,EAAAA,KAAF;AAASC,EAAAA,WAAT;AAAsBC,EAAAA;AAAtB,CAA5B,EAAkE;AACjE,SACC,8BACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,cAAC,OAAD;AAAS,IAAA,KAAK,EAAG;AAAjB,KAAuBrB,EAAE,CAAE,gBAAF,CAAzB,CADD,CADD,EAIC,cAAC,SAAD;AAAW,IAAA,SAAS,EAAC;AAArB,KACGsB,MAAM,CAACC,OAAP,CAAgBJ,KAAhB,EAAwBK,GAAxB,CACD,CAAE,CAAEC,IAAF,EAAQ;AAAEC,IAAAA,KAAF;AAASC,IAAAA;AAAT,GAAR,CAAF,KACC,cAAC,YAAD;AACC,IAAA,GAAG,EAAGF,IADP;AAEC,IAAA,KAAK,EAAGE,aAAa,EAAEC,MAFxB;AAGC,IAAA,IAAI,EAAG7B,mBAAmB,CAAE0B,IAAF,CAH3B;AAIC,IAAA,KAAK,EAAGC,KAJT;AAKC,IAAA,EAAE,EAAGD,IALN;AAMC,IAAA,IAAI,EAAC,kBANN;AAOC,IAAA,QAAQ,EACPL,WAAW,KAAKK,IAAhB,IACAJ,WAAW,KAAK;AATlB,IAFA,CADH,CAJD,CADD;AAyBA;;AAED,SAASQ,kBAAT,CAA6B;AAAEC,EAAAA,UAAF;AAAcC,EAAAA,eAAd;AAA+BV,EAAAA;AAA/B,CAA7B,EAA4E;AAC3E,SACC,8BACC,cAAC,SAAD;AAAW,IAAA,SAAS,EAAC;AAArB,KACGS,UAAU,CAACN,GAAX,CAAkBQ,QAAF,IACjB,cAAC,YAAD;AACC,IAAA,GAAG,EAAGA,QAAQ,CAACC,IADhB;AAEC,IAAA,KAAK,EAAGD,QAAQ,CAACE,KAFlB;AAGC,IAAA,KAAK,EACJ,cAAC,IAAD;AAAM,MAAA,OAAO,EAAC,MAAd;AAAqB,MAAA,KAAK,EAAC,QAA3B;AAAoC,MAAA,GAAG,EAAG;AAA1C,OACGF,QAAQ,CAACN,KADZ,EAEC,cAAC,OAAD;AACC,MAAA,QAAQ,EAAC,YADV;AAEC,MAAA,IAAI,EAAGzB,OAAO,EACb;AACA,uCAFa,EAGb+B,QAAQ,CAACN,KAHI;AAFf,OAQC;AAAM,MAAA,SAAS,EAAC;AAAhB,OACC,cAAC,IAAD;AAAM,MAAA,IAAI,EAAGrB,SAAb;AAAyB,MAAA,IAAI,EAAG;AAAhC,MADD,CARD,CAFD,CAJF;AAoBC,IAAA,IAAI,EAAGF,IApBR;AAqBC,IAAA,EAAE,EAAG6B,QAAQ,CAACC,IArBf;AAsBC,IAAA,IAAI,EAAC,SAtBN;AAuBC,IAAA,QAAQ,EACPF,eAAe,KAAM,GAAGC,QAAQ,CAACC,IAAM,EAAvC,IACAZ,WAAW,KAAK;AAzBlB,IADC,CADH,CADD,CADD;AAoCA;;AAED,eAAe,SAASc,+BAAT,GAA2C;AACzD,QAAMC,gBAAgB,GAAGvC,gBAAgB,CAAE,QAAF,EAAY,GAAZ,CAAzC;AACA,QAAM;AAAEwC,IAAAA,YAAF;AAAgBC,IAAAA;AAAhB,MAA+BpC,YAAY,CAAEqC,MAAM,CAACC,QAAP,CAAgBC,IAAlB,CAAjD;AACA,QAAMV,eAAe,GAAGO,UAAU,IAAI5B,gBAAtC;AACA,QAAMW,WAAW,GAAGgB,YAAY,IAAI1B,YAApC;AAEA,QAAM;AAAE+B,IAAAA,iBAAF;AAAqBC,IAAAA,gBAArB;AAAuCC,IAAAA;AAAvC,MACL3B,oBAAoB,EADrB;AAEA,QAAM;AAAE4B,IAAAA,iBAAF;AAAqBC,IAAAA;AAArB,MAAqC/B,oBAAoB,EAA/D;AACA,QAAM;AAAEgC,IAAAA;AAAF,MAAiB/B,aAAa,EAApC;AAEA,QAAMgC,mBAAmB,GAAGlD,SAAS,CAAImD,MAAF,IAAc;AACpD,UAAMC,QAAQ,GAAGD,MAAM,CAAEpC,aAAF,CAAN,CAAwBsC,WAAxB,EAAjB;AACA,WAAO,CAAC,CAAED,QAAQ,CAACE,yBAAnB;AACA,GAHoC,EAGlC,EAHkC,CAArC;AAKA,QAAMC,iBAAiB,GAAGvC,OAAO,CAAE;AAAEwC,IAAAA,IAAI,EAAE;AAAR,GAAF,CAAjC;AACA,QAAMC,MAAM,GAAG,CAAEnB,gBAAF,GACd,cAAC,SAAD,QACC,cAAC,qBAAD;AACC,IAAA,EAAE,EAAC,GADJ;AAEC,IAAA,IAAI,EAAC,6BAFN;AAGC,IAAA,WAAW;AAHZ,KAKGpC,EAAE,CAAE,2BAAF,CALL,CADD,EAQC,cAAC,qBAAD;AAAuB,IAAA,WAAW,MAAlC;AAAA,OAAwCqD;AAAxC,KACGrD,EAAE,CAAE,2BAAF,CADL,CARD,CADc,GAaXwD,SAbJ;AAeA,SACC,cAAC,uBAAD;AACC,IAAA,MAAM,EAAGR,mBADV;AAEC,IAAA,KAAK,EAAGhD,EAAE,CAAE,UAAF,CAFX;AAGC,IAAA,WAAW,EAAGA,EAAE,CACf,2DADe,CAHjB;AAMC,IAAA,OAAO,EAAG,cAAC,aAAD,OANX;AAOC,IAAA,MAAM,EAAGuD,MAPV;AAQC,IAAA,OAAO,EACN,8BACGX,SAAS,IAAI5C,EAAE,CAAE,kBAAF,CADlB,EAEG,CAAE4C,SAAF,IACD,8BACG,CAAED,gBAAF,IAAsB,CAAEG,WAAxB,IACD,cAAC,SAAD;AAAW,MAAA,SAAS,EAAC;AAArB,OACC,cAAC,IAAD,QACG9C,EAAE,CACH,qCADG,CADL,CADD,CAFF,EAUC,cAAC,SAAD;AAAW,MAAA,SAAS,EAAC;AAArB,OACC,cAAC,YAAD;AACC,MAAA,GAAG,EAAG+C,UAAU,CAACd,IADlB;AAEC,MAAA,KAAK,EACJ,CAAEc,UAAU,CAACb,KAAb,GACG,GADH,GAEGa,UAAU,CAACb,KALhB;AAOC,MAAA,KAAK,EAAGa,UAAU,CAACrB,KAPpB;AAQC,MAAA,IAAI,EAAGtB,UARR;AASC,MAAA,EAAE,EAAG2C,UAAU,CAACd,IATjB;AAUC,MAAA,IAAI,EAAC,UAVN;AAWC,MAAA,QAAQ,EACPF,eAAe,KACb,GAAGgB,UAAU,CAACd,IAAM,EADtB,IAEAZ,WAAW,KAAK;AAdlB,MADD,CAVD,EA6BGyB,WAAW,IACZ,cAAC,kBAAD;AACC,MAAA,UAAU,EAAGD,iBADd;AAEC,MAAA,eAAe,EAAGd,eAFnB;AAGC,MAAA,WAAW,EAAGV;AAHf,MA9BF,EAoCGsB,gBAAgB,IACjB,cAAC,iBAAD;AACC,MAAA,KAAK,EAAGD,iBADT;AAEC,MAAA,WAAW,EAAGX,eAFf;AAGC,MAAA,WAAW,EAAGV;AAHf,MArCF,CAHF;AATF,IADD;AA8DA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\tFlex,\n\tIcon,\n\tTooltip,\n\t__experimentalHeading as Heading,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { getTemplatePartIcon } from '@wordpress/editor';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { getQueryArgs } from '@wordpress/url';\nimport { file, starFilled, lockSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport AddNewPattern from '../add-new-pattern';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport CategoryItem from './category-item';\nimport { DEFAULT_CATEGORY, DEFAULT_TYPE } from '../page-patterns/utils';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport usePatternCategories from './use-pattern-categories';\nimport useMyPatterns from './use-my-patterns';\nimport useTemplatePartAreas from './use-template-part-areas';\n\nfunction TemplatePartGroup( { areas, currentArea, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-patterns__group-header\">\n\t\t\t\t<Heading level={ 2 }>{ __( 'Template parts' ) }</Heading>\n\t\t\t</div>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ Object.entries( areas ).map(\n\t\t\t\t\t( [ area, { label, templateParts } ] ) => (\n\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\tkey={ area }\n\t\t\t\t\t\t\tcount={ templateParts?.length }\n\t\t\t\t\t\t\ticon={ getTemplatePartIcon( area ) }\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tid={ area }\n\t\t\t\t\t\t\ttype=\"wp_template_part\"\n\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\tcurrentArea === area &&\n\t\t\t\t\t\t\t\tcurrentType === 'wp_template_part'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)\n\t\t\t\t) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ThemePatternsGroup( { categories, currentCategory, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\tcount={ category.count }\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t<Flex justify=\"left\" align=\"center\" gap={ 0 }>\n\t\t\t\t\t\t\t\t{ category.label }\n\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\ttext={ sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The pattern category name.\n\t\t\t\t\t\t\t\t\t\t'\"%s\" patterns cannot be edited.',\n\t\t\t\t\t\t\t\t\t\tcategory.label\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-pattern__lock-icon\">\n\t\t\t\t\t\t\t\t\t\t<Icon icon={ lockSmall } size={ 24 } />\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ticon={ file }\n\t\t\t\t\t\tid={ category.name }\n\t\t\t\t\t\ttype=\"pattern\"\n\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\tcurrentCategory === `${ category.name }` &&\n\t\t\t\t\t\t\tcurrentType === 'pattern'\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nexport default function SidebarNavigationScreenPatterns() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst { categoryType, categoryId } = getQueryArgs( window.location.href );\n\tconst currentCategory = categoryId || DEFAULT_CATEGORY;\n\tconst currentType = categoryType || DEFAULT_TYPE;\n\n\tconst { templatePartAreas, hasTemplateParts, isLoading } =\n\t\tuseTemplatePartAreas();\n\tconst { patternCategories, hasPatterns } = usePatternCategories();\n\tconst { myPatterns } = useMyPatterns();\n\n\tconst isTemplatePartsMode = useSelect( ( select ) => {\n\t\tconst settings = select( editSiteStore ).getSettings();\n\t\treturn !! settings.supportsTemplatePartsMode;\n\t}, [] );\n\n\tconst templatePartsLink = useLink( { path: '/wp_template_part/all' } );\n\tconst footer = ! isMobileViewport ? (\n\t\t<ItemGroup>\n\t\t\t<SidebarNavigationItem\n\t\t\t\tas=\"a\"\n\t\t\t\thref=\"edit.php?post_type=wp_block\"\n\t\t\t\twithChevron\n\t\t\t>\n\t\t\t\t{ __( 'Manage all of my patterns' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t\t<SidebarNavigationItem withChevron { ...templatePartsLink }>\n\t\t\t\t{ __( 'Manage all template parts' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t</ItemGroup>\n\t) : undefined;\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\tisRoot={ isTemplatePartsMode }\n\t\t\ttitle={ __( 'Patterns' ) }\n\t\t\tdescription={ __(\n\t\t\t\t'Manage what patterns are available when editing the site.'\n\t\t\t) }\n\t\t\tactions={ <AddNewPattern /> }\n\t\t\tfooter={ footer }\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ isLoading && __( 'Loading patterns' ) }\n\t\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! hasTemplateParts && ! hasPatterns && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t<Item>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'No template parts or patterns found'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Item>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\t\t\tkey={ myPatterns.name }\n\t\t\t\t\t\t\t\t\tcount={\n\t\t\t\t\t\t\t\t\t\t! myPatterns.count\n\t\t\t\t\t\t\t\t\t\t\t? '0'\n\t\t\t\t\t\t\t\t\t\t\t: myPatterns.count\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabel={ myPatterns.label }\n\t\t\t\t\t\t\t\t\ticon={ starFilled }\n\t\t\t\t\t\t\t\t\tid={ myPatterns.name }\n\t\t\t\t\t\t\t\t\ttype=\"wp_block\"\n\t\t\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\t\t\tcurrentCategory ===\n\t\t\t\t\t\t\t\t\t\t\t`${ myPatterns.name }` &&\n\t\t\t\t\t\t\t\t\t\tcurrentType === 'wp_block'\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t{ hasPatterns && (\n\t\t\t\t\t\t\t\t<ThemePatternsGroup\n\t\t\t\t\t\t\t\t\tcategories={ patternCategories }\n\t\t\t\t\t\t\t\t\tcurrentCategory={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasTemplateParts && (\n\t\t\t\t\t\t\t\t<TemplatePartGroup\n\t\t\t\t\t\t\t\t\tareas={ templatePartAreas }\n\t\t\t\t\t\t\t\t\tcurrentArea={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t}\n\t\t/>\n\t);\n}\n"]}
@@ -5,16 +5,20 @@ import { store as coreStore } from '@wordpress/core-data';
5
5
  import { useSelect } from '@wordpress/data';
6
6
  import { __ } from '@wordpress/i18n';
7
7
  export default function useMyPatterns() {
8
- const myPatterns = useSelect(select => select(coreStore).getEntityRecords('postType', 'wp_block', {
9
- per_page: -1
10
- }));
8
+ const myPatternsCount = useSelect(select => {
9
+ var _select$getEntityReco;
10
+
11
+ return (_select$getEntityReco = select(coreStore).getEntityRecords('postType', 'wp_block', {
12
+ per_page: -1
13
+ })?.length) !== null && _select$getEntityReco !== void 0 ? _select$getEntityReco : 0;
14
+ });
11
15
  return {
12
16
  myPatterns: {
13
- count: myPatterns?.length || 0,
17
+ count: myPatternsCount,
14
18
  name: 'my-patterns',
15
19
  label: __('My patterns')
16
20
  },
17
- hasPatterns: !!myPatterns?.length
21
+ hasPatterns: myPatternsCount > 0
18
22
  };
19
23
  }
20
24
  //# sourceMappingURL=use-my-patterns.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-my-patterns.js"],"names":["store","coreStore","useSelect","__","useMyPatterns","myPatterns","select","getEntityRecords","per_page","count","length","name","label","hasPatterns"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA,eAAe,SAASC,aAAT,GAAyB;AACvC,QAAMC,UAAU,GAAGH,SAAS,CAAII,MAAF,IAC7BA,MAAM,CAAEL,SAAF,CAAN,CAAoBM,gBAApB,CAAsC,UAAtC,EAAkD,UAAlD,EAA8D;AAC7DC,IAAAA,QAAQ,EAAE,CAAC;AADkD,GAA9D,CAD2B,CAA5B;AAMA,SAAO;AACNH,IAAAA,UAAU,EAAE;AACXI,MAAAA,KAAK,EAAEJ,UAAU,EAAEK,MAAZ,IAAsB,CADlB;AAEXC,MAAAA,IAAI,EAAE,aAFK;AAGXC,MAAAA,KAAK,EAAET,EAAE,CAAE,aAAF;AAHE,KADN;AAMNU,IAAAA,WAAW,EAAE,CAAC,CAAER,UAAU,EAAEK;AANtB,GAAP;AAQA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\nexport default function useMyPatterns() {\n\tconst myPatterns = useSelect( ( select ) =>\n\t\tselect( coreStore ).getEntityRecords( 'postType', 'wp_block', {\n\t\t\tper_page: -1,\n\t\t} )\n\t);\n\n\treturn {\n\t\tmyPatterns: {\n\t\t\tcount: myPatterns?.length || 0,\n\t\t\tname: 'my-patterns',\n\t\t\tlabel: __( 'My patterns' ),\n\t\t},\n\t\thasPatterns: !! myPatterns?.length,\n\t};\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-my-patterns.js"],"names":["store","coreStore","useSelect","__","useMyPatterns","myPatternsCount","select","getEntityRecords","per_page","length","myPatterns","count","name","label","hasPatterns"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA,eAAe,SAASC,aAAT,GAAyB;AACvC,QAAMC,eAAe,GAAGH,SAAS,CAC9BI,MAAF;AAAA;;AAAA,oCACCA,MAAM,CAAEL,SAAF,CAAN,CAAoBM,gBAApB,CAAsC,UAAtC,EAAkD,UAAlD,EAA8D;AAC7DC,MAAAA,QAAQ,EAAE,CAAC;AADkD,KAA9D,GAEKC,MAHN,yEAGgB,CAHhB;AAAA,GADgC,CAAjC;AAOA,SAAO;AACNC,IAAAA,UAAU,EAAE;AACXC,MAAAA,KAAK,EAAEN,eADI;AAEXO,MAAAA,IAAI,EAAE,aAFK;AAGXC,MAAAA,KAAK,EAAEV,EAAE,CAAE,aAAF;AAHE,KADN;AAMNW,IAAAA,WAAW,EAAET,eAAe,GAAG;AANzB,GAAP;AAQA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\nexport default function useMyPatterns() {\n\tconst myPatternsCount = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getEntityRecords( 'postType', 'wp_block', {\n\t\t\t\tper_page: -1,\n\t\t\t} )?.length ?? 0\n\t);\n\n\treturn {\n\t\tmyPatterns: {\n\t\t\tcount: myPatternsCount,\n\t\t\tname: 'my-patterns',\n\t\t\tlabel: __( 'My patterns' ),\n\t\t},\n\t\thasPatterns: myPatternsCount > 0,\n\t};\n}\n"]}
@@ -2,6 +2,7 @@
2
2
  * WordPress dependencies
3
3
  */
4
4
  import { useMemo } from '@wordpress/element';
5
+ import { __ } from '@wordpress/i18n';
5
6
  /**
6
7
  * Internal dependencies
7
8
  */
@@ -10,6 +11,10 @@ import useDefaultPatternCategories from './use-default-pattern-categories';
10
11
  import useThemePatterns from './use-theme-patterns';
11
12
  export default function usePatternCategories() {
12
13
  const defaultCategories = useDefaultPatternCategories();
14
+ defaultCategories.push({
15
+ name: 'uncategorized',
16
+ label: __('Uncategorized')
17
+ });
13
18
  const themePatterns = useThemePatterns();
14
19
  const patternCategories = useMemo(() => {
15
20
  const categoryMap = {};
@@ -28,7 +33,11 @@ export default function usePatternCategories() {
28
33
  if (categoryMap[category]) {
29
34
  categoryMap[category].count += 1;
30
35
  }
31
- });
36
+ }); // If the pattern has no categories, add it to uncategorized.
37
+
38
+ if (!pattern.categories?.length) {
39
+ categoryMap.uncategorized.count += 1;
40
+ }
32
41
  }); // Filter categories so we only have those containing patterns.
33
42
 
34
43
  defaultCategories.forEach(category => {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js"],"names":["useMemo","useDefaultPatternCategories","useThemePatterns","usePatternCategories","defaultCategories","themePatterns","patternCategories","categoryMap","categoriesWithCounts","forEach","category","name","count","pattern","categories","push","hasPatterns","length"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,oBAAxB;AAEA;AACA;AACA;;AACA,OAAOC,2BAAP,MAAwC,kCAAxC;AACA,OAAOC,gBAAP,MAA6B,sBAA7B;AAEA,eAAe,SAASC,oBAAT,GAAgC;AAC9C,QAAMC,iBAAiB,GAAGH,2BAA2B,EAArD;AACA,QAAMI,aAAa,GAAGH,gBAAgB,EAAtC;AAEA,QAAMI,iBAAiB,GAAGN,OAAO,CAAE,MAAM;AACxC,UAAMO,WAAW,GAAG,EAApB;AACA,UAAMC,oBAAoB,GAAG,EAA7B,CAFwC,CAIxC;;AACAJ,IAAAA,iBAAiB,CAACK,OAAlB,CAA6BC,QAAF,IAAgB;AAC1C,UAAK,CAAEH,WAAW,CAAEG,QAAQ,CAACC,IAAX,CAAlB,EAAsC;AACrCJ,QAAAA,WAAW,CAAEG,QAAQ,CAACC,IAAX,CAAX,GAA+B,EAAE,GAAGD,QAAL;AAAeE,UAAAA,KAAK,EAAE;AAAtB,SAA/B;AACA;AACD,KAJD,EALwC,CAWxC;;AACAP,IAAAA,aAAa,CAACI,OAAd,CAAyBI,OAAF,IAAe;AACrCA,MAAAA,OAAO,CAACC,UAAR,EAAoBL,OAApB,CAA+BC,QAAF,IAAgB;AAC5C,YAAKH,WAAW,CAAEG,QAAF,CAAhB,EAA+B;AAC9BH,UAAAA,WAAW,CAAEG,QAAF,CAAX,CAAwBE,KAAxB,IAAiC,CAAjC;AACA;AACD,OAJD;AAKA,KAND,EAZwC,CAoBxC;;AACAR,IAAAA,iBAAiB,CAACK,OAAlB,CAA6BC,QAAF,IAAgB;AAC1C,UAAKH,WAAW,CAAEG,QAAQ,CAACC,IAAX,CAAX,CAA6BC,KAAlC,EAA0C;AACzCJ,QAAAA,oBAAoB,CAACO,IAArB,CAA2BR,WAAW,CAAEG,QAAQ,CAACC,IAAX,CAAtC;AACA;AACD,KAJD;AAMA,WAAOH,oBAAP;AACA,GA5BgC,EA4B9B,CAAEJ,iBAAF,EAAqBC,aAArB,CA5B8B,CAAjC;AA8BA,SAAO;AAAEC,IAAAA,iBAAF;AAAqBU,IAAAA,WAAW,EAAE,CAAC,CAAEV,iBAAiB,CAACW;AAAvD,GAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useDefaultPatternCategories from './use-default-pattern-categories';\nimport useThemePatterns from './use-theme-patterns';\n\nexport default function usePatternCategories() {\n\tconst defaultCategories = useDefaultPatternCategories();\n\tconst themePatterns = useThemePatterns();\n\n\tconst patternCategories = useMemo( () => {\n\t\tconst categoryMap = {};\n\t\tconst categoriesWithCounts = [];\n\n\t\t// Create a map for easier counting of patterns in categories.\n\t\tdefaultCategories.forEach( ( category ) => {\n\t\t\tif ( ! categoryMap[ category.name ] ) {\n\t\t\t\tcategoryMap[ category.name ] = { ...category, count: 0 };\n\t\t\t}\n\t\t} );\n\n\t\t// Update the category counts to reflect theme registered patterns.\n\t\tthemePatterns.forEach( ( pattern ) => {\n\t\t\tpattern.categories?.forEach( ( category ) => {\n\t\t\t\tif ( categoryMap[ category ] ) {\n\t\t\t\t\tcategoryMap[ category ].count += 1;\n\t\t\t\t}\n\t\t\t} );\n\t\t} );\n\n\t\t// Filter categories so we only have those containing patterns.\n\t\tdefaultCategories.forEach( ( category ) => {\n\t\t\tif ( categoryMap[ category.name ].count ) {\n\t\t\t\tcategoriesWithCounts.push( categoryMap[ category.name ] );\n\t\t\t}\n\t\t} );\n\n\t\treturn categoriesWithCounts;\n\t}, [ defaultCategories, themePatterns ] );\n\n\treturn { patternCategories, hasPatterns: !! patternCategories.length };\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js"],"names":["useMemo","__","useDefaultPatternCategories","useThemePatterns","usePatternCategories","defaultCategories","push","name","label","themePatterns","patternCategories","categoryMap","categoriesWithCounts","forEach","category","count","pattern","categories","length","uncategorized","hasPatterns"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,oBAAxB;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,OAAOC,2BAAP,MAAwC,kCAAxC;AACA,OAAOC,gBAAP,MAA6B,sBAA7B;AAEA,eAAe,SAASC,oBAAT,GAAgC;AAC9C,QAAMC,iBAAiB,GAAGH,2BAA2B,EAArD;AACAG,EAAAA,iBAAiB,CAACC,IAAlB,CAAwB;AACvBC,IAAAA,IAAI,EAAE,eADiB;AAEvBC,IAAAA,KAAK,EAAEP,EAAE,CAAE,eAAF;AAFc,GAAxB;AAIA,QAAMQ,aAAa,GAAGN,gBAAgB,EAAtC;AAEA,QAAMO,iBAAiB,GAAGV,OAAO,CAAE,MAAM;AACxC,UAAMW,WAAW,GAAG,EAApB;AACA,UAAMC,oBAAoB,GAAG,EAA7B,CAFwC,CAIxC;;AACAP,IAAAA,iBAAiB,CAACQ,OAAlB,CAA6BC,QAAF,IAAgB;AAC1C,UAAK,CAAEH,WAAW,CAAEG,QAAQ,CAACP,IAAX,CAAlB,EAAsC;AACrCI,QAAAA,WAAW,CAAEG,QAAQ,CAACP,IAAX,CAAX,GAA+B,EAAE,GAAGO,QAAL;AAAeC,UAAAA,KAAK,EAAE;AAAtB,SAA/B;AACA;AACD,KAJD,EALwC,CAWxC;;AACAN,IAAAA,aAAa,CAACI,OAAd,CAAyBG,OAAF,IAAe;AACrCA,MAAAA,OAAO,CAACC,UAAR,EAAoBJ,OAApB,CAA+BC,QAAF,IAAgB;AAC5C,YAAKH,WAAW,CAAEG,QAAF,CAAhB,EAA+B;AAC9BH,UAAAA,WAAW,CAAEG,QAAF,CAAX,CAAwBC,KAAxB,IAAiC,CAAjC;AACA;AACD,OAJD,EADqC,CAMrC;;AACA,UAAK,CAAEC,OAAO,CAACC,UAAR,EAAoBC,MAA3B,EAAoC;AACnCP,QAAAA,WAAW,CAACQ,aAAZ,CAA0BJ,KAA1B,IAAmC,CAAnC;AACA;AACD,KAVD,EAZwC,CAwBxC;;AACAV,IAAAA,iBAAiB,CAACQ,OAAlB,CAA6BC,QAAF,IAAgB;AAC1C,UAAKH,WAAW,CAAEG,QAAQ,CAACP,IAAX,CAAX,CAA6BQ,KAAlC,EAA0C;AACzCH,QAAAA,oBAAoB,CAACN,IAArB,CAA2BK,WAAW,CAAEG,QAAQ,CAACP,IAAX,CAAtC;AACA;AACD,KAJD;AAMA,WAAOK,oBAAP;AACA,GAhCgC,EAgC9B,CAAEP,iBAAF,EAAqBI,aAArB,CAhC8B,CAAjC;AAkCA,SAAO;AAAEC,IAAAA,iBAAF;AAAqBU,IAAAA,WAAW,EAAE,CAAC,CAAEV,iBAAiB,CAACQ;AAAvD,GAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport useDefaultPatternCategories from './use-default-pattern-categories';\nimport useThemePatterns from './use-theme-patterns';\n\nexport default function usePatternCategories() {\n\tconst defaultCategories = useDefaultPatternCategories();\n\tdefaultCategories.push( {\n\t\tname: 'uncategorized',\n\t\tlabel: __( 'Uncategorized' ),\n\t} );\n\tconst themePatterns = useThemePatterns();\n\n\tconst patternCategories = useMemo( () => {\n\t\tconst categoryMap = {};\n\t\tconst categoriesWithCounts = [];\n\n\t\t// Create a map for easier counting of patterns in categories.\n\t\tdefaultCategories.forEach( ( category ) => {\n\t\t\tif ( ! categoryMap[ category.name ] ) {\n\t\t\t\tcategoryMap[ category.name ] = { ...category, count: 0 };\n\t\t\t}\n\t\t} );\n\n\t\t// Update the category counts to reflect theme registered patterns.\n\t\tthemePatterns.forEach( ( pattern ) => {\n\t\t\tpattern.categories?.forEach( ( category ) => {\n\t\t\t\tif ( categoryMap[ category ] ) {\n\t\t\t\t\tcategoryMap[ category ].count += 1;\n\t\t\t\t}\n\t\t\t} );\n\t\t\t// If the pattern has no categories, add it to uncategorized.\n\t\t\tif ( ! pattern.categories?.length ) {\n\t\t\t\tcategoryMap.uncategorized.count += 1;\n\t\t\t}\n\t\t} );\n\n\t\t// Filter categories so we only have those containing patterns.\n\t\tdefaultCategories.forEach( ( category ) => {\n\t\t\tif ( categoryMap[ category.name ].count ) {\n\t\t\t\tcategoriesWithCounts.push( categoryMap[ category.name ] );\n\t\t\t}\n\t\t} );\n\n\t\treturn categoriesWithCounts;\n\t}, [ defaultCategories, themePatterns ] );\n\n\treturn { patternCategories, hasPatterns: !! patternCategories.length };\n}\n"]}
@@ -2,19 +2,28 @@
2
2
  * WordPress dependencies
3
3
  */
4
4
  import { useEntityRecords } from '@wordpress/core-data';
5
+ import { useSelect } from '@wordpress/data';
6
+ import { store as editorStore } from '@wordpress/editor';
5
7
 
6
- const getTemplatePartAreas = items => {
8
+ const useTemplatePartsGroupedByArea = items => {
7
9
  const allItems = items || [];
10
+ const templatePartAreas = useSelect(select => select(editorStore).__experimentalGetDefaultTemplatePartAreas(), []); // Create map of template areas ensuring that default areas are displayed before
11
+ // any custom registered template part areas.
12
+
13
+ const knownAreas = {
14
+ header: {},
15
+ footer: {},
16
+ sidebar: {},
17
+ uncategorized: {}
18
+ };
19
+ templatePartAreas.forEach(templatePartArea => knownAreas[templatePartArea.area] = { ...templatePartArea,
20
+ templateParts: []
21
+ });
8
22
  const groupedByArea = allItems.reduce((accumulator, item) => {
9
23
  const key = accumulator[item.area] ? item.area : 'uncategorized';
10
- accumulator[key].push(item);
24
+ accumulator[key].templateParts.push(item);
11
25
  return accumulator;
12
- }, {
13
- header: [],
14
- footer: [],
15
- sidebar: [],
16
- uncategorized: []
17
- });
26
+ }, knownAreas);
18
27
  return groupedByArea;
19
28
  };
20
29
 
@@ -28,7 +37,7 @@ export default function useTemplatePartAreas() {
28
37
  return {
29
38
  hasTemplateParts: templateParts ? !!templateParts.length : false,
30
39
  isLoading,
31
- templatePartAreas: getTemplatePartAreas(templateParts)
40
+ templatePartAreas: useTemplatePartsGroupedByArea(templateParts)
32
41
  };
33
42
  }
34
43
  //# sourceMappingURL=use-template-part-areas.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-template-part-areas.js"],"names":["useEntityRecords","getTemplatePartAreas","items","allItems","groupedByArea","reduce","accumulator","item","key","area","push","header","footer","sidebar","uncategorized","useTemplatePartAreas","records","templateParts","isResolving","isLoading","per_page","hasTemplateParts","length","templatePartAreas"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,gBAAT,QAAiC,sBAAjC;;AAEA,MAAMC,oBAAoB,GAAKC,KAAF,IAAa;AACzC,QAAMC,QAAQ,GAAGD,KAAK,IAAI,EAA1B;AAEA,QAAME,aAAa,GAAGD,QAAQ,CAACE,MAAT,CACrB,CAAEC,WAAF,EAAeC,IAAf,KAAyB;AACxB,UAAMC,GAAG,GAAGF,WAAW,CAAEC,IAAI,CAACE,IAAP,CAAX,GAA2BF,IAAI,CAACE,IAAhC,GAAuC,eAAnD;AACAH,IAAAA,WAAW,CAAEE,GAAF,CAAX,CAAmBE,IAAnB,CAAyBH,IAAzB;AACA,WAAOD,WAAP;AACA,GALoB,EAMrB;AAAEK,IAAAA,MAAM,EAAE,EAAV;AAAcC,IAAAA,MAAM,EAAE,EAAtB;AAA0BC,IAAAA,OAAO,EAAE,EAAnC;AAAuCC,IAAAA,aAAa,EAAE;AAAtD,GANqB,CAAtB;AASA,SAAOV,aAAP;AACA,CAbD;;AAeA,eAAe,SAASW,oBAAT,GAAgC;AAC9C,QAAM;AAAEC,IAAAA,OAAO,EAAEC,aAAX;AAA0BC,IAAAA,WAAW,EAAEC;AAAvC,MAAqDnB,gBAAgB,CAC1E,UAD0E,EAE1E,kBAF0E,EAG1E;AAAEoB,IAAAA,QAAQ,EAAE,CAAC;AAAb,GAH0E,CAA3E;AAMA,SAAO;AACNC,IAAAA,gBAAgB,EAAEJ,aAAa,GAAG,CAAC,CAAEA,aAAa,CAACK,MAApB,GAA6B,KADtD;AAENH,IAAAA,SAFM;AAGNI,IAAAA,iBAAiB,EAAEtB,oBAAoB,CAAEgB,aAAF;AAHjC,GAAP;AAKA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityRecords } from '@wordpress/core-data';\n\nconst getTemplatePartAreas = ( items ) => {\n\tconst allItems = items || [];\n\n\tconst groupedByArea = allItems.reduce(\n\t\t( accumulator, item ) => {\n\t\t\tconst key = accumulator[ item.area ] ? item.area : 'uncategorized';\n\t\t\taccumulator[ key ].push( item );\n\t\t\treturn accumulator;\n\t\t},\n\t\t{ header: [], footer: [], sidebar: [], uncategorized: [] }\n\t);\n\n\treturn groupedByArea;\n};\n\nexport default function useTemplatePartAreas() {\n\tconst { records: templateParts, isResolving: isLoading } = useEntityRecords(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t{ per_page: -1 }\n\t);\n\n\treturn {\n\t\thasTemplateParts: templateParts ? !! templateParts.length : false,\n\t\tisLoading,\n\t\ttemplatePartAreas: getTemplatePartAreas( templateParts ),\n\t};\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-template-part-areas.js"],"names":["useEntityRecords","useSelect","store","editorStore","useTemplatePartsGroupedByArea","items","allItems","templatePartAreas","select","__experimentalGetDefaultTemplatePartAreas","knownAreas","header","footer","sidebar","uncategorized","forEach","templatePartArea","area","templateParts","groupedByArea","reduce","accumulator","item","key","push","useTemplatePartAreas","records","isResolving","isLoading","per_page","hasTemplateParts","length"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,gBAAT,QAAiC,sBAAjC;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,KAAK,IAAIC,WAAlB,QAAqC,mBAArC;;AAEA,MAAMC,6BAA6B,GAAKC,KAAF,IAAa;AAClD,QAAMC,QAAQ,GAAGD,KAAK,IAAI,EAA1B;AAEA,QAAME,iBAAiB,GAAGN,SAAS,CAChCO,MAAF,IACCA,MAAM,CAAEL,WAAF,CAAN,CAAsBM,yCAAtB,EAFiC,EAGlC,EAHkC,CAAnC,CAHkD,CASlD;AACA;;AACA,QAAMC,UAAU,GAAG;AAClBC,IAAAA,MAAM,EAAE,EADU;AAElBC,IAAAA,MAAM,EAAE,EAFU;AAGlBC,IAAAA,OAAO,EAAE,EAHS;AAIlBC,IAAAA,aAAa,EAAE;AAJG,GAAnB;AAOAP,EAAAA,iBAAiB,CAACQ,OAAlB,CACGC,gBAAF,IACGN,UAAU,CAAEM,gBAAgB,CAACC,IAAnB,CAAV,GAAsC,EACvC,GAAGD,gBADoC;AAEvCE,IAAAA,aAAa,EAAE;AAFwB,GAF1C;AAQA,QAAMC,aAAa,GAAGb,QAAQ,CAACc,MAAT,CAAiB,CAAEC,WAAF,EAAeC,IAAf,KAAyB;AAC/D,UAAMC,GAAG,GAAGF,WAAW,CAAEC,IAAI,CAACL,IAAP,CAAX,GAA2BK,IAAI,CAACL,IAAhC,GAAuC,eAAnD;AACAI,IAAAA,WAAW,CAAEE,GAAF,CAAX,CAAmBL,aAAnB,CAAiCM,IAAjC,CAAuCF,IAAvC;AACA,WAAOD,WAAP;AACA,GAJqB,EAInBX,UAJmB,CAAtB;AAMA,SAAOS,aAAP;AACA,CAjCD;;AAmCA,eAAe,SAASM,oBAAT,GAAgC;AAC9C,QAAM;AAAEC,IAAAA,OAAO,EAAER,aAAX;AAA0BS,IAAAA,WAAW,EAAEC;AAAvC,MAAqD5B,gBAAgB,CAC1E,UAD0E,EAE1E,kBAF0E,EAG1E;AAAE6B,IAAAA,QAAQ,EAAE,CAAC;AAAb,GAH0E,CAA3E;AAMA,SAAO;AACNC,IAAAA,gBAAgB,EAAEZ,aAAa,GAAG,CAAC,CAAEA,aAAa,CAACa,MAApB,GAA6B,KADtD;AAENH,IAAAA,SAFM;AAGNrB,IAAAA,iBAAiB,EAAEH,6BAA6B,CAAEc,aAAF;AAH1C,GAAP;AAKA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\n\nconst useTemplatePartsGroupedByArea = ( items ) => {\n\tconst allItems = items || [];\n\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\n\t// Create map of template areas ensuring that default areas are displayed before\n\t// any custom registered template part areas.\n\tconst knownAreas = {\n\t\theader: {},\n\t\tfooter: {},\n\t\tsidebar: {},\n\t\tuncategorized: {},\n\t};\n\n\ttemplatePartAreas.forEach(\n\t\t( templatePartArea ) =>\n\t\t\t( knownAreas[ templatePartArea.area ] = {\n\t\t\t\t...templatePartArea,\n\t\t\t\ttemplateParts: [],\n\t\t\t} )\n\t);\n\n\tconst groupedByArea = allItems.reduce( ( accumulator, item ) => {\n\t\tconst key = accumulator[ item.area ] ? item.area : 'uncategorized';\n\t\taccumulator[ key ].templateParts.push( item );\n\t\treturn accumulator;\n\t}, knownAreas );\n\n\treturn groupedByArea;\n};\n\nexport default function useTemplatePartAreas() {\n\tconst { records: templateParts, isResolving: isLoading } = useEntityRecords(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t{ per_page: -1 }\n\t);\n\n\treturn {\n\t\thasTemplateParts: templateParts ? !! templateParts.length : false,\n\t\tisLoading,\n\t\ttemplatePartAreas: useTemplatePartsGroupedByArea( templateParts ),\n\t};\n}\n"]}
@@ -21,7 +21,7 @@ export default function useThemePatterns() {
21
21
  return (_getSettings$__experi = getSettings().__experimentalAdditionalBlockPatterns) !== null && _getSettings$__experi !== void 0 ? _getSettings$__experi : getSettings().__experimentalBlockPatterns;
22
22
  });
23
23
  const restBlockPatterns = useSelect(select => select(coreStore).getBlockPatterns());
24
- const patterns = useMemo(() => [...(blockPatterns || []), ...(restBlockPatterns || [])].filter(pattern => !CORE_PATTERN_SOURCES.includes(pattern.source)).filter(filterOutDuplicatesByName), [blockPatterns, restBlockPatterns]);
24
+ const patterns = useMemo(() => [...(blockPatterns || []), ...(restBlockPatterns || [])].filter(pattern => !CORE_PATTERN_SOURCES.includes(pattern.source)).filter(filterOutDuplicatesByName).filter(pattern => pattern.inserter !== false), [blockPatterns, restBlockPatterns]);
25
25
  return patterns;
26
26
  }
27
27
  //# sourceMappingURL=use-theme-patterns.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js"],"names":["store","coreStore","useSelect","useMemo","CORE_PATTERN_SOURCES","filterOutDuplicatesByName","unlock","editSiteStore","useThemePatterns","blockPatterns","select","getSettings","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","patterns","filter","pattern","includes","source"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,OAAT,QAAwB,oBAAxB;AAEA;AACA;AACA;;AACA,SACCC,oBADD,EAECC,yBAFD,QAGO,wBAHP;AAIA,SAASC,MAAT,QAAuB,mBAAvB;AACA,SAASN,KAAK,IAAIO,aAAlB,QAAuC,aAAvC;AAEA,eAAe,SAASC,gBAAT,GAA4B;AAC1C,QAAMC,aAAa,GAAGP,SAAS,CAAIQ,MAAF,IAAc;AAAA;;AAC9C,UAAM;AAAEC,MAAAA;AAAF,QAAkBL,MAAM,CAAEI,MAAM,CAAEH,aAAF,CAAR,CAA9B;AAEA,oCACCI,WAAW,GAAGC,qCADf,yEAECD,WAAW,GAAGE,2BAFf;AAIA,GAP8B,CAA/B;AASA,QAAMC,iBAAiB,GAAGZ,SAAS,CAAIQ,MAAF,IACpCA,MAAM,CAAET,SAAF,CAAN,CAAoBc,gBAApB,EADkC,CAAnC;AAIA,QAAMC,QAAQ,GAAGb,OAAO,CACvB,MACC,CAAE,IAAKM,aAAa,IAAI,EAAtB,CAAF,EAA8B,IAAKK,iBAAiB,IAAI,EAA1B,CAA9B,EACEG,MADF,CAEIC,OAAF,IACC,CAAEd,oBAAoB,CAACe,QAArB,CAA+BD,OAAO,CAACE,MAAvC,CAHL,EAKEH,MALF,CAKUZ,yBALV,CAFsB,EAQvB,CAAEI,aAAF,EAAiBK,iBAAjB,CARuB,CAAxB;AAWA,SAAOE,QAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tCORE_PATTERN_SOURCES,\n\tfilterOutDuplicatesByName,\n} from '../page-patterns/utils';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\n\nexport default function useThemePatterns() {\n\tconst blockPatterns = useSelect( ( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\n\t\treturn (\n\t\t\tgetSettings().__experimentalAdditionalBlockPatterns ??\n\t\t\tgetSettings().__experimentalBlockPatterns\n\t\t);\n\t} );\n\n\tconst restBlockPatterns = useSelect( ( select ) =>\n\t\tselect( coreStore ).getBlockPatterns()\n\t);\n\n\tconst patterns = useMemo(\n\t\t() =>\n\t\t\t[ ...( blockPatterns || [] ), ...( restBlockPatterns || [] ) ]\n\t\t\t\t.filter(\n\t\t\t\t\t( pattern ) =>\n\t\t\t\t\t\t! CORE_PATTERN_SOURCES.includes( pattern.source )\n\t\t\t\t)\n\t\t\t\t.filter( filterOutDuplicatesByName ),\n\t\t[ blockPatterns, restBlockPatterns ]\n\t);\n\n\treturn patterns;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js"],"names":["store","coreStore","useSelect","useMemo","CORE_PATTERN_SOURCES","filterOutDuplicatesByName","unlock","editSiteStore","useThemePatterns","blockPatterns","select","getSettings","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","patterns","filter","pattern","includes","source","inserter"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,OAAT,QAAwB,oBAAxB;AAEA;AACA;AACA;;AACA,SACCC,oBADD,EAECC,yBAFD,QAGO,wBAHP;AAIA,SAASC,MAAT,QAAuB,mBAAvB;AACA,SAASN,KAAK,IAAIO,aAAlB,QAAuC,aAAvC;AAEA,eAAe,SAASC,gBAAT,GAA4B;AAC1C,QAAMC,aAAa,GAAGP,SAAS,CAAIQ,MAAF,IAAc;AAAA;;AAC9C,UAAM;AAAEC,MAAAA;AAAF,QAAkBL,MAAM,CAAEI,MAAM,CAAEH,aAAF,CAAR,CAA9B;AAEA,oCACCI,WAAW,GAAGC,qCADf,yEAECD,WAAW,GAAGE,2BAFf;AAIA,GAP8B,CAA/B;AASA,QAAMC,iBAAiB,GAAGZ,SAAS,CAAIQ,MAAF,IACpCA,MAAM,CAAET,SAAF,CAAN,CAAoBc,gBAApB,EADkC,CAAnC;AAIA,QAAMC,QAAQ,GAAGb,OAAO,CACvB,MACC,CAAE,IAAKM,aAAa,IAAI,EAAtB,CAAF,EAA8B,IAAKK,iBAAiB,IAAI,EAA1B,CAA9B,EACEG,MADF,CAEIC,OAAF,IACC,CAAEd,oBAAoB,CAACe,QAArB,CAA+BD,OAAO,CAACE,MAAvC,CAHL,EAKEH,MALF,CAKUZ,yBALV,EAMEY,MANF,CAMYC,OAAF,IAAeA,OAAO,CAACG,QAAR,KAAqB,KAN9C,CAFsB,EASvB,CAAEZ,aAAF,EAAiBK,iBAAjB,CATuB,CAAxB;AAYA,SAAOE,QAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tCORE_PATTERN_SOURCES,\n\tfilterOutDuplicatesByName,\n} from '../page-patterns/utils';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\n\nexport default function useThemePatterns() {\n\tconst blockPatterns = useSelect( ( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\n\t\treturn (\n\t\t\tgetSettings().__experimentalAdditionalBlockPatterns ??\n\t\t\tgetSettings().__experimentalBlockPatterns\n\t\t);\n\t} );\n\n\tconst restBlockPatterns = useSelect( ( select ) =>\n\t\tselect( coreStore ).getBlockPatterns()\n\t);\n\n\tconst patterns = useMemo(\n\t\t() =>\n\t\t\t[ ...( blockPatterns || [] ), ...( restBlockPatterns || [] ) ]\n\t\t\t\t.filter(\n\t\t\t\t\t( pattern ) =>\n\t\t\t\t\t\t! CORE_PATTERN_SOURCES.includes( pattern.source )\n\t\t\t\t)\n\t\t\t\t.filter( filterOutDuplicatesByName )\n\t\t\t\t.filter( ( pattern ) => pattern.inserter !== false ),\n\t\t[ blockPatterns, restBlockPatterns ]\n\t);\n\n\treturn patterns;\n}\n"]}
@@ -26,24 +26,30 @@ import { store as editSiteStore } from '../../store';
26
26
  import SiteIcon from '../site-icon';
27
27
  import { unlock } from '../../lock-unlock';
28
28
  const HUB_ANIMATION_DURATION = 0.3;
29
- const SiteHub = forwardRef((props, ref) => {
29
+ const SiteHub = forwardRef(({
30
+ isTransparent,
31
+ ...restProps
32
+ }, ref) => {
30
33
  const {
31
34
  canvasMode,
32
35
  dashboardLink,
33
- homeUrl
36
+ homeUrl,
37
+ siteTitle
34
38
  } = useSelect(select => {
35
39
  const {
36
40
  getCanvasMode,
37
41
  getSettings
38
42
  } = unlock(select(editSiteStore));
39
43
  const {
44
+ getSite,
40
45
  getUnstableBase // Site index.
41
46
 
42
47
  } = select(coreStore);
43
48
  return {
44
49
  canvasMode: getCanvasMode(),
45
50
  dashboardLink: getSettings().__experimentalDashboardLink || 'index.php',
46
- homeUrl: getUnstableBase()?.home
51
+ homeUrl: getUnstableBase()?.home,
52
+ siteTitle: getSite()?.title
47
53
  };
48
54
  }, []);
49
55
  const {
@@ -51,7 +57,8 @@ const SiteHub = forwardRef((props, ref) => {
51
57
  } = useDispatch(commandsStore);
52
58
  const disableMotion = useReducedMotion();
53
59
  const {
54
- setCanvasMode
60
+ setCanvasMode,
61
+ __experimentalSetPreviewDeviceType: setPreviewDeviceType
55
62
  } = unlock(useDispatch(editSiteStore));
56
63
  const {
57
64
  clearSelectedBlock
@@ -59,7 +66,7 @@ const SiteHub = forwardRef((props, ref) => {
59
66
  const isBackToDashboardButton = canvasMode === 'view';
60
67
  const siteIconButtonProps = isBackToDashboardButton ? {
61
68
  href: dashboardLink,
62
- label: __('Go back to the Dashboard')
69
+ label: __('Go to the Dashboard')
63
70
  } : {
64
71
  href: dashboardLink,
65
72
  // We need to keep the `href` here so the component doesn't remount as a `<button>` and break the animation.
@@ -70,15 +77,15 @@ const SiteHub = forwardRef((props, ref) => {
70
77
 
71
78
  if (canvasMode === 'edit') {
72
79
  clearSelectedBlock();
80
+ setPreviewDeviceType('desktop');
73
81
  setCanvasMode('view');
74
82
  }
75
83
  }
76
84
  };
77
- const siteTitle = useSelect(select => select(coreStore).getEntityRecord('root', 'site')?.title, []);
78
85
  return createElement(motion.div, {
79
86
  ref: ref,
80
- ...props,
81
- className: classnames('edit-site-site-hub', props.className),
87
+ ...restProps,
88
+ className: classnames('edit-site-site-hub', restProps.className),
82
89
  initial: false,
83
90
  transition: {
84
91
  type: 'tween',
@@ -94,7 +101,9 @@ const SiteHub = forwardRef((props, ref) => {
94
101
  className: "edit-site-site-hub__text-content",
95
102
  spacing: "0"
96
103
  }, createElement(motion.div, {
97
- className: "edit-site-site-hub__view-mode-toggle-container",
104
+ className: classnames('edit-site-site-hub__view-mode-toggle-container', {
105
+ 'has-transparent-background': isTransparent
106
+ }),
98
107
  layout: true,
99
108
  transition: {
100
109
  type: 'tween',
@@ -126,7 +135,9 @@ const SiteHub = forwardRef((props, ref) => {
126
135
  exit: {
127
136
  opacity: 0
128
137
  },
129
- className: "edit-site-site-hub__site-title",
138
+ className: classnames('edit-site-site-hub__site-title', {
139
+ 'is-transparent': isTransparent
140
+ }),
130
141
  transition: {
131
142
  type: 'tween',
132
143
  duration: disableMotion ? 0 : 0.2,
@@ -141,7 +152,9 @@ const SiteHub = forwardRef((props, ref) => {
141
152
  icon: external,
142
153
  className: "edit-site-site-hub__site-view-link"
143
154
  })), canvasMode === 'view' && createElement(Button, {
144
- className: "edit-site-site-hub_toggle-command-center",
155
+ className: classnames('edit-site-site-hub_toggle-command-center', {
156
+ 'is-transparent': isTransparent
157
+ }),
145
158
  icon: search,
146
159
  onClick: () => openCommandCenter(),
147
160
  label: __('Open command palette')
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/site-hub/index.js"],"names":["classnames","useSelect","useDispatch","Button","__unstableMotion","motion","__unstableAnimatePresence","AnimatePresence","__experimentalHStack","HStack","useReducedMotion","__","store","blockEditorStore","coreStore","decodeEntities","forwardRef","search","external","commandsStore","editSiteStore","SiteIcon","unlock","HUB_ANIMATION_DURATION","SiteHub","props","ref","canvasMode","dashboardLink","homeUrl","select","getCanvasMode","getSettings","getUnstableBase","__experimentalDashboardLink","home","open","openCommandCenter","disableMotion","setCanvasMode","clearSelectedBlock","isBackToDashboardButton","siteIconButtonProps","href","label","role","onClick","event","preventDefault","siteTitle","getEntityRecord","title","className","type","duration","ease","scale","opacity","delay"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useReducedMotion } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { forwardRef } from '@wordpress/element';\nimport { search, external } from '@wordpress/icons';\nimport { store as commandsStore } from '@wordpress/commands';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport SiteIcon from '../site-icon';\nimport { unlock } from '../../lock-unlock';\n\nconst HUB_ANIMATION_DURATION = 0.3;\n\nconst SiteHub = forwardRef( ( props, ref ) => {\n\tconst { canvasMode, dashboardLink, homeUrl } = useSelect( ( select ) => {\n\t\tconst { getCanvasMode, getSettings } = unlock(\n\t\t\tselect( editSiteStore )\n\t\t);\n\n\t\tconst {\n\t\t\tgetUnstableBase, // Site index.\n\t\t} = select( coreStore );\n\n\t\treturn {\n\t\t\tcanvasMode: getCanvasMode(),\n\t\t\tdashboardLink:\n\t\t\t\tgetSettings().__experimentalDashboardLink || 'index.php',\n\t\t\thomeUrl: getUnstableBase()?.home,\n\t\t};\n\t}, [] );\n\tconst { open: openCommandCenter } = useDispatch( commandsStore );\n\n\tconst disableMotion = useReducedMotion();\n\tconst { setCanvasMode } = unlock( useDispatch( editSiteStore ) );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst isBackToDashboardButton = canvasMode === 'view';\n\tconst siteIconButtonProps = isBackToDashboardButton\n\t\t? {\n\t\t\t\thref: dashboardLink,\n\t\t\t\tlabel: __( 'Go back to the Dashboard' ),\n\t\t }\n\t\t: {\n\t\t\t\thref: dashboardLink, // We need to keep the `href` here so the component doesn't remount as a `<button>` and break the animation.\n\t\t\t\trole: 'button',\n\t\t\t\tlabel: __( 'Open Navigation' ),\n\t\t\t\tonClick: ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tif ( canvasMode === 'edit' ) {\n\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\tsetCanvasMode( 'view' );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t };\n\n\tconst siteTitle = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getEntityRecord( 'root', 'site' )?.title,\n\t\t[]\n\t);\n\n\treturn (\n\t\t<motion.div\n\t\t\tref={ ref }\n\t\t\t{ ...props }\n\t\t\tclassName={ classnames( 'edit-site-site-hub', props.className ) }\n\t\t\tinitial={ false }\n\t\t\ttransition={ {\n\t\t\t\ttype: 'tween',\n\t\t\t\tduration: disableMotion ? 0 : HUB_ANIMATION_DURATION,\n\t\t\t\tease: 'easeOut',\n\t\t\t} }\n\t\t>\n\t\t\t<HStack\n\t\t\t\tjustify=\"space-between\"\n\t\t\t\talignment=\"center\"\n\t\t\t\tclassName=\"edit-site-site-hub__container\"\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\tclassName=\"edit-site-site-hub__text-content\"\n\t\t\t\t\tspacing=\"0\"\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName=\"edit-site-site-hub__view-mode-toggle-container\"\n\t\t\t\t\t\tlayout\n\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\tduration: disableMotion\n\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t: HUB_ANIMATION_DURATION,\n\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t{ ...siteIconButtonProps }\n\t\t\t\t\t\t\tclassName=\"edit-site-layout__view-mode-toggle\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\tinitial={ false }\n\t\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\t\tscale: canvasMode === 'view' ? 0.5 : 1,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\twhileHover={ {\n\t\t\t\t\t\t\t\t\tscale: canvasMode === 'view' ? 0.5 : 0.96,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\t\tduration: disableMotion\n\t\t\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t\t\t: HUB_ANIMATION_DURATION,\n\t\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<SiteIcon className=\"edit-site-layout__view-mode-toggle-icon\" />\n\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</motion.div>\n\n\t\t\t\t\t<AnimatePresence>\n\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\tlayout={ canvasMode === 'edit' }\n\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\topacity: canvasMode === 'view' ? 1 : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\texit={ {\n\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tclassName=\"edit-site-site-hub__site-title\"\n\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\tduration: disableMotion ? 0 : 0.2,\n\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\tdelay: canvasMode === 'view' ? 0.1 : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities( siteTitle ) }\n\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t</AnimatePresence>\n\t\t\t\t\t{ canvasMode === 'view' && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\thref={ homeUrl }\n\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\tlabel={ __( 'View site' ) }\n\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t'View site (opens in a new tab)'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\ticon={ external }\n\t\t\t\t\t\t\tclassName=\"edit-site-site-hub__site-view-link\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</HStack>\n\t\t\t\t{ canvasMode === 'view' && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-site-site-hub_toggle-command-center\"\n\t\t\t\t\t\ticon={ search }\n\t\t\t\t\t\tonClick={ () => openCommandCenter() }\n\t\t\t\t\t\tlabel={ __( 'Open command palette' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t</motion.div>\n\t);\n} );\n\nexport default SiteHub;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/site-hub/index.js"],"names":["classnames","useSelect","useDispatch","Button","__unstableMotion","motion","__unstableAnimatePresence","AnimatePresence","__experimentalHStack","HStack","useReducedMotion","__","store","blockEditorStore","coreStore","decodeEntities","forwardRef","search","external","commandsStore","editSiteStore","SiteIcon","unlock","HUB_ANIMATION_DURATION","SiteHub","isTransparent","restProps","ref","canvasMode","dashboardLink","homeUrl","siteTitle","select","getCanvasMode","getSettings","getSite","getUnstableBase","__experimentalDashboardLink","home","title","open","openCommandCenter","disableMotion","setCanvasMode","__experimentalSetPreviewDeviceType","setPreviewDeviceType","clearSelectedBlock","isBackToDashboardButton","siteIconButtonProps","href","label","role","onClick","event","preventDefault","className","type","duration","ease","scale","opacity","delay"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useReducedMotion } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { forwardRef } from '@wordpress/element';\nimport { search, external } from '@wordpress/icons';\nimport { store as commandsStore } from '@wordpress/commands';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport SiteIcon from '../site-icon';\nimport { unlock } from '../../lock-unlock';\n\nconst HUB_ANIMATION_DURATION = 0.3;\n\nconst SiteHub = forwardRef( ( { isTransparent, ...restProps }, ref ) => {\n\tconst { canvasMode, dashboardLink, homeUrl, siteTitle } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCanvasMode, getSettings } = unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t);\n\n\t\t\tconst {\n\t\t\t\tgetSite,\n\t\t\t\tgetUnstableBase, // Site index.\n\t\t\t} = select( coreStore );\n\n\t\t\treturn {\n\t\t\t\tcanvasMode: getCanvasMode(),\n\t\t\t\tdashboardLink:\n\t\t\t\t\tgetSettings().__experimentalDashboardLink || 'index.php',\n\t\t\t\thomeUrl: getUnstableBase()?.home,\n\t\t\t\tsiteTitle: getSite()?.title,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst { open: openCommandCenter } = useDispatch( commandsStore );\n\n\tconst disableMotion = useReducedMotion();\n\tconst {\n\t\tsetCanvasMode,\n\t\t__experimentalSetPreviewDeviceType: setPreviewDeviceType,\n\t} = unlock( useDispatch( editSiteStore ) );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst isBackToDashboardButton = canvasMode === 'view';\n\tconst siteIconButtonProps = isBackToDashboardButton\n\t\t? {\n\t\t\t\thref: dashboardLink,\n\t\t\t\tlabel: __( 'Go to the Dashboard' ),\n\t\t }\n\t\t: {\n\t\t\t\thref: dashboardLink, // We need to keep the `href` here so the component doesn't remount as a `<button>` and break the animation.\n\t\t\t\trole: 'button',\n\t\t\t\tlabel: __( 'Open Navigation' ),\n\t\t\t\tonClick: ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tif ( canvasMode === 'edit' ) {\n\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\tsetPreviewDeviceType( 'desktop' );\n\t\t\t\t\t\tsetCanvasMode( 'view' );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t };\n\n\treturn (\n\t\t<motion.div\n\t\t\tref={ ref }\n\t\t\t{ ...restProps }\n\t\t\tclassName={ classnames(\n\t\t\t\t'edit-site-site-hub',\n\t\t\t\trestProps.className\n\t\t\t) }\n\t\t\tinitial={ false }\n\t\t\ttransition={ {\n\t\t\t\ttype: 'tween',\n\t\t\t\tduration: disableMotion ? 0 : HUB_ANIMATION_DURATION,\n\t\t\t\tease: 'easeOut',\n\t\t\t} }\n\t\t>\n\t\t\t<HStack\n\t\t\t\tjustify=\"space-between\"\n\t\t\t\talignment=\"center\"\n\t\t\t\tclassName=\"edit-site-site-hub__container\"\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\tclassName=\"edit-site-site-hub__text-content\"\n\t\t\t\t\tspacing=\"0\"\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'edit-site-site-hub__view-mode-toggle-container',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'has-transparent-background': isTransparent,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tlayout\n\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\tduration: disableMotion\n\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t: HUB_ANIMATION_DURATION,\n\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t{ ...siteIconButtonProps }\n\t\t\t\t\t\t\tclassName=\"edit-site-layout__view-mode-toggle\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\tinitial={ false }\n\t\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\t\tscale: canvasMode === 'view' ? 0.5 : 1,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\twhileHover={ {\n\t\t\t\t\t\t\t\t\tscale: canvasMode === 'view' ? 0.5 : 0.96,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\t\tduration: disableMotion\n\t\t\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t\t\t: HUB_ANIMATION_DURATION,\n\t\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<SiteIcon className=\"edit-site-layout__view-mode-toggle-icon\" />\n\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</motion.div>\n\n\t\t\t\t\t<AnimatePresence>\n\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\tlayout={ canvasMode === 'edit' }\n\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\topacity: canvasMode === 'view' ? 1 : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\texit={ {\n\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'edit-site-site-hub__site-title',\n\t\t\t\t\t\t\t\t{ 'is-transparent': isTransparent }\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\tduration: disableMotion ? 0 : 0.2,\n\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\tdelay: canvasMode === 'view' ? 0.1 : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities( siteTitle ) }\n\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t</AnimatePresence>\n\t\t\t\t\t{ canvasMode === 'view' && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\thref={ homeUrl }\n\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\tlabel={ __( 'View site' ) }\n\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t'View site (opens in a new tab)'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\ticon={ external }\n\t\t\t\t\t\t\tclassName=\"edit-site-site-hub__site-view-link\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</HStack>\n\t\t\t\t{ canvasMode === 'view' && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'edit-site-site-hub_toggle-command-center',\n\t\t\t\t\t\t\t{ 'is-transparent': isTransparent }\n\t\t\t\t\t\t) }\n\t\t\t\t\t\ticon={ search }\n\t\t\t\t\t\tonClick={ () => openCommandCenter() }\n\t\t\t\t\t\tlabel={ __( 'Open command palette' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t</motion.div>\n\t);\n} );\n\nexport default SiteHub;\n"]}
@@ -11,16 +11,18 @@ import { privateApis as routerPrivateApis } from '@wordpress/router';
11
11
 
12
12
  import { store as editSiteStore } from '../../store';
13
13
  import { unlock } from '../../lock-unlock';
14
+ import normalizeRecordKey from '../../utils/normalize-record-key';
14
15
  const {
15
16
  useLocation
16
17
  } = unlock(routerPrivateApis);
17
18
  export default function useInitEditedEntityFromURL() {
18
19
  const {
19
- params: {
20
- postId,
21
- postType
22
- } = {}
20
+ params
23
21
  } = useLocation();
22
+ const {
23
+ postType
24
+ } = params;
25
+ const postId = normalizeRecordKey(params?.postId);
24
26
  const {
25
27
  isRequestingSite,
26
28
  homepageId,
@@ -81,7 +83,7 @@ export default function useInitEditedEntityFromURL() {
81
83
  setPage({
82
84
  context: {
83
85
  postType: 'page',
84
- postId: homepageId
86
+ postId: Number(homepageId)
85
87
  }
86
88
  });
87
89
  } else if (!isRequestingSite) {