@wordpress/edit-site 5.3.1 → 5.3.3

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 (311) hide show
  1. package/CHANGELOG.md +1 -0
  2. package/build/components/add-new-template/new-template-part.js +8 -5
  3. package/build/components/add-new-template/new-template-part.js.map +1 -1
  4. package/build/components/add-new-template/new-template.js +8 -5
  5. package/build/components/add-new-template/new-template.js.map +1 -1
  6. package/build/components/block-editor/editor-canvas.js +3 -3
  7. package/build/components/block-editor/editor-canvas.js.map +1 -1
  8. package/build/components/block-editor/index.js +3 -3
  9. package/build/components/block-editor/index.js.map +1 -1
  10. package/build/components/editor/index.js +26 -38
  11. package/build/components/editor/index.js.map +1 -1
  12. package/build/components/global-styles/block-preview-panel.js +10 -12
  13. package/build/components/global-styles/block-preview-panel.js.map +1 -1
  14. package/build/components/global-styles/border-panel.js +2 -2
  15. package/build/components/global-styles/border-panel.js.map +1 -1
  16. package/build/components/global-styles/color-palette-panel.js +2 -2
  17. package/build/components/global-styles/color-palette-panel.js.map +1 -1
  18. package/build/components/global-styles/context-menu.js +9 -2
  19. package/build/components/global-styles/context-menu.js.map +1 -1
  20. package/build/components/global-styles/custom-css.js +2 -2
  21. package/build/components/global-styles/custom-css.js.map +1 -1
  22. package/build/components/global-styles/dimensions-panel.js +2 -2
  23. package/build/components/global-styles/dimensions-panel.js.map +1 -1
  24. package/build/components/global-styles/global-styles-provider.js +2 -2
  25. package/build/components/global-styles/global-styles-provider.js.map +1 -1
  26. package/build/components/global-styles/gradients-palette-panel.js +2 -2
  27. package/build/components/global-styles/gradients-palette-panel.js.map +1 -1
  28. package/build/components/global-styles/header.js +1 -1
  29. package/build/components/global-styles/header.js.map +1 -1
  30. package/build/components/global-styles/hooks.js +2 -2
  31. package/build/components/global-styles/hooks.js.map +1 -1
  32. package/build/components/global-styles/navigation-button.js +1 -1
  33. package/build/components/global-styles/navigation-button.js.map +1 -1
  34. package/build/components/global-styles/palette.js +2 -2
  35. package/build/components/global-styles/palette.js.map +1 -1
  36. package/build/components/global-styles/preview.js +2 -2
  37. package/build/components/global-styles/preview.js.map +1 -1
  38. package/build/components/global-styles/screen-background-color.js +2 -2
  39. package/build/components/global-styles/screen-background-color.js.map +1 -1
  40. package/build/components/global-styles/screen-border.js +0 -6
  41. package/build/components/global-styles/screen-border.js.map +1 -1
  42. package/build/components/global-styles/screen-button-color.js +2 -2
  43. package/build/components/global-styles/screen-button-color.js.map +1 -1
  44. package/build/components/global-styles/screen-colors.js +2 -2
  45. package/build/components/global-styles/screen-colors.js.map +1 -1
  46. package/build/components/global-styles/screen-css.js +5 -5
  47. package/build/components/global-styles/screen-css.js.map +1 -1
  48. package/build/components/global-styles/screen-effects.js +53 -0
  49. package/build/components/global-styles/screen-effects.js.map +1 -0
  50. package/build/components/global-styles/screen-heading-color.js +2 -2
  51. package/build/components/global-styles/screen-heading-color.js.map +1 -1
  52. package/build/components/global-styles/screen-link-color.js +2 -2
  53. package/build/components/global-styles/screen-link-color.js.map +1 -1
  54. package/build/components/global-styles/screen-root.js +2 -2
  55. package/build/components/global-styles/screen-root.js.map +1 -1
  56. package/build/components/global-styles/screen-style-variations.js +2 -2
  57. package/build/components/global-styles/screen-style-variations.js.map +1 -1
  58. package/build/components/global-styles/screen-text-color.js +2 -2
  59. package/build/components/global-styles/screen-text-color.js.map +1 -1
  60. package/build/components/global-styles/screen-typography.js +2 -2
  61. package/build/components/global-styles/screen-typography.js.map +1 -1
  62. package/build/components/global-styles/shadow-panel.js +3 -3
  63. package/build/components/global-styles/shadow-panel.js.map +1 -1
  64. package/build/components/global-styles/typography-panel.js +2 -2
  65. package/build/components/global-styles/typography-panel.js.map +1 -1
  66. package/build/components/global-styles/typography-preview.js +2 -2
  67. package/build/components/global-styles/typography-preview.js.map +1 -1
  68. package/build/components/global-styles/ui.js +10 -10
  69. package/build/components/global-styles/ui.js.map +1 -1
  70. package/build/components/global-styles-renderer/index.js +2 -2
  71. package/build/components/global-styles-renderer/index.js.map +1 -1
  72. package/build/components/header-edit-mode/index.js +6 -3
  73. package/build/components/header-edit-mode/index.js.map +1 -1
  74. package/build/components/keyboard-shortcut-help-modal/config.js +1 -1
  75. package/build/components/keyboard-shortcut-help-modal/config.js.map +1 -1
  76. package/build/components/layout/index.js +13 -24
  77. package/build/components/layout/index.js.map +1 -1
  78. package/build/components/list/actions/rename-menu-item.js +1 -1
  79. package/build/components/list/actions/rename-menu-item.js.map +1 -1
  80. package/build/components/list/table.js +1 -0
  81. package/build/components/list/table.js.map +1 -1
  82. package/build/components/navigation-inspector/navigation-menu.js +2 -2
  83. package/build/components/navigation-inspector/navigation-menu.js.map +1 -1
  84. package/build/components/save-panel/index.js +78 -0
  85. package/build/components/save-panel/index.js.map +1 -0
  86. package/build/components/sidebar/index.js +42 -5
  87. package/build/components/sidebar/index.js.map +1 -1
  88. package/build/components/sidebar-navigation-screen/index.js +28 -7
  89. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  90. package/build/components/sidebar-navigation-screen-navigation-item/index.js +72 -0
  91. package/build/components/sidebar-navigation-screen-navigation-item/index.js.map +1 -0
  92. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +2 -2
  93. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  94. package/build/components/sidebar-navigation-screen-template/index.js +70 -0
  95. package/build/components/sidebar-navigation-screen-template/index.js.map +1 -0
  96. package/build/components/sidebar-navigation-screen-templates/index.js +32 -82
  97. package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  98. package/build/components/sidebar-navigation-screen-templates-browse/index.js +43 -0
  99. package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -0
  100. package/build/components/site-hub/index.js +14 -49
  101. package/build/components/site-hub/index.js.map +1 -1
  102. package/build/components/style-book/index.js +10 -3
  103. package/build/components/style-book/index.js.map +1 -1
  104. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +55 -20
  105. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  106. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +3 -3
  107. package/build/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -1
  108. package/build/components/sync-state-with-url/{use-sync-sidebar-path-with-url.js → use-sync-path-with-url.js} +12 -12
  109. package/build/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -0
  110. package/build/components/use-edited-entity-record/index.js +6 -2
  111. package/build/components/use-edited-entity-record/index.js.map +1 -1
  112. package/build/hooks/push-changes-to-global-styles/index.js +2 -2
  113. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  114. package/build/{experiments.js → private-apis.js} +3 -3
  115. package/build/private-apis.js.map +1 -0
  116. package/build/store/index.js +3 -3
  117. package/build/store/index.js.map +1 -1
  118. package/build/utils/get-is-list-page.js +5 -6
  119. package/build/utils/get-is-list-page.js.map +1 -1
  120. package/build-module/components/add-new-template/new-template-part.js +7 -4
  121. package/build-module/components/add-new-template/new-template-part.js.map +1 -1
  122. package/build-module/components/add-new-template/new-template.js +7 -4
  123. package/build-module/components/add-new-template/new-template.js.map +1 -1
  124. package/build-module/components/block-editor/editor-canvas.js +1 -1
  125. package/build-module/components/block-editor/editor-canvas.js.map +1 -1
  126. package/build-module/components/block-editor/index.js +3 -3
  127. package/build-module/components/block-editor/index.js.map +1 -1
  128. package/build-module/components/editor/index.js +28 -41
  129. package/build-module/components/editor/index.js.map +1 -1
  130. package/build-module/components/global-styles/block-preview-panel.js +10 -11
  131. package/build-module/components/global-styles/block-preview-panel.js.map +1 -1
  132. package/build-module/components/global-styles/border-panel.js +3 -3
  133. package/build-module/components/global-styles/border-panel.js.map +1 -1
  134. package/build-module/components/global-styles/color-palette-panel.js +3 -3
  135. package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
  136. package/build-module/components/global-styles/context-menu.js +9 -3
  137. package/build-module/components/global-styles/context-menu.js.map +1 -1
  138. package/build-module/components/global-styles/custom-css.js +3 -3
  139. package/build-module/components/global-styles/custom-css.js.map +1 -1
  140. package/build-module/components/global-styles/dimensions-panel.js +3 -3
  141. package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
  142. package/build-module/components/global-styles/global-styles-provider.js +3 -3
  143. package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
  144. package/build-module/components/global-styles/gradients-palette-panel.js +3 -3
  145. package/build-module/components/global-styles/gradients-palette-panel.js.map +1 -1
  146. package/build-module/components/global-styles/header.js +2 -2
  147. package/build-module/components/global-styles/header.js.map +1 -1
  148. package/build-module/components/global-styles/hooks.js +3 -3
  149. package/build-module/components/global-styles/hooks.js.map +1 -1
  150. package/build-module/components/global-styles/navigation-button.js +2 -2
  151. package/build-module/components/global-styles/navigation-button.js.map +1 -1
  152. package/build-module/components/global-styles/palette.js +3 -3
  153. package/build-module/components/global-styles/palette.js.map +1 -1
  154. package/build-module/components/global-styles/preview.js +3 -3
  155. package/build-module/components/global-styles/preview.js.map +1 -1
  156. package/build-module/components/global-styles/screen-background-color.js +3 -3
  157. package/build-module/components/global-styles/screen-background-color.js.map +1 -1
  158. package/build-module/components/global-styles/screen-border.js +0 -5
  159. package/build-module/components/global-styles/screen-border.js.map +1 -1
  160. package/build-module/components/global-styles/screen-button-color.js +3 -3
  161. package/build-module/components/global-styles/screen-button-color.js.map +1 -1
  162. package/build-module/components/global-styles/screen-colors.js +3 -3
  163. package/build-module/components/global-styles/screen-colors.js.map +1 -1
  164. package/build-module/components/global-styles/screen-css.js +5 -5
  165. package/build-module/components/global-styles/screen-css.js.map +1 -1
  166. package/build-module/components/global-styles/screen-effects.js +35 -0
  167. package/build-module/components/global-styles/screen-effects.js.map +1 -0
  168. package/build-module/components/global-styles/screen-heading-color.js +3 -3
  169. package/build-module/components/global-styles/screen-heading-color.js.map +1 -1
  170. package/build-module/components/global-styles/screen-link-color.js +3 -3
  171. package/build-module/components/global-styles/screen-link-color.js.map +1 -1
  172. package/build-module/components/global-styles/screen-root.js +3 -3
  173. package/build-module/components/global-styles/screen-root.js.map +1 -1
  174. package/build-module/components/global-styles/screen-style-variations.js +3 -3
  175. package/build-module/components/global-styles/screen-style-variations.js.map +1 -1
  176. package/build-module/components/global-styles/screen-text-color.js +3 -3
  177. package/build-module/components/global-styles/screen-text-color.js.map +1 -1
  178. package/build-module/components/global-styles/screen-typography.js +3 -3
  179. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  180. package/build-module/components/global-styles/shadow-panel.js +4 -4
  181. package/build-module/components/global-styles/shadow-panel.js.map +1 -1
  182. package/build-module/components/global-styles/typography-panel.js +3 -3
  183. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  184. package/build-module/components/global-styles/typography-preview.js +3 -3
  185. package/build-module/components/global-styles/typography-preview.js.map +1 -1
  186. package/build-module/components/global-styles/ui.js +10 -11
  187. package/build-module/components/global-styles/ui.js.map +1 -1
  188. package/build-module/components/global-styles-renderer/index.js +3 -3
  189. package/build-module/components/global-styles-renderer/index.js.map +1 -1
  190. package/build-module/components/header-edit-mode/index.js +6 -3
  191. package/build-module/components/header-edit-mode/index.js.map +1 -1
  192. package/build-module/components/keyboard-shortcut-help-modal/config.js +1 -1
  193. package/build-module/components/keyboard-shortcut-help-modal/config.js.map +1 -1
  194. package/build-module/components/layout/index.js +12 -24
  195. package/build-module/components/layout/index.js.map +1 -1
  196. package/build-module/components/list/actions/rename-menu-item.js +1 -1
  197. package/build-module/components/list/actions/rename-menu-item.js.map +1 -1
  198. package/build-module/components/list/table.js +1 -0
  199. package/build-module/components/list/table.js.map +1 -1
  200. package/build-module/components/navigation-inspector/navigation-menu.js +3 -3
  201. package/build-module/components/navigation-inspector/navigation-menu.js.map +1 -1
  202. package/build-module/components/save-panel/index.js +64 -0
  203. package/build-module/components/save-panel/index.js.map +1 -0
  204. package/build-module/components/sidebar/index.js +36 -5
  205. package/build-module/components/sidebar/index.js.map +1 -1
  206. package/build-module/components/sidebar-navigation-screen/index.js +27 -9
  207. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  208. package/build-module/components/sidebar-navigation-screen-navigation-item/index.js +55 -0
  209. package/build-module/components/sidebar-navigation-screen-navigation-item/index.js.map +1 -0
  210. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +2 -2
  211. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  212. package/build-module/components/sidebar-navigation-screen-template/index.js +53 -0
  213. package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -0
  214. package/build-module/components/sidebar-navigation-screen-templates/index.js +34 -81
  215. package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  216. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +31 -0
  217. package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -0
  218. package/build-module/components/site-hub/index.js +14 -46
  219. package/build-module/components/site-hub/index.js.map +1 -1
  220. package/build-module/components/style-book/index.js +11 -4
  221. package/build-module/components/style-book/index.js.map +1 -1
  222. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +55 -21
  223. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  224. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +1 -1
  225. package/build-module/components/sync-state-with-url/use-sync-canvas-mode-with-url.js.map +1 -1
  226. package/build-module/components/sync-state-with-url/{use-sync-sidebar-path-with-url.js → use-sync-path-with-url.js} +11 -11
  227. package/build-module/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -0
  228. package/build-module/components/use-edited-entity-record/index.js +6 -2
  229. package/build-module/components/use-edited-entity-record/index.js.map +1 -1
  230. package/build-module/hooks/push-changes-to-global-styles/index.js +3 -3
  231. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  232. package/build-module/{experiments.js → private-apis.js} +2 -2
  233. package/build-module/private-apis.js.map +1 -0
  234. package/build-module/store/index.js +1 -1
  235. package/build-module/store/index.js.map +1 -1
  236. package/build-module/utils/get-is-list-page.js +5 -6
  237. package/build-module/utils/get-is-list-page.js.map +1 -1
  238. package/build-style/style-rtl.css +100 -62
  239. package/build-style/style.css +100 -62
  240. package/package.json +20 -20
  241. package/src/components/add-new-template/new-template-part.js +7 -4
  242. package/src/components/add-new-template/new-template.js +8 -6
  243. package/src/components/block-editor/editor-canvas.js +1 -1
  244. package/src/components/block-editor/index.js +3 -3
  245. package/src/components/editor/index.js +32 -71
  246. package/src/components/editor/style.scss +2 -2
  247. package/src/components/global-styles/block-preview-panel.js +8 -12
  248. package/src/components/global-styles/border-panel.js +3 -3
  249. package/src/components/global-styles/color-palette-panel.js +3 -3
  250. package/src/components/global-styles/context-menu.js +14 -2
  251. package/src/components/global-styles/custom-css.js +3 -3
  252. package/src/components/global-styles/dimensions-panel.js +3 -3
  253. package/src/components/global-styles/global-styles-provider.js +3 -3
  254. package/src/components/global-styles/gradients-palette-panel.js +3 -3
  255. package/src/components/global-styles/header.js +2 -2
  256. package/src/components/global-styles/hooks.js +3 -3
  257. package/src/components/global-styles/navigation-button.js +4 -2
  258. package/src/components/global-styles/palette.js +3 -3
  259. package/src/components/global-styles/preview.js +3 -3
  260. package/src/components/global-styles/screen-background-color.js +3 -3
  261. package/src/components/global-styles/screen-border.js +0 -5
  262. package/src/components/global-styles/screen-button-color.js +3 -3
  263. package/src/components/global-styles/screen-colors.js +3 -3
  264. package/src/components/global-styles/screen-css.js +14 -7
  265. package/src/components/global-styles/screen-effects.js +28 -0
  266. package/src/components/global-styles/screen-heading-color.js +3 -3
  267. package/src/components/global-styles/screen-link-color.js +3 -3
  268. package/src/components/global-styles/screen-root.js +3 -3
  269. package/src/components/global-styles/screen-style-variations.js +3 -3
  270. package/src/components/global-styles/screen-text-color.js +3 -3
  271. package/src/components/global-styles/screen-typography.js +3 -3
  272. package/src/components/global-styles/shadow-panel.js +4 -4
  273. package/src/components/global-styles/style.scss +2 -5
  274. package/src/components/global-styles/typography-panel.js +3 -3
  275. package/src/components/global-styles/typography-preview.js +3 -3
  276. package/src/components/global-styles/ui.js +8 -8
  277. package/src/components/global-styles-renderer/index.js +3 -3
  278. package/src/components/header-edit-mode/index.js +6 -3
  279. package/src/components/keyboard-shortcut-help-modal/config.js +1 -1
  280. package/src/components/layout/index.js +38 -48
  281. package/src/components/layout/style.scss +36 -26
  282. package/src/components/list/actions/rename-menu-item.js +1 -1
  283. package/src/components/list/table.js +4 -0
  284. package/src/components/navigation-inspector/navigation-menu.js +3 -3
  285. package/src/components/save-panel/index.js +68 -0
  286. package/src/components/save-panel/style.scss +5 -0
  287. package/src/components/sidebar/index.js +36 -8
  288. package/src/components/sidebar/style.scss +15 -0
  289. package/src/components/sidebar-navigation-screen/index.js +27 -11
  290. package/src/components/sidebar-navigation-screen/style.scss +4 -6
  291. package/src/components/sidebar-navigation-screen-navigation-item/index.js +52 -0
  292. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +1 -1
  293. package/src/components/sidebar-navigation-screen-template/index.js +52 -0
  294. package/src/components/sidebar-navigation-screen-templates/index.js +49 -83
  295. package/src/components/sidebar-navigation-screen-templates-browse/index.js +31 -0
  296. package/src/components/site-hub/index.js +67 -122
  297. package/src/components/site-hub/style.scss +1 -10
  298. package/src/components/style-book/index.js +11 -7
  299. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +48 -14
  300. package/src/components/sync-state-with-url/use-sync-canvas-mode-with-url.js +1 -1
  301. package/src/components/sync-state-with-url/{use-sync-sidebar-path-with-url.js → use-sync-path-with-url.js} +10 -10
  302. package/src/components/use-edited-entity-record/index.js +6 -2
  303. package/src/hooks/push-changes-to-global-styles/index.js +3 -3
  304. package/src/{experiments.js → private-apis.js} +1 -1
  305. package/src/store/index.js +1 -1
  306. package/src/style.scss +1 -0
  307. package/src/utils/get-is-list-page.js +5 -5
  308. package/build/components/sync-state-with-url/use-sync-sidebar-path-with-url.js.map +0 -1
  309. package/build/experiments.js.map +0 -1
  310. package/build-module/components/sync-state-with-url/use-sync-sidebar-path-with-url.js.map +0 -1
  311. package/build-module/experiments.js.map +0 -1
@@ -30,7 +30,7 @@ export const textFormattingShortcuts = [{
30
30
  keyCombination: {
31
31
  character: '[['
32
32
  },
33
- description: __('Insert a link to a post or page')
33
+ description: __('Insert a link to a post or page.')
34
34
  }, {
35
35
  keyCombination: {
36
36
  modifier: 'primary',
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/keyboard-shortcut-help-modal/config.js"],"names":["__","textFormattingShortcuts","keyCombination","modifier","character","description"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AAEA,OAAO,MAAMC,uBAAuB,GAAG,CACtC;AACCC,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,8BAAF;AAFhB,CADsC,EAKtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,gCAAF;AAFhB,CALsC,EAStC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,wCAAF;AAFhB,CATsC,EAatC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,cAAZ;AAA4BC,IAAAA,SAAS,EAAE;AAAvC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,gBAAF;AAFhB,CAbsC,EAiBtC;AACCE,EAAAA,cAAc,EAAE;AAAEE,IAAAA,SAAS,EAAE;AAAb,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,iCAAF;AAFhB,CAjBsC,EAqBtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,8BAAF;AAFhB,CArBsC,EAyBtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,QAAZ;AAAsBC,IAAAA,SAAS,EAAE;AAAjC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,kCAAF;AAFhB,CAzBsC,EA6BtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,QAAZ;AAAsBC,IAAAA,SAAS,EAAE;AAAjC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,qCAAF;AAFhB,CA7BsC,CAAhC","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nexport const textFormattingShortcuts = [\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'b' },\n\t\tdescription: __( 'Make the selected text bold.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'i' },\n\t\tdescription: __( 'Make the selected text italic.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'k' },\n\t\tdescription: __( 'Convert the selected text into a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primaryShift', character: 'k' },\n\t\tdescription: __( 'Remove a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { character: '[[' },\n\t\tdescription: __( 'Insert a link to a post or page' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'u' },\n\t\tdescription: __( 'Underline the selected text.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'access', character: 'd' },\n\t\tdescription: __( 'Strikethrough the selected text.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'access', character: 'x' },\n\t\tdescription: __( 'Make the selected text inline code.' ),\n\t},\n];\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/keyboard-shortcut-help-modal/config.js"],"names":["__","textFormattingShortcuts","keyCombination","modifier","character","description"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AAEA,OAAO,MAAMC,uBAAuB,GAAG,CACtC;AACCC,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,8BAAF;AAFhB,CADsC,EAKtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,gCAAF;AAFhB,CALsC,EAStC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,wCAAF;AAFhB,CATsC,EAatC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,cAAZ;AAA4BC,IAAAA,SAAS,EAAE;AAAvC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,gBAAF;AAFhB,CAbsC,EAiBtC;AACCE,EAAAA,cAAc,EAAE;AAAEE,IAAAA,SAAS,EAAE;AAAb,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,kCAAF;AAFhB,CAjBsC,EAqBtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,8BAAF;AAFhB,CArBsC,EAyBtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,QAAZ;AAAsBC,IAAAA,SAAS,EAAE;AAAjC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,kCAAF;AAFhB,CAzBsC,EA6BtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,QAAZ;AAAsBC,IAAAA,SAAS,EAAE;AAAjC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,qCAAF;AAFhB,CA7BsC,CAAhC","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nexport const textFormattingShortcuts = [\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'b' },\n\t\tdescription: __( 'Make the selected text bold.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'i' },\n\t\tdescription: __( 'Make the selected text italic.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'k' },\n\t\tdescription: __( 'Convert the selected text into a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primaryShift', character: 'k' },\n\t\tdescription: __( 'Remove a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { character: '[[' },\n\t\tdescription: __( 'Insert a link to a post or page.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'u' },\n\t\tdescription: __( 'Underline the selected text.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'access', character: 'd' },\n\t\tdescription: __( 'Strikethrough the selected text.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'access', character: 'x' },\n\t\tdescription: __( 'Make the selected text inline code.' ),\n\t},\n];\n"]}
@@ -13,7 +13,7 @@ import { useSelect } from '@wordpress/data';
13
13
  import { __unstableMotion as motion, __unstableAnimatePresence as AnimatePresence, __unstableUseNavigateRegions as useNavigateRegions, ResizableBox } from '@wordpress/components';
14
14
  import { useReducedMotion, useViewportMatch, useResizeObserver } from '@wordpress/compose';
15
15
  import { __ } from '@wordpress/i18n';
16
- import { useState, useEffect, useRef } from '@wordpress/element';
16
+ import { useState, useRef } from '@wordpress/element';
17
17
  import { NavigableRegion } from '@wordpress/interface';
18
18
  import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
19
19
  /**
@@ -32,7 +32,8 @@ import useInitEditedEntityFromURL from '../sync-state-with-url/use-init-edited-e
32
32
  import SiteHub from '../site-hub';
33
33
  import ResizeHandle from '../block-editor/resize-handle';
34
34
  import useSyncCanvasModeWithURL from '../sync-state-with-url/use-sync-canvas-mode-with-url';
35
- import { unlock } from '../../experiments';
35
+ import { unlock } from '../../private-apis';
36
+ import SavePanel from '../save-panel';
36
37
  const ANIMATION_DURATION = 0.5;
37
38
  const emptyResizeHandleStyles = {
38
39
  position: undefined,
@@ -78,13 +79,11 @@ export default function Layout() {
78
79
  });
79
80
  const disableMotion = useReducedMotion();
80
81
  const isMobileViewport = useViewportMatch('medium', '<');
81
- const [isMobileCanvasVisible, setIsMobileCanvasVisible] = useState(false);
82
82
  const canvasPadding = isMobileViewport ? 0 : 24;
83
- const showSidebar = isMobileViewport && !isMobileCanvasVisible || !isMobileViewport && (canvasMode === 'view' || !isEditorPage);
84
- const showCanvas = isMobileViewport && isMobileCanvasVisible || !isMobileViewport;
85
- const showFrame = !isEditorPage || canvasMode === 'view' && !isMobileViewport;
86
- const isFullCanvas = isEditorPage && canvasMode === 'edit' && !isMobileViewport || isMobileCanvasVisible; // Ideally this effect could be removed if we move the "isMobileCanvasVisible" into the store.
87
-
83
+ const showSidebar = isMobileViewport && !isListPage || !isMobileViewport && (canvasMode === 'view' || !isEditorPage);
84
+ const showCanvas = isMobileViewport && isEditorPage && canvasMode === 'edit' || !isMobileViewport || !isEditorPage;
85
+ const showFrame = !isEditorPage && !isMobileViewport || !isMobileViewport && isEditorPage && canvasMode === 'view';
86
+ const isFullCanvas = isMobileViewport && isListPage || isEditorPage && canvasMode === 'edit';
88
87
  const [canvasResizer, canvasSize] = useResizeObserver();
89
88
  const [fullResizer, fullSize] = useResizeObserver();
90
89
  const [forcedWidth, setForcedWidth] = useState(null);
@@ -95,20 +94,11 @@ export default function Layout() {
95
94
 
96
95
  if (showFrame && !isResizing) {
97
96
  canvasWidth = canvasSize.width - canvasPadding;
98
- }
99
-
100
- useEffect(() => {
101
- if (canvasMode === 'view' && isMobileViewport) {
102
- setIsMobileCanvasVisible(false);
103
- }
104
-
105
- if (canvasMode === 'edit' && isMobileViewport) {
106
- setIsMobileCanvasVisible(true);
107
- }
108
- }, [canvasMode, isMobileViewport]); // Synchronizing the URL with the store value of canvasMode happens in an effect
97
+ } // Synchronizing the URL with the store value of canvasMode happens in an effect
109
98
  // This condition ensures the component is only rendered after the synchronization happens
110
99
  // which prevents any animations due to potential canvasMode value change.
111
100
 
101
+
112
102
  if (canvasMode === 'init') {
113
103
  return null;
114
104
  }
@@ -124,12 +114,10 @@ export default function Layout() {
124
114
  className: "edit-site-layout__hub",
125
115
  style: {
126
116
  width: isResizingEnabled && forcedWidth ? forcedWidth - 48 : undefined
127
- },
128
- isMobileCanvasVisible: isMobileCanvasVisible,
129
- setIsMobileCanvasVisible: setIsMobileCanvasVisible
117
+ }
130
118
  }), createElement(AnimatePresence, {
131
119
  initial: false
132
- }, isEditorPage && (canvasMode === 'edit' || isMobileCanvasVisible) && createElement(NavigableRegion, {
120
+ }, isEditorPage && canvasMode === 'edit' && createElement(NavigableRegion, {
133
121
  className: "edit-site-layout__header",
134
122
  ariaLabel: __('Editor top bar'),
135
123
  as: motion.div,
@@ -205,7 +193,7 @@ export default function Layout() {
205
193
  maxWidth: isResizingEnabled && fullSize ? fullSize.width - 360 : undefined
206
194
  }, createElement(NavigableRegion, {
207
195
  ariaLabel: __('Navigation sidebar')
208
- }, createElement(Sidebar, null)))), showCanvas && createElement("div", {
196
+ }, createElement(Sidebar, null)))), createElement(SavePanel, null), showCanvas && createElement("div", {
209
197
  className: classnames('edit-site-layout__canvas-container', {
210
198
  'is-resizing': isResizing
211
199
  }),
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/layout/index.js"],"names":["classnames","useSelect","__unstableMotion","motion","__unstableAnimatePresence","AnimatePresence","__unstableUseNavigateRegions","useNavigateRegions","ResizableBox","useReducedMotion","useViewportMatch","useResizeObserver","__","useState","useEffect","useRef","NavigableRegion","store","keyboardShortcutsStore","Sidebar","Editor","ListPage","ErrorBoundary","editSiteStore","useLocation","getIsListPage","Header","useInitEditedEntityFromURL","SiteHub","ResizeHandle","useSyncCanvasModeWithURL","unlock","ANIMATION_DURATION","emptyResizeHandleStyles","position","undefined","userSelect","cursor","width","height","top","right","bottom","left","Layout","hubRef","params","isListPage","isEditorPage","canvasMode","previousShortcut","nextShortcut","select","getAllShortcutKeyCombinations","getCanvasMode","navigateRegionsProps","previous","next","disableMotion","isMobileViewport","isMobileCanvasVisible","setIsMobileCanvasVisible","canvasPadding","showSidebar","showCanvas","showFrame","isFullCanvas","canvasResizer","canvasSize","fullResizer","fullSize","forcedWidth","setForcedWidth","isResizing","setIsResizing","isResizingEnabled","defaultSidebarWidth","canvasWidth","ref","className","div","y","type","duration","ease","opacity","event","direction","elt","clientWidth","current","style","delta","paddingTop","paddingBottom"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport {\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n\t__unstableUseNavigateRegions as useNavigateRegions,\n\tResizableBox,\n} from '@wordpress/components';\nimport {\n\tuseReducedMotion,\n\tuseViewportMatch,\n\tuseResizeObserver,\n} from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport { NavigableRegion } from '@wordpress/interface';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n\n/**\n * Internal dependencies\n */\nimport Sidebar from '../sidebar';\nimport Editor from '../editor';\nimport ListPage from '../list';\nimport ErrorBoundary from '../error-boundary';\nimport { store as editSiteStore } from '../../store';\nimport { useLocation } from '../routes';\nimport getIsListPage from '../../utils/get-is-list-page';\nimport Header from '../header-edit-mode';\nimport useInitEditedEntityFromURL from '../sync-state-with-url/use-init-edited-entity-from-url';\nimport SiteHub from '../site-hub';\nimport ResizeHandle from '../block-editor/resize-handle';\nimport useSyncCanvasModeWithURL from '../sync-state-with-url/use-sync-canvas-mode-with-url';\nimport { unlock } from '../../experiments';\n\nconst ANIMATION_DURATION = 0.5;\nconst emptyResizeHandleStyles = {\n\tposition: undefined,\n\tuserSelect: undefined,\n\tcursor: undefined,\n\twidth: undefined,\n\theight: undefined,\n\ttop: undefined,\n\tright: undefined,\n\tbottom: undefined,\n\tleft: undefined,\n};\n\nexport default function Layout() {\n\t// This ensures the edited entity id and type are initialized properly.\n\tuseInitEditedEntityFromURL();\n\tuseSyncCanvasModeWithURL();\n\n\tconst hubRef = useRef();\n\tconst { params } = useLocation();\n\tconst isListPage = getIsListPage( params );\n\tconst isEditorPage = ! isListPage;\n\tconst { canvasMode, previousShortcut, nextShortcut } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getAllShortcutKeyCombinations } = select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t);\n\t\t\tconst { getCanvasMode } = unlock( select( editSiteStore ) );\n\t\t\treturn {\n\t\t\t\tcanvasMode: getCanvasMode(),\n\t\t\t\tpreviousShortcut: getAllShortcutKeyCombinations(\n\t\t\t\t\t'core/edit-site/previous-region'\n\t\t\t\t),\n\t\t\t\tnextShortcut: getAllShortcutKeyCombinations(\n\t\t\t\t\t'core/edit-site/next-region'\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst navigateRegionsProps = useNavigateRegions( {\n\t\tprevious: previousShortcut,\n\t\tnext: nextShortcut,\n\t} );\n\tconst disableMotion = useReducedMotion();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst [ isMobileCanvasVisible, setIsMobileCanvasVisible ] =\n\t\tuseState( false );\n\tconst canvasPadding = isMobileViewport ? 0 : 24;\n\tconst showSidebar =\n\t\t( isMobileViewport && ! isMobileCanvasVisible ) ||\n\t\t( ! isMobileViewport && ( canvasMode === 'view' || ! isEditorPage ) );\n\tconst showCanvas =\n\t\t( isMobileViewport && isMobileCanvasVisible ) || ! isMobileViewport;\n\tconst showFrame =\n\t\t! isEditorPage || ( canvasMode === 'view' && ! isMobileViewport );\n\n\tconst isFullCanvas =\n\t\t( isEditorPage && canvasMode === 'edit' && ! isMobileViewport ) ||\n\t\tisMobileCanvasVisible;\n\t// Ideally this effect could be removed if we move the \"isMobileCanvasVisible\" into the store.\n\tconst [ canvasResizer, canvasSize ] = useResizeObserver();\n\tconst [ fullResizer, fullSize ] = useResizeObserver();\n\tconst [ forcedWidth, setForcedWidth ] = useState( null );\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\tconst isResizingEnabled = ! isMobileViewport && canvasMode === 'view';\n\tconst defaultSidebarWidth = isMobileViewport ? '100vw' : 360;\n\tlet canvasWidth = isResizing ? '100%' : fullSize.width;\n\tif ( showFrame && ! isResizing ) {\n\t\tcanvasWidth = canvasSize.width - canvasPadding;\n\t}\n\tuseEffect( () => {\n\t\tif ( canvasMode === 'view' && isMobileViewport ) {\n\t\t\tsetIsMobileCanvasVisible( false );\n\t\t}\n\n\t\tif ( canvasMode === 'edit' && isMobileViewport ) {\n\t\t\tsetIsMobileCanvasVisible( true );\n\t\t}\n\t}, [ canvasMode, isMobileViewport ] );\n\n\t// Synchronizing the URL with the store value of canvasMode happens in an effect\n\t// This condition ensures the component is only rendered after the synchronization happens\n\t// which prevents any animations due to potential canvasMode value change.\n\tif ( canvasMode === 'init' ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ fullResizer }\n\t\t\t<div\n\t\t\t\t{ ...navigateRegionsProps }\n\t\t\t\tref={ navigateRegionsProps.ref }\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\t'edit-site-layout',\n\t\t\t\t\tnavigateRegionsProps.className,\n\t\t\t\t\t{\n\t\t\t\t\t\t'is-full-canvas': isFullCanvas,\n\t\t\t\t\t\t'is-edit-mode': canvasMode === 'edit',\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t<SiteHub\n\t\t\t\t\tref={ hubRef }\n\t\t\t\t\tclassName=\"edit-site-layout__hub\"\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\tisResizingEnabled && forcedWidth\n\t\t\t\t\t\t\t\t? forcedWidth - 48\n\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t} }\n\t\t\t\t\tisMobileCanvasVisible={ isMobileCanvasVisible }\n\t\t\t\t\tsetIsMobileCanvasVisible={ setIsMobileCanvasVisible }\n\t\t\t\t/>\n\n\t\t\t\t<AnimatePresence initial={ false }>\n\t\t\t\t\t{ isEditorPage &&\n\t\t\t\t\t\t( canvasMode === 'edit' || isMobileCanvasVisible ) && (\n\t\t\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\t\t\tclassName=\"edit-site-layout__header\"\n\t\t\t\t\t\t\t\tariaLabel={ __( 'Editor top bar' ) }\n\t\t\t\t\t\t\t\tas={ motion.div }\n\t\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\t\ty: 0,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tinitial={ {\n\t\t\t\t\t\t\t\t\ty: '-100%',\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\texit={ {\n\t\t\t\t\t\t\t\t\ty: '-100%',\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: 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{ canvasMode === 'edit' && <Header /> }\n\t\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t\t) }\n\t\t\t\t</AnimatePresence>\n\n\t\t\t\t<div className=\"edit-site-layout__content\">\n\t\t\t\t\t<AnimatePresence initial={ false }>\n\t\t\t\t\t\t{ showSidebar && (\n\t\t\t\t\t\t\t<ResizableBox\n\t\t\t\t\t\t\t\tas={ motion.div }\n\t\t\t\t\t\t\t\tinitial={ {\n\t\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\texit={ {\n\t\t\t\t\t\t\t\t\topacity: 0,\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:\n\t\t\t\t\t\t\t\t\t\tdisableMotion || isResizing\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: 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\tsize={ {\n\t\t\t\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\tisResizingEnabled && forcedWidth\n\t\t\t\t\t\t\t\t\t\t\t? forcedWidth\n\t\t\t\t\t\t\t\t\t\t\t: defaultSidebarWidth,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tclassName=\"edit-site-layout__sidebar\"\n\t\t\t\t\t\t\t\tenable={ {\n\t\t\t\t\t\t\t\t\tright: isResizingEnabled,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tonResizeStop={ ( event, direction, elt ) => {\n\t\t\t\t\t\t\t\t\tsetForcedWidth( elt.clientWidth );\n\t\t\t\t\t\t\t\t\tsetIsResizing( false );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\t\t\t\tsetIsResizing( true );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tonResize={ ( event, direction, elt ) => {\n\t\t\t\t\t\t\t\t\t// This is a performance optimization\n\t\t\t\t\t\t\t\t\t// We set the width imperatively to avoid re-rendering\n\t\t\t\t\t\t\t\t\t// the whole component while resizing.\n\t\t\t\t\t\t\t\t\thubRef.current.style.width =\n\t\t\t\t\t\t\t\t\t\telt.clientWidth - 48 + 'px';\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\thandleComponent={ {\n\t\t\t\t\t\t\t\t\tright: (\n\t\t\t\t\t\t\t\t\t\t<ResizeHandle\n\t\t\t\t\t\t\t\t\t\t\tdirection=\"right\"\n\t\t\t\t\t\t\t\t\t\t\tvariation=\"separator\"\n\t\t\t\t\t\t\t\t\t\t\tresizeWidthBy={ ( delta ) => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetForcedWidth(\n\t\t\t\t\t\t\t\t\t\t\t\t\t( forcedWidth ??\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tdefaultSidebarWidth ) +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tdelta\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} }\n\t\t\t\t\t\t\t\thandleClasses={ undefined }\n\t\t\t\t\t\t\t\thandleStyles={ {\n\t\t\t\t\t\t\t\t\tright: emptyResizeHandleStyles,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tminWidth={ isResizingEnabled ? 320 : undefined }\n\t\t\t\t\t\t\t\tmaxWidth={\n\t\t\t\t\t\t\t\t\tisResizingEnabled && fullSize\n\t\t\t\t\t\t\t\t\t\t? fullSize.width - 360\n\t\t\t\t\t\t\t\t\t\t: undefined\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<NavigableRegion\n\t\t\t\t\t\t\t\t\tariaLabel={ __( 'Navigation sidebar' ) }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Sidebar />\n\t\t\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t\t\t</ResizableBox>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</AnimatePresence>\n\n\t\t\t\t\t{ showCanvas && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'edit-site-layout__canvas-container',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'is-resizing': isResizing,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tpaddingTop: showFrame ? canvasPadding : 0,\n\t\t\t\t\t\t\t\tpaddingBottom: showFrame ? canvasPadding : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ canvasResizer }\n\t\t\t\t\t\t\t{ !! canvasSize.width && (\n\t\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\t\tinitial={ false }\n\t\t\t\t\t\t\t\t\tlayout=\"position\"\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-layout__canvas\"\n\t\t\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\t\t\tduration:\n\t\t\t\t\t\t\t\t\t\t\tdisableMotion || isResizing\n\t\t\t\t\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t\t\t\t\t: ANIMATION_DURATION,\n\t\t\t\t\t\t\t\t\t\tease: 'easeOut',\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<motion.div\n\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t\t\t\t\t\t\ttop: 0,\n\t\t\t\t\t\t\t\t\t\t\tleft: 0,\n\t\t\t\t\t\t\t\t\t\t\tbottom: 0,\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tinitial={ false }\n\t\t\t\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\t\t\t\twidth: canvasWidth,\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\t\t\t\tduration:\n\t\t\t\t\t\t\t\t\t\t\t\tdisableMotion || isResizing\n\t\t\t\t\t\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t\t\t\t\t\t: ANIMATION_DURATION,\n\t\t\t\t\t\t\t\t\t\t\tease: 'easeOut',\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\t\t<ErrorBoundary>\n\t\t\t\t\t\t\t\t\t\t\t{ isEditorPage && <Editor /> }\n\t\t\t\t\t\t\t\t\t\t\t{ isListPage && <ListPage /> }\n\t\t\t\t\t\t\t\t\t\t</ErrorBoundary>\n\t\t\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/layout/index.js"],"names":["classnames","useSelect","__unstableMotion","motion","__unstableAnimatePresence","AnimatePresence","__unstableUseNavigateRegions","useNavigateRegions","ResizableBox","useReducedMotion","useViewportMatch","useResizeObserver","__","useState","useRef","NavigableRegion","store","keyboardShortcutsStore","Sidebar","Editor","ListPage","ErrorBoundary","editSiteStore","useLocation","getIsListPage","Header","useInitEditedEntityFromURL","SiteHub","ResizeHandle","useSyncCanvasModeWithURL","unlock","SavePanel","ANIMATION_DURATION","emptyResizeHandleStyles","position","undefined","userSelect","cursor","width","height","top","right","bottom","left","Layout","hubRef","params","isListPage","isEditorPage","canvasMode","previousShortcut","nextShortcut","select","getAllShortcutKeyCombinations","getCanvasMode","navigateRegionsProps","previous","next","disableMotion","isMobileViewport","canvasPadding","showSidebar","showCanvas","showFrame","isFullCanvas","canvasResizer","canvasSize","fullResizer","fullSize","forcedWidth","setForcedWidth","isResizing","setIsResizing","isResizingEnabled","defaultSidebarWidth","canvasWidth","ref","className","div","y","type","duration","ease","opacity","event","direction","elt","clientWidth","current","style","delta","paddingTop","paddingBottom"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SACCC,gBAAgB,IAAIC,MADrB,EAECC,yBAAyB,IAAIC,eAF9B,EAGCC,4BAA4B,IAAIC,kBAHjC,EAICC,YAJD,QAKO,uBALP;AAMA,SACCC,gBADD,EAECC,gBAFD,EAGCC,iBAHD,QAIO,oBAJP;AAKA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,QAAT,EAAmBC,MAAnB,QAAiC,oBAAjC;AACA,SAASC,eAAT,QAAgC,sBAAhC;AACA,SAASC,KAAK,IAAIC,sBAAlB,QAAgD,+BAAhD;AAEA;AACA;AACA;;AACA,OAAOC,OAAP,MAAoB,YAApB;AACA,OAAOC,MAAP,MAAmB,WAAnB;AACA,OAAOC,QAAP,MAAqB,SAArB;AACA,OAAOC,aAAP,MAA0B,mBAA1B;AACA,SAASL,KAAK,IAAIM,aAAlB,QAAuC,aAAvC;AACA,SAASC,WAAT,QAA4B,WAA5B;AACA,OAAOC,aAAP,MAA0B,8BAA1B;AACA,OAAOC,MAAP,MAAmB,qBAAnB;AACA,OAAOC,0BAAP,MAAuC,wDAAvC;AACA,OAAOC,OAAP,MAAoB,aAApB;AACA,OAAOC,YAAP,MAAyB,+BAAzB;AACA,OAAOC,wBAAP,MAAqC,sDAArC;AACA,SAASC,MAAT,QAAuB,oBAAvB;AACA,OAAOC,SAAP,MAAsB,eAAtB;AAEA,MAAMC,kBAAkB,GAAG,GAA3B;AACA,MAAMC,uBAAuB,GAAG;AAC/BC,EAAAA,QAAQ,EAAEC,SADqB;AAE/BC,EAAAA,UAAU,EAAED,SAFmB;AAG/BE,EAAAA,MAAM,EAAEF,SAHuB;AAI/BG,EAAAA,KAAK,EAAEH,SAJwB;AAK/BI,EAAAA,MAAM,EAAEJ,SALuB;AAM/BK,EAAAA,GAAG,EAAEL,SAN0B;AAO/BM,EAAAA,KAAK,EAAEN,SAPwB;AAQ/BO,EAAAA,MAAM,EAAEP,SARuB;AAS/BQ,EAAAA,IAAI,EAAER;AATyB,CAAhC;AAYA,eAAe,SAASS,MAAT,GAAkB;AAChC;AACAlB,EAAAA,0BAA0B;AAC1BG,EAAAA,wBAAwB;AAExB,QAAMgB,MAAM,GAAG/B,MAAM,EAArB;AACA,QAAM;AAAEgC,IAAAA;AAAF,MAAavB,WAAW,EAA9B;AACA,QAAMwB,UAAU,GAAGvB,aAAa,CAAEsB,MAAF,CAAhC;AACA,QAAME,YAAY,GAAG,CAAED,UAAvB;AACA,QAAM;AAAEE,IAAAA,UAAF;AAAcC,IAAAA,gBAAd;AAAgCC,IAAAA;AAAhC,MAAiDlD,SAAS,CAC7DmD,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA;AAAF,QAAoCD,MAAM,CAC/CnC,sBAD+C,CAAhD;AAGA,UAAM;AAAEqC,MAAAA;AAAF,QAAoBxB,MAAM,CAAEsB,MAAM,CAAE9B,aAAF,CAAR,CAAhC;AACA,WAAO;AACN2B,MAAAA,UAAU,EAAEK,aAAa,EADnB;AAENJ,MAAAA,gBAAgB,EAAEG,6BAA6B,CAC9C,gCAD8C,CAFzC;AAKNF,MAAAA,YAAY,EAAEE,6BAA6B,CAC1C,4BAD0C;AALrC,KAAP;AASA,GAf8D,EAgB/D,EAhB+D,CAAhE;AAkBA,QAAME,oBAAoB,GAAGhD,kBAAkB,CAAE;AAChDiD,IAAAA,QAAQ,EAAEN,gBADsC;AAEhDO,IAAAA,IAAI,EAAEN;AAF0C,GAAF,CAA/C;AAIA,QAAMO,aAAa,GAAGjD,gBAAgB,EAAtC;AACA,QAAMkD,gBAAgB,GAAGjD,gBAAgB,CAAE,QAAF,EAAY,GAAZ,CAAzC;AACA,QAAMkD,aAAa,GAAGD,gBAAgB,GAAG,CAAH,GAAO,EAA7C;AACA,QAAME,WAAW,GACdF,gBAAgB,IAAI,CAAEZ,UAAxB,IACE,CAAEY,gBAAF,KAAwBV,UAAU,KAAK,MAAf,IAAyB,CAAED,YAAnD,CAFH;AAGA,QAAMc,UAAU,GACbH,gBAAgB,IAAIX,YAApB,IAAoCC,UAAU,KAAK,MAArD,IACA,CAAEU,gBADF,IAEA,CAAEX,YAHH;AAIA,QAAMe,SAAS,GACZ,CAAEf,YAAF,IAAkB,CAAEW,gBAAtB,IACE,CAAEA,gBAAF,IAAsBX,YAAtB,IAAsCC,UAAU,KAAK,MAFxD;AAGA,QAAMe,YAAY,GACfL,gBAAgB,IAAIZ,UAAtB,IACEC,YAAY,IAAIC,UAAU,KAAK,MAFlC;AAGA,QAAM,CAAEgB,aAAF,EAAiBC,UAAjB,IAAgCvD,iBAAiB,EAAvD;AACA,QAAM,CAAEwD,WAAF,EAAeC,QAAf,IAA4BzD,iBAAiB,EAAnD;AACA,QAAM,CAAE0D,WAAF,EAAeC,cAAf,IAAkCzD,QAAQ,CAAE,IAAF,CAAhD;AACA,QAAM,CAAE0D,UAAF,EAAcC,aAAd,IAAgC3D,QAAQ,CAAE,KAAF,CAA9C;AACA,QAAM4D,iBAAiB,GAAG,CAAEd,gBAAF,IAAsBV,UAAU,KAAK,MAA/D;AACA,QAAMyB,mBAAmB,GAAGf,gBAAgB,GAAG,OAAH,GAAa,GAAzD;AACA,MAAIgB,WAAW,GAAGJ,UAAU,GAAG,MAAH,GAAYH,QAAQ,CAAC9B,KAAjD;;AACA,MAAKyB,SAAS,IAAI,CAAEQ,UAApB,EAAiC;AAChCI,IAAAA,WAAW,GAAGT,UAAU,CAAC5B,KAAX,GAAmBsB,aAAjC;AACA,GAxD+B,CA0DhC;AACA;AACA;;;AACA,MAAKX,UAAU,KAAK,MAApB,EAA6B;AAC5B,WAAO,IAAP;AACA;;AAED,SACC,8BACGkB,WADH,EAEC,kCACMZ,oBADN;AAEC,IAAA,GAAG,EAAGA,oBAAoB,CAACqB,GAF5B;AAGC,IAAA,SAAS,EAAG5E,UAAU,CACrB,kBADqB,EAErBuD,oBAAoB,CAACsB,SAFA,EAGrB;AACC,wBAAkBb,YADnB;AAEC,sBAAgBf,UAAU,KAAK;AAFhC,KAHqB;AAHvB,MAYC,cAAC,OAAD;AACC,IAAA,GAAG,EAAGJ,MADP;AAEC,IAAA,SAAS,EAAC,uBAFX;AAGC,IAAA,KAAK,EAAG;AACPP,MAAAA,KAAK,EACJmC,iBAAiB,IAAIJ,WAArB,GACGA,WAAW,GAAG,EADjB,GAEGlC;AAJG;AAHT,IAZD,EAuBC,cAAC,eAAD;AAAiB,IAAA,OAAO,EAAG;AAA3B,KACGa,YAAY,IAAIC,UAAU,KAAK,MAA/B,IACD,cAAC,eAAD;AACC,IAAA,SAAS,EAAC,0BADX;AAEC,IAAA,SAAS,EAAGrC,EAAE,CAAE,gBAAF,CAFf;AAGC,IAAA,EAAE,EAAGT,MAAM,CAAC2E,GAHb;AAIC,IAAA,OAAO,EAAG;AACTC,MAAAA,CAAC,EAAE;AADM,KAJX;AAOC,IAAA,OAAO,EAAG;AACTA,MAAAA,CAAC,EAAE;AADM,KAPX;AAUC,IAAA,IAAI,EAAG;AACNA,MAAAA,CAAC,EAAE;AADG,KAVR;AAaC,IAAA,UAAU,EAAG;AACZC,MAAAA,IAAI,EAAE,OADM;AAEZC,MAAAA,QAAQ,EAAEvB,aAAa,GACpB,CADoB,GAEpB1B,kBAJS;AAKZkD,MAAAA,IAAI,EAAE;AALM;AAbd,KAqBGjC,UAAU,KAAK,MAAf,IAAyB,cAAC,MAAD,OArB5B,CAFF,CAvBD,EAmDC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,cAAC,eAAD;AAAiB,IAAA,OAAO,EAAG;AAA3B,KACGY,WAAW,IACZ,cAAC,YAAD;AACC,IAAA,EAAE,EAAG1D,MAAM,CAAC2E,GADb;AAEC,IAAA,OAAO,EAAG;AACTK,MAAAA,OAAO,EAAE;AADA,KAFX;AAKC,IAAA,OAAO,EAAG;AACTA,MAAAA,OAAO,EAAE;AADA,KALX;AAQC,IAAA,IAAI,EAAG;AACNA,MAAAA,OAAO,EAAE;AADH,KARR;AAWC,IAAA,UAAU,EAAG;AACZH,MAAAA,IAAI,EAAE,OADM;AAEZC,MAAAA,QAAQ,EACPvB,aAAa,IAAIa,UAAjB,GACG,CADH,GAEGvC,kBALQ;AAMZkD,MAAAA,IAAI,EAAE;AANM,KAXd;AAmBC,IAAA,IAAI,EAAG;AACN3C,MAAAA,MAAM,EAAE,MADF;AAEND,MAAAA,KAAK,EACJmC,iBAAiB,IAAIJ,WAArB,GACGA,WADH,GAEGK;AALE,KAnBR;AA0BC,IAAA,SAAS,EAAC,2BA1BX;AA2BC,IAAA,MAAM,EAAG;AACRjC,MAAAA,KAAK,EAAEgC;AADC,KA3BV;AA8BC,IAAA,YAAY,EAAG,CAAEW,KAAF,EAASC,SAAT,EAAoBC,GAApB,KAA6B;AAC3ChB,MAAAA,cAAc,CAAEgB,GAAG,CAACC,WAAN,CAAd;AACAf,MAAAA,aAAa,CAAE,KAAF,CAAb;AACA,KAjCF;AAkCC,IAAA,aAAa,EAAG,MAAM;AACrBA,MAAAA,aAAa,CAAE,IAAF,CAAb;AACA,KApCF;AAqCC,IAAA,QAAQ,EAAG,CAAEY,KAAF,EAASC,SAAT,EAAoBC,GAApB,KAA6B;AACvC;AACA;AACA;AACAzC,MAAAA,MAAM,CAAC2C,OAAP,CAAeC,KAAf,CAAqBnD,KAArB,GACCgD,GAAG,CAACC,WAAJ,GAAkB,EAAlB,GAAuB,IADxB;AAEA,KA3CF;AA4CC,IAAA,eAAe,EAAG;AACjB9C,MAAAA,KAAK,EACJ,cAAC,YAAD;AACC,QAAA,SAAS,EAAC,OADX;AAEC,QAAA,SAAS,EAAC,WAFX;AAGC,QAAA,aAAa,EAAKiD,KAAF,IAAa;AAC5BpB,UAAAA,cAAc,CACb,CAAED,WAAF,aAAEA,WAAF,cAAEA,WAAF,GACCK,mBADD,IAECgB,KAHY,CAAd;AAKA;AATF;AAFgB,KA5CnB;AA2DC,IAAA,aAAa,EAAGvD,SA3DjB;AA4DC,IAAA,YAAY,EAAG;AACdM,MAAAA,KAAK,EAAER;AADO,KA5DhB;AA+DC,IAAA,QAAQ,EAAGwC,iBAAiB,GAAG,GAAH,GAAStC,SA/DtC;AAgEC,IAAA,QAAQ,EACPsC,iBAAiB,IAAIL,QAArB,GACGA,QAAQ,CAAC9B,KAAT,GAAiB,GADpB,GAEGH;AAnEL,KAsEC,cAAC,eAAD;AACC,IAAA,SAAS,EAAGvB,EAAE,CAAE,oBAAF;AADf,KAGC,cAAC,OAAD,OAHD,CAtED,CAFF,CADD,EAkFC,cAAC,SAAD,OAlFD,EAoFGkD,UAAU,IACX;AACC,IAAA,SAAS,EAAG9D,UAAU,CACrB,oCADqB,EAErB;AACC,qBAAeuE;AADhB,KAFqB,CADvB;AAOC,IAAA,KAAK,EAAG;AACPoB,MAAAA,UAAU,EAAE5B,SAAS,GAAGH,aAAH,GAAmB,CADjC;AAEPgC,MAAAA,aAAa,EAAE7B,SAAS,GAAGH,aAAH,GAAmB;AAFpC;AAPT,KAYGK,aAZH,EAaG,CAAC,CAAEC,UAAU,CAAC5B,KAAd,IACD,cAAC,MAAD,CAAQ,GAAR;AACC,IAAA,OAAO,EAAG,KADX;AAEC,IAAA,MAAM,EAAC,UAFR;AAGC,IAAA,SAAS,EAAC,0BAHX;AAIC,IAAA,UAAU,EAAG;AACZ0C,MAAAA,IAAI,EAAE,OADM;AAEZC,MAAAA,QAAQ,EACPvB,aAAa,IAAIa,UAAjB,GACG,CADH,GAEGvC,kBALQ;AAMZkD,MAAAA,IAAI,EAAE;AANM;AAJd,KAaC,cAAC,MAAD,CAAQ,GAAR;AACC,IAAA,KAAK,EAAG;AACPhD,MAAAA,QAAQ,EAAE,UADH;AAEPM,MAAAA,GAAG,EAAE,CAFE;AAGPG,MAAAA,IAAI,EAAE,CAHC;AAIPD,MAAAA,MAAM,EAAE;AAJD,KADT;AAOC,IAAA,OAAO,EAAG,KAPX;AAQC,IAAA,OAAO,EAAG;AACTJ,MAAAA,KAAK,EAAEqC;AADE,KARX;AAWC,IAAA,UAAU,EAAG;AACZK,MAAAA,IAAI,EAAE,OADM;AAEZC,MAAAA,QAAQ,EACPvB,aAAa,IAAIa,UAAjB,GACG,CADH,GAEGvC,kBALQ;AAMZkD,MAAAA,IAAI,EAAE;AANM;AAXd,KAoBC,cAAC,aAAD,QACGlC,YAAY,IAAI,cAAC,MAAD,OADnB,EAEGD,UAAU,IAAI,cAAC,QAAD,OAFjB,CApBD,CAbD,CAdF,CArFF,CAnDD,CAFD,CADD;AAuMA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport {\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n\t__unstableUseNavigateRegions as useNavigateRegions,\n\tResizableBox,\n} from '@wordpress/components';\nimport {\n\tuseReducedMotion,\n\tuseViewportMatch,\n\tuseResizeObserver,\n} from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useRef } from '@wordpress/element';\nimport { NavigableRegion } from '@wordpress/interface';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n\n/**\n * Internal dependencies\n */\nimport Sidebar from '../sidebar';\nimport Editor from '../editor';\nimport ListPage from '../list';\nimport ErrorBoundary from '../error-boundary';\nimport { store as editSiteStore } from '../../store';\nimport { useLocation } from '../routes';\nimport getIsListPage from '../../utils/get-is-list-page';\nimport Header from '../header-edit-mode';\nimport useInitEditedEntityFromURL from '../sync-state-with-url/use-init-edited-entity-from-url';\nimport SiteHub from '../site-hub';\nimport ResizeHandle from '../block-editor/resize-handle';\nimport useSyncCanvasModeWithURL from '../sync-state-with-url/use-sync-canvas-mode-with-url';\nimport { unlock } from '../../private-apis';\nimport SavePanel from '../save-panel';\n\nconst ANIMATION_DURATION = 0.5;\nconst emptyResizeHandleStyles = {\n\tposition: undefined,\n\tuserSelect: undefined,\n\tcursor: undefined,\n\twidth: undefined,\n\theight: undefined,\n\ttop: undefined,\n\tright: undefined,\n\tbottom: undefined,\n\tleft: undefined,\n};\n\nexport default function Layout() {\n\t// This ensures the edited entity id and type are initialized properly.\n\tuseInitEditedEntityFromURL();\n\tuseSyncCanvasModeWithURL();\n\n\tconst hubRef = useRef();\n\tconst { params } = useLocation();\n\tconst isListPage = getIsListPage( params );\n\tconst isEditorPage = ! isListPage;\n\tconst { canvasMode, previousShortcut, nextShortcut } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getAllShortcutKeyCombinations } = select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t);\n\t\t\tconst { getCanvasMode } = unlock( select( editSiteStore ) );\n\t\t\treturn {\n\t\t\t\tcanvasMode: getCanvasMode(),\n\t\t\t\tpreviousShortcut: getAllShortcutKeyCombinations(\n\t\t\t\t\t'core/edit-site/previous-region'\n\t\t\t\t),\n\t\t\t\tnextShortcut: getAllShortcutKeyCombinations(\n\t\t\t\t\t'core/edit-site/next-region'\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst navigateRegionsProps = useNavigateRegions( {\n\t\tprevious: previousShortcut,\n\t\tnext: nextShortcut,\n\t} );\n\tconst disableMotion = useReducedMotion();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst canvasPadding = isMobileViewport ? 0 : 24;\n\tconst showSidebar =\n\t\t( isMobileViewport && ! isListPage ) ||\n\t\t( ! isMobileViewport && ( canvasMode === 'view' || ! isEditorPage ) );\n\tconst showCanvas =\n\t\t( isMobileViewport && isEditorPage && canvasMode === 'edit' ) ||\n\t\t! isMobileViewport ||\n\t\t! isEditorPage;\n\tconst showFrame =\n\t\t( ! isEditorPage && ! isMobileViewport ) ||\n\t\t( ! isMobileViewport && isEditorPage && canvasMode === 'view' );\n\tconst isFullCanvas =\n\t\t( isMobileViewport && isListPage ) ||\n\t\t( isEditorPage && canvasMode === 'edit' );\n\tconst [ canvasResizer, canvasSize ] = useResizeObserver();\n\tconst [ fullResizer, fullSize ] = useResizeObserver();\n\tconst [ forcedWidth, setForcedWidth ] = useState( null );\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\tconst isResizingEnabled = ! isMobileViewport && canvasMode === 'view';\n\tconst defaultSidebarWidth = isMobileViewport ? '100vw' : 360;\n\tlet canvasWidth = isResizing ? '100%' : fullSize.width;\n\tif ( showFrame && ! isResizing ) {\n\t\tcanvasWidth = canvasSize.width - canvasPadding;\n\t}\n\n\t// Synchronizing the URL with the store value of canvasMode happens in an effect\n\t// This condition ensures the component is only rendered after the synchronization happens\n\t// which prevents any animations due to potential canvasMode value change.\n\tif ( canvasMode === 'init' ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ fullResizer }\n\t\t\t<div\n\t\t\t\t{ ...navigateRegionsProps }\n\t\t\t\tref={ navigateRegionsProps.ref }\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\t'edit-site-layout',\n\t\t\t\t\tnavigateRegionsProps.className,\n\t\t\t\t\t{\n\t\t\t\t\t\t'is-full-canvas': isFullCanvas,\n\t\t\t\t\t\t'is-edit-mode': canvasMode === 'edit',\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t<SiteHub\n\t\t\t\t\tref={ hubRef }\n\t\t\t\t\tclassName=\"edit-site-layout__hub\"\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\tisResizingEnabled && forcedWidth\n\t\t\t\t\t\t\t\t? forcedWidth - 48\n\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\n\t\t\t\t<AnimatePresence initial={ false }>\n\t\t\t\t\t{ isEditorPage && canvasMode === 'edit' && (\n\t\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\t\tclassName=\"edit-site-layout__header\"\n\t\t\t\t\t\t\tariaLabel={ __( 'Editor top bar' ) }\n\t\t\t\t\t\t\tas={ motion.div }\n\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\ty: 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tinitial={ {\n\t\t\t\t\t\t\t\ty: '-100%',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\texit={ {\n\t\t\t\t\t\t\t\ty: '-100%',\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\n\t\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t\t: ANIMATION_DURATION,\n\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ canvasMode === 'edit' && <Header /> }\n\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t) }\n\t\t\t\t</AnimatePresence>\n\n\t\t\t\t<div className=\"edit-site-layout__content\">\n\t\t\t\t\t<AnimatePresence initial={ false }>\n\t\t\t\t\t\t{ showSidebar && (\n\t\t\t\t\t\t\t<ResizableBox\n\t\t\t\t\t\t\t\tas={ motion.div }\n\t\t\t\t\t\t\t\tinitial={ {\n\t\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\texit={ {\n\t\t\t\t\t\t\t\t\topacity: 0,\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:\n\t\t\t\t\t\t\t\t\t\tdisableMotion || isResizing\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: 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\tsize={ {\n\t\t\t\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\tisResizingEnabled && forcedWidth\n\t\t\t\t\t\t\t\t\t\t\t? forcedWidth\n\t\t\t\t\t\t\t\t\t\t\t: defaultSidebarWidth,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tclassName=\"edit-site-layout__sidebar\"\n\t\t\t\t\t\t\t\tenable={ {\n\t\t\t\t\t\t\t\t\tright: isResizingEnabled,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tonResizeStop={ ( event, direction, elt ) => {\n\t\t\t\t\t\t\t\t\tsetForcedWidth( elt.clientWidth );\n\t\t\t\t\t\t\t\t\tsetIsResizing( false );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\t\t\t\tsetIsResizing( true );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tonResize={ ( event, direction, elt ) => {\n\t\t\t\t\t\t\t\t\t// This is a performance optimization\n\t\t\t\t\t\t\t\t\t// We set the width imperatively to avoid re-rendering\n\t\t\t\t\t\t\t\t\t// the whole component while resizing.\n\t\t\t\t\t\t\t\t\thubRef.current.style.width =\n\t\t\t\t\t\t\t\t\t\telt.clientWidth - 48 + 'px';\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\thandleComponent={ {\n\t\t\t\t\t\t\t\t\tright: (\n\t\t\t\t\t\t\t\t\t\t<ResizeHandle\n\t\t\t\t\t\t\t\t\t\t\tdirection=\"right\"\n\t\t\t\t\t\t\t\t\t\t\tvariation=\"separator\"\n\t\t\t\t\t\t\t\t\t\t\tresizeWidthBy={ ( delta ) => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetForcedWidth(\n\t\t\t\t\t\t\t\t\t\t\t\t\t( forcedWidth ??\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tdefaultSidebarWidth ) +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tdelta\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} }\n\t\t\t\t\t\t\t\thandleClasses={ undefined }\n\t\t\t\t\t\t\t\thandleStyles={ {\n\t\t\t\t\t\t\t\t\tright: emptyResizeHandleStyles,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tminWidth={ isResizingEnabled ? 320 : undefined }\n\t\t\t\t\t\t\t\tmaxWidth={\n\t\t\t\t\t\t\t\t\tisResizingEnabled && fullSize\n\t\t\t\t\t\t\t\t\t\t? fullSize.width - 360\n\t\t\t\t\t\t\t\t\t\t: undefined\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<NavigableRegion\n\t\t\t\t\t\t\t\t\tariaLabel={ __( 'Navigation sidebar' ) }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Sidebar />\n\t\t\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t\t\t</ResizableBox>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</AnimatePresence>\n\n\t\t\t\t\t<SavePanel />\n\n\t\t\t\t\t{ showCanvas && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'edit-site-layout__canvas-container',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'is-resizing': isResizing,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tpaddingTop: showFrame ? canvasPadding : 0,\n\t\t\t\t\t\t\t\tpaddingBottom: showFrame ? canvasPadding : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ canvasResizer }\n\t\t\t\t\t\t\t{ !! canvasSize.width && (\n\t\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\t\tinitial={ false }\n\t\t\t\t\t\t\t\t\tlayout=\"position\"\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-layout__canvas\"\n\t\t\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\t\t\tduration:\n\t\t\t\t\t\t\t\t\t\t\tdisableMotion || isResizing\n\t\t\t\t\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t\t\t\t\t: ANIMATION_DURATION,\n\t\t\t\t\t\t\t\t\t\tease: 'easeOut',\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<motion.div\n\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t\t\t\t\t\t\ttop: 0,\n\t\t\t\t\t\t\t\t\t\t\tleft: 0,\n\t\t\t\t\t\t\t\t\t\t\tbottom: 0,\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tinitial={ false }\n\t\t\t\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\t\t\t\twidth: canvasWidth,\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\t\t\t\tduration:\n\t\t\t\t\t\t\t\t\t\t\t\tdisableMotion || isResizing\n\t\t\t\t\t\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t\t\t\t\t\t: ANIMATION_DURATION,\n\t\t\t\t\t\t\t\t\t\t\tease: 'easeOut',\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\t\t<ErrorBoundary>\n\t\t\t\t\t\t\t\t\t\t\t{ isEditorPage && <Editor /> }\n\t\t\t\t\t\t\t\t\t\t\t{ isListPage && <ListPage /> }\n\t\t\t\t\t\t\t\t\t\t</ErrorBoundary>\n\t\t\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
@@ -25,7 +25,7 @@ export default function RenameMenuItem(_ref) {
25
25
  createErrorNotice
26
26
  } = useDispatch(noticesStore);
27
27
 
28
- if (!template.is_custom) {
28
+ if (template.type === 'wp_template' && !template.is_custom) {
29
29
  return null;
30
30
  }
31
31
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/list/actions/rename-menu-item.js"],"names":["__","useState","useDispatch","Button","MenuItem","Modal","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","store","coreStore","noticesStore","RenameMenuItem","template","onClose","title","setTitle","rendered","isModalOpen","setIsModalOpen","editEntityRecord","saveEditedEntityRecord","createSuccessNotice","createErrorNotice","is_custom","onTemplateRename","event","preventDefault","type","id","throwOnError","error","errorMessage","message","code"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\tMenuItem,\n\tModal,\n\tTextControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\n\nexport default function RenameMenuItem( { template, onClose } ) {\n\tconst [ title, setTitle ] = useState( () => template.title.rendered );\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\n\tconst { editEntityRecord, saveEditedEntityRecord } =\n\t\tuseDispatch( coreStore );\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tif ( ! template.is_custom ) {\n\t\treturn null;\n\t}\n\n\tasync function onTemplateRename( event ) {\n\t\tevent.preventDefault();\n\n\t\ttry {\n\t\t\tawait editEntityRecord( 'postType', template.type, template.id, {\n\t\t\t\ttitle,\n\t\t\t} );\n\n\t\t\t// Update state before saving rerenders the list.\n\t\t\tsetTitle( '' );\n\t\t\tsetIsModalOpen( false );\n\t\t\tonClose();\n\n\t\t\t// Persist edited entity.\n\t\t\tawait saveEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\ttemplate.type,\n\t\t\t\ttemplate.id,\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\tcreateSuccessNotice( __( 'Entity renamed.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while renaming the entity.' );\n\n\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t}\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetIsModalOpen( true );\n\t\t\t\t\tsetTitle( template.title.rendered );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ __( 'Rename' ) }\n\t\t\t</MenuItem>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Rename' ) }\n\t\t\t\t\tonRequestClose={ () => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t} }\n\t\t\t\t\toverlayClassName=\"edit-site-list__rename-modal\"\n\t\t\t\t>\n\t\t\t\t\t<form onSubmit={ onTemplateRename }>\n\t\t\t\t\t\t<VStack spacing=\"5\">\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetIsModalOpen( false );\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{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\n\t\t\t\t\t\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t</VStack>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/list/actions/rename-menu-item.js"],"names":["__","useState","useDispatch","Button","MenuItem","Modal","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","store","coreStore","noticesStore","RenameMenuItem","template","onClose","title","setTitle","rendered","isModalOpen","setIsModalOpen","editEntityRecord","saveEditedEntityRecord","createSuccessNotice","createErrorNotice","type","is_custom","onTemplateRename","event","preventDefault","id","throwOnError","error","errorMessage","message","code"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,QAAT,QAAyB,oBAAzB;AACA,SAASC,WAAT,QAA4B,iBAA5B;AACA,SACCC,MADD,EAECC,QAFD,EAGCC,KAHD,EAICC,WAJD,EAKCC,oBAAoB,IAAIC,MALzB,EAMCC,oBAAoB,IAAIC,MANzB,QAOO,uBAPP;AAQA,SAASC,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AACA,SAASD,KAAK,IAAIE,YAAlB,QAAsC,oBAAtC;AAEA,eAAe,SAASC,cAAT,OAAiD;AAAA,MAAxB;AAAEC,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,GAAwB;AAC/D,QAAM,CAAEC,KAAF,EAASC,QAAT,IAAsBjB,QAAQ,CAAE,MAAMc,QAAQ,CAACE,KAAT,CAAeE,QAAvB,CAApC;AACA,QAAM,CAAEC,WAAF,EAAeC,cAAf,IAAkCpB,QAAQ,CAAE,KAAF,CAAhD;AAEA,QAAM;AAAEqB,IAAAA,gBAAF;AAAoBC,IAAAA;AAApB,MACLrB,WAAW,CAAEU,SAAF,CADZ;AAEA,QAAM;AAAEY,IAAAA,mBAAF;AAAuBC,IAAAA;AAAvB,MACLvB,WAAW,CAAEW,YAAF,CADZ;;AAGA,MAAKE,QAAQ,CAACW,IAAT,KAAkB,aAAlB,IAAmC,CAAEX,QAAQ,CAACY,SAAnD,EAA+D;AAC9D,WAAO,IAAP;AACA;;AAED,iBAAeC,gBAAf,CAAiCC,KAAjC,EAAyC;AACxCA,IAAAA,KAAK,CAACC,cAAN;;AAEA,QAAI;AACH,YAAMR,gBAAgB,CAAE,UAAF,EAAcP,QAAQ,CAACW,IAAvB,EAA6BX,QAAQ,CAACgB,EAAtC,EAA0C;AAC/Dd,QAAAA;AAD+D,OAA1C,CAAtB,CADG,CAKH;;AACAC,MAAAA,QAAQ,CAAE,EAAF,CAAR;AACAG,MAAAA,cAAc,CAAE,KAAF,CAAd;AACAL,MAAAA,OAAO,GARJ,CAUH;;AACA,YAAMO,sBAAsB,CAC3B,UAD2B,EAE3BR,QAAQ,CAACW,IAFkB,EAG3BX,QAAQ,CAACgB,EAHkB,EAI3B;AAAEC,QAAAA,YAAY,EAAE;AAAhB,OAJ2B,CAA5B;AAOAR,MAAAA,mBAAmB,CAAExB,EAAE,CAAE,iBAAF,CAAJ,EAA2B;AAC7C0B,QAAAA,IAAI,EAAE;AADuC,OAA3B,CAAnB;AAGA,KArBD,CAqBE,OAAQO,KAAR,EAAgB;AACjB,YAAMC,YAAY,GACjBD,KAAK,CAACE,OAAN,IAAiBF,KAAK,CAACG,IAAN,KAAe,eAAhC,GACGH,KAAK,CAACE,OADT,GAEGnC,EAAE,CAAE,8CAAF,CAHN;AAKAyB,MAAAA,iBAAiB,CAAES,YAAF,EAAgB;AAAER,QAAAA,IAAI,EAAE;AAAR,OAAhB,CAAjB;AACA;AACD;;AAED,SACC,8BACC,cAAC,QAAD;AACC,IAAA,OAAO,EAAG,MAAM;AACfL,MAAAA,cAAc,CAAE,IAAF,CAAd;AACAH,MAAAA,QAAQ,CAAEH,QAAQ,CAACE,KAAT,CAAeE,QAAjB,CAAR;AACA;AAJF,KAMGnB,EAAE,CAAE,QAAF,CANL,CADD,EASGoB,WAAW,IACZ,cAAC,KAAD;AACC,IAAA,KAAK,EAAGpB,EAAE,CAAE,QAAF,CADX;AAEC,IAAA,cAAc,EAAG,MAAM;AACtBqB,MAAAA,cAAc,CAAE,KAAF,CAAd;AACA,KAJF;AAKC,IAAA,gBAAgB,EAAC;AALlB,KAOC;AAAM,IAAA,QAAQ,EAAGO;AAAjB,KACC,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAC;AAAhB,KACC,cAAC,WAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAG5B,EAAE,CAAE,MAAF,CAFX;AAGC,IAAA,KAAK,EAAGiB,KAHT;AAIC,IAAA,QAAQ,EAAGC,QAJZ;AAKC,IAAA,QAAQ;AALT,IADD,EASC,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAC;AAAhB,KACC,cAAC,MAAD;AACC,IAAA,OAAO,EAAC,UADT;AAEC,IAAA,OAAO,EAAG,MAAM;AACfG,MAAAA,cAAc,CAAE,KAAF,CAAd;AACA;AAJF,KAMGrB,EAAE,CAAE,QAAF,CANL,CADD,EAUC,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAC,SAAhB;AAA0B,IAAA,IAAI,EAAC;AAA/B,KACGA,EAAE,CAAE,MAAF,CADL,CAVD,CATD,CADD,CAPD,CAVF,CADD;AAgDA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\tMenuItem,\n\tModal,\n\tTextControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\n\nexport default function RenameMenuItem( { template, onClose } ) {\n\tconst [ title, setTitle ] = useState( () => template.title.rendered );\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\n\tconst { editEntityRecord, saveEditedEntityRecord } =\n\t\tuseDispatch( coreStore );\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tif ( template.type === 'wp_template' && ! template.is_custom ) {\n\t\treturn null;\n\t}\n\n\tasync function onTemplateRename( event ) {\n\t\tevent.preventDefault();\n\n\t\ttry {\n\t\t\tawait editEntityRecord( 'postType', template.type, template.id, {\n\t\t\t\ttitle,\n\t\t\t} );\n\n\t\t\t// Update state before saving rerenders the list.\n\t\t\tsetTitle( '' );\n\t\t\tsetIsModalOpen( false );\n\t\t\tonClose();\n\n\t\t\t// Persist edited entity.\n\t\t\tawait saveEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\ttemplate.type,\n\t\t\t\ttemplate.id,\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\tcreateSuccessNotice( __( 'Entity renamed.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while renaming the entity.' );\n\n\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t}\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetIsModalOpen( true );\n\t\t\t\t\tsetTitle( template.title.rendered );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ __( 'Rename' ) }\n\t\t\t</MenuItem>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Rename' ) }\n\t\t\t\t\tonRequestClose={ () => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t} }\n\t\t\t\t\toverlayClassName=\"edit-site-list__rename-modal\"\n\t\t\t\t>\n\t\t\t\t\t<form onSubmit={ onTemplateRename }>\n\t\t\t\t\t\t<VStack spacing=\"5\">\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetIsModalOpen( false );\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{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\n\t\t\t\t\t\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t</VStack>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
@@ -69,6 +69,7 @@ export default function Table(_ref) {
69
69
  level: 4
70
70
  }, createElement(Link, {
71
71
  params: {
72
+ path: template.type === 'wp_template' ? '/templates/single' : '/template-parts/single',
72
73
  postId: template.id,
73
74
  postType: template.type
74
75
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/list/table.js"],"names":["useSelect","store","coreStore","useEntityRecords","__","sprintf","VisuallyHidden","__experimentalHeading","Heading","decodeEntities","Link","Actions","AddedBy","Table","templateType","records","templates","isResolving","isLoading","per_page","postType","select","getPostType","length","labels","name","toLowerCase","map","template","id","postId","type","title","rendered","slug","description"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore, useEntityRecords } from '@wordpress/core-data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tVisuallyHidden,\n\t__experimentalHeading as Heading,\n} from '@wordpress/components';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport Link from '../routes/link';\nimport Actions from './actions';\nimport AddedBy from './added-by';\n\nexport default function Table( { templateType } ) {\n\tconst { records: templates, isResolving: isLoading } = useEntityRecords(\n\t\t'postType',\n\t\ttemplateType,\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\tconst postType = useSelect(\n\t\t( select ) => select( coreStore ).getPostType( templateType ),\n\t\t[ templateType ]\n\t);\n\n\tif ( ! templates || isLoading ) {\n\t\treturn null;\n\t}\n\n\tif ( ! templates.length ) {\n\t\treturn (\n\t\t\t<div>\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: The template type name, should be either \"templates\" or \"template parts\".\n\t\t\t\t\t__( 'No %s found.' ),\n\t\t\t\t\tpostType?.labels?.name?.toLowerCase()\n\t\t\t\t) }\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t// These explicit aria roles are needed for Safari.\n\t\t// See https://developer.mozilla.org/en-US/docs/Web/CSS/display#tables\n\t\t<table className=\"edit-site-list-table\" role=\"table\">\n\t\t\t<thead>\n\t\t\t\t<tr className=\"edit-site-list-table-head\" role=\"row\">\n\t\t\t\t\t<th\n\t\t\t\t\t\tclassName=\"edit-site-list-table-column\"\n\t\t\t\t\t\trole=\"columnheader\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Template' ) }\n\t\t\t\t\t</th>\n\t\t\t\t\t<th\n\t\t\t\t\t\tclassName=\"edit-site-list-table-column\"\n\t\t\t\t\t\trole=\"columnheader\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Added by' ) }\n\t\t\t\t\t</th>\n\t\t\t\t\t<th\n\t\t\t\t\t\tclassName=\"edit-site-list-table-column\"\n\t\t\t\t\t\trole=\"columnheader\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<VisuallyHidden>{ __( 'Actions' ) }</VisuallyHidden>\n\t\t\t\t\t</th>\n\t\t\t\t</tr>\n\t\t\t</thead>\n\n\t\t\t<tbody>\n\t\t\t\t{ templates.map( ( template ) => (\n\t\t\t\t\t<tr\n\t\t\t\t\t\tkey={ template.id }\n\t\t\t\t\t\tclassName=\"edit-site-list-table-row\"\n\t\t\t\t\t\trole=\"row\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<td className=\"edit-site-list-table-column\" role=\"cell\">\n\t\t\t\t\t\t\t<Heading level={ 4 }>\n\t\t\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\t\t\tpostId: template.id,\n\t\t\t\t\t\t\t\t\t\tpostType: template.type,\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{ decodeEntities(\n\t\t\t\t\t\t\t\t\t\ttemplate.title?.rendered ||\n\t\t\t\t\t\t\t\t\t\t\ttemplate.slug\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Link>\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t\t{ decodeEntities( template.description ) }\n\t\t\t\t\t\t</td>\n\n\t\t\t\t\t\t<td className=\"edit-site-list-table-column\" role=\"cell\">\n\t\t\t\t\t\t\t<AddedBy\n\t\t\t\t\t\t\t\ttemplateType={ templateType }\n\t\t\t\t\t\t\t\ttemplate={ template }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td className=\"edit-site-list-table-column\" role=\"cell\">\n\t\t\t\t\t\t\t<Actions template={ template } />\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t) ) }\n\t\t\t</tbody>\n\t\t</table>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/list/table.js"],"names":["useSelect","store","coreStore","useEntityRecords","__","sprintf","VisuallyHidden","__experimentalHeading","Heading","decodeEntities","Link","Actions","AddedBy","Table","templateType","records","templates","isResolving","isLoading","per_page","postType","select","getPostType","length","labels","name","toLowerCase","map","template","id","path","type","postId","title","rendered","slug","description"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore, useEntityRecords } from '@wordpress/core-data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tVisuallyHidden,\n\t__experimentalHeading as Heading,\n} from '@wordpress/components';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport Link from '../routes/link';\nimport Actions from './actions';\nimport AddedBy from './added-by';\n\nexport default function Table( { templateType } ) {\n\tconst { records: templates, isResolving: isLoading } = useEntityRecords(\n\t\t'postType',\n\t\ttemplateType,\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\tconst postType = useSelect(\n\t\t( select ) => select( coreStore ).getPostType( templateType ),\n\t\t[ templateType ]\n\t);\n\n\tif ( ! templates || isLoading ) {\n\t\treturn null;\n\t}\n\n\tif ( ! templates.length ) {\n\t\treturn (\n\t\t\t<div>\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: The template type name, should be either \"templates\" or \"template parts\".\n\t\t\t\t\t__( 'No %s found.' ),\n\t\t\t\t\tpostType?.labels?.name?.toLowerCase()\n\t\t\t\t) }\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t// These explicit aria roles are needed for Safari.\n\t\t// See https://developer.mozilla.org/en-US/docs/Web/CSS/display#tables\n\t\t<table className=\"edit-site-list-table\" role=\"table\">\n\t\t\t<thead>\n\t\t\t\t<tr className=\"edit-site-list-table-head\" role=\"row\">\n\t\t\t\t\t<th\n\t\t\t\t\t\tclassName=\"edit-site-list-table-column\"\n\t\t\t\t\t\trole=\"columnheader\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Template' ) }\n\t\t\t\t\t</th>\n\t\t\t\t\t<th\n\t\t\t\t\t\tclassName=\"edit-site-list-table-column\"\n\t\t\t\t\t\trole=\"columnheader\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Added by' ) }\n\t\t\t\t\t</th>\n\t\t\t\t\t<th\n\t\t\t\t\t\tclassName=\"edit-site-list-table-column\"\n\t\t\t\t\t\trole=\"columnheader\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<VisuallyHidden>{ __( 'Actions' ) }</VisuallyHidden>\n\t\t\t\t\t</th>\n\t\t\t\t</tr>\n\t\t\t</thead>\n\n\t\t\t<tbody>\n\t\t\t\t{ templates.map( ( template ) => (\n\t\t\t\t\t<tr\n\t\t\t\t\t\tkey={ template.id }\n\t\t\t\t\t\tclassName=\"edit-site-list-table-row\"\n\t\t\t\t\t\trole=\"row\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<td className=\"edit-site-list-table-column\" role=\"cell\">\n\t\t\t\t\t\t\t<Heading level={ 4 }>\n\t\t\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\t\t\tpath:\n\t\t\t\t\t\t\t\t\t\t\ttemplate.type === 'wp_template'\n\t\t\t\t\t\t\t\t\t\t\t\t? '/templates/single'\n\t\t\t\t\t\t\t\t\t\t\t\t: '/template-parts/single',\n\t\t\t\t\t\t\t\t\t\tpostId: template.id,\n\t\t\t\t\t\t\t\t\t\tpostType: template.type,\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{ decodeEntities(\n\t\t\t\t\t\t\t\t\t\ttemplate.title?.rendered ||\n\t\t\t\t\t\t\t\t\t\t\ttemplate.slug\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Link>\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t\t{ decodeEntities( template.description ) }\n\t\t\t\t\t\t</td>\n\n\t\t\t\t\t\t<td className=\"edit-site-list-table-column\" role=\"cell\">\n\t\t\t\t\t\t\t<AddedBy\n\t\t\t\t\t\t\t\ttemplateType={ templateType }\n\t\t\t\t\t\t\t\ttemplate={ template }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td className=\"edit-site-list-table-column\" role=\"cell\">\n\t\t\t\t\t\t\t<Actions template={ template } />\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t) ) }\n\t\t\t</tbody>\n\t\t</table>\n\t);\n}\n"]}
@@ -3,14 +3,14 @@ import { createElement } from "@wordpress/element";
3
3
  /**
4
4
  * WordPress dependencies
5
5
  */
6
- import { experiments as blockEditorExperiments, store as blockEditorStore } from '@wordpress/block-editor';
6
+ import { privateApis as blockEditorPrivateApis, store as blockEditorStore } from '@wordpress/block-editor';
7
7
  import { useEffect } from '@wordpress/element';
8
8
  import { useDispatch } from '@wordpress/data';
9
9
  /**
10
10
  * Internal dependencies
11
11
  */
12
12
 
13
- import { unlock } from '../../experiments';
13
+ import { unlock } from '../../private-apis';
14
14
  const ALLOWED_BLOCKS = {
15
15
  'core/navigation': ['core/navigation-link', 'core/search', 'core/social-links', 'core/page-list', 'core/spacer', 'core/home-link', 'core/site-title', 'core/site-logo', 'core/navigation-submenu'],
16
16
  'core/social-links': ['core/social-link'],
@@ -27,7 +27,7 @@ export default function NavigationMenu(_ref) {
27
27
  } = useDispatch(blockEditorStore);
28
28
  const {
29
29
  OffCanvasEditor
30
- } = unlock(blockEditorExperiments); //TODO: Block settings are normally updated as a side effect of rendering InnerBlocks in BlockList
30
+ } = unlock(blockEditorPrivateApis); //TODO: Block settings are normally updated as a side effect of rendering InnerBlocks in BlockList
31
31
  //Think through a better way of doing this, possible with adding allowed blocks to block library metadata
32
32
 
33
33
  useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/navigation-inspector/navigation-menu.js"],"names":["experiments","blockEditorExperiments","store","blockEditorStore","useEffect","useDispatch","unlock","ALLOWED_BLOCKS","NavigationMenu","innerBlocks","onSelect","updateBlockListSettings","OffCanvasEditor","allowedBlocks","forEach","block","name","clientId"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,WAAW,IAAIC,sBADhB,EAECC,KAAK,IAAIC,gBAFV,QAGO,yBAHP;AAIA,SAASC,SAAT,QAA0B,oBAA1B;AACA,SAASC,WAAT,QAA4B,iBAA5B;AAEA;AACA;AACA;;AACA,SAASC,MAAT,QAAuB,mBAAvB;AAEA,MAAMC,cAAc,GAAG;AACtB,qBAAmB,CAClB,sBADkB,EAElB,aAFkB,EAGlB,mBAHkB,EAIlB,gBAJkB,EAKlB,aALkB,EAMlB,gBANkB,EAOlB,iBAPkB,EAQlB,gBARkB,EASlB,yBATkB,CADG;AAYtB,uBAAqB,CAAE,kBAAF,CAZC;AAatB,6BAA2B,CAC1B,sBAD0B,EAE1B,yBAF0B,CAbL;AAiBtB,0BAAwB,CACvB,sBADuB,EAEvB,yBAFuB;AAjBF,CAAvB;AAuBA,eAAe,SAASC,cAAT,OAAqD;AAAA,MAA5B;AAAEC,IAAAA,WAAF;AAAeC,IAAAA;AAAf,GAA4B;AACnE,QAAM;AAAEC,IAAAA;AAAF,MAA8BN,WAAW,CAAEF,gBAAF,CAA/C;AAEA,QAAM;AAAES,IAAAA;AAAF,MAAsBN,MAAM,CAAEL,sBAAF,CAAlC,CAHmE,CAKnE;AACA;;AACAG,EAAAA,SAAS,CAAE,MAAM;AAChBO,IAAAA,uBAAuB,CAAE,EAAF,EAAM;AAC5BE,MAAAA,aAAa,EAAEN,cAAc,CAAE,iBAAF;AADD,KAAN,CAAvB;AAGAE,IAAAA,WAAW,CAACK,OAAZ,CAAuBC,KAAF,IAAa;AACjC,UAAKR,cAAc,CAAEQ,KAAK,CAACC,IAAR,CAAnB,EAAoC;AACnCL,QAAAA,uBAAuB,CAAEI,KAAK,CAACE,QAAR,EAAkB;AACxCJ,UAAAA,aAAa,EAAEN,cAAc,CAAEQ,KAAK,CAACC,IAAR;AADW,SAAlB,CAAvB;AAGA;AACD,KAND;AAOA,GAXQ,EAWN,CAAEL,uBAAF,EAA2BF,WAA3B,CAXM,CAAT;AAaA,SAAO,cAAC,eAAD;AAAiB,IAAA,MAAM,EAAGA,WAA1B;AAAwC,IAAA,QAAQ,EAAGC;AAAnD,IAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\texperiments as blockEditorExperiments,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useEffect } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../experiments';\n\nconst ALLOWED_BLOCKS = {\n\t'core/navigation': [\n\t\t'core/navigation-link',\n\t\t'core/search',\n\t\t'core/social-links',\n\t\t'core/page-list',\n\t\t'core/spacer',\n\t\t'core/home-link',\n\t\t'core/site-title',\n\t\t'core/site-logo',\n\t\t'core/navigation-submenu',\n\t],\n\t'core/social-links': [ 'core/social-link' ],\n\t'core/navigation-submenu': [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t],\n\t'core/navigation-link': [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t],\n};\n\nexport default function NavigationMenu( { innerBlocks, onSelect } ) {\n\tconst { updateBlockListSettings } = useDispatch( blockEditorStore );\n\n\tconst { OffCanvasEditor } = unlock( blockEditorExperiments );\n\n\t//TODO: Block settings are normally updated as a side effect of rendering InnerBlocks in BlockList\n\t//Think through a better way of doing this, possible with adding allowed blocks to block library metadata\n\tuseEffect( () => {\n\t\tupdateBlockListSettings( '', {\n\t\t\tallowedBlocks: ALLOWED_BLOCKS[ 'core/navigation' ],\n\t\t} );\n\t\tinnerBlocks.forEach( ( block ) => {\n\t\t\tif ( ALLOWED_BLOCKS[ block.name ] ) {\n\t\t\t\tupdateBlockListSettings( block.clientId, {\n\t\t\t\t\tallowedBlocks: ALLOWED_BLOCKS[ block.name ],\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\t}, [ updateBlockListSettings, innerBlocks ] );\n\n\treturn <OffCanvasEditor blocks={ innerBlocks } onSelect={ onSelect } />;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/navigation-inspector/navigation-menu.js"],"names":["privateApis","blockEditorPrivateApis","store","blockEditorStore","useEffect","useDispatch","unlock","ALLOWED_BLOCKS","NavigationMenu","innerBlocks","onSelect","updateBlockListSettings","OffCanvasEditor","allowedBlocks","forEach","block","name","clientId"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,WAAW,IAAIC,sBADhB,EAECC,KAAK,IAAIC,gBAFV,QAGO,yBAHP;AAIA,SAASC,SAAT,QAA0B,oBAA1B;AACA,SAASC,WAAT,QAA4B,iBAA5B;AAEA;AACA;AACA;;AACA,SAASC,MAAT,QAAuB,oBAAvB;AAEA,MAAMC,cAAc,GAAG;AACtB,qBAAmB,CAClB,sBADkB,EAElB,aAFkB,EAGlB,mBAHkB,EAIlB,gBAJkB,EAKlB,aALkB,EAMlB,gBANkB,EAOlB,iBAPkB,EAQlB,gBARkB,EASlB,yBATkB,CADG;AAYtB,uBAAqB,CAAE,kBAAF,CAZC;AAatB,6BAA2B,CAC1B,sBAD0B,EAE1B,yBAF0B,CAbL;AAiBtB,0BAAwB,CACvB,sBADuB,EAEvB,yBAFuB;AAjBF,CAAvB;AAuBA,eAAe,SAASC,cAAT,OAAqD;AAAA,MAA5B;AAAEC,IAAAA,WAAF;AAAeC,IAAAA;AAAf,GAA4B;AACnE,QAAM;AAAEC,IAAAA;AAAF,MAA8BN,WAAW,CAAEF,gBAAF,CAA/C;AAEA,QAAM;AAAES,IAAAA;AAAF,MAAsBN,MAAM,CAAEL,sBAAF,CAAlC,CAHmE,CAKnE;AACA;;AACAG,EAAAA,SAAS,CAAE,MAAM;AAChBO,IAAAA,uBAAuB,CAAE,EAAF,EAAM;AAC5BE,MAAAA,aAAa,EAAEN,cAAc,CAAE,iBAAF;AADD,KAAN,CAAvB;AAGAE,IAAAA,WAAW,CAACK,OAAZ,CAAuBC,KAAF,IAAa;AACjC,UAAKR,cAAc,CAAEQ,KAAK,CAACC,IAAR,CAAnB,EAAoC;AACnCL,QAAAA,uBAAuB,CAAEI,KAAK,CAACE,QAAR,EAAkB;AACxCJ,UAAAA,aAAa,EAAEN,cAAc,CAAEQ,KAAK,CAACC,IAAR;AADW,SAAlB,CAAvB;AAGA;AACD,KAND;AAOA,GAXQ,EAWN,CAAEL,uBAAF,EAA2BF,WAA3B,CAXM,CAAT;AAaA,SAAO,cAAC,eAAD;AAAiB,IAAA,MAAM,EAAGA,WAA1B;AAAwC,IAAA,QAAQ,EAAGC;AAAnD,IAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useEffect } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../private-apis';\n\nconst ALLOWED_BLOCKS = {\n\t'core/navigation': [\n\t\t'core/navigation-link',\n\t\t'core/search',\n\t\t'core/social-links',\n\t\t'core/page-list',\n\t\t'core/spacer',\n\t\t'core/home-link',\n\t\t'core/site-title',\n\t\t'core/site-logo',\n\t\t'core/navigation-submenu',\n\t],\n\t'core/social-links': [ 'core/social-link' ],\n\t'core/navigation-submenu': [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t],\n\t'core/navigation-link': [\n\t\t'core/navigation-link',\n\t\t'core/navigation-submenu',\n\t],\n};\n\nexport default function NavigationMenu( { innerBlocks, onSelect } ) {\n\tconst { updateBlockListSettings } = useDispatch( blockEditorStore );\n\n\tconst { OffCanvasEditor } = unlock( blockEditorPrivateApis );\n\n\t//TODO: Block settings are normally updated as a side effect of rendering InnerBlocks in BlockList\n\t//Think through a better way of doing this, possible with adding allowed blocks to block library metadata\n\tuseEffect( () => {\n\t\tupdateBlockListSettings( '', {\n\t\t\tallowedBlocks: ALLOWED_BLOCKS[ 'core/navigation' ],\n\t\t} );\n\t\tinnerBlocks.forEach( ( block ) => {\n\t\t\tif ( ALLOWED_BLOCKS[ block.name ] ) {\n\t\t\t\tupdateBlockListSettings( block.clientId, {\n\t\t\t\t\tallowedBlocks: ALLOWED_BLOCKS[ block.name ],\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\t}, [ updateBlockListSettings, innerBlocks ] );\n\n\treturn <OffCanvasEditor blocks={ innerBlocks } onSelect={ onSelect } />;\n}\n"]}
@@ -0,0 +1,64 @@
1
+ import { createElement } from "@wordpress/element";
2
+
3
+ /**
4
+ * WordPress dependencies
5
+ */
6
+ import { Button, Modal } from '@wordpress/components';
7
+ import { EntitiesSavedStates } from '@wordpress/editor';
8
+ import { useDispatch, useSelect } from '@wordpress/data';
9
+ import { __ } from '@wordpress/i18n';
10
+ import { NavigableRegion } from '@wordpress/interface';
11
+ /**
12
+ * Internal dependencies
13
+ */
14
+
15
+ import { store as editSiteStore } from '../../store';
16
+ import { unlock } from '../../private-apis';
17
+ export default function SavePanel() {
18
+ const {
19
+ isSaveViewOpen,
20
+ canvasMode
21
+ } = useSelect(select => {
22
+ const {
23
+ isSaveViewOpened,
24
+ getCanvasMode
25
+ } = unlock(select(editSiteStore)); // The currently selected entity to display.
26
+ // Typically template or template part in the site editor.
27
+
28
+ return {
29
+ isSaveViewOpen: isSaveViewOpened(),
30
+ canvasMode: getCanvasMode()
31
+ };
32
+ }, []);
33
+ const {
34
+ setIsSaveViewOpened
35
+ } = useDispatch(editSiteStore);
36
+
37
+ const onClose = () => setIsSaveViewOpened(false);
38
+
39
+ if (canvasMode === 'view') {
40
+ return isSaveViewOpen ? createElement(Modal, {
41
+ className: "edit-site-save-panel__modal",
42
+ onRequestClose: onClose,
43
+ __experimentalHideHeader: true,
44
+ contentLabel: __('Save site, content, and template changes')
45
+ }, createElement(EntitiesSavedStates, {
46
+ close: onClose
47
+ })) : null;
48
+ }
49
+
50
+ return createElement(NavigableRegion, {
51
+ className: "edit-site-layout__actions",
52
+ ariaLabel: __('Save sidebar')
53
+ }, isSaveViewOpen ? createElement(EntitiesSavedStates, {
54
+ close: onClose
55
+ }) : createElement("div", {
56
+ className: "edit-site-editor__toggle-save-panel"
57
+ }, createElement(Button, {
58
+ variant: "secondary",
59
+ className: "edit-site-editor__toggle-save-panel-button",
60
+ onClick: () => setIsSaveViewOpened(true),
61
+ "aria-expanded": false
62
+ }, __('Open save panel'))));
63
+ }
64
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/save-panel/index.js"],"names":["Button","Modal","EntitiesSavedStates","useDispatch","useSelect","__","NavigableRegion","store","editSiteStore","unlock","SavePanel","isSaveViewOpen","canvasMode","select","isSaveViewOpened","getCanvasMode","setIsSaveViewOpened","onClose"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,MAAT,EAAiBC,KAAjB,QAA8B,uBAA9B;AACA,SAASC,mBAAT,QAAoC,mBAApC;AACA,SAASC,WAAT,EAAsBC,SAAtB,QAAuC,iBAAvC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,eAAT,QAAgC,sBAAhC;AAEA;AACA;AACA;;AACA,SAASC,KAAK,IAAIC,aAAlB,QAAuC,aAAvC;AACA,SAASC,MAAT,QAAuB,oBAAvB;AAEA,eAAe,SAASC,SAAT,GAAqB;AACnC,QAAM;AAAEC,IAAAA,cAAF;AAAkBC,IAAAA;AAAlB,MAAiCR,SAAS,CAAIS,MAAF,IAAc;AAC/D,UAAM;AAAEC,MAAAA,gBAAF;AAAoBC,MAAAA;AAApB,QAAsCN,MAAM,CACjDI,MAAM,CAAEL,aAAF,CAD2C,CAAlD,CAD+D,CAK/D;AACA;;AACA,WAAO;AACNG,MAAAA,cAAc,EAAEG,gBAAgB,EAD1B;AAENF,MAAAA,UAAU,EAAEG,aAAa;AAFnB,KAAP;AAIA,GAX+C,EAW7C,EAX6C,CAAhD;AAYA,QAAM;AAAEC,IAAAA;AAAF,MAA0Bb,WAAW,CAAEK,aAAF,CAA3C;;AACA,QAAMS,OAAO,GAAG,MAAMD,mBAAmB,CAAE,KAAF,CAAzC;;AAEA,MAAKJ,UAAU,KAAK,MAApB,EAA6B;AAC5B,WAAOD,cAAc,GACpB,cAAC,KAAD;AACC,MAAA,SAAS,EAAC,6BADX;AAEC,MAAA,cAAc,EAAGM,OAFlB;AAGC,MAAA,wBAAwB,MAHzB;AAIC,MAAA,YAAY,EAAGZ,EAAE,CAChB,0CADgB;AAJlB,OAQC,cAAC,mBAAD;AAAqB,MAAA,KAAK,EAAGY;AAA7B,MARD,CADoB,GAWjB,IAXJ;AAYA;;AAED,SACC,cAAC,eAAD;AACC,IAAA,SAAS,EAAC,2BADX;AAEC,IAAA,SAAS,EAAGZ,EAAE,CAAE,cAAF;AAFf,KAIGM,cAAc,GACf,cAAC,mBAAD;AAAqB,IAAA,KAAK,EAAGM;AAA7B,IADe,GAGf;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,cAAC,MAAD;AACC,IAAA,OAAO,EAAC,WADT;AAEC,IAAA,SAAS,EAAC,4CAFX;AAGC,IAAA,OAAO,EAAG,MAAMD,mBAAmB,CAAE,IAAF,CAHpC;AAIC,qBAAgB;AAJjB,KAMGX,EAAE,CAAE,iBAAF,CANL,CADD,CAPF,CADD;AAqBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, Modal } from '@wordpress/components';\nimport { EntitiesSavedStates } from '@wordpress/editor';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { NavigableRegion } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { unlock } from '../../private-apis';\n\nexport default function SavePanel() {\n\tconst { isSaveViewOpen, canvasMode } = useSelect( ( select ) => {\n\t\tconst { isSaveViewOpened, getCanvasMode } = unlock(\n\t\t\tselect( editSiteStore )\n\t\t);\n\n\t\t// The currently selected entity to display.\n\t\t// Typically template or template part in the site editor.\n\t\treturn {\n\t\t\tisSaveViewOpen: isSaveViewOpened(),\n\t\t\tcanvasMode: getCanvasMode(),\n\t\t};\n\t}, [] );\n\tconst { setIsSaveViewOpened } = useDispatch( editSiteStore );\n\tconst onClose = () => setIsSaveViewOpened( false );\n\n\tif ( canvasMode === 'view' ) {\n\t\treturn isSaveViewOpen ? (\n\t\t\t<Modal\n\t\t\t\tclassName=\"edit-site-save-panel__modal\"\n\t\t\t\tonRequestClose={ onClose }\n\t\t\t\t__experimentalHideHeader\n\t\t\t\tcontentLabel={ __(\n\t\t\t\t\t'Save site, content, and template changes'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t<EntitiesSavedStates close={ onClose } />\n\t\t\t</Modal>\n\t\t) : null;\n\t}\n\n\treturn (\n\t\t<NavigableRegion\n\t\t\tclassName=\"edit-site-layout__actions\"\n\t\t\tariaLabel={ __( 'Save sidebar' ) }\n\t\t>\n\t\t\t{ isSaveViewOpen ? (\n\t\t\t\t<EntitiesSavedStates close={ onClose } />\n\t\t\t) : (\n\t\t\t\t<div className=\"edit-site-editor__toggle-save-panel\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tclassName=\"edit-site-editor__toggle-save-panel-button\"\n\t\t\t\t\t\tonClick={ () => setIsSaveViewOpened( true ) }\n\t\t\t\t\t\taria-expanded={ false }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Open save panel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</NavigableRegion>\n\t);\n}\n"]}
@@ -4,30 +4,61 @@ import { createElement, Fragment } from "@wordpress/element";
4
4
  * WordPress dependencies
5
5
  */
6
6
  import { memo } from '@wordpress/element';
7
+ import { useSelect } from '@wordpress/data';
7
8
  import { __experimentalNavigatorProvider as NavigatorProvider } from '@wordpress/components';
9
+ import { store as coreStore } from '@wordpress/core-data';
8
10
  /**
9
11
  * Internal dependencies
10
12
  */
11
13
 
12
14
  import SidebarNavigationScreenMain from '../sidebar-navigation-screen-main';
13
15
  import SidebarNavigationScreenTemplates from '../sidebar-navigation-screen-templates';
14
- import useSyncSidebarPathWithURL from '../sync-state-with-url/use-sync-sidebar-path-with-url';
16
+ import SidebarNavigationScreenTemplate from '../sidebar-navigation-screen-template';
17
+ import useSyncPathWithURL from '../sync-state-with-url/use-sync-path-with-url';
15
18
  import SidebarNavigationScreenNavigationMenus from '../sidebar-navigation-screen-navigation-menus';
19
+ import SidebarNavigationScreenTemplatesBrowse from '../sidebar-navigation-screen-templates-browse';
20
+ import SaveButton from '../save-button';
21
+ import SidebarNavigationScreenNavigationItem from '../sidebar-navigation-screen-navigation-item';
16
22
 
17
23
  function SidebarScreens() {
18
- useSyncSidebarPathWithURL();
19
- return createElement(Fragment, null, createElement(SidebarNavigationScreenMain, null), createElement(SidebarNavigationScreenNavigationMenus, null), createElement(SidebarNavigationScreenTemplates, {
24
+ useSyncPathWithURL();
25
+ return createElement(Fragment, null, createElement(SidebarNavigationScreenMain, null), createElement(SidebarNavigationScreenNavigationMenus, null), createElement(SidebarNavigationScreenNavigationItem, null), createElement(SidebarNavigationScreenTemplates, {
20
26
  postType: "wp_template"
21
27
  }), createElement(SidebarNavigationScreenTemplates, {
22
28
  postType: "wp_template_part"
29
+ }), createElement(SidebarNavigationScreenTemplate, {
30
+ postType: "wp_template"
31
+ }), createElement(SidebarNavigationScreenTemplate, {
32
+ postType: "wp_template_part"
33
+ }), createElement(SidebarNavigationScreenTemplatesBrowse, {
34
+ postType: "wp_template"
35
+ }), createElement(SidebarNavigationScreenTemplatesBrowse, {
36
+ postType: "wp_template_part"
23
37
  }));
24
38
  }
25
39
 
26
40
  function Sidebar() {
27
- return createElement(NavigatorProvider, {
41
+ const {
42
+ isDirty
43
+ } = useSelect(select => {
44
+ const {
45
+ __experimentalGetDirtyEntityRecords
46
+ } = select(coreStore);
47
+
48
+ const dirtyEntityRecords = __experimentalGetDirtyEntityRecords(); // The currently selected entity to display.
49
+ // Typically template or template part in the site editor.
50
+
51
+
52
+ return {
53
+ isDirty: dirtyEntityRecords.length > 0
54
+ };
55
+ }, []);
56
+ return createElement(Fragment, null, createElement(NavigatorProvider, {
28
57
  className: "edit-site-sidebar__content",
29
58
  initialPath: "/"
30
- }, createElement(SidebarScreens, null));
59
+ }, createElement(SidebarScreens, null)), isDirty && createElement("div", {
60
+ className: "edit-site-sidebar__footer"
61
+ }, createElement(SaveButton, null)));
31
62
  }
32
63
 
33
64
  export default memo(Sidebar);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar/index.js"],"names":["memo","__experimentalNavigatorProvider","NavigatorProvider","SidebarNavigationScreenMain","SidebarNavigationScreenTemplates","useSyncSidebarPathWithURL","SidebarNavigationScreenNavigationMenus","SidebarScreens","Sidebar"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,IAAT,QAAqB,oBAArB;AACA,SAASC,+BAA+B,IAAIC,iBAA5C,QAAqE,uBAArE;AAEA;AACA;AACA;;AACA,OAAOC,2BAAP,MAAwC,mCAAxC;AACA,OAAOC,gCAAP,MAA6C,wCAA7C;AACA,OAAOC,yBAAP,MAAsC,uDAAtC;AACA,OAAOC,sCAAP,MAAmD,+CAAnD;;AAEA,SAASC,cAAT,GAA0B;AACzBF,EAAAA,yBAAyB;AAEzB,SACC,8BACC,cAAC,2BAAD,OADD,EAEC,cAAC,sCAAD,OAFD,EAGC,cAAC,gCAAD;AAAkC,IAAA,QAAQ,EAAC;AAA3C,IAHD,EAIC,cAAC,gCAAD;AAAkC,IAAA,QAAQ,EAAC;AAA3C,IAJD,CADD;AAQA;;AAED,SAASG,OAAT,GAAmB;AAClB,SACC,cAAC,iBAAD;AACC,IAAA,SAAS,EAAC,4BADX;AAEC,IAAA,WAAW,EAAC;AAFb,KAIC,cAAC,cAAD,OAJD,CADD;AAQA;;AAED,eAAeR,IAAI,CAAEQ,OAAF,CAAnB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { memo } from '@wordpress/element';\nimport { __experimentalNavigatorProvider as NavigatorProvider } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreenMain from '../sidebar-navigation-screen-main';\nimport SidebarNavigationScreenTemplates from '../sidebar-navigation-screen-templates';\nimport useSyncSidebarPathWithURL from '../sync-state-with-url/use-sync-sidebar-path-with-url';\nimport SidebarNavigationScreenNavigationMenus from '../sidebar-navigation-screen-navigation-menus';\n\nfunction SidebarScreens() {\n\tuseSyncSidebarPathWithURL();\n\n\treturn (\n\t\t<>\n\t\t\t<SidebarNavigationScreenMain />\n\t\t\t<SidebarNavigationScreenNavigationMenus />\n\t\t\t<SidebarNavigationScreenTemplates postType=\"wp_template\" />\n\t\t\t<SidebarNavigationScreenTemplates postType=\"wp_template_part\" />\n\t\t</>\n\t);\n}\n\nfunction Sidebar() {\n\treturn (\n\t\t<NavigatorProvider\n\t\t\tclassName=\"edit-site-sidebar__content\"\n\t\t\tinitialPath=\"/\"\n\t\t>\n\t\t\t<SidebarScreens />\n\t\t</NavigatorProvider>\n\t);\n}\n\nexport default memo( Sidebar );\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar/index.js"],"names":["memo","useSelect","__experimentalNavigatorProvider","NavigatorProvider","store","coreStore","SidebarNavigationScreenMain","SidebarNavigationScreenTemplates","SidebarNavigationScreenTemplate","useSyncPathWithURL","SidebarNavigationScreenNavigationMenus","SidebarNavigationScreenTemplatesBrowse","SaveButton","SidebarNavigationScreenNavigationItem","SidebarScreens","Sidebar","isDirty","select","__experimentalGetDirtyEntityRecords","dirtyEntityRecords","length"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,IAAT,QAAqB,oBAArB;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,+BAA+B,IAAIC,iBAA5C,QAAqE,uBAArE;AACA,SAASC,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AAEA;AACA;AACA;;AACA,OAAOC,2BAAP,MAAwC,mCAAxC;AACA,OAAOC,gCAAP,MAA6C,wCAA7C;AACA,OAAOC,+BAAP,MAA4C,uCAA5C;AACA,OAAOC,kBAAP,MAA+B,+CAA/B;AACA,OAAOC,sCAAP,MAAmD,+CAAnD;AACA,OAAOC,sCAAP,MAAmD,+CAAnD;AACA,OAAOC,UAAP,MAAuB,gBAAvB;AACA,OAAOC,qCAAP,MAAkD,8CAAlD;;AAEA,SAASC,cAAT,GAA0B;AACzBL,EAAAA,kBAAkB;AAElB,SACC,8BACC,cAAC,2BAAD,OADD,EAEC,cAAC,sCAAD,OAFD,EAGC,cAAC,qCAAD,OAHD,EAIC,cAAC,gCAAD;AAAkC,IAAA,QAAQ,EAAC;AAA3C,IAJD,EAKC,cAAC,gCAAD;AAAkC,IAAA,QAAQ,EAAC;AAA3C,IALD,EAMC,cAAC,+BAAD;AAAiC,IAAA,QAAQ,EAAC;AAA1C,IAND,EAOC,cAAC,+BAAD;AAAiC,IAAA,QAAQ,EAAC;AAA1C,IAPD,EAQC,cAAC,sCAAD;AAAwC,IAAA,QAAQ,EAAC;AAAjD,IARD,EASC,cAAC,sCAAD;AAAwC,IAAA,QAAQ,EAAC;AAAjD,IATD,CADD;AAaA;;AAED,SAASM,OAAT,GAAmB;AAClB,QAAM;AAAEC,IAAAA;AAAF,MAAcf,SAAS,CAAIgB,MAAF,IAAc;AAC5C,UAAM;AAAEC,MAAAA;AAAF,QAA0CD,MAAM,CAAEZ,SAAF,CAAtD;;AACA,UAAMc,kBAAkB,GAAGD,mCAAmC,EAA9D,CAF4C,CAG5C;AACA;;;AACA,WAAO;AACNF,MAAAA,OAAO,EAAEG,kBAAkB,CAACC,MAAnB,GAA4B;AAD/B,KAAP;AAGA,GAR4B,EAQ1B,EAR0B,CAA7B;AAUA,SACC,8BACC,cAAC,iBAAD;AACC,IAAA,SAAS,EAAC,4BADX;AAEC,IAAA,WAAW,EAAC;AAFb,KAIC,cAAC,cAAD,OAJD,CADD,EAOGJ,OAAO,IACR;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,cAAC,UAAD,OADD,CARF,CADD;AAeA;;AAED,eAAehB,IAAI,CAAEe,OAAF,CAAnB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { memo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { __experimentalNavigatorProvider as NavigatorProvider } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreenMain from '../sidebar-navigation-screen-main';\nimport SidebarNavigationScreenTemplates from '../sidebar-navigation-screen-templates';\nimport SidebarNavigationScreenTemplate from '../sidebar-navigation-screen-template';\nimport useSyncPathWithURL from '../sync-state-with-url/use-sync-path-with-url';\nimport SidebarNavigationScreenNavigationMenus from '../sidebar-navigation-screen-navigation-menus';\nimport SidebarNavigationScreenTemplatesBrowse from '../sidebar-navigation-screen-templates-browse';\nimport SaveButton from '../save-button';\nimport SidebarNavigationScreenNavigationItem from '../sidebar-navigation-screen-navigation-item';\n\nfunction SidebarScreens() {\n\tuseSyncPathWithURL();\n\n\treturn (\n\t\t<>\n\t\t\t<SidebarNavigationScreenMain />\n\t\t\t<SidebarNavigationScreenNavigationMenus />\n\t\t\t<SidebarNavigationScreenNavigationItem />\n\t\t\t<SidebarNavigationScreenTemplates postType=\"wp_template\" />\n\t\t\t<SidebarNavigationScreenTemplates postType=\"wp_template_part\" />\n\t\t\t<SidebarNavigationScreenTemplate postType=\"wp_template\" />\n\t\t\t<SidebarNavigationScreenTemplate postType=\"wp_template_part\" />\n\t\t\t<SidebarNavigationScreenTemplatesBrowse postType=\"wp_template\" />\n\t\t\t<SidebarNavigationScreenTemplatesBrowse postType=\"wp_template_part\" />\n\t\t</>\n\t);\n}\n\nfunction Sidebar() {\n\tconst { isDirty } = useSelect( ( select ) => {\n\t\tconst { __experimentalGetDirtyEntityRecords } = select( coreStore );\n\t\tconst dirtyEntityRecords = __experimentalGetDirtyEntityRecords();\n\t\t// The currently selected entity to display.\n\t\t// Typically template or template part in the site editor.\n\t\treturn {\n\t\t\tisDirty: dirtyEntityRecords.length > 0,\n\t\t};\n\t}, [] );\n\n\treturn (\n\t\t<>\n\t\t\t<NavigatorProvider\n\t\t\t\tclassName=\"edit-site-sidebar__content\"\n\t\t\t\tinitialPath=\"/\"\n\t\t\t>\n\t\t\t\t<SidebarScreens />\n\t\t\t</NavigatorProvider>\n\t\t\t{ isDirty && (\n\t\t\t\t<div className=\"edit-site-sidebar__footer\">\n\t\t\t\t\t<SaveButton />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default memo( Sidebar );\n"]}
@@ -3,17 +3,33 @@ import { createElement } from "@wordpress/element";
3
3
  /**
4
4
  * WordPress dependencies
5
5
  */
6
- import { __experimentalHStack as HStack, __experimentalVStack as VStack, __experimentalNavigatorBackButton as NavigatorBackButton, __experimentalNavigatorScreen as NavigatorScreen } from '@wordpress/components';
7
- import { isRTL, __, sprintf } from '@wordpress/i18n';
6
+ import { __experimentalHStack as HStack, __experimentalVStack as VStack, __experimentalNavigatorToParentButton as NavigatorToParentButton, Button, __experimentalNavigatorScreen as NavigatorScreen } from '@wordpress/components';
7
+ import { isRTL, __ } from '@wordpress/i18n';
8
8
  import { chevronRight, chevronLeft } from '@wordpress/icons';
9
+ import { useSelect } from '@wordpress/data';
10
+ /**
11
+ * Internal dependencies
12
+ */
13
+
14
+ import { store as editSiteStore } from '../../store';
15
+ import { unlock } from '../../private-apis';
9
16
  export default function SidebarNavigationScreen(_ref) {
10
17
  let {
11
18
  path,
12
- parentTitle,
13
19
  title,
14
20
  actions,
15
21
  content
16
22
  } = _ref;
23
+ const {
24
+ dashboardLink
25
+ } = useSelect(select => {
26
+ const {
27
+ getSettings
28
+ } = unlock(select(editSiteStore));
29
+ return {
30
+ dashboardLink: getSettings().__experimentalDashboardLink
31
+ };
32
+ }, []);
17
33
  return createElement(NavigatorScreen, {
18
34
  className: "edit-site-sidebar-navigation-screen",
19
35
  path: path
@@ -23,14 +39,16 @@ export default function SidebarNavigationScreen(_ref) {
23
39
  spacing: 4,
24
40
  justify: "flex-start",
25
41
  className: "edit-site-sidebar-navigation-screen__title-icon"
26
- }, parentTitle ? createElement(NavigatorBackButton, {
42
+ }, path !== '/' ? createElement(NavigatorToParentButton, {
43
+ className: "edit-site-sidebar-navigation-screen__back",
44
+ icon: isRTL() ? chevronRight : chevronLeft,
45
+ "aria-label": __('Back')
46
+ }) : createElement(Button, {
27
47
  className: "edit-site-sidebar-navigation-screen__back",
28
48
  icon: isRTL() ? chevronRight : chevronLeft,
29
- "aria-label": sprintf(
30
- /* translators: %s: previous page. */
31
- __('Navigate to the previous view: %s'), parentTitle)
32
- }) : createElement("div", {
33
- className: "edit-site-sidebar-navigation-screen__icon-placeholder"
49
+ "aria-label": __('Navigate to the Dashboard'),
50
+ href: dashboardLink || 'index.php',
51
+ label: __('Dashboard')
34
52
  }), createElement("h2", {
35
53
  className: "edit-site-sidebar-navigation-screen__title"
36
54
  }, title), actions), createElement("nav", {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen/index.js"],"names":["__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalNavigatorBackButton","NavigatorBackButton","__experimentalNavigatorScreen","NavigatorScreen","isRTL","__","sprintf","chevronRight","chevronLeft","SidebarNavigationScreen","path","parentTitle","title","actions","content"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MADzB,EAECC,oBAAoB,IAAIC,MAFzB,EAGCC,iCAAiC,IAAIC,mBAHtC,EAICC,6BAA6B,IAAIC,eAJlC,QAKO,uBALP;AAMA,SAASC,KAAT,EAAgBC,EAAhB,EAAoBC,OAApB,QAAmC,iBAAnC;AACA,SAASC,YAAT,EAAuBC,WAAvB,QAA0C,kBAA1C;AAEA,eAAe,SAASC,uBAAT,OAMX;AAAA,MAN6C;AAChDC,IAAAA,IADgD;AAEhDC,IAAAA,WAFgD;AAGhDC,IAAAA,KAHgD;AAIhDC,IAAAA,OAJgD;AAKhDC,IAAAA;AALgD,GAM7C;AACH,SACC,cAAC,eAAD;AACC,IAAA,SAAS,EAAC,qCADX;AAEC,IAAA,IAAI,EAAGJ;AAFR,KAIC,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAG;AAAlB,KACC,cAAC,MAAD;AACC,IAAA,OAAO,EAAG,CADX;AAEC,IAAA,OAAO,EAAC,YAFT;AAGC,IAAA,SAAS,EAAC;AAHX,KAKGC,WAAW,GACZ,cAAC,mBAAD;AACC,IAAA,SAAS,EAAC,2CADX;AAEC,IAAA,IAAI,EAAGP,KAAK,KAAKG,YAAL,GAAoBC,WAFjC;AAGC,kBAAaF,OAAO;AACnB;AACAD,IAAAA,EAAE,CAAE,mCAAF,CAFiB,EAGnBM,WAHmB;AAHrB,IADY,GAWZ;AAAK,IAAA,SAAS,EAAC;AAAf,IAhBF,EAkBC;AAAI,IAAA,SAAS,EAAC;AAAd,KACGC,KADH,CAlBD,EAqBGC,OArBH,CADD,EAyBC;AAAK,IAAA,SAAS,EAAC;AAAf,KACGC,OADH,CAzBD,CAJD,CADD;AAoCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalNavigatorBackButton as NavigatorBackButton,\n\t__experimentalNavigatorScreen as NavigatorScreen,\n} from '@wordpress/components';\nimport { isRTL, __, sprintf } from '@wordpress/i18n';\nimport { chevronRight, chevronLeft } from '@wordpress/icons';\n\nexport default function SidebarNavigationScreen( {\n\tpath,\n\tparentTitle,\n\ttitle,\n\tactions,\n\tcontent,\n} ) {\n\treturn (\n\t\t<NavigatorScreen\n\t\t\tclassName=\"edit-site-sidebar-navigation-screen\"\n\t\t\tpath={ path }\n\t\t>\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<HStack\n\t\t\t\t\tspacing={ 4 }\n\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__title-icon\"\n\t\t\t\t>\n\t\t\t\t\t{ parentTitle ? (\n\t\t\t\t\t\t<NavigatorBackButton\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__back\"\n\t\t\t\t\t\t\ticon={ isRTL() ? chevronRight : chevronLeft }\n\t\t\t\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: previous page. */\n\t\t\t\t\t\t\t\t__( 'Navigate to the previous view: %s' ),\n\t\t\t\t\t\t\t\tparentTitle\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\t\t<div className=\"edit-site-sidebar-navigation-screen__icon-placeholder\" />\n\t\t\t\t\t) }\n\t\t\t\t\t<h2 className=\"edit-site-sidebar-navigation-screen__title\">\n\t\t\t\t\t\t{ title }\n\t\t\t\t\t</h2>\n\t\t\t\t\t{ actions }\n\t\t\t\t</HStack>\n\n\t\t\t\t<nav className=\"edit-site-sidebar-navigation-screen__content\">\n\t\t\t\t\t{ content }\n\t\t\t\t</nav>\n\t\t\t</VStack>\n\t\t</NavigatorScreen>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen/index.js"],"names":["__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalNavigatorToParentButton","NavigatorToParentButton","Button","__experimentalNavigatorScreen","NavigatorScreen","isRTL","__","chevronRight","chevronLeft","useSelect","store","editSiteStore","unlock","SidebarNavigationScreen","path","title","actions","content","dashboardLink","select","getSettings","__experimentalDashboardLink"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MADzB,EAECC,oBAAoB,IAAIC,MAFzB,EAGCC,qCAAqC,IAAIC,uBAH1C,EAICC,MAJD,EAKCC,6BAA6B,IAAIC,eALlC,QAMO,uBANP;AAOA,SAASC,KAAT,EAAgBC,EAAhB,QAA0B,iBAA1B;AACA,SAASC,YAAT,EAAuBC,WAAvB,QAA0C,kBAA1C;AACA,SAASC,SAAT,QAA0B,iBAA1B;AAEA;AACA;AACA;;AACA,SAASC,KAAK,IAAIC,aAAlB,QAAuC,aAAvC;AACA,SAASC,MAAT,QAAuB,oBAAvB;AAEA,eAAe,SAASC,uBAAT,OAKX;AAAA,MAL6C;AAChDC,IAAAA,IADgD;AAEhDC,IAAAA,KAFgD;AAGhDC,IAAAA,OAHgD;AAIhDC,IAAAA;AAJgD,GAK7C;AACH,QAAM;AAAEC,IAAAA;AAAF,MAAoBT,SAAS,CAAIU,MAAF,IAAc;AAClD,UAAM;AAAEC,MAAAA;AAAF,QAAkBR,MAAM,CAAEO,MAAM,CAAER,aAAF,CAAR,CAA9B;AACA,WAAO;AACNO,MAAAA,aAAa,EAAEE,WAAW,GAAGC;AADvB,KAAP;AAGA,GALkC,EAKhC,EALgC,CAAnC;AAOA,SACC,cAAC,eAAD;AACC,IAAA,SAAS,EAAC,qCADX;AAEC,IAAA,IAAI,EAAGP;AAFR,KAIC,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAG;AAAlB,KACC,cAAC,MAAD;AACC,IAAA,OAAO,EAAG,CADX;AAEC,IAAA,OAAO,EAAC,YAFT;AAGC,IAAA,SAAS,EAAC;AAHX,KAKGA,IAAI,KAAK,GAAT,GACD,cAAC,uBAAD;AACC,IAAA,SAAS,EAAC,2CADX;AAEC,IAAA,IAAI,EAAGT,KAAK,KAAKE,YAAL,GAAoBC,WAFjC;AAGC,kBAAaF,EAAE,CAAE,MAAF;AAHhB,IADC,GAOD,cAAC,MAAD;AACC,IAAA,SAAS,EAAC,2CADX;AAEC,IAAA,IAAI,EAAGD,KAAK,KAAKE,YAAL,GAAoBC,WAFjC;AAGC,kBAAaF,EAAE,CAAE,2BAAF,CAHhB;AAIC,IAAA,IAAI,EAAGY,aAAa,IAAI,WAJzB;AAKC,IAAA,KAAK,EAAGZ,EAAE,CAAE,WAAF;AALX,IAZF,EAoBC;AAAI,IAAA,SAAS,EAAC;AAAd,KACGS,KADH,CApBD,EAuBGC,OAvBH,CADD,EA2BC;AAAK,IAAA,SAAS,EAAC;AAAf,KACGC,OADH,CA3BD,CAJD,CADD;AAsCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalNavigatorToParentButton as NavigatorToParentButton,\n\tButton,\n\t__experimentalNavigatorScreen as NavigatorScreen,\n} from '@wordpress/components';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { chevronRight, chevronLeft } from '@wordpress/icons';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { unlock } from '../../private-apis';\n\nexport default function SidebarNavigationScreen( {\n\tpath,\n\ttitle,\n\tactions,\n\tcontent,\n} ) {\n\tconst { dashboardLink } = useSelect( ( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\treturn {\n\t\t\tdashboardLink: getSettings().__experimentalDashboardLink,\n\t\t};\n\t}, [] );\n\n\treturn (\n\t\t<NavigatorScreen\n\t\t\tclassName=\"edit-site-sidebar-navigation-screen\"\n\t\t\tpath={ path }\n\t\t>\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<HStack\n\t\t\t\t\tspacing={ 4 }\n\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__title-icon\"\n\t\t\t\t>\n\t\t\t\t\t{ path !== '/' ? (\n\t\t\t\t\t\t<NavigatorToParentButton\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__back\"\n\t\t\t\t\t\t\ticon={ isRTL() ? chevronRight : chevronLeft }\n\t\t\t\t\t\t\taria-label={ __( 'Back' ) }\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\tclassName=\"edit-site-sidebar-navigation-screen__back\"\n\t\t\t\t\t\t\ticon={ isRTL() ? chevronRight : chevronLeft }\n\t\t\t\t\t\t\taria-label={ __( 'Navigate to the Dashboard' ) }\n\t\t\t\t\t\t\thref={ dashboardLink || 'index.php' }\n\t\t\t\t\t\t\tlabel={ __( 'Dashboard' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<h2 className=\"edit-site-sidebar-navigation-screen__title\">\n\t\t\t\t\t\t{ title }\n\t\t\t\t\t</h2>\n\t\t\t\t\t{ actions }\n\t\t\t\t</HStack>\n\n\t\t\t\t<nav className=\"edit-site-sidebar-navigation-screen__content\">\n\t\t\t\t\t{ content }\n\t\t\t\t</nav>\n\t\t\t</VStack>\n\t\t</NavigatorScreen>\n\t);\n}\n"]}