@wordpress/edit-site 5.33.0 → 5.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (543) hide show
  1. package/CHANGELOG.md +11 -3
  2. package/build/components/add-new-page/index.js +3 -0
  3. package/build/components/add-new-page/index.js.map +1 -1
  4. package/build/components/add-new-pattern/index.js +8 -7
  5. package/build/components/add-new-pattern/index.js.map +1 -1
  6. package/build/components/add-new-template/add-custom-generic-template-modal-content.js +3 -0
  7. package/build/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -1
  8. package/build/components/add-new-template/add-custom-template-modal-content.js +3 -1
  9. package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  10. package/build/components/add-new-template/index.js +2 -2
  11. package/build/components/add-new-template/index.js.map +1 -1
  12. package/build/components/app/index.js +4 -2
  13. package/build/components/app/index.js.map +1 -1
  14. package/build/components/block-editor/editor-canvas.js +4 -18
  15. package/build/components/block-editor/editor-canvas.js.map +1 -1
  16. package/build/components/block-editor/resize-handle.js +20 -5
  17. package/build/components/block-editor/resize-handle.js.map +1 -1
  18. package/build/components/block-editor/site-editor-canvas.js +2 -2
  19. package/build/components/block-editor/site-editor-canvas.js.map +1 -1
  20. package/build/components/create-template-part-modal/index.js +3 -0
  21. package/build/components/create-template-part-modal/index.js.map +1 -1
  22. package/build/components/dataviews-actions/index.js +46 -0
  23. package/build/components/dataviews-actions/index.js.map +1 -0
  24. package/build/components/editor/index.js +95 -16
  25. package/build/components/editor/index.js.map +1 -1
  26. package/build/components/global-styles/background-panel.js +13 -1
  27. package/build/components/global-styles/background-panel.js.map +1 -1
  28. package/build/components/global-styles/color-indicator-wrapper.js +2 -2
  29. package/build/components/global-styles/color-indicator-wrapper.js.map +1 -1
  30. package/build/components/global-styles/color-palette-panel.js +5 -2
  31. package/build/components/global-styles/color-palette-panel.js.map +1 -1
  32. package/build/components/global-styles/font-library-modal/context.js +9 -3
  33. package/build/components/global-styles/font-library-modal/context.js.map +1 -1
  34. package/build/components/global-styles/font-library-modal/font-collection.js +7 -2
  35. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  36. package/build/components/global-styles/font-library-modal/installed-fonts.js +22 -20
  37. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  38. package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js +6 -2
  39. package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -1
  40. package/build/components/global-styles/gradients-palette-panel.js +1 -2
  41. package/build/components/global-styles/gradients-palette-panel.js.map +1 -1
  42. package/build/components/global-styles/hooks.js +5 -2
  43. package/build/components/global-styles/hooks.js.map +1 -1
  44. package/build/components/global-styles/icon-with-current-color.js +2 -2
  45. package/build/components/global-styles/icon-with-current-color.js.map +1 -1
  46. package/build/components/global-styles/preset-colors.js +29 -0
  47. package/build/components/global-styles/preset-colors.js.map +1 -0
  48. package/build/components/global-styles/preview-colors.js +3 -7
  49. package/build/components/global-styles/preview-colors.js.map +1 -1
  50. package/build/components/global-styles/screen-color-palette.js +5 -5
  51. package/build/components/global-styles/screen-color-palette.js.map +1 -1
  52. package/build/components/global-styles/screen-colors.js +1 -4
  53. package/build/components/global-styles/screen-colors.js.map +1 -1
  54. package/build/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
  55. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  56. package/build/components/global-styles/style-variations-container.js +8 -2
  57. package/build/components/global-styles/style-variations-container.js.map +1 -1
  58. package/build/components/global-styles/typography-example.js +5 -2
  59. package/build/components/global-styles/typography-example.js.map +1 -1
  60. package/build/components/global-styles/ui.js +4 -1
  61. package/build/components/global-styles/ui.js.map +1 -1
  62. package/build/components/global-styles/variations/variation.js +12 -6
  63. package/build/components/global-styles/variations/variation.js.map +1 -1
  64. package/build/components/global-styles/variations/variations-color.js +5 -5
  65. package/build/components/global-styles/variations/variations-color.js.map +1 -1
  66. package/build/components/global-styles-sidebar/default-sidebar.js.map +1 -0
  67. package/build/components/{sidebar-edit-mode/global-styles-sidebar.js → global-styles-sidebar/index.js} +8 -5
  68. package/build/components/global-styles-sidebar/index.js.map +1 -0
  69. package/build/components/header-edit-mode/index.js +21 -137
  70. package/build/components/header-edit-mode/index.js.map +1 -1
  71. package/build/components/header-edit-mode/more-menu/index.js +3 -97
  72. package/build/components/header-edit-mode/more-menu/index.js.map +1 -1
  73. package/build/components/keyboard-shortcuts/register.js +0 -49
  74. package/build/components/keyboard-shortcuts/register.js.map +1 -1
  75. package/build/components/layout/index.js +9 -9
  76. package/build/components/layout/index.js.map +1 -1
  77. package/build/components/layout/router.js +70 -44
  78. package/build/components/layout/router.js.map +1 -1
  79. package/build/components/page/index.js +2 -2
  80. package/build/components/page/index.js.map +1 -1
  81. package/build/components/page-pages/index.js +4 -14
  82. package/build/components/page-pages/index.js.map +1 -1
  83. package/build/components/page-patterns/dataviews-pattern-actions.js +15 -87
  84. package/build/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
  85. package/build/components/page-patterns/header.js +3 -1
  86. package/build/components/page-patterns/header.js.map +1 -1
  87. package/build/components/page-patterns/index.js +28 -68
  88. package/build/components/page-patterns/index.js.map +1 -1
  89. package/build/components/page-patterns/use-patterns.js +1 -0
  90. package/build/components/page-patterns/use-patterns.js.map +1 -1
  91. package/build/components/page-templates/hooks.js.map +1 -0
  92. package/build/components/{page-templates-template-parts → page-templates}/index.js +73 -94
  93. package/build/components/page-templates/index.js.map +1 -0
  94. package/build/components/pagination/index.js +2 -2
  95. package/build/components/pagination/index.js.map +1 -1
  96. package/build/components/pattern-modal/duplicate.js +7 -5
  97. package/build/components/pattern-modal/duplicate.js.map +1 -1
  98. package/build/components/plugin-template-setting-panel/index.js +9 -0
  99. package/build/components/plugin-template-setting-panel/index.js.map +1 -1
  100. package/build/components/resizable-frame/index.js +20 -9
  101. package/build/components/resizable-frame/index.js.map +1 -1
  102. package/build/components/revisions/index.js +5 -2
  103. package/build/components/revisions/index.js.map +1 -1
  104. package/build/components/save-panel/index.js +4 -4
  105. package/build/components/save-panel/index.js.map +1 -1
  106. package/build/components/sidebar/index.js +61 -31
  107. package/build/components/sidebar/index.js.map +1 -1
  108. package/build/components/sidebar-button/index.js +2 -2
  109. package/build/components/sidebar-button/index.js.map +1 -1
  110. package/build/components/sidebar-dataviews/dataview-item.js +2 -2
  111. package/build/components/sidebar-dataviews/dataview-item.js.map +1 -1
  112. package/build/components/sidebar-navigation-item/index.js +5 -3
  113. package/build/components/sidebar-navigation-item/index.js.map +1 -1
  114. package/build/components/sidebar-navigation-screen/index.js +6 -32
  115. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  116. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -2
  117. package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
  118. package/build/components/sidebar-navigation-screen-global-styles/index.js +4 -1
  119. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  120. package/build/components/sidebar-navigation-screen-navigation-menu/index.js +10 -3
  121. package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  122. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +16 -1
  123. package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  124. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -0
  125. package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
  126. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +16 -6
  127. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  128. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +2 -9
  129. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  130. package/build/components/sidebar-navigation-screen-page/index.js +39 -8
  131. package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
  132. package/build/components/sidebar-navigation-screen-page/status-label.js +2 -2
  133. package/build/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
  134. package/build/components/sidebar-navigation-screen-pattern/index.js +3 -15
  135. package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
  136. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +3 -1
  137. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -1
  138. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +1 -1
  139. package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  140. package/build/components/sidebar-navigation-screen-patterns/category-item.js +3 -2
  141. package/build/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  142. package/build/components/sidebar-navigation-screen-patterns/index.js +25 -29
  143. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  144. package/build/components/sidebar-navigation-screen-template/index.js +5 -2
  145. package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
  146. package/build/components/sidebar-navigation-screen-templates-browse/content.js +3 -3
  147. package/build/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
  148. package/build/components/sidebar-navigation-screen-templates-browse/index.js +6 -33
  149. package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  150. package/build/components/site-hub/index.js +3 -3
  151. package/build/components/site-hub/index.js.map +1 -1
  152. package/build/components/site-icon/index.js +2 -2
  153. package/build/components/site-icon/index.js.map +1 -1
  154. package/build/components/style-book/index.js +10 -7
  155. package/build/components/style-book/index.js.map +1 -1
  156. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +0 -8
  157. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  158. package/build/components/template-actions/index.js +1 -1
  159. package/build/components/template-actions/index.js.map +1 -1
  160. package/build/components/template-part-converter/index.js +18 -1
  161. package/build/components/template-part-converter/index.js.map +1 -1
  162. package/build/deprecated.js +55 -0
  163. package/build/deprecated.js.map +1 -0
  164. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +40 -6
  165. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  166. package/build/index.js +18 -18
  167. package/build/index.js.map +1 -1
  168. package/build/utils/constants.js +1 -2
  169. package/build/utils/constants.js.map +1 -1
  170. package/build/utils/get-is-list-page.js +1 -1
  171. package/build/utils/get-is-list-page.js.map +1 -1
  172. package/build/utils/use-activate-theme.js +9 -6
  173. package/build/utils/use-activate-theme.js.map +1 -1
  174. package/build-module/components/add-new-page/index.js +3 -0
  175. package/build-module/components/add-new-page/index.js.map +1 -1
  176. package/build-module/components/add-new-pattern/index.js +8 -7
  177. package/build-module/components/add-new-pattern/index.js.map +1 -1
  178. package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js +3 -0
  179. package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -1
  180. package/build-module/components/add-new-template/add-custom-template-modal-content.js +3 -1
  181. package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  182. package/build-module/components/add-new-template/index.js +2 -2
  183. package/build-module/components/add-new-template/index.js.map +1 -1
  184. package/build-module/components/app/index.js +4 -2
  185. package/build-module/components/app/index.js.map +1 -1
  186. package/build-module/components/block-editor/editor-canvas.js +4 -18
  187. package/build-module/components/block-editor/editor-canvas.js.map +1 -1
  188. package/build-module/components/block-editor/resize-handle.js +21 -6
  189. package/build-module/components/block-editor/resize-handle.js.map +1 -1
  190. package/build-module/components/block-editor/site-editor-canvas.js +2 -2
  191. package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
  192. package/build-module/components/create-template-part-modal/index.js +3 -0
  193. package/build-module/components/create-template-part-modal/index.js.map +1 -1
  194. package/build-module/components/dataviews-actions/index.js +38 -0
  195. package/build-module/components/dataviews-actions/index.js.map +1 -0
  196. package/build-module/components/editor/index.js +96 -17
  197. package/build-module/components/editor/index.js.map +1 -1
  198. package/build-module/components/global-styles/background-panel.js +12 -1
  199. package/build-module/components/global-styles/background-panel.js.map +1 -1
  200. package/build-module/components/global-styles/color-indicator-wrapper.js +2 -2
  201. package/build-module/components/global-styles/color-indicator-wrapper.js.map +1 -1
  202. package/build-module/components/global-styles/color-palette-panel.js +4 -2
  203. package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
  204. package/build-module/components/global-styles/font-library-modal/context.js +9 -3
  205. package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
  206. package/build-module/components/global-styles/font-library-modal/font-collection.js +7 -2
  207. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  208. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +22 -20
  209. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  210. package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js +6 -2
  211. package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -1
  212. package/build-module/components/global-styles/gradients-palette-panel.js +1 -2
  213. package/build-module/components/global-styles/gradients-palette-panel.js.map +1 -1
  214. package/build-module/components/global-styles/hooks.js +4 -1
  215. package/build-module/components/global-styles/hooks.js.map +1 -1
  216. package/build-module/components/global-styles/icon-with-current-color.js +2 -2
  217. package/build-module/components/global-styles/icon-with-current-color.js.map +1 -1
  218. package/build-module/components/global-styles/preset-colors.js +22 -0
  219. package/build-module/components/global-styles/preset-colors.js.map +1 -0
  220. package/build-module/components/global-styles/preview-colors.js +3 -7
  221. package/build-module/components/global-styles/preview-colors.js.map +1 -1
  222. package/build-module/components/global-styles/screen-color-palette.js +5 -5
  223. package/build-module/components/global-styles/screen-color-palette.js.map +1 -1
  224. package/build-module/components/global-styles/screen-colors.js +1 -4
  225. package/build-module/components/global-styles/screen-colors.js.map +1 -1
  226. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
  227. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  228. package/build-module/components/global-styles/style-variations-container.js +8 -2
  229. package/build-module/components/global-styles/style-variations-container.js.map +1 -1
  230. package/build-module/components/global-styles/typography-example.js +4 -1
  231. package/build-module/components/global-styles/typography-example.js.map +1 -1
  232. package/build-module/components/global-styles/ui.js +4 -1
  233. package/build-module/components/global-styles/ui.js.map +1 -1
  234. package/build-module/components/global-styles/variations/variation.js +11 -5
  235. package/build-module/components/global-styles/variations/variation.js.map +1 -1
  236. package/build-module/components/global-styles/variations/variations-color.js +6 -6
  237. package/build-module/components/global-styles/variations/variations-color.js.map +1 -1
  238. package/build-module/components/global-styles-sidebar/default-sidebar.js.map +1 -0
  239. package/build-module/components/{sidebar-edit-mode/global-styles-sidebar.js → global-styles-sidebar/index.js} +8 -5
  240. package/build-module/components/global-styles-sidebar/index.js.map +1 -0
  241. package/build-module/components/header-edit-mode/index.js +22 -138
  242. package/build-module/components/header-edit-mode/index.js.map +1 -1
  243. package/build-module/components/header-edit-mode/more-menu/index.js +5 -99
  244. package/build-module/components/header-edit-mode/more-menu/index.js.map +1 -1
  245. package/build-module/components/keyboard-shortcuts/register.js +0 -49
  246. package/build-module/components/keyboard-shortcuts/register.js.map +1 -1
  247. package/build-module/components/layout/index.js +9 -9
  248. package/build-module/components/layout/index.js.map +1 -1
  249. package/build-module/components/layout/router.js +70 -45
  250. package/build-module/components/layout/router.js.map +1 -1
  251. package/build-module/components/page/index.js +2 -2
  252. package/build-module/components/page/index.js.map +1 -1
  253. package/build-module/components/page-pages/index.js +5 -15
  254. package/build-module/components/page-pages/index.js.map +1 -1
  255. package/build-module/components/page-patterns/dataviews-pattern-actions.js +15 -87
  256. package/build-module/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
  257. package/build-module/components/page-patterns/header.js +3 -1
  258. package/build-module/components/page-patterns/header.js.map +1 -1
  259. package/build-module/components/page-patterns/index.js +31 -71
  260. package/build-module/components/page-patterns/index.js.map +1 -1
  261. package/build-module/components/page-patterns/use-patterns.js +1 -0
  262. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  263. package/build-module/components/page-templates/hooks.js.map +1 -0
  264. package/build-module/components/{page-templates-template-parts → page-templates}/index.js +73 -94
  265. package/build-module/components/page-templates/index.js.map +1 -0
  266. package/build-module/components/pagination/index.js +2 -2
  267. package/build-module/components/pagination/index.js.map +1 -1
  268. package/build-module/components/pattern-modal/duplicate.js +7 -5
  269. package/build-module/components/pattern-modal/duplicate.js.map +1 -1
  270. package/build-module/components/plugin-template-setting-panel/index.js +8 -0
  271. package/build-module/components/plugin-template-setting-panel/index.js.map +1 -1
  272. package/build-module/components/resizable-frame/index.js +21 -10
  273. package/build-module/components/resizable-frame/index.js.map +1 -1
  274. package/build-module/components/revisions/index.js +4 -1
  275. package/build-module/components/revisions/index.js.map +1 -1
  276. package/build-module/components/save-panel/index.js +4 -4
  277. package/build-module/components/save-panel/index.js.map +1 -1
  278. package/build-module/components/sidebar/index.js +62 -32
  279. package/build-module/components/sidebar/index.js.map +1 -1
  280. package/build-module/components/sidebar-button/index.js +2 -2
  281. package/build-module/components/sidebar-button/index.js.map +1 -1
  282. package/build-module/components/sidebar-dataviews/dataview-item.js +2 -2
  283. package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
  284. package/build-module/components/sidebar-navigation-item/index.js +5 -3
  285. package/build-module/components/sidebar-navigation-item/index.js.map +1 -1
  286. package/build-module/components/sidebar-navigation-screen/index.js +6 -32
  287. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  288. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -2
  289. package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
  290. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +4 -1
  291. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  292. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js +10 -3
  293. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
  294. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +16 -1
  295. package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
  296. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -0
  297. package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
  298. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +16 -6
  299. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  300. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +2 -9
  301. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
  302. package/build-module/components/sidebar-navigation-screen-page/index.js +40 -9
  303. package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
  304. package/build-module/components/sidebar-navigation-screen-page/status-label.js +2 -2
  305. package/build-module/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
  306. package/build-module/components/sidebar-navigation-screen-pattern/index.js +3 -15
  307. package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
  308. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +3 -1
  309. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -1
  310. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +1 -1
  311. package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
  312. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js +3 -2
  313. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  314. package/build-module/components/sidebar-navigation-screen-patterns/index.js +26 -30
  315. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  316. package/build-module/components/sidebar-navigation-screen-template/index.js +5 -2
  317. package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
  318. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js +3 -3
  319. package/build-module/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
  320. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +6 -33
  321. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
  322. package/build-module/components/site-hub/index.js +3 -3
  323. package/build-module/components/site-hub/index.js.map +1 -1
  324. package/build-module/components/site-icon/index.js +2 -2
  325. package/build-module/components/site-icon/index.js.map +1 -1
  326. package/build-module/components/style-book/index.js +9 -6
  327. package/build-module/components/style-book/index.js.map +1 -1
  328. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +0 -8
  329. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  330. package/build-module/components/template-actions/index.js +1 -1
  331. package/build-module/components/template-actions/index.js.map +1 -1
  332. package/build-module/components/template-part-converter/index.js +18 -1
  333. package/build-module/components/template-part-converter/index.js.map +1 -1
  334. package/build-module/deprecated.js +45 -0
  335. package/build-module/deprecated.js.map +1 -0
  336. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +38 -5
  337. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  338. package/build-module/index.js +2 -4
  339. package/build-module/index.js.map +1 -1
  340. package/build-module/utils/constants.js +0 -1
  341. package/build-module/utils/constants.js.map +1 -1
  342. package/build-module/utils/get-is-list-page.js +1 -1
  343. package/build-module/utils/get-is-list-page.js.map +1 -1
  344. package/build-module/utils/use-activate-theme.js +9 -6
  345. package/build-module/utils/use-activate-theme.js.map +1 -1
  346. package/build-style/style-rtl.css +208 -484
  347. package/build-style/style.css +208 -484
  348. package/package.json +43 -45
  349. package/src/components/add-new-page/index.js +7 -1
  350. package/src/components/add-new-pattern/index.js +15 -12
  351. package/src/components/add-new-template/add-custom-generic-template-modal-content.js +3 -0
  352. package/src/components/add-new-template/add-custom-template-modal-content.js +3 -1
  353. package/src/components/add-new-template/index.js +2 -2
  354. package/src/components/app/index.js +5 -2
  355. package/src/components/block-editor/editor-canvas.js +6 -26
  356. package/src/components/block-editor/resize-handle.js +30 -11
  357. package/src/components/block-editor/site-editor-canvas.js +2 -2
  358. package/src/components/block-editor/style.scss +12 -17
  359. package/src/components/create-template-part-modal/index.js +3 -0
  360. package/src/components/dataviews-actions/index.js +38 -0
  361. package/src/components/editor/index.js +117 -18
  362. package/src/components/editor/style.scss +6 -5
  363. package/src/components/global-styles/background-panel.js +17 -2
  364. package/src/components/global-styles/color-indicator-wrapper.js +2 -2
  365. package/src/components/global-styles/color-palette-panel.js +3 -4
  366. package/src/components/global-styles/font-library-modal/context.js +9 -3
  367. package/src/components/global-styles/font-library-modal/font-collection.js +31 -12
  368. package/src/components/global-styles/font-library-modal/installed-fonts.js +82 -54
  369. package/src/components/global-styles/font-library-modal/style.scss +17 -0
  370. package/src/components/global-styles/font-library-modal/utils/sort-font-faces.js +6 -2
  371. package/src/components/global-styles/gradients-palette-panel.js +1 -4
  372. package/src/components/global-styles/hooks.js +2 -1
  373. package/src/components/global-styles/icon-with-current-color.js +2 -2
  374. package/src/components/global-styles/preset-colors.js +18 -0
  375. package/src/components/global-styles/preview-colors.js +4 -7
  376. package/src/components/global-styles/screen-color-palette.js +4 -4
  377. package/src/components/global-styles/screen-colors.js +0 -2
  378. package/src/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
  379. package/src/components/global-styles/stories/index.story.js +2 -1
  380. package/src/components/global-styles/style-variations-container.js +11 -2
  381. package/src/components/global-styles/typography-example.js +2 -1
  382. package/src/components/global-styles/ui.js +5 -1
  383. package/src/components/global-styles/variations/style.scss +15 -31
  384. package/src/components/global-styles/variations/variation.js +13 -10
  385. package/src/components/global-styles/variations/variations-color.js +5 -8
  386. package/src/components/{sidebar-edit-mode/global-styles-sidebar.js → global-styles-sidebar/index.js} +7 -2
  387. package/src/components/{sidebar-edit-mode → global-styles-sidebar}/style.scss +0 -11
  388. package/src/components/header-edit-mode/index.js +25 -184
  389. package/src/components/header-edit-mode/more-menu/index.js +8 -145
  390. package/src/components/header-edit-mode/style.scss +1 -271
  391. package/src/components/keyboard-shortcuts/register.js +0 -58
  392. package/src/components/layout/index.js +14 -10
  393. package/src/components/layout/router.js +66 -56
  394. package/src/components/layout/style.scss +2 -1
  395. package/src/components/page/index.js +2 -2
  396. package/src/components/page-pages/index.js +8 -28
  397. package/src/components/page-patterns/dataviews-pattern-actions.js +11 -101
  398. package/src/components/page-patterns/header.js +3 -1
  399. package/src/components/page-patterns/index.js +32 -110
  400. package/src/components/page-patterns/style.scss +14 -1
  401. package/src/components/page-patterns/use-patterns.js +1 -0
  402. package/src/components/{page-templates-template-parts → page-templates}/index.js +33 -75
  403. package/src/components/{page-templates-template-parts → page-templates}/style.scss +2 -2
  404. package/src/components/pagination/index.js +2 -2
  405. package/src/components/pattern-modal/duplicate.js +4 -3
  406. package/src/components/plugin-template-setting-panel/index.js +8 -0
  407. package/src/components/resizable-frame/index.js +20 -7
  408. package/src/components/revisions/index.js +2 -1
  409. package/src/components/save-panel/index.js +4 -4
  410. package/src/components/sidebar/index.js +61 -37
  411. package/src/components/sidebar-button/index.js +2 -5
  412. package/src/components/sidebar-dataviews/dataview-item.js +4 -7
  413. package/src/components/sidebar-navigation-item/index.js +3 -3
  414. package/src/components/sidebar-navigation-screen/index.js +7 -31
  415. package/src/components/sidebar-navigation-screen/style.scss +11 -9
  416. package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -2
  417. package/src/components/sidebar-navigation-screen-global-styles/index.js +2 -1
  418. package/src/components/sidebar-navigation-screen-navigation-menu/index.js +6 -1
  419. package/src/components/sidebar-navigation-screen-navigation-menu/more-menu.js +18 -1
  420. package/src/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -0
  421. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +8 -4
  422. package/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +0 -10
  423. package/src/components/sidebar-navigation-screen-page/index.js +48 -9
  424. package/src/components/sidebar-navigation-screen-page/status-label.js +2 -2
  425. package/src/components/sidebar-navigation-screen-pattern/index.js +1 -12
  426. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +3 -1
  427. package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +1 -1
  428. package/src/components/sidebar-navigation-screen-patterns/category-item.js +2 -1
  429. package/src/components/sidebar-navigation-screen-patterns/index.js +20 -39
  430. package/src/components/sidebar-navigation-screen-template/index.js +3 -2
  431. package/src/components/sidebar-navigation-screen-templates-browse/content.js +3 -3
  432. package/src/components/sidebar-navigation-screen-templates-browse/index.js +8 -39
  433. package/src/components/site-hub/index.js +3 -3
  434. package/src/components/site-icon/index.js +2 -2
  435. package/src/components/style-book/index.js +7 -6
  436. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +0 -4
  437. package/src/components/template-actions/index.js +1 -1
  438. package/src/components/template-part-converter/index.js +16 -3
  439. package/src/deprecated.js +42 -0
  440. package/src/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +71 -17
  441. package/src/index.js +2 -9
  442. package/src/style.scss +2 -16
  443. package/src/utils/constants.js +1 -1
  444. package/src/utils/get-is-list-page.js +1 -3
  445. package/src/utils/use-activate-theme.js +4 -4
  446. package/build/components/global-styles/global-styles-provider.js +0 -129
  447. package/build/components/global-styles/global-styles-provider.js.map +0 -1
  448. package/build/components/header-edit-mode/document-tools/index.js +0 -68
  449. package/build/components/header-edit-mode/document-tools/index.js.map +0 -1
  450. package/build/components/header-edit-mode/more-menu/copy-content-menu-item.js +0 -59
  451. package/build/components/header-edit-mode/more-menu/copy-content-menu-item.js.map +0 -1
  452. package/build/components/header-edit-mode/tools-more-menu-group/index.js +0 -23
  453. package/build/components/header-edit-mode/tools-more-menu-group/index.js.map +0 -1
  454. package/build/components/keyboard-shortcuts/edit-mode.js +0 -56
  455. package/build/components/keyboard-shortcuts/edit-mode.js.map +0 -1
  456. package/build/components/page-templates-template-parts/add-new-template-part.js +0 -65
  457. package/build/components/page-templates-template-parts/add-new-template-part.js.map +0 -1
  458. package/build/components/page-templates-template-parts/hooks.js.map +0 -1
  459. package/build/components/page-templates-template-parts/index.js.map +0 -1
  460. package/build/components/sidebar-edit-mode/default-sidebar.js.map +0 -1
  461. package/build/components/sidebar-edit-mode/global-styles-sidebar.js.map +0 -1
  462. package/build/components/sidebar-edit-mode/index.js +0 -146
  463. package/build/components/sidebar-edit-mode/index.js.map +0 -1
  464. package/build/components/sidebar-edit-mode/page-panels/index.js +0 -98
  465. package/build/components/sidebar-edit-mode/page-panels/index.js.map +0 -1
  466. package/build/components/sidebar-edit-mode/page-panels/page-content.js +0 -34
  467. package/build/components/sidebar-edit-mode/page-panels/page-content.js.map +0 -1
  468. package/build/components/sidebar-edit-mode/page-panels/page-status.js +0 -188
  469. package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +0 -1
  470. package/build/components/sidebar-edit-mode/page-panels/page-summary.js +0 -39
  471. package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +0 -1
  472. package/build/components/sidebar-edit-mode/settings-header/index.js +0 -42
  473. package/build/components/sidebar-edit-mode/settings-header/index.js.map +0 -1
  474. package/build/components/sidebar-edit-mode/template-panel/hooks.js +0 -86
  475. package/build/components/sidebar-edit-mode/template-panel/hooks.js.map +0 -1
  476. package/build/components/sidebar-edit-mode/template-panel/index.js +0 -130
  477. package/build/components/sidebar-edit-mode/template-panel/index.js.map +0 -1
  478. package/build/components/start-template-options/index.js +0 -191
  479. package/build/components/start-template-options/index.js.map +0 -1
  480. package/build/utils/math.js +0 -98
  481. package/build/utils/math.js.map +0 -1
  482. package/build-module/components/global-styles/global-styles-provider.js +0 -120
  483. package/build-module/components/global-styles/global-styles-provider.js.map +0 -1
  484. package/build-module/components/header-edit-mode/document-tools/index.js +0 -61
  485. package/build-module/components/header-edit-mode/document-tools/index.js.map +0 -1
  486. package/build-module/components/header-edit-mode/more-menu/copy-content-menu-item.js +0 -52
  487. package/build-module/components/header-edit-mode/more-menu/copy-content-menu-item.js.map +0 -1
  488. package/build-module/components/header-edit-mode/tools-more-menu-group/index.js +0 -16
  489. package/build-module/components/header-edit-mode/tools-more-menu-group/index.js.map +0 -1
  490. package/build-module/components/keyboard-shortcuts/edit-mode.js +0 -49
  491. package/build-module/components/keyboard-shortcuts/edit-mode.js.map +0 -1
  492. package/build-module/components/page-templates-template-parts/add-new-template-part.js +0 -57
  493. package/build-module/components/page-templates-template-parts/add-new-template-part.js.map +0 -1
  494. package/build-module/components/page-templates-template-parts/hooks.js.map +0 -1
  495. package/build-module/components/page-templates-template-parts/index.js.map +0 -1
  496. package/build-module/components/sidebar-edit-mode/default-sidebar.js.map +0 -1
  497. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js.map +0 -1
  498. package/build-module/components/sidebar-edit-mode/index.js +0 -137
  499. package/build-module/components/sidebar-edit-mode/index.js.map +0 -1
  500. package/build-module/components/sidebar-edit-mode/page-panels/index.js +0 -90
  501. package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +0 -1
  502. package/build-module/components/sidebar-edit-mode/page-panels/page-content.js +0 -27
  503. package/build-module/components/sidebar-edit-mode/page-panels/page-content.js.map +0 -1
  504. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js +0 -180
  505. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js.map +0 -1
  506. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +0 -31
  507. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +0 -1
  508. package/build-module/components/sidebar-edit-mode/settings-header/index.js +0 -35
  509. package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +0 -1
  510. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js +0 -79
  511. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js.map +0 -1
  512. package/build-module/components/sidebar-edit-mode/template-panel/index.js +0 -122
  513. package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +0 -1
  514. package/build-module/components/start-template-options/index.js +0 -184
  515. package/build-module/components/start-template-options/index.js.map +0 -1
  516. package/build-module/utils/math.js +0 -92
  517. package/build-module/utils/math.js.map +0 -1
  518. package/src/components/global-styles/global-styles-provider.js +0 -162
  519. package/src/components/header-edit-mode/document-tools/index.js +0 -68
  520. package/src/components/header-edit-mode/more-menu/copy-content-menu-item.js +0 -51
  521. package/src/components/header-edit-mode/tools-more-menu-group/index.js +0 -16
  522. package/src/components/keyboard-shortcuts/edit-mode.js +0 -59
  523. package/src/components/page-templates-template-parts/add-new-template-part.js +0 -62
  524. package/src/components/sidebar-edit-mode/index.js +0 -162
  525. package/src/components/sidebar-edit-mode/page-panels/index.js +0 -105
  526. package/src/components/sidebar-edit-mode/page-panels/page-content.js +0 -29
  527. package/src/components/sidebar-edit-mode/page-panels/page-status.js +0 -249
  528. package/src/components/sidebar-edit-mode/page-panels/page-summary.js +0 -49
  529. package/src/components/sidebar-edit-mode/page-panels/style.scss +0 -34
  530. package/src/components/sidebar-edit-mode/settings-header/index.js +0 -43
  531. package/src/components/sidebar-edit-mode/settings-header/style.scss +0 -14
  532. package/src/components/sidebar-edit-mode/template-panel/hooks.js +0 -114
  533. package/src/components/sidebar-edit-mode/template-panel/index.js +0 -144
  534. package/src/components/sidebar-edit-mode/template-panel/style.scss +0 -16
  535. package/src/components/start-template-options/index.js +0 -231
  536. package/src/components/start-template-options/style.scss +0 -55
  537. package/src/utils/math.js +0 -93
  538. /package/build/components/{sidebar-edit-mode → global-styles-sidebar}/default-sidebar.js +0 -0
  539. /package/build/components/{page-templates-template-parts → page-templates}/hooks.js +0 -0
  540. /package/build-module/components/{sidebar-edit-mode → global-styles-sidebar}/default-sidebar.js +0 -0
  541. /package/build-module/components/{page-templates-template-parts → page-templates}/hooks.js +0 -0
  542. /package/src/components/{sidebar-edit-mode → global-styles-sidebar}/default-sidebar.js +0 -0
  543. /package/src/components/{page-templates-template-parts → page-templates}/hooks.js +0 -0
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import classnames from 'classnames';
4
+ import clsx from 'clsx';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -12,7 +12,7 @@ import {
12
12
  Tooltip,
13
13
  __unstableMotion as motion,
14
14
  } from '@wordpress/components';
15
- import { useInstanceId } from '@wordpress/compose';
15
+ import { useInstanceId, useReducedMotion } from '@wordpress/compose';
16
16
  import { useDispatch, useSelect } from '@wordpress/data';
17
17
  import { __ } from '@wordpress/i18n';
18
18
 
@@ -86,6 +86,7 @@ function ResizableFrame( {
86
86
  defaultSize,
87
87
  innerContentStyle,
88
88
  } ) {
89
+ const disableMotion = useReducedMotion();
89
90
  const [ frameSize, setFrameSize ] = useState( INITIAL_FRAME_SIZE );
90
91
  // The width of the resizable frame when a new resize gesture starts.
91
92
  const [ startingWidth, setStartingWidth ] = useState();
@@ -203,11 +204,11 @@ function ResizableFrame( {
203
204
  },
204
205
  visible: {
205
206
  opacity: 1,
206
- left: -16,
207
+ left: -14, // Account for the handle's width.
207
208
  },
208
209
  active: {
209
210
  opacity: 1,
210
- left: -16,
211
+ left: -14, // Account for the handle's width.
211
212
  scaleY: 1.3,
212
213
  },
213
214
  };
@@ -226,9 +227,21 @@ function ResizableFrame( {
226
227
  variants={ frameAnimationVariants }
227
228
  animate={ isFullWidth ? 'fullWidth' : 'default' }
228
229
  onAnimationComplete={ ( definition ) => {
229
- if ( definition === 'fullWidth' )
230
+ if ( definition === 'fullWidth' ) {
230
231
  setFrameSize( { width: '100%', height: '100%' } );
232
+ }
231
233
  } }
234
+ whileHover={
235
+ canvasMode === 'view'
236
+ ? {
237
+ scale: 1.005,
238
+ transition: {
239
+ duration: disableMotion ? 0 : 0.5,
240
+ ease: 'easeOut',
241
+ },
242
+ }
243
+ : {}
244
+ }
232
245
  transition={ FRAME_TRANSITION }
233
246
  size={ frameSize }
234
247
  enable={ {
@@ -265,7 +278,7 @@ function ResizableFrame( {
265
278
  key="handle"
266
279
  role="separator"
267
280
  aria-orientation="vertical"
268
- className={ classnames(
281
+ className={ clsx(
269
282
  'edit-site-resizable-frame__handle',
270
283
  { 'is-resizing': isResizing }
271
284
  ) }
@@ -297,7 +310,7 @@ function ResizableFrame( {
297
310
  onResizeStart={ handleResizeStart }
298
311
  onResize={ handleResize }
299
312
  onResizeStop={ handleResizeStop }
300
- className={ classnames( 'edit-site-resizable-frame__inner', {
313
+ className={ clsx( 'edit-site-resizable-frame__inner', {
301
314
  'is-resizing': isResizing,
302
315
  } ) }
303
316
  showHandle={ false } // Do not show the default handle, as we're using a custom one.
@@ -10,6 +10,7 @@ import {
10
10
  __unstableEditorStyles as EditorStyles,
11
11
  __unstableIframe as Iframe,
12
12
  } from '@wordpress/block-editor';
13
+ import { privateApis as editorPrivateApis } from '@wordpress/editor';
13
14
  import { useSelect } from '@wordpress/data';
14
15
  import { useContext, useMemo } from '@wordpress/element';
15
16
 
@@ -18,7 +19,6 @@ import { useContext, useMemo } from '@wordpress/element';
18
19
  */
19
20
 
20
21
  import { unlock } from '../../lock-unlock';
21
- import { mergeBaseAndUserConfigs } from '../global-styles/global-styles-provider';
22
22
  import EditorCanvasContainer from '../editor-canvas-container';
23
23
 
24
24
  const {
@@ -26,6 +26,7 @@ const {
26
26
  GlobalStylesContext,
27
27
  useGlobalStylesOutputWithConfig,
28
28
  } = unlock( blockEditorPrivateApis );
29
+ const { mergeBaseAndUserConfigs } = unlock( editorPrivateApis );
29
30
 
30
31
  function isObjectEmpty( object ) {
31
32
  return ! object || Object.keys( object ).length === 0;
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import classnames from 'classnames';
4
+ import clsx from 'clsx';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -139,19 +139,19 @@ export default function SavePanel() {
139
139
  const disabled = isSaving || ! activateSaveEnabled;
140
140
  return (
141
141
  <NavigableRegion
142
- className={ classnames( 'edit-site-layout__actions', {
142
+ className={ clsx( 'edit-site-layout__actions', {
143
143
  'is-entity-save-view-open': isSaveViewOpen,
144
144
  } ) }
145
145
  ariaLabel={ __( 'Save panel' ) }
146
146
  >
147
147
  <div
148
- className={ classnames( 'edit-site-editor__toggle-save-panel', {
148
+ className={ clsx( 'edit-site-editor__toggle-save-panel', {
149
149
  'screen-reader-text': isSaveViewOpen,
150
150
  } ) }
151
151
  >
152
152
  <Button
153
153
  variant="secondary"
154
- className={ classnames(
154
+ className={ clsx(
155
155
  'edit-site-editor__toggle-save-panel-button'
156
156
  ) }
157
157
  onClick={ () => setIsSaveViewOpened( true ) }
@@ -1,68 +1,92 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import classnames from 'classnames';
4
+ import clsx from 'clsx';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
8
8
  */
9
9
  import {
10
- useCallback,
11
10
  createContext,
11
+ useContext,
12
12
  useState,
13
13
  useRef,
14
- useEffect,
14
+ useLayoutEffect,
15
15
  } from '@wordpress/element';
16
16
  import { focus } from '@wordpress/dom';
17
17
 
18
18
  export const SidebarNavigationContext = createContext( () => {} );
19
+ // Focus a sidebar element after a navigation. The element to focus is either
20
+ // specified by `focusSelector` (when navigating back) or it is the first
21
+ // tabbable element (usually the "Back" button).
22
+ function focusSidebarElement( el, direction, focusSelector ) {
23
+ let elementToFocus;
24
+ if ( direction === 'back' && focusSelector ) {
25
+ elementToFocus = el.querySelector( focusSelector );
26
+ }
27
+ if ( direction !== null && ! elementToFocus ) {
28
+ const [ firstTabbable ] = focus.tabbable.find( el );
29
+ elementToFocus = firstTabbable ?? el;
30
+ }
31
+ elementToFocus?.focus();
32
+ }
19
33
 
20
- export default function SidebarContent( { routeKey, children } ) {
21
- const [ navState, setNavState ] = useState( {
34
+ // Navigation state that is updated when navigating back or forward. Helps us
35
+ // manage the animations and also focus.
36
+ function createNavState() {
37
+ let state = {
22
38
  direction: null,
23
39
  focusSelector: null,
24
- } );
40
+ };
25
41
 
26
- const navigate = useCallback( ( direction, focusSelector = null ) => {
27
- setNavState( ( prevState ) => ( {
28
- direction,
29
- focusSelector:
30
- direction === 'forward' && focusSelector
31
- ? focusSelector
32
- : prevState.focusSelector,
33
- } ) );
34
- }, [] );
42
+ return {
43
+ get() {
44
+ return state;
45
+ },
46
+ navigate( direction, focusSelector = null ) {
47
+ state = {
48
+ direction,
49
+ focusSelector:
50
+ direction === 'forward' && focusSelector
51
+ ? focusSelector
52
+ : state.focusSelector,
53
+ };
54
+ },
55
+ };
56
+ }
35
57
 
58
+ function SidebarContentWrapper( { children } ) {
59
+ const navState = useContext( SidebarNavigationContext );
36
60
  const wrapperRef = useRef();
37
- useEffect( () => {
38
- let elementToFocus;
39
- if ( navState.direction === 'back' && navState.focusSelector ) {
40
- elementToFocus = wrapperRef.current.querySelector(
41
- navState.focusSelector
42
- );
43
- }
44
- if ( navState.direction !== null && ! elementToFocus ) {
45
- const [ firstTabbable ] = focus.tabbable.find( wrapperRef.current );
46
- elementToFocus = firstTabbable ?? wrapperRef.current;
47
- }
48
- elementToFocus?.focus();
61
+ const [ navAnimation, setNavAnimation ] = useState( null );
62
+
63
+ useLayoutEffect( () => {
64
+ const { direction, focusSelector } = navState.get();
65
+ focusSidebarElement( wrapperRef.current, direction, focusSelector );
66
+ setNavAnimation( direction );
49
67
  }, [ navState ] );
50
68
 
51
- const wrapperCls = classnames( 'edit-site-sidebar__screen-wrapper', {
52
- 'slide-from-left': navState.direction === 'back',
53
- 'slide-from-right': navState.direction === 'forward',
69
+ const wrapperCls = clsx( 'edit-site-sidebar__screen-wrapper', {
70
+ 'slide-from-left': navAnimation === 'back',
71
+ 'slide-from-right': navAnimation === 'forward',
54
72
  } );
55
73
 
56
74
  return (
57
- <SidebarNavigationContext.Provider value={ navigate }>
75
+ <div ref={ wrapperRef } className={ wrapperCls }>
76
+ { children }
77
+ </div>
78
+ );
79
+ }
80
+
81
+ export default function SidebarContent( { routeKey, children } ) {
82
+ const [ navState ] = useState( createNavState );
83
+
84
+ return (
85
+ <SidebarNavigationContext.Provider value={ navState }>
58
86
  <div className="edit-site-sidebar__content">
59
- <div
60
- ref={ wrapperRef }
61
- key={ routeKey }
62
- className={ wrapperCls }
63
- >
87
+ <SidebarContentWrapper key={ routeKey }>
64
88
  { children }
65
- </div>
89
+ </SidebarContentWrapper>
66
90
  </div>
67
91
  </SidebarNavigationContext.Provider>
68
92
  );
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import classnames from 'classnames';
4
+ import clsx from 'clsx';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -12,10 +12,7 @@ export default function SidebarButton( props ) {
12
12
  return (
13
13
  <Button
14
14
  { ...props }
15
- className={ classnames(
16
- 'edit-site-sidebar-button',
17
- props.className
18
- ) }
15
+ className={ clsx( 'edit-site-sidebar-button', props.className ) }
19
16
  />
20
17
  );
21
18
  }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import classnames from 'classnames';
4
+ import clsx from 'clsx';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -44,12 +44,9 @@ export default function DataViewItem( {
44
44
  return (
45
45
  <HStack
46
46
  justify="flex-start"
47
- className={ classnames(
48
- 'edit-site-sidebar-dataviews-dataview-item',
49
- {
50
- 'is-selected': isActive,
51
- }
52
- ) }
47
+ className={ clsx( 'edit-site-sidebar-dataviews-dataview-item', {
48
+ 'is-selected': isActive,
49
+ } ) }
53
50
  >
54
51
  <SidebarNavigationItem
55
52
  icon={ iconToUse }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import classnames from 'classnames';
4
+ import clsx from 'clsx';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -35,7 +35,7 @@ export default function SidebarNavigationItem( {
35
35
  ...props
36
36
  } ) {
37
37
  const history = useHistory();
38
- const navigate = useContext( SidebarNavigationContext );
38
+ const { navigate } = useContext( SidebarNavigationContext );
39
39
 
40
40
  // If there is no custom click handler, create one that navigates to `path`.
41
41
  function handleClick( e ) {
@@ -51,7 +51,7 @@ export default function SidebarNavigationItem( {
51
51
 
52
52
  return (
53
53
  <Item
54
- className={ classnames(
54
+ className={ clsx(
55
55
  'edit-site-sidebar-navigation-item',
56
56
  { 'with-suffix': ! withChevron && suffix },
57
57
  className
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import classnames from 'classnames';
4
+ import clsx from 'clsx';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -32,25 +32,6 @@ import { SidebarNavigationContext } from '../sidebar';
32
32
 
33
33
  const { useHistory, useLocation } = unlock( routerPrivateApis );
34
34
 
35
- function getBackPath( params ) {
36
- // From a data view path we navigate back to root
37
- if ( params.path ) {
38
- return {};
39
- }
40
-
41
- // From edit screen for a post we navigate back to post-type specific data view
42
- if ( params.postType === 'page' ) {
43
- return { path: '/page', postId: params.postId };
44
- } else if ( params.postType === 'wp_template' ) {
45
- return { path: '/wp_template', postId: params.postId };
46
- } else if ( params.postType === 'wp_navigation' ) {
47
- return { path: '/navigation', postId: params.postId };
48
- }
49
-
50
- // Go back to root by default
51
- return {};
52
- }
53
-
54
35
  export default function SidebarNavigationScreen( {
55
36
  isRoot,
56
37
  title,
@@ -81,17 +62,16 @@ export default function SidebarNavigationScreen( {
81
62
  );
82
63
  const location = useLocation();
83
64
  const history = useHistory();
84
- const navigate = useContext( SidebarNavigationContext );
65
+ const { navigate } = useContext( SidebarNavigationContext );
66
+ const backPath = backPathProp ?? location.state?.backPath;
85
67
  const icon = isRTL() ? chevronRight : chevronLeft;
68
+
86
69
  return (
87
70
  <>
88
71
  <VStack
89
- className={ classnames(
90
- 'edit-site-sidebar-navigation-screen__main',
91
- {
92
- 'has-footer': !! footer,
93
- }
94
- ) }
72
+ className={ clsx( 'edit-site-sidebar-navigation-screen__main', {
73
+ 'has-footer': !! footer,
74
+ } ) }
95
75
  spacing={ 0 }
96
76
  justify="flex-start"
97
77
  >
@@ -103,10 +83,6 @@ export default function SidebarNavigationScreen( {
103
83
  { ! isRoot && (
104
84
  <SidebarButton
105
85
  onClick={ () => {
106
- const backPath =
107
- backPathProp ??
108
- location.state?.backPath ??
109
- getBackPath( location.params );
110
86
  history.push( backPath );
111
87
  navigate( 'back' );
112
88
  } }
@@ -99,20 +99,22 @@
99
99
  }
100
100
 
101
101
  .edit-site-sidebar-navigation-screen__content .edit-site-global-styles-variations_item {
102
+
103
+ // Use a white outline to provide contrast with the dark background.
102
104
  .edit-site-global-styles-variations_item-preview {
103
- box-shadow: 0 0 0 $border-width $gray-900;
105
+ outline-color: rgba($white, 0.05);
104
106
  }
105
107
 
106
- &:focus .edit-site-global-styles-variations_item-preview,
107
- &.is-active .edit-site-global-styles-variations_item-preview {
108
- box-shadow: inset 0 0 0 $border-width $gray-900, 0 0 0 var(--wp-admin-border-width-focus) $white;
108
+ &:not(.is-active):hover .edit-site-global-styles-variations_item-preview {
109
+ outline-color: rgba($white, 0.15);
110
+ }
109
111
 
110
- // Shown in Windows 10 high contrast mode.
111
- outline-width: 3px;
112
+ &.is-active .edit-site-global-styles-variations_item-preview {
113
+ outline-color: $white;
114
+ }
112
115
 
113
- &::after {
114
- box-shadow: inset 0 0 0 1px $gray-900;
115
- }
116
+ &:focus-visible .edit-site-global-styles-variations_item-preview {
117
+ outline-color: var(--wp-admin-theme-color);
116
118
  }
117
119
  }
118
120
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import classnames from 'classnames';
4
+ import clsx from 'clsx';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -19,7 +19,7 @@ export default function SidebarNavigationScreenDetailsPanelRow( {
19
19
  key={ label }
20
20
  spacing={ 5 }
21
21
  alignment="left"
22
- className={ classnames(
22
+ className={ clsx(
23
23
  'edit-site-sidebar-navigation-details-screen-panel__row',
24
24
  className
25
25
  ) }
@@ -103,7 +103,7 @@ function SidebarNavigationScreenGlobalStylesContent() {
103
103
  );
104
104
  }
105
105
 
106
- export default function SidebarNavigationScreenGlobalStyles() {
106
+ export default function SidebarNavigationScreenGlobalStyles( { backPath } ) {
107
107
  const { revisions, isLoading: isLoadingRevisions } =
108
108
  useGlobalStylesRevisions();
109
109
  const { openGeneralSidebar } = useDispatch( editSiteStore );
@@ -179,6 +179,7 @@ export default function SidebarNavigationScreenGlobalStyles() {
179
179
  description={ __(
180
180
  'Choose a different style combination for the theme styles.'
181
181
  ) }
182
+ backPath={ backPath }
182
183
  content={ <SidebarNavigationScreenGlobalStylesContent /> }
183
184
  footer={
184
185
  shouldShowGlobalStylesFooter && (
@@ -22,7 +22,7 @@ const { useLocation } = unlock( routerPrivateApis );
22
22
 
23
23
  export const postType = `wp_navigation`;
24
24
 
25
- export default function SidebarNavigationScreenNavigationMenu() {
25
+ export default function SidebarNavigationScreenNavigationMenu( { backPath } ) {
26
26
  const {
27
27
  params: { postId },
28
28
  } = useLocation();
@@ -67,6 +67,7 @@ export default function SidebarNavigationScreenNavigationMenu() {
67
67
  description={ __(
68
68
  'Navigation Menus are a curated collection of blocks that allow visitors to get around your site.'
69
69
  ) }
70
+ backPath={ backPath }
70
71
  >
71
72
  <Spinner className="edit-site-sidebar-navigation-screen-navigation-menus__loading" />
72
73
  </SidebarNavigationScreenWrapper>
@@ -77,6 +78,7 @@ export default function SidebarNavigationScreenNavigationMenu() {
77
78
  return (
78
79
  <SidebarNavigationScreenWrapper
79
80
  description={ __( 'Navigation Menu missing.' ) }
81
+ backPath={ backPath }
80
82
  />
81
83
  );
82
84
  }
@@ -86,12 +88,14 @@ export default function SidebarNavigationScreenNavigationMenu() {
86
88
  <SidebarNavigationScreenWrapper
87
89
  actions={
88
90
  <ScreenNavigationMoreMenu
91
+ menuId={ navigationMenu?.id }
89
92
  menuTitle={ decodeEntities( menuTitle ) }
90
93
  onDelete={ _handleDelete }
91
94
  onSave={ _handleSave }
92
95
  onDuplicate={ _handleDuplicate }
93
96
  />
94
97
  }
98
+ backPath={ backPath }
95
99
  title={ buildNavigationLabel(
96
100
  navigationMenu?.title,
97
101
  navigationMenu?.id,
@@ -105,6 +109,7 @@ export default function SidebarNavigationScreenNavigationMenu() {
105
109
  return (
106
110
  <SingleNavigationMenu
107
111
  navigationMenu={ navigationMenu }
112
+ backPath={ backPath }
108
113
  handleDelete={ _handleDelete }
109
114
  handleSave={ _handleSave }
110
115
  handleDuplicate={ _handleDuplicate }
@@ -5,24 +5,30 @@ import { DropdownMenu, MenuItem, MenuGroup } from '@wordpress/components';
5
5
  import { moreVertical } from '@wordpress/icons';
6
6
  import { __ } from '@wordpress/i18n';
7
7
  import { useState } from '@wordpress/element';
8
+ import { privateApis as routerPrivateApis } from '@wordpress/router';
8
9
 
9
10
  /**
10
11
  * Internal dependencies
11
12
  */
12
13
  import RenameModal from './rename-modal';
13
14
  import DeleteConfirmDialog from './delete-confirm-dialog';
15
+ import { unlock } from '../../lock-unlock';
16
+
17
+ const { useHistory } = unlock( routerPrivateApis );
14
18
 
15
19
  const POPOVER_PROPS = {
16
20
  position: 'bottom right',
17
21
  };
18
22
 
19
23
  export default function ScreenNavigationMoreMenu( props ) {
20
- const { onDelete, onSave, onDuplicate, menuTitle } = props;
24
+ const { onDelete, onSave, onDuplicate, menuTitle, menuId } = props;
21
25
 
22
26
  const [ renameModalOpen, setRenameModalOpen ] = useState( false );
23
27
  const [ deleteConfirmDialogOpen, setDeleteConfirmDialogOpen ] =
24
28
  useState( false );
25
29
 
30
+ const history = useHistory();
31
+
26
32
  const closeModals = () => {
27
33
  setRenameModalOpen( false );
28
34
  setDeleteConfirmDialogOpen( false );
@@ -50,6 +56,17 @@ export default function ScreenNavigationMoreMenu( props ) {
50
56
  >
51
57
  { __( 'Rename' ) }
52
58
  </MenuItem>
59
+ <MenuItem
60
+ onClick={ () => {
61
+ history.push( {
62
+ postId: menuId,
63
+ postType: 'wp_navigation',
64
+ canvas: 'edit',
65
+ } );
66
+ } }
67
+ >
68
+ { __( 'Edit' ) }
69
+ </MenuItem>
53
70
  <MenuItem
54
71
  onClick={ () => {
55
72
  onDuplicate();
@@ -13,6 +13,7 @@ import buildNavigationLabel from '../sidebar-navigation-screen-navigation-menus/
13
13
 
14
14
  export default function SingleNavigationMenu( {
15
15
  navigationMenu,
16
+ backPath,
16
17
  handleDelete,
17
18
  handleDuplicate,
18
19
  handleSave,
@@ -24,6 +25,7 @@ export default function SingleNavigationMenu( {
24
25
  actions={
25
26
  <>
26
27
  <ScreenNavigationMoreMenu
28
+ menuId={ navigationMenu?.id }
27
29
  menuTitle={ decodeEntities( menuTitle ) }
28
30
  onDelete={ handleDelete }
29
31
  onSave={ handleSave }
@@ -31,6 +33,7 @@ export default function SingleNavigationMenu( {
31
33
  />
32
34
  </>
33
35
  }
36
+ backPath={ backPath }
34
37
  title={ buildNavigationLabel(
35
38
  navigationMenu?.title,
36
39
  navigationMenu?.id,
@@ -46,7 +46,7 @@ function buildMenuLabel( title, id, status ) {
46
46
  // Save a boolean to prevent us creating a fallback more than once per session.
47
47
  let hasCreatedFallback = false;
48
48
 
49
- export default function SidebarNavigationScreenNavigationMenus() {
49
+ export default function SidebarNavigationScreenNavigationMenus( { backPath } ) {
50
50
  const {
51
51
  records: navigationMenus,
52
52
  isResolving: isResolvingNavigationMenus,
@@ -87,7 +87,7 @@ export default function SidebarNavigationScreenNavigationMenus() {
87
87
 
88
88
  if ( isLoading ) {
89
89
  return (
90
- <SidebarNavigationScreenWrapper>
90
+ <SidebarNavigationScreenWrapper backPath={ backPath }>
91
91
  <Spinner className="edit-site-sidebar-navigation-screen-navigation-menus__loading" />
92
92
  </SidebarNavigationScreenWrapper>
93
93
  );
@@ -97,6 +97,7 @@ export default function SidebarNavigationScreenNavigationMenus() {
97
97
  return (
98
98
  <SidebarNavigationScreenWrapper
99
99
  description={ __( 'No Navigation Menus found.' ) }
100
+ backPath={ backPath }
100
101
  />
101
102
  );
102
103
  }
@@ -106,6 +107,7 @@ export default function SidebarNavigationScreenNavigationMenus() {
106
107
  return (
107
108
  <SingleNavigationMenu
108
109
  navigationMenu={ firstNavigationMenu }
110
+ backPath={ backPath }
109
111
  handleDelete={ () => handleDelete( firstNavigationMenu ) }
110
112
  handleDuplicate={ () => handleDuplicate( firstNavigationMenu ) }
111
113
  handleSave={ ( edits ) =>
@@ -116,7 +118,7 @@ export default function SidebarNavigationScreenNavigationMenus() {
116
118
  }
117
119
 
118
120
  return (
119
- <SidebarNavigationScreenWrapper>
121
+ <SidebarNavigationScreenWrapper backPath={ backPath }>
120
122
  <ItemGroup>
121
123
  { navigationMenus?.map( ( { id, title, status }, index ) => (
122
124
  <NavMenuItem
@@ -138,12 +140,14 @@ export function SidebarNavigationScreenWrapper( {
138
140
  actions,
139
141
  title,
140
142
  description,
143
+ backPath,
141
144
  } ) {
142
145
  return (
143
146
  <SidebarNavigationScreen
144
147
  title={ title || __( 'Navigation' ) }
145
148
  actions={ actions }
146
149
  description={ description || __( 'Manage your Navigation Menus.' ) }
150
+ backPath={ backPath }
147
151
  content={ children }
148
152
  />
149
153
  );
@@ -152,7 +156,7 @@ export function SidebarNavigationScreenWrapper( {
152
156
  const NavMenuItem = ( { postId, ...props } ) => {
153
157
  const linkInfo = useLink( {
154
158
  postId,
155
- postType: NAVIGATION_POST_TYPE,
159
+ path: '/navigation',
156
160
  } );
157
161
  return <SidebarNavigationItem { ...linkInfo } { ...props } />;
158
162
  };