@wordpress/edit-site 5.10.0 → 5.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (252) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/add-new-template/{add-custom-generic-template-modal.js → add-custom-generic-template-modal-content.js} +7 -22
  3. package/build/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -0
  4. package/build/components/add-new-template/{add-custom-template-modal.js → add-custom-template-modal-content.js} +11 -21
  5. package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -0
  6. package/build/components/add-new-template/new-template.js +98 -65
  7. package/build/components/add-new-template/new-template.js.map +1 -1
  8. package/build/components/block-editor/index.js +1 -3
  9. package/build/components/block-editor/index.js.map +1 -1
  10. package/build/components/create-template-part-modal/index.js +6 -7
  11. package/build/components/create-template-part-modal/index.js.map +1 -1
  12. package/build/components/editor/index.js +15 -40
  13. package/build/components/editor/index.js.map +1 -1
  14. package/build/components/editor-canvas-container/index.js +10 -3
  15. package/build/components/editor-canvas-container/index.js.map +1 -1
  16. package/build/components/global-styles/screen-block.js +80 -3
  17. package/build/components/global-styles/screen-block.js.map +1 -1
  18. package/build/components/global-styles/screen-revisions/index.js +3 -10
  19. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  20. package/build/components/global-styles/screen-revisions/revisions-buttons.js +16 -18
  21. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  22. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +15 -24
  23. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  24. package/build/components/global-styles/screen-root.js +4 -4
  25. package/build/components/global-styles/screen-root.js.map +1 -1
  26. package/build/components/global-styles/style-variations-container.js +6 -10
  27. package/build/components/global-styles/style-variations-container.js.map +1 -1
  28. package/build/components/global-styles/ui.js +9 -9
  29. package/build/components/global-styles/ui.js.map +1 -1
  30. package/build/components/header-edit-mode/document-actions/index.js +28 -103
  31. package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
  32. package/build/components/header-edit-mode/index.js +14 -1
  33. package/build/components/header-edit-mode/index.js.map +1 -1
  34. package/build/components/layout/hooks.js +54 -0
  35. package/build/components/layout/hooks.js.map +1 -0
  36. package/build/components/layout/index.js +45 -98
  37. package/build/components/layout/index.js.map +1 -1
  38. package/build/components/list/actions/index.js +5 -2
  39. package/build/components/list/actions/index.js.map +1 -1
  40. package/build/components/resizable-frame/index.js +242 -0
  41. package/build/components/resizable-frame/index.js.map +1 -0
  42. package/build/components/revisions/index.js +2 -1
  43. package/build/components/revisions/index.js.map +1 -1
  44. package/build/components/secondary-sidebar/list-view-sidebar.js +4 -3
  45. package/build/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
  46. package/build/components/sidebar/index.js +4 -4
  47. package/build/components/sidebar/index.js.map +1 -1
  48. package/build/components/sidebar-edit-mode/template-revisions/index.js +1 -1
  49. package/build/components/sidebar-edit-mode/template-revisions/index.js.map +1 -1
  50. package/build/components/sidebar-navigation-screen-global-styles/index.js +75 -11
  51. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  52. package/build/components/sidebar-navigation-screen-main/index.js +24 -33
  53. package/build/components/sidebar-navigation-screen-main/index.js.map +1 -1
  54. package/build/components/sidebar-navigation-screen-navigation-menu/index.js +162 -0
  55. package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -0
  56. package/build/components/sidebar-navigation-screen-navigation-menus/constants.js +17 -0
  57. package/build/components/sidebar-navigation-screen-navigation-menus/constants.js.map +1 -0
  58. package/build/components/sidebar-navigation-screen-navigation-menus/index.js +53 -103
  59. package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  60. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +87 -0
  61. package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -0
  62. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +14 -71
  63. package/build/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  64. package/build/components/sidebar-navigation-screen-navigation-menus/navigator-button.js +53 -0
  65. package/build/components/sidebar-navigation-screen-navigation-menus/navigator-button.js.map +1 -0
  66. package/build/components/sidebar-navigation-screen-templates/index.js +36 -11
  67. package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  68. package/build/components/site-hub/index.js +1 -3
  69. package/build/components/site-hub/index.js.map +1 -1
  70. package/build/components/style-book/index.js +93 -19
  71. package/build/components/style-book/index.js.map +1 -1
  72. package/build/components/use-edited-entity-record/index.js +8 -4
  73. package/build/components/use-edited-entity-record/index.js.map +1 -1
  74. package/build/hooks/commands/use-edit-mode-commands.js +105 -0
  75. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -0
  76. package/build/store/actions.js +5 -3
  77. package/build/store/actions.js.map +1 -1
  78. package/build-module/components/add-new-template/{add-custom-generic-template-modal.js → add-custom-generic-template-modal-content.js} +8 -20
  79. package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -0
  80. package/build-module/components/add-new-template/{add-custom-template-modal.js → add-custom-template-modal-content.js} +13 -22
  81. package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +1 -0
  82. package/build-module/components/add-new-template/new-template.js +98 -67
  83. package/build-module/components/add-new-template/new-template.js.map +1 -1
  84. package/build-module/components/block-editor/index.js +1 -3
  85. package/build-module/components/block-editor/index.js.map +1 -1
  86. package/build-module/components/create-template-part-modal/index.js +7 -8
  87. package/build-module/components/create-template-part-modal/index.js.map +1 -1
  88. package/build-module/components/editor/index.js +16 -43
  89. package/build-module/components/editor/index.js.map +1 -1
  90. package/build-module/components/editor-canvas-container/index.js +7 -3
  91. package/build-module/components/editor-canvas-container/index.js.map +1 -1
  92. package/build-module/components/global-styles/screen-block.js +82 -4
  93. package/build-module/components/global-styles/screen-block.js.map +1 -1
  94. package/build-module/components/global-styles/screen-revisions/index.js +3 -10
  95. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  96. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +16 -19
  97. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  98. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +15 -24
  99. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  100. package/build-module/components/global-styles/screen-root.js +4 -4
  101. package/build-module/components/global-styles/screen-root.js.map +1 -1
  102. package/build-module/components/global-styles/style-variations-container.js +7 -11
  103. package/build-module/components/global-styles/style-variations-container.js.map +1 -1
  104. package/build-module/components/global-styles/ui.js +10 -10
  105. package/build-module/components/global-styles/ui.js.map +1 -1
  106. package/build-module/components/header-edit-mode/document-actions/index.js +31 -107
  107. package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
  108. package/build-module/components/header-edit-mode/index.js +14 -2
  109. package/build-module/components/header-edit-mode/index.js.map +1 -1
  110. package/build-module/components/layout/hooks.js +41 -0
  111. package/build-module/components/layout/hooks.js.map +1 -0
  112. package/build-module/components/layout/index.js +46 -101
  113. package/build-module/components/layout/index.js.map +1 -1
  114. package/build-module/components/list/actions/index.js +6 -3
  115. package/build-module/components/list/actions/index.js.map +1 -1
  116. package/build-module/components/resizable-frame/index.js +228 -0
  117. package/build-module/components/resizable-frame/index.js.map +1 -0
  118. package/build-module/components/revisions/index.js +2 -1
  119. package/build-module/components/revisions/index.js.map +1 -1
  120. package/build-module/components/secondary-sidebar/list-view-sidebar.js +3 -3
  121. package/build-module/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
  122. package/build-module/components/sidebar/index.js +3 -3
  123. package/build-module/components/sidebar/index.js.map +1 -1
  124. package/build-module/components/sidebar-edit-mode/template-revisions/index.js +1 -1
  125. package/build-module/components/sidebar-edit-mode/template-revisions/index.js.map +1 -1
  126. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +70 -14
  127. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  128. package/build-module/components/sidebar-navigation-screen-main/index.js +21 -32
  129. package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -1
  130. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js +141 -0
  131. package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -0
  132. package/build-module/components/sidebar-navigation-screen-navigation-menus/constants.js +10 -0
  133. package/build-module/components/sidebar-navigation-screen-navigation-menus/constants.js.map +1 -0
  134. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +52 -103
  135. package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
  136. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +71 -0
  137. package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -0
  138. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +12 -71
  139. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js.map +1 -1
  140. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigator-button.js +40 -0
  141. package/build-module/components/sidebar-navigation-screen-navigation-menus/navigator-button.js.map +1 -0
  142. package/build-module/components/sidebar-navigation-screen-templates/index.js +35 -11
  143. package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
  144. package/build-module/components/site-hub/index.js +1 -3
  145. package/build-module/components/site-hub/index.js.map +1 -1
  146. package/build-module/components/style-book/index.js +93 -20
  147. package/build-module/components/style-book/index.js.map +1 -1
  148. package/build-module/components/use-edited-entity-record/index.js +8 -4
  149. package/build-module/components/use-edited-entity-record/index.js.map +1 -1
  150. package/build-module/hooks/commands/use-edit-mode-commands.js +86 -0
  151. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -0
  152. package/build-module/store/actions.js +5 -3
  153. package/build-module/store/actions.js.map +1 -1
  154. package/build-style/style-rtl.css +233 -210
  155. package/build-style/style.css +234 -210
  156. package/package.json +37 -37
  157. package/src/components/add-new-template/add-custom-generic-template-modal-content.js +82 -0
  158. package/src/components/add-new-template/{add-custom-template-modal.js → add-custom-template-modal-content.js} +13 -26
  159. package/src/components/add-new-template/new-template.js +139 -153
  160. package/src/components/add-new-template/style.scss +79 -66
  161. package/src/components/block-editor/index.js +2 -3
  162. package/src/components/create-template-part-modal/index.js +19 -25
  163. package/src/components/editor/index.js +16 -45
  164. package/src/components/editor/style.scss +21 -6
  165. package/src/components/editor-canvas-container/index.js +28 -19
  166. package/src/components/global-styles/screen-block.js +74 -3
  167. package/src/components/global-styles/screen-revisions/index.js +3 -11
  168. package/src/components/global-styles/screen-revisions/revisions-buttons.js +33 -25
  169. package/src/components/global-styles/screen-revisions/style.scss +3 -2
  170. package/src/components/global-styles/screen-revisions/test/use-global-styles-revisions.js +16 -3
  171. package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +15 -19
  172. package/src/components/global-styles/screen-root.js +5 -3
  173. package/src/components/global-styles/style-variations-container.js +13 -18
  174. package/src/components/global-styles/style.scss +3 -0
  175. package/src/components/global-styles/ui.js +11 -9
  176. package/src/components/header-edit-mode/document-actions/index.js +26 -129
  177. package/src/components/header-edit-mode/document-actions/style.scss +28 -59
  178. package/src/components/header-edit-mode/index.js +18 -0
  179. package/src/components/header-edit-mode/style.scss +1 -0
  180. package/src/components/layout/hooks.js +46 -0
  181. package/src/components/layout/index.js +56 -125
  182. package/src/components/layout/style.scss +8 -2
  183. package/src/components/list/actions/index.js +12 -5
  184. package/src/components/list/style.scss +1 -0
  185. package/src/components/resizable-frame/index.js +253 -0
  186. package/src/components/resizable-frame/style.scss +69 -0
  187. package/src/components/revisions/index.js +1 -0
  188. package/src/components/secondary-sidebar/list-view-sidebar.js +2 -1
  189. package/src/components/sidebar/index.js +4 -4
  190. package/src/components/sidebar-edit-mode/template-revisions/index.js +1 -2
  191. package/src/components/sidebar-navigation-item/style.scss +9 -0
  192. package/src/components/sidebar-navigation-screen/style.scss +1 -2
  193. package/src/components/sidebar-navigation-screen-global-styles/index.js +106 -21
  194. package/src/components/sidebar-navigation-screen-main/index.js +35 -52
  195. package/src/components/sidebar-navigation-screen-navigation-menu/index.js +157 -0
  196. package/src/components/sidebar-navigation-screen-navigation-menus/constants.js +9 -0
  197. package/src/components/sidebar-navigation-screen-navigation-menus/index.js +63 -117
  198. package/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +83 -0
  199. package/src/components/sidebar-navigation-screen-navigation-menus/navigation-menu-content.js +6 -72
  200. package/src/components/sidebar-navigation-screen-navigation-menus/navigator-button.js +47 -0
  201. package/src/components/sidebar-navigation-screen-navigation-menus/style.scss +6 -20
  202. package/src/components/sidebar-navigation-screen-templates/index.js +53 -14
  203. package/src/components/site-hub/index.js +8 -9
  204. package/src/components/start-template-options/style.scss +20 -21
  205. package/src/components/style-book/index.js +132 -43
  206. package/src/components/style-book/style.scss +19 -0
  207. package/src/components/use-edited-entity-record/index.js +12 -3
  208. package/src/hooks/commands/use-edit-mode-commands.js +79 -0
  209. package/src/store/actions.js +4 -5
  210. package/src/store/test/utils.js +15 -5
  211. package/src/style.scss +1 -1
  212. package/build/components/add-new-template/add-custom-generic-template-modal.js.map +0 -1
  213. package/build/components/add-new-template/add-custom-template-modal.js.map +0 -1
  214. package/build/components/global-styles/border-panel.js +0 -135
  215. package/build/components/global-styles/border-panel.js.map +0 -1
  216. package/build/components/navigate-to-link/index.js +0 -51
  217. package/build/components/navigate-to-link/index.js.map +0 -1
  218. package/build/components/sidebar-navigation-screen-navigation-menus/loader.js +0 -19
  219. package/build/components/sidebar-navigation-screen-navigation-menus/loader.js.map +0 -1
  220. package/build/components/template-details/edit-template-title.js +0 -42
  221. package/build/components/template-details/edit-template-title.js.map +0 -1
  222. package/build/components/template-details/index.js +0 -103
  223. package/build/components/template-details/index.js.map +0 -1
  224. package/build/components/template-details/template-areas.js +0 -166
  225. package/build/components/template-details/template-areas.js.map +0 -1
  226. package/build/components/template-details/template-part-area-selector.js +0 -48
  227. package/build/components/template-details/template-part-area-selector.js.map +0 -1
  228. package/build-module/components/add-new-template/add-custom-generic-template-modal.js.map +0 -1
  229. package/build-module/components/add-new-template/add-custom-template-modal.js.map +0 -1
  230. package/build-module/components/global-styles/border-panel.js +0 -125
  231. package/build-module/components/global-styles/border-panel.js.map +0 -1
  232. package/build-module/components/navigate-to-link/index.js +0 -39
  233. package/build-module/components/navigate-to-link/index.js.map +0 -1
  234. package/build-module/components/sidebar-navigation-screen-navigation-menus/loader.js +0 -11
  235. package/build-module/components/sidebar-navigation-screen-navigation-menus/loader.js.map +0 -1
  236. package/build-module/components/template-details/edit-template-title.js +0 -33
  237. package/build-module/components/template-details/edit-template-title.js.map +0 -1
  238. package/build-module/components/template-details/index.js +0 -83
  239. package/build-module/components/template-details/index.js.map +0 -1
  240. package/build-module/components/template-details/template-areas.js +0 -145
  241. package/build-module/components/template-details/template-areas.js.map +0 -1
  242. package/build-module/components/template-details/template-part-area-selector.js +0 -36
  243. package/build-module/components/template-details/template-part-area-selector.js.map +0 -1
  244. package/src/components/add-new-template/add-custom-generic-template-modal.js +0 -101
  245. package/src/components/global-styles/border-panel.js +0 -114
  246. package/src/components/navigate-to-link/index.js +0 -46
  247. package/src/components/sidebar-navigation-screen-navigation-menus/loader.js +0 -9
  248. package/src/components/template-details/edit-template-title.js +0 -41
  249. package/src/components/template-details/index.js +0 -113
  250. package/src/components/template-details/style.scss +0 -72
  251. package/src/components/template-details/template-areas.js +0 -167
  252. package/src/components/template-details/template-part-area-selector.js +0 -39
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/editor/index.js"],"names":["useEffect","useMemo","useState","useSelect","useDispatch","Notice","EntityProvider","store","coreStore","preferencesStore","BlockContextProvider","BlockBreadcrumb","blockEditorStore","InterfaceSkeleton","ComplementaryArea","interfaceStore","EditorNotices","EditorSnackbars","__","sprintf","SidebarComplementaryAreaFills","BlockEditor","CodeEditor","KeyboardShortcutsEditMode","InserterSidebar","ListViewSidebar","WelcomeGuide","StartTemplateOptions","editSiteStore","GlobalStylesRenderer","useTitle","CanvasSpinner","unlock","useEditedEntityRecord","SidebarFixedBottomSlot","interfaceLabels","body","sidebar","actions","footer","useIsSiteEditorLoading","isLoaded","hasLoadedPost","hasResolvingSelectors","select","loaded","setLoaded","inLoadingPause","timeout","setTimeout","clearTimeout","Editor","record","editedPost","getTitle","id","editedPostId","type","editedPostType","context","editorMode","canvasMode","blockEditorMode","isRightSidebarOpen","isInserterOpen","isListViewOpen","showIconLabels","showBlockBreadcrumbs","getEditedPostContext","getEditorMode","getCanvasMode","isInserterOpened","isListViewOpened","__unstableGetEditorMode","getActiveComplementaryArea","name","get","setEditedPostContext","isViewMode","isEditMode","showVisualEditor","shouldShowBlockBreakcrumbs","shouldShowInserter","shouldShowListView","secondarySidebarLabel","blockContext","queryContext","page","newQueryContext","title","isLoading","window","__experimentalEnableThemePreviews","secondarySidebar"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useMemo, useState } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { Notice } from '@wordpress/components';\nimport { EntityProvider, store as coreStore } from '@wordpress/core-data';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tBlockContextProvider,\n\tBlockBreadcrumb,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tInterfaceSkeleton,\n\tComplementaryArea,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport { EditorNotices, EditorSnackbars } from '@wordpress/editor';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { SidebarComplementaryAreaFills } from '../sidebar-edit-mode';\nimport BlockEditor from '../block-editor';\nimport CodeEditor from '../code-editor';\nimport KeyboardShortcutsEditMode from '../keyboard-shortcuts/edit-mode';\nimport InserterSidebar from '../secondary-sidebar/inserter-sidebar';\nimport ListViewSidebar from '../secondary-sidebar/list-view-sidebar';\nimport WelcomeGuide from '../welcome-guide';\nimport StartTemplateOptions from '../start-template-options';\nimport { store as editSiteStore } from '../../store';\nimport { GlobalStylesRenderer } from '../global-styles-renderer';\n\nimport useTitle from '../routes/use-title';\nimport CanvasSpinner from '../canvas-spinner';\nimport { unlock } from '../../private-apis';\nimport useEditedEntityRecord from '../use-edited-entity-record';\nimport { SidebarFixedBottomSlot } from '../sidebar-edit-mode/sidebar-fixed-bottom';\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\nfunction useIsSiteEditorLoading() {\n\tconst { isLoaded: hasLoadedPost } = useEditedEntityRecord();\n\tconst { hasResolvingSelectors } = useSelect( ( select ) => {\n\t\treturn {\n\t\t\thasResolvingSelectors: select( coreStore ).hasResolvingSelectors(),\n\t\t};\n\t} );\n\tconst [ loaded, setLoaded ] = useState( false );\n\tconst inLoadingPause = ! loaded && ! hasResolvingSelectors;\n\n\tuseEffect( () => {\n\t\tif ( inLoadingPause ) {\n\t\t\t/*\n\t\t\t * We're using an arbitrary 1s timeout here to catch brief moments\n\t\t\t * without any resolving selectors that would result in displaying\n\t\t\t * brief flickers of loading state and loaded state.\n\t\t\t *\n\t\t\t * It's worth experimenting with different values, since this also\n\t\t\t * adds 1s of artificial delay after loading has finished.\n\t\t\t */\n\t\t\tconst timeout = setTimeout( () => {\n\t\t\t\tsetLoaded( true );\n\t\t\t}, 1000 );\n\n\t\t\treturn () => {\n\t\t\t\tclearTimeout( timeout );\n\t\t\t};\n\t\t}\n\t}, [ inLoadingPause ] );\n\n\treturn ! loaded || ! hasLoadedPost;\n}\n\nexport default function Editor() {\n\tconst {\n\t\trecord: editedPost,\n\t\tgetTitle,\n\t\tisLoaded: hasLoadedPost,\n\t} = useEditedEntityRecord();\n\n\tconst { id: editedPostId, type: editedPostType } = editedPost;\n\n\tconst {\n\t\tcontext,\n\t\teditorMode,\n\t\tcanvasMode,\n\t\tblockEditorMode,\n\t\tisRightSidebarOpen,\n\t\tisInserterOpen,\n\t\tisListViewOpen,\n\t\tshowIconLabels,\n\t\tshowBlockBreadcrumbs,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetEditedPostContext,\n\t\t\tgetEditorMode,\n\t\t\tgetCanvasMode,\n\t\t\tisInserterOpened,\n\t\t\tisListViewOpened,\n\t\t} = unlock( select( editSiteStore ) );\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\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\tcontext: getEditedPostContext(),\n\t\t\teditorMode: getEditorMode(),\n\t\t\tcanvasMode: getCanvasMode(),\n\t\t\tblockEditorMode: __unstableGetEditorMode(),\n\t\t\tisInserterOpen: isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tisRightSidebarOpen: getActiveComplementaryArea(\n\t\t\t\teditSiteStore.name\n\t\t\t),\n\t\t\tshowIconLabels: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showIconLabels'\n\t\t\t),\n\t\t\tshowBlockBreadcrumbs: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst { setEditedPostContext } = useDispatch( editSiteStore );\n\n\tconst isViewMode = canvasMode === 'view';\n\tconst isEditMode = canvasMode === 'edit';\n\tconst showVisualEditor = isViewMode || editorMode === 'visual';\n\tconst shouldShowBlockBreakcrumbs =\n\t\tshowBlockBreadcrumbs &&\n\t\tisEditMode &&\n\t\tshowVisualEditor &&\n\t\tblockEditorMode !== 'zoom-out';\n\tconst shouldShowInserter = isEditMode && showVisualEditor && isInserterOpen;\n\tconst shouldShowListView = isEditMode && showVisualEditor && isListViewOpen;\n\tconst secondarySidebarLabel = isListViewOpen\n\t\t? __( 'List View' )\n\t\t: __( 'Block Library' );\n\tconst blockContext = useMemo(\n\t\t() => ( {\n\t\t\t...context,\n\t\t\tqueryContext: [\n\t\t\t\tcontext?.queryContext || { page: 1 },\n\t\t\t\t( newQueryContext ) =>\n\t\t\t\t\tsetEditedPostContext( {\n\t\t\t\t\t\t...context,\n\t\t\t\t\t\tqueryContext: {\n\t\t\t\t\t\t\t...context?.queryContext,\n\t\t\t\t\t\t\t...newQueryContext,\n\t\t\t\t\t\t},\n\t\t\t\t\t} ),\n\t\t\t],\n\t\t} ),\n\t\t[ context, setEditedPostContext ]\n\t);\n\n\tlet title;\n\tif ( hasLoadedPost ) {\n\t\tconst type =\n\t\t\teditedPostType === 'wp_template'\n\t\t\t\t? __( 'Template' )\n\t\t\t\t: __( 'Template Part' );\n\t\ttitle = sprintf(\n\t\t\t// translators: A breadcrumb trail in browser tab. %1$s: title of template being edited, %2$s: type of template (Template or Template Part).\n\t\t\t__( '%1$s ‹ %2$s ‹ Editor' ),\n\t\t\tgetTitle(),\n\t\t\ttype\n\t\t);\n\t}\n\n\t// Only announce the title once the editor is ready to prevent \"Replace\"\n\t// action in <URlQueryController> from double-announcing.\n\tuseTitle( hasLoadedPost && title );\n\n\tconst isLoading = useIsSiteEditorLoading();\n\n\treturn (\n\t\t<>\n\t\t\t{ isLoading ? <CanvasSpinner /> : null }\n\t\t\t{ isEditMode && <WelcomeGuide /> }\n\t\t\t<EntityProvider kind=\"root\" type=\"site\">\n\t\t\t\t<EntityProvider\n\t\t\t\t\tkind=\"postType\"\n\t\t\t\t\ttype={ editedPostType }\n\t\t\t\t\tid={ editedPostId }\n\t\t\t\t>\n\t\t\t\t\t<BlockContextProvider value={ blockContext }>\n\t\t\t\t\t\t<SidebarComplementaryAreaFills />\n\t\t\t\t\t\t{ isEditMode && <StartTemplateOptions /> }\n\t\t\t\t\t\t<InterfaceSkeleton\n\t\t\t\t\t\t\tenableRegionNavigation={ false }\n\t\t\t\t\t\t\tclassName={ showIconLabels && 'show-icon-labels' }\n\t\t\t\t\t\t\tnotices={\n\t\t\t\t\t\t\t\t( isEditMode ||\n\t\t\t\t\t\t\t\t\twindow?.__experimentalEnableThemePreviews ) && (\n\t\t\t\t\t\t\t\t\t<EditorSnackbars />\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcontent={\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<GlobalStylesRenderer />\n\t\t\t\t\t\t\t\t\t{ isEditMode && <EditorNotices /> }\n\t\t\t\t\t\t\t\t\t{ showVisualEditor && editedPost && (\n\t\t\t\t\t\t\t\t\t\t<BlockEditor />\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ editorMode === 'text' &&\n\t\t\t\t\t\t\t\t\t\teditedPost &&\n\t\t\t\t\t\t\t\t\t\tisEditMode && <CodeEditor /> }\n\t\t\t\t\t\t\t\t\t{ hasLoadedPost && ! editedPost && (\n\t\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\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\t\t\"You attempted to edit an item that doesn't exist. Perhaps it was deleted?\"\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ isEditMode && (\n\t\t\t\t\t\t\t\t\t\t<KeyboardShortcutsEditMode />\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}\n\t\t\t\t\t\t\tsecondarySidebar={\n\t\t\t\t\t\t\t\tisEditMode &&\n\t\t\t\t\t\t\t\t( ( shouldShowInserter && (\n\t\t\t\t\t\t\t\t\t<InserterSidebar />\n\t\t\t\t\t\t\t\t) ) ||\n\t\t\t\t\t\t\t\t\t( shouldShowListView && (\n\t\t\t\t\t\t\t\t\t\t<ListViewSidebar />\n\t\t\t\t\t\t\t\t\t) ) )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsidebar={\n\t\t\t\t\t\t\t\tisEditMode &&\n\t\t\t\t\t\t\t\tisRightSidebarOpen && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<ComplementaryArea.Slot scope=\"core/edit-site\" />\n\t\t\t\t\t\t\t\t\t\t<SidebarFixedBottomSlot />\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}\n\t\t\t\t\t\t\tfooter={\n\t\t\t\t\t\t\t\tshouldShowBlockBreakcrumbs && (\n\t\t\t\t\t\t\t\t\t<BlockBreadcrumb\n\t\t\t\t\t\t\t\t\t\trootLabelText={ __( 'Template' ) }\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}\n\t\t\t\t\t\t\tlabels={ {\n\t\t\t\t\t\t\t\t...interfaceLabels,\n\t\t\t\t\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockContextProvider>\n\t\t\t\t</EntityProvider>\n\t\t\t</EntityProvider>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/editor/index.js"],"names":["classnames","useMemo","useSelect","useDispatch","Notice","EntityProvider","store","preferencesStore","BlockContextProvider","BlockBreadcrumb","blockEditorStore","InterfaceSkeleton","ComplementaryArea","interfaceStore","EditorNotices","EditorSnackbars","__","sprintf","SidebarComplementaryAreaFills","BlockEditor","CodeEditor","KeyboardShortcutsEditMode","InserterSidebar","ListViewSidebar","WelcomeGuide","StartTemplateOptions","editSiteStore","GlobalStylesRenderer","useTitle","CanvasSpinner","unlock","useEditedEntityRecord","SidebarFixedBottomSlot","interfaceLabels","body","sidebar","actions","footer","Editor","isLoading","record","editedPost","getTitle","isLoaded","hasLoadedPost","id","editedPostId","type","editedPostType","context","editorMode","canvasMode","blockEditorMode","isRightSidebarOpen","isInserterOpen","isListViewOpen","showIconLabels","showBlockBreadcrumbs","select","getEditedPostContext","getEditorMode","getCanvasMode","isInserterOpened","isListViewOpened","__unstableGetEditorMode","getActiveComplementaryArea","name","get","setEditedPostContext","isViewMode","isEditMode","showVisualEditor","shouldShowBlockBreakcrumbs","shouldShowInserter","shouldShowListView","secondarySidebarLabel","blockContext","queryContext","page","newQueryContext","title","secondarySidebar"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { Notice } from '@wordpress/components';\nimport { EntityProvider } from '@wordpress/core-data';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tBlockContextProvider,\n\tBlockBreadcrumb,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tInterfaceSkeleton,\n\tComplementaryArea,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport { EditorNotices, EditorSnackbars } from '@wordpress/editor';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { SidebarComplementaryAreaFills } from '../sidebar-edit-mode';\nimport BlockEditor from '../block-editor';\nimport CodeEditor from '../code-editor';\nimport KeyboardShortcutsEditMode from '../keyboard-shortcuts/edit-mode';\nimport InserterSidebar from '../secondary-sidebar/inserter-sidebar';\nimport ListViewSidebar from '../secondary-sidebar/list-view-sidebar';\nimport WelcomeGuide from '../welcome-guide';\nimport StartTemplateOptions from '../start-template-options';\nimport { store as editSiteStore } from '../../store';\nimport { GlobalStylesRenderer } from '../global-styles-renderer';\n\nimport useTitle from '../routes/use-title';\nimport CanvasSpinner from '../canvas-spinner';\nimport { unlock } from '../../private-apis';\nimport useEditedEntityRecord from '../use-edited-entity-record';\nimport { SidebarFixedBottomSlot } from '../sidebar-edit-mode/sidebar-fixed-bottom';\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\nexport default function Editor( { isLoading } ) {\n\tconst {\n\t\trecord: editedPost,\n\t\tgetTitle,\n\t\tisLoaded: hasLoadedPost,\n\t} = useEditedEntityRecord();\n\n\tconst { id: editedPostId, type: editedPostType } = editedPost;\n\n\tconst {\n\t\tcontext,\n\t\teditorMode,\n\t\tcanvasMode,\n\t\tblockEditorMode,\n\t\tisRightSidebarOpen,\n\t\tisInserterOpen,\n\t\tisListViewOpen,\n\t\tshowIconLabels,\n\t\tshowBlockBreadcrumbs,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetEditedPostContext,\n\t\t\tgetEditorMode,\n\t\t\tgetCanvasMode,\n\t\t\tisInserterOpened,\n\t\t\tisListViewOpened,\n\t\t} = unlock( select( editSiteStore ) );\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\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\tcontext: getEditedPostContext(),\n\t\t\teditorMode: getEditorMode(),\n\t\t\tcanvasMode: getCanvasMode(),\n\t\t\tblockEditorMode: __unstableGetEditorMode(),\n\t\t\tisInserterOpen: isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tisRightSidebarOpen: getActiveComplementaryArea(\n\t\t\t\teditSiteStore.name\n\t\t\t),\n\t\t\tshowIconLabels: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showIconLabels'\n\t\t\t),\n\t\t\tshowBlockBreadcrumbs: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst { setEditedPostContext } = useDispatch( editSiteStore );\n\n\tconst isViewMode = canvasMode === 'view';\n\tconst isEditMode = canvasMode === 'edit';\n\tconst showVisualEditor = isViewMode || editorMode === 'visual';\n\tconst shouldShowBlockBreakcrumbs =\n\t\tshowBlockBreadcrumbs &&\n\t\tisEditMode &&\n\t\tshowVisualEditor &&\n\t\tblockEditorMode !== 'zoom-out';\n\tconst shouldShowInserter = isEditMode && showVisualEditor && isInserterOpen;\n\tconst shouldShowListView = isEditMode && showVisualEditor && isListViewOpen;\n\tconst secondarySidebarLabel = isListViewOpen\n\t\t? __( 'List View' )\n\t\t: __( 'Block Library' );\n\tconst blockContext = useMemo(\n\t\t() => ( {\n\t\t\t...context,\n\t\t\tqueryContext: [\n\t\t\t\tcontext?.queryContext || { page: 1 },\n\t\t\t\t( newQueryContext ) =>\n\t\t\t\t\tsetEditedPostContext( {\n\t\t\t\t\t\t...context,\n\t\t\t\t\t\tqueryContext: {\n\t\t\t\t\t\t\t...context?.queryContext,\n\t\t\t\t\t\t\t...newQueryContext,\n\t\t\t\t\t\t},\n\t\t\t\t\t} ),\n\t\t\t],\n\t\t} ),\n\t\t[ context, setEditedPostContext ]\n\t);\n\n\tlet title;\n\tif ( hasLoadedPost ) {\n\t\tconst type =\n\t\t\teditedPostType === 'wp_template'\n\t\t\t\t? __( 'Template' )\n\t\t\t\t: __( 'Template Part' );\n\t\ttitle = sprintf(\n\t\t\t// translators: A breadcrumb trail in browser tab. %1$s: title of template being edited, %2$s: type of template (Template or Template Part).\n\t\t\t__( '%1$s ‹ %2$s ‹ Editor' ),\n\t\t\tgetTitle(),\n\t\t\ttype\n\t\t);\n\t}\n\n\t// Only announce the title once the editor is ready to prevent \"Replace\"\n\t// action in <URlQueryController> from double-announcing.\n\tuseTitle( hasLoadedPost && title );\n\n\treturn (\n\t\t<>\n\t\t\t{ isLoading ? <CanvasSpinner /> : null }\n\t\t\t{ isEditMode && <WelcomeGuide /> }\n\t\t\t<EntityProvider kind=\"root\" type=\"site\">\n\t\t\t\t<EntityProvider\n\t\t\t\t\tkind=\"postType\"\n\t\t\t\t\ttype={ editedPostType }\n\t\t\t\t\tid={ editedPostId }\n\t\t\t\t>\n\t\t\t\t\t<BlockContextProvider value={ blockContext }>\n\t\t\t\t\t\t<SidebarComplementaryAreaFills />\n\t\t\t\t\t\t{ isEditMode && <StartTemplateOptions /> }\n\t\t\t\t\t\t<InterfaceSkeleton\n\t\t\t\t\t\t\tenableRegionNavigation={ false }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'edit-site-editor__interface-skeleton',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'show-icon-labels': showIconLabels,\n\t\t\t\t\t\t\t\t\t'is-loading': isLoading,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tnotices={ <EditorSnackbars /> }\n\t\t\t\t\t\t\tcontent={\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<GlobalStylesRenderer />\n\t\t\t\t\t\t\t\t\t{ isEditMode && <EditorNotices /> }\n\t\t\t\t\t\t\t\t\t{ showVisualEditor && editedPost && (\n\t\t\t\t\t\t\t\t\t\t<BlockEditor />\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ editorMode === 'text' &&\n\t\t\t\t\t\t\t\t\t\teditedPost &&\n\t\t\t\t\t\t\t\t\t\tisEditMode && <CodeEditor /> }\n\t\t\t\t\t\t\t\t\t{ hasLoadedPost && ! editedPost && (\n\t\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\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\t\t\"You attempted to edit an item that doesn't exist. Perhaps it was deleted?\"\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ isEditMode && (\n\t\t\t\t\t\t\t\t\t\t<KeyboardShortcutsEditMode />\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}\n\t\t\t\t\t\t\tsecondarySidebar={\n\t\t\t\t\t\t\t\tisEditMode &&\n\t\t\t\t\t\t\t\t( ( shouldShowInserter && (\n\t\t\t\t\t\t\t\t\t<InserterSidebar />\n\t\t\t\t\t\t\t\t) ) ||\n\t\t\t\t\t\t\t\t\t( shouldShowListView && (\n\t\t\t\t\t\t\t\t\t\t<ListViewSidebar />\n\t\t\t\t\t\t\t\t\t) ) )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsidebar={\n\t\t\t\t\t\t\t\tisEditMode &&\n\t\t\t\t\t\t\t\tisRightSidebarOpen && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<ComplementaryArea.Slot scope=\"core/edit-site\" />\n\t\t\t\t\t\t\t\t\t\t<SidebarFixedBottomSlot />\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}\n\t\t\t\t\t\t\tfooter={\n\t\t\t\t\t\t\t\tshouldShowBlockBreakcrumbs && (\n\t\t\t\t\t\t\t\t\t<BlockBreadcrumb\n\t\t\t\t\t\t\t\t\t\trootLabelText={ __( 'Template' ) }\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}\n\t\t\t\t\t\t\tlabels={ {\n\t\t\t\t\t\t\t\t...interfaceLabels,\n\t\t\t\t\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockContextProvider>\n\t\t\t\t</EntityProvider>\n\t\t\t</EntityProvider>\n\t\t</>\n\t);\n}\n"]}
@@ -16,6 +16,7 @@ import { useFocusOnMount, useFocusReturn } from '@wordpress/compose';
16
16
 
17
17
  import { unlock } from '../../private-apis';
18
18
  import { store as editSiteStore } from '../../store';
19
+ import ResizableEditor from '../block-editor/resizable-editor';
19
20
  /**
20
21
  * Returns a translated string for the title of the editor canvas container.
21
22
  *
@@ -52,7 +53,8 @@ function EditorCanvasContainer(_ref) {
52
53
  let {
53
54
  children,
54
55
  closeButtonLabel,
55
- onClose
56
+ onClose,
57
+ enableResizing = false
56
58
  } = _ref;
57
59
  const editorCanvasContainerView = useSelect(select => unlock(select(editSiteStore)).getEditorCanvasContainerView(), []);
58
60
  const [isClosed, setIsClosed] = useState(false);
@@ -90,7 +92,9 @@ function EditorCanvasContainer(_ref) {
90
92
  }
91
93
 
92
94
  const shouldShowCloseButton = onClose || closeButtonLabel;
93
- return createElement(EditorCanvasContainerFill, null, createElement("section", {
95
+ return createElement(EditorCanvasContainerFill, null, createElement(ResizableEditor, {
96
+ enableResizing: enableResizing
97
+ }, createElement("section", {
94
98
  className: "edit-site-editor-canvas-container",
95
99
  ref: shouldShowCloseButton ? focusOnMountRef : null,
96
100
  onKeyDown: closeOnEscape,
@@ -101,7 +105,7 @@ function EditorCanvasContainer(_ref) {
101
105
  label: closeButtonLabel || __('Close'),
102
106
  onClick: onCloseContainer,
103
107
  showTooltip: false
104
- }), childrenWithProps));
108
+ }), childrenWithProps)));
105
109
  }
106
110
 
107
111
  function useHasEditorCanvasContainer() {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/editor-canvas-container/index.js"],"names":["Children","cloneElement","useState","useMemo","Button","privateApis","componentsPrivateApis","__experimentalUseSlotFills","useSlotFills","ESCAPE","__","useDispatch","useSelect","closeSmall","useFocusOnMount","useFocusReturn","unlock","store","editSiteStore","getEditorCanvasContainerTitle","view","createPrivateSlotFill","SLOT_FILL_NAME","privateKey","Slot","EditorCanvasContainerSlot","Fill","EditorCanvasContainerFill","EditorCanvasContainer","children","closeButtonLabel","onClose","editorCanvasContainerView","select","getEditorCanvasContainerView","isClosed","setIsClosed","setEditorCanvasContainerView","focusOnMountRef","sectionFocusReturnRef","title","onCloseContainer","undefined","closeOnEscape","event","keyCode","defaultPrevented","preventDefault","childrenWithProps","Array","isArray","map","child","index","ref","shouldShowCloseButton","useHasEditorCanvasContainer","fills","length"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,QAAT,EAAmBC,YAAnB,EAAiCC,QAAjC,EAA2CC,OAA3C,QAA0D,oBAA1D;AACA,SACCC,MADD,EAECC,WAAW,IAAIC,qBAFhB,EAGCC,0BAA0B,IAAIC,YAH/B,QAIO,uBAJP;AAKA,SAASC,MAAT,QAAuB,qBAAvB;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,WAAT,EAAsBC,SAAtB,QAAuC,iBAAvC;AACA,SAASC,UAAT,QAA2B,kBAA3B;AACA,SAASC,eAAT,EAA0BC,cAA1B,QAAgD,oBAAhD;AAEA;AACA;AACA;;AACA,SAASC,MAAT,QAAuB,oBAAvB;AACA,SAASC,KAAK,IAAIC,aAAlB,QAAuC,aAAvC;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,SAASC,6BAAT,CAAwCC,IAAxC,EAA+C;AAC9C,UAASA,IAAT;AACC,SAAK,YAAL;AACC,aAAOV,EAAE,CAAE,YAAF,CAAT;;AACD,SAAK,yBAAL;AACC,aAAOA,EAAE,CAAE,yBAAF,CAAT;;AACD;AACC,aAAO,EAAP;AANF;AAQA,C,CAED;;;AACA,MAAM;AAAEW,EAAAA;AAAF,IAA4BL,MAAM,CAAEV,qBAAF,CAAxC;AACA,MAAMgB,cAAc,GAAG,mCAAvB;AACA,MAAM;AACLC,EAAAA,UADK;AAELC,EAAAA,IAAI,EAAEC,yBAFD;AAGLC,EAAAA,IAAI,EAAEC;AAHD,IAIFN,qBAAqB,CAAEC,cAAF,CAJzB;;AAMA,SAASM,qBAAT,OAA0E;AAAA,MAA1C;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,gBAAZ;AAA8BC,IAAAA;AAA9B,GAA0C;AACzE,QAAMC,yBAAyB,GAAGpB,SAAS,CACxCqB,MAAF,IACCjB,MAAM,CAAEiB,MAAM,CAAEf,aAAF,CAAR,CAAN,CAAkCgB,4BAAlC,EAFyC,EAG1C,EAH0C,CAA3C;AAKA,QAAM,CAAEC,QAAF,EAAYC,WAAZ,IAA4BlC,QAAQ,CAAE,KAAF,CAA1C;AACA,QAAM;AAAEmC,IAAAA;AAAF,MAAmCrB,MAAM,CAC9CL,WAAW,CAAEO,aAAF,CADmC,CAA/C;AAGA,QAAMoB,eAAe,GAAGxB,eAAe,CAAE,cAAF,CAAvC;AACA,QAAMyB,qBAAqB,GAAGxB,cAAc,EAA5C;AACA,QAAMyB,KAAK,GAAGrC,OAAO,CACpB,MAAMgB,6BAA6B,CAAEa,yBAAF,CADf,EAEpB,CAAEA,yBAAF,CAFoB,CAArB;;AAIA,WAASS,gBAAT,GAA4B;AAC3B,QAAK,OAAOV,OAAP,KAAmB,UAAxB,EAAqC;AACpCA,MAAAA,OAAO;AACP;;AACDM,IAAAA,4BAA4B,CAAEK,SAAF,CAA5B;AACAN,IAAAA,WAAW,CAAE,IAAF,CAAX;AACA;;AAED,WAASO,aAAT,CAAwBC,KAAxB,EAAgC;AAC/B,QAAKA,KAAK,CAACC,OAAN,KAAkBpC,MAAlB,IAA4B,CAAEmC,KAAK,CAACE,gBAAzC,EAA4D;AAC3DF,MAAAA,KAAK,CAACG,cAAN;AACAN,MAAAA,gBAAgB;AAChB;AACD;;AAED,QAAMO,iBAAiB,GAAGC,KAAK,CAACC,OAAN,CAAerB,QAAf,IACvB7B,QAAQ,CAACmD,GAAT,CAActB,QAAd,EAAwB,CAAEuB,KAAF,EAASC,KAAT,KACxBA,KAAK,KAAK,CAAV,GACGpD,YAAY,CAAEmD,KAAF,EAAS;AACrBE,IAAAA,GAAG,EAAEf;AADgB,GAAT,CADf,GAIGa,KALH,CADuB,GAQvBnD,YAAY,CAAE4B,QAAF,EAAY;AACxByB,IAAAA,GAAG,EAAEf;AADmB,GAAZ,CARf;;AAYA,MAAKJ,QAAL,EAAgB;AACf,WAAO,IAAP;AACA;;AAED,QAAMoB,qBAAqB,GAAGxB,OAAO,IAAID,gBAAzC;AAEA,SACC,cAAC,yBAAD,QAEC;AACC,IAAA,SAAS,EAAC,mCADX;AAEC,IAAA,GAAG,EAAGyB,qBAAqB,GAAGjB,eAAH,GAAqB,IAFjD;AAGC,IAAA,SAAS,EAAGK,aAHb;AAIC,kBAAaH;AAJd,KAMGe,qBAAqB,IACtB,cAAC,MAAD;AACC,IAAA,SAAS,EAAC,iDADX;AAEC,IAAA,IAAI,EAAG1C,UAFR;AAGC,IAAA,KAAK,EAAGiB,gBAAgB,IAAIpB,EAAE,CAAE,OAAF,CAH/B;AAIC,IAAA,OAAO,EAAG+B,gBAJX;AAKC,IAAA,WAAW,EAAG;AALf,IAPF,EAeGO,iBAfH,CAFD,CADD;AAsBA;;AACD,SAASQ,2BAAT,GAAuC;AACtC,QAAMC,KAAK,GAAGjD,YAAY,CAAEe,UAAF,CAA1B;AACA,SAAO,CAAC,EAAEkC,KAAF,aAAEA,KAAF,eAAEA,KAAK,CAAEC,MAAT,CAAR;AACA;;AAED9B,qBAAqB,CAACJ,IAAtB,GAA6BC,yBAA7B;AACA,eAAeG,qBAAf;AACA,SAAS4B,2BAAT,EAAsCrC,6BAAtC","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Children, cloneElement, useState, useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tprivateApis as componentsPrivateApis,\n\t__experimentalUseSlotFills as useSlotFills,\n} from '@wordpress/components';\nimport { ESCAPE } from '@wordpress/keycodes';\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { closeSmall } from '@wordpress/icons';\nimport { useFocusOnMount, useFocusReturn } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../private-apis';\nimport { store as editSiteStore } from '../../store';\n\n/**\n * Returns a translated string for the title of the editor canvas container.\n *\n * @param {string} view Editor canvas container view.\n *\n * @return {string} Translated string corresponding to value of view. Default is ''.\n */\nfunction getEditorCanvasContainerTitle( view ) {\n\tswitch ( view ) {\n\t\tcase 'style-book':\n\t\t\treturn __( 'Style Book' );\n\t\tcase 'global-styles-revisions':\n\t\t\treturn __( 'Global styles revisions' );\n\t\tdefault:\n\t\t\treturn '';\n\t}\n}\n\n// Creates a private slot fill.\nconst { createPrivateSlotFill } = unlock( componentsPrivateApis );\nconst SLOT_FILL_NAME = 'EditSiteEditorCanvasContainerSlot';\nconst {\n\tprivateKey,\n\tSlot: EditorCanvasContainerSlot,\n\tFill: EditorCanvasContainerFill,\n} = createPrivateSlotFill( SLOT_FILL_NAME );\n\nfunction EditorCanvasContainer( { children, closeButtonLabel, onClose } ) {\n\tconst editorCanvasContainerView = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( editSiteStore ) ).getEditorCanvasContainerView(),\n\t\t[]\n\t);\n\tconst [ isClosed, setIsClosed ] = useState( false );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst focusOnMountRef = useFocusOnMount( 'firstElement' );\n\tconst sectionFocusReturnRef = useFocusReturn();\n\tconst title = useMemo(\n\t\t() => getEditorCanvasContainerTitle( editorCanvasContainerView ),\n\t\t[ editorCanvasContainerView ]\n\t);\n\tfunction onCloseContainer() {\n\t\tif ( typeof onClose === 'function' ) {\n\t\t\tonClose();\n\t\t}\n\t\tsetEditorCanvasContainerView( undefined );\n\t\tsetIsClosed( true );\n\t}\n\n\tfunction closeOnEscape( event ) {\n\t\tif ( event.keyCode === ESCAPE && ! event.defaultPrevented ) {\n\t\t\tevent.preventDefault();\n\t\t\tonCloseContainer();\n\t\t}\n\t}\n\n\tconst childrenWithProps = Array.isArray( children )\n\t\t? Children.map( children, ( child, index ) =>\n\t\t\t\tindex === 0\n\t\t\t\t\t? cloneElement( child, {\n\t\t\t\t\t\t\tref: sectionFocusReturnRef,\n\t\t\t\t\t } )\n\t\t\t\t\t: child\n\t\t )\n\t\t: cloneElement( children, {\n\t\t\t\tref: sectionFocusReturnRef,\n\t\t } );\n\n\tif ( isClosed ) {\n\t\treturn null;\n\t}\n\n\tconst shouldShowCloseButton = onClose || closeButtonLabel;\n\n\treturn (\n\t\t<EditorCanvasContainerFill>\n\t\t\t{ /* eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions */ }\n\t\t\t<section\n\t\t\t\tclassName=\"edit-site-editor-canvas-container\"\n\t\t\t\tref={ shouldShowCloseButton ? focusOnMountRef : null }\n\t\t\t\tonKeyDown={ closeOnEscape }\n\t\t\t\taria-label={ title }\n\t\t\t>\n\t\t\t\t{ shouldShowCloseButton && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-site-editor-canvas-container__close-button\"\n\t\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\t\tlabel={ closeButtonLabel || __( 'Close' ) }\n\t\t\t\t\t\tonClick={ onCloseContainer }\n\t\t\t\t\t\tshowTooltip={ false }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ childrenWithProps }\n\t\t\t</section>\n\t\t</EditorCanvasContainerFill>\n\t);\n}\nfunction useHasEditorCanvasContainer() {\n\tconst fills = useSlotFills( privateKey );\n\treturn !! fills?.length;\n}\n\nEditorCanvasContainer.Slot = EditorCanvasContainerSlot;\nexport default EditorCanvasContainer;\nexport { useHasEditorCanvasContainer, getEditorCanvasContainerTitle };\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/editor-canvas-container/index.js"],"names":["Children","cloneElement","useState","useMemo","Button","privateApis","componentsPrivateApis","__experimentalUseSlotFills","useSlotFills","ESCAPE","__","useDispatch","useSelect","closeSmall","useFocusOnMount","useFocusReturn","unlock","store","editSiteStore","ResizableEditor","getEditorCanvasContainerTitle","view","createPrivateSlotFill","SLOT_FILL_NAME","privateKey","Slot","EditorCanvasContainerSlot","Fill","EditorCanvasContainerFill","EditorCanvasContainer","children","closeButtonLabel","onClose","enableResizing","editorCanvasContainerView","select","getEditorCanvasContainerView","isClosed","setIsClosed","setEditorCanvasContainerView","focusOnMountRef","sectionFocusReturnRef","title","onCloseContainer","undefined","closeOnEscape","event","keyCode","defaultPrevented","preventDefault","childrenWithProps","Array","isArray","map","child","index","ref","shouldShowCloseButton","useHasEditorCanvasContainer","fills","length"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Children, cloneElement, useState, useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tprivateApis as componentsPrivateApis,\n\t__experimentalUseSlotFills as useSlotFills,\n} from '@wordpress/components';\nimport { ESCAPE } from '@wordpress/keycodes';\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { closeSmall } from '@wordpress/icons';\nimport { useFocusOnMount, useFocusReturn } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../private-apis';\nimport { store as editSiteStore } from '../../store';\nimport ResizableEditor from '../block-editor/resizable-editor';\n\n/**\n * Returns a translated string for the title of the editor canvas container.\n *\n * @param {string} view Editor canvas container view.\n *\n * @return {string} Translated string corresponding to value of view. Default is ''.\n */\nfunction getEditorCanvasContainerTitle( view ) {\n\tswitch ( view ) {\n\t\tcase 'style-book':\n\t\t\treturn __( 'Style Book' );\n\t\tcase 'global-styles-revisions':\n\t\t\treturn __( 'Global styles revisions' );\n\t\tdefault:\n\t\t\treturn '';\n\t}\n}\n\n// Creates a private slot fill.\nconst { createPrivateSlotFill } = unlock( componentsPrivateApis );\nconst SLOT_FILL_NAME = 'EditSiteEditorCanvasContainerSlot';\nconst {\n\tprivateKey,\n\tSlot: EditorCanvasContainerSlot,\n\tFill: EditorCanvasContainerFill,\n} = createPrivateSlotFill( SLOT_FILL_NAME );\n\nfunction EditorCanvasContainer( {\n\tchildren,\n\tcloseButtonLabel,\n\tonClose,\n\tenableResizing = false,\n} ) {\n\tconst editorCanvasContainerView = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( editSiteStore ) ).getEditorCanvasContainerView(),\n\t\t[]\n\t);\n\tconst [ isClosed, setIsClosed ] = useState( false );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst focusOnMountRef = useFocusOnMount( 'firstElement' );\n\tconst sectionFocusReturnRef = useFocusReturn();\n\tconst title = useMemo(\n\t\t() => getEditorCanvasContainerTitle( editorCanvasContainerView ),\n\t\t[ editorCanvasContainerView ]\n\t);\n\n\tfunction onCloseContainer() {\n\t\tif ( typeof onClose === 'function' ) {\n\t\t\tonClose();\n\t\t}\n\t\tsetEditorCanvasContainerView( undefined );\n\t\tsetIsClosed( true );\n\t}\n\n\tfunction closeOnEscape( event ) {\n\t\tif ( event.keyCode === ESCAPE && ! event.defaultPrevented ) {\n\t\t\tevent.preventDefault();\n\t\t\tonCloseContainer();\n\t\t}\n\t}\n\n\tconst childrenWithProps = Array.isArray( children )\n\t\t? Children.map( children, ( child, index ) =>\n\t\t\t\tindex === 0\n\t\t\t\t\t? cloneElement( child, {\n\t\t\t\t\t\t\tref: sectionFocusReturnRef,\n\t\t\t\t\t } )\n\t\t\t\t\t: child\n\t\t )\n\t\t: cloneElement( children, {\n\t\t\t\tref: sectionFocusReturnRef,\n\t\t } );\n\n\tif ( isClosed ) {\n\t\treturn null;\n\t}\n\n\tconst shouldShowCloseButton = onClose || closeButtonLabel;\n\n\treturn (\n\t\t<EditorCanvasContainerFill>\n\t\t\t<ResizableEditor enableResizing={ enableResizing }>\n\t\t\t\t{ /* eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions */ }\n\t\t\t\t<section\n\t\t\t\t\tclassName=\"edit-site-editor-canvas-container\"\n\t\t\t\t\tref={ shouldShowCloseButton ? focusOnMountRef : null }\n\t\t\t\t\tonKeyDown={ closeOnEscape }\n\t\t\t\t\taria-label={ title }\n\t\t\t\t>\n\t\t\t\t\t{ shouldShowCloseButton && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"edit-site-editor-canvas-container__close-button\"\n\t\t\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\t\t\tlabel={ closeButtonLabel || __( 'Close' ) }\n\t\t\t\t\t\t\tonClick={ onCloseContainer }\n\t\t\t\t\t\t\tshowTooltip={ false }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ childrenWithProps }\n\t\t\t\t</section>\n\t\t\t</ResizableEditor>\n\t\t</EditorCanvasContainerFill>\n\t);\n}\nfunction useHasEditorCanvasContainer() {\n\tconst fills = useSlotFills( privateKey );\n\treturn !! fills?.length;\n}\n\nEditorCanvasContainer.Slot = EditorCanvasContainerSlot;\nexport default EditorCanvasContainer;\nexport { useHasEditorCanvasContainer, getEditorCanvasContainerTitle };\n"]}
@@ -8,7 +8,7 @@ import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
8
8
  import { useMemo } from '@wordpress/element';
9
9
  import { useSelect } from '@wordpress/data';
10
10
  import { store as coreStore } from '@wordpress/core-data';
11
- import { PanelBody, __experimentalVStack as VStack } from '@wordpress/components';
11
+ import { PanelBody, __experimentalVStack as VStack, __experimentalHasSplitBorders as hasSplitBorders } from '@wordpress/components';
12
12
  import { __, sprintf } from '@wordpress/i18n';
13
13
  /**
14
14
  * Internal dependencies
@@ -19,6 +19,44 @@ import BlockPreviewPanel from './block-preview-panel';
19
19
  import { unlock } from '../../private-apis';
20
20
  import Subtitle from './subtitle';
21
21
  import { useBlockVariations, VariationsPanel } from './variations-panel';
22
+
23
+ function applyFallbackStyle(border) {
24
+ if (!border) {
25
+ return border;
26
+ }
27
+
28
+ const hasColorOrWidth = border.color || border.width;
29
+
30
+ if (!border.style && hasColorOrWidth) {
31
+ return { ...border,
32
+ style: 'solid'
33
+ };
34
+ }
35
+
36
+ if (border.style && !hasColorOrWidth) {
37
+ return undefined;
38
+ }
39
+
40
+ return border;
41
+ }
42
+
43
+ function applyAllFallbackStyles(border) {
44
+ if (!border) {
45
+ return border;
46
+ }
47
+
48
+ if (hasSplitBorders(border)) {
49
+ return {
50
+ top: applyFallbackStyle(border.top),
51
+ right: applyFallbackStyle(border.right),
52
+ bottom: applyFallbackStyle(border.bottom),
53
+ left: applyFallbackStyle(border.left)
54
+ };
55
+ }
56
+
57
+ return applyFallbackStyle(border);
58
+ }
59
+
22
60
  const {
23
61
  useHasDimensionsPanel,
24
62
  useHasTypographyPanel,
@@ -111,6 +149,46 @@ function ScreenBlock(_ref) {
111
149
  }
112
150
  };
113
151
 
152
+ const onChangeBorders = newStyle => {
153
+ if (!(newStyle !== null && newStyle !== void 0 && newStyle.border)) {
154
+ setStyle(newStyle);
155
+ return;
156
+ } // As Global Styles can't conditionally generate styles based on if
157
+ // other style properties have been set, we need to force split
158
+ // border definitions for user set global border styles. Border
159
+ // radius is derived from the same property i.e. `border.radius` if
160
+ // it is a string that is used. The longhand border radii styles are
161
+ // only generated if that property is an object.
162
+ //
163
+ // For borders (color, style, and width) those are all properties on
164
+ // the `border` style property. This means if the theme.json defined
165
+ // split borders and the user condenses them into a flat border or
166
+ // vice-versa we'd get both sets of styles which would conflict.
167
+
168
+
169
+ const {
170
+ radius,
171
+ ...newBorder
172
+ } = newStyle.border;
173
+ const border = applyAllFallbackStyles(newBorder);
174
+ const updatedBorder = !hasSplitBorders(border) ? {
175
+ top: border,
176
+ right: border,
177
+ bottom: border,
178
+ left: border
179
+ } : {
180
+ color: null,
181
+ style: null,
182
+ width: null,
183
+ ...border
184
+ };
185
+ setStyle({ ...newStyle,
186
+ border: { ...updatedBorder,
187
+ radius
188
+ }
189
+ });
190
+ };
191
+
114
192
  return createElement(Fragment, null, createElement(ScreenHeader, {
115
193
  title: variation ? currentBlockStyle.label : blockType.title
116
194
  }), createElement(BlockPreviewPanel, {
@@ -141,18 +219,18 @@ function ScreenBlock(_ref) {
141
219
  }), hasBorderPanel && createElement(StylesBorderPanel, {
142
220
  inheritedValue: inheritedStyle,
143
221
  value: style,
144
- onChange: setStyle,
222
+ onChange: onChangeBorders,
145
223
  settings: settings
146
224
  }), hasEffectsPanel && createElement(StylesEffectsPanel, {
147
225
  inheritedValue: inheritedStyleWithLayout,
148
226
  value: styleWithLayout,
149
- onChange: onChangeDimensions,
227
+ onChange: setStyle,
150
228
  settings: settings,
151
229
  includeLayoutControls: true
152
230
  }), hasFiltersPanel && createElement(StylesFiltersPanel, {
153
231
  inheritedValue: inheritedStyleWithLayout,
154
232
  value: styleWithLayout,
155
- onChange: onChangeDimensions,
233
+ onChange: setStyle,
156
234
  settings: { ...settings,
157
235
  color: { ...settings.color,
158
236
  customDuotone: false //TO FIX: Custom duotone only works on the block level right now
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/screen-block.js"],"names":["getBlockType","privateApis","blockEditorPrivateApis","useMemo","useSelect","store","coreStore","PanelBody","__experimentalVStack","VStack","__","sprintf","ScreenHeader","BlockPreviewPanel","unlock","Subtitle","useBlockVariations","VariationsPanel","useHasDimensionsPanel","useHasTypographyPanel","useHasBorderPanel","useGlobalSetting","useSettingsForBlockElement","useHasColorPanel","useHasEffectsPanel","useHasFiltersPanel","useGlobalStyle","BorderPanel","StylesBorderPanel","ColorPanel","StylesColorPanel","TypographyPanel","StylesTypographyPanel","DimensionsPanel","StylesDimensionsPanel","EffectsPanel","StylesEffectsPanel","FiltersPanel","StylesFiltersPanel","AdvancedPanel","StylesAdvancedPanel","ScreenBlock","name","variation","prefixParts","concat","prefix","join","style","shouldDecodeEncode","inheritedStyle","setStyle","rawSettings","setSettings","settings","blockType","blockVariations","hasTypographyPanel","hasColorPanel","hasBorderPanel","hasDimensionsPanel","hasEffectsPanel","hasFiltersPanel","hasVariationsPanel","length","canEditCSS","select","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","undefined","_links","currentBlockStyle","find","s","inheritedStyleWithLayout","layout","styleWithLayout","onChangeDimensions","newStyle","updatedStyle","label","title","color","customDuotone"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getBlockType } from '@wordpress/blocks';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tPanelBody,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from './header';\nimport BlockPreviewPanel from './block-preview-panel';\nimport { unlock } from '../../private-apis';\nimport Subtitle from './subtitle';\nimport { useBlockVariations, VariationsPanel } from './variations-panel';\n\nconst {\n\tuseHasDimensionsPanel,\n\tuseHasTypographyPanel,\n\tuseHasBorderPanel,\n\tuseGlobalSetting,\n\tuseSettingsForBlockElement,\n\tuseHasColorPanel,\n\tuseHasEffectsPanel,\n\tuseHasFiltersPanel,\n\tuseGlobalStyle,\n\tBorderPanel: StylesBorderPanel,\n\tColorPanel: StylesColorPanel,\n\tTypographyPanel: StylesTypographyPanel,\n\tDimensionsPanel: StylesDimensionsPanel,\n\tEffectsPanel: StylesEffectsPanel,\n\tFiltersPanel: StylesFiltersPanel,\n\tAdvancedPanel: StylesAdvancedPanel,\n} = unlock( blockEditorPrivateApis );\n\nfunction ScreenBlock( { name, variation } ) {\n\tlet prefixParts = [];\n\tif ( variation ) {\n\t\tprefixParts = [ 'variations', variation ].concat( prefixParts );\n\t}\n\tconst prefix = prefixParts.join( '.' );\n\n\tconst [ style ] = useGlobalStyle( prefix, name, 'user', {\n\t\tshouldDecodeEncode: false,\n\t} );\n\tconst [ inheritedStyle, setStyle ] = useGlobalStyle( prefix, name, 'all', {\n\t\tshouldDecodeEncode: false,\n\t} );\n\tconst [ rawSettings, setSettings ] = useGlobalSetting( '', name );\n\tconst settings = useSettingsForBlockElement( rawSettings, name );\n\tconst blockType = getBlockType( name );\n\tconst blockVariations = useBlockVariations( name );\n\tconst hasTypographyPanel = useHasTypographyPanel( settings );\n\tconst hasColorPanel = useHasColorPanel( settings );\n\tconst hasBorderPanel = useHasBorderPanel( settings );\n\tconst hasDimensionsPanel = useHasDimensionsPanel( settings );\n\tconst hasEffectsPanel = useHasEffectsPanel( settings );\n\tconst hasFiltersPanel = useHasFiltersPanel( settings );\n\tconst hasVariationsPanel = !! blockVariations?.length && ! variation;\n\tconst { canEditCSS } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\tselect( coreStore );\n\n\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\tconst globalStyles = globalStylesId\n\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\tcanEditCSS:\n\t\t\t\t!! globalStyles?._links?.[ 'wp:action-edit-css' ] ?? false,\n\t\t};\n\t}, [] );\n\tconst currentBlockStyle = variation\n\t\t? blockVariations.find( ( s ) => s.name === variation )\n\t\t: null;\n\n\t// These intermediary objects are needed because the \"layout\" property is stored\n\t// in settings rather than styles.\n\tconst inheritedStyleWithLayout = useMemo( () => {\n\t\treturn {\n\t\t\t...inheritedStyle,\n\t\t\tlayout: settings.layout,\n\t\t};\n\t}, [ inheritedStyle, settings.layout ] );\n\tconst styleWithLayout = useMemo( () => {\n\t\treturn {\n\t\t\t...style,\n\t\t\tlayout: settings.layout,\n\t\t};\n\t}, [ style, settings.layout ] );\n\tconst onChangeDimensions = ( newStyle ) => {\n\t\tconst updatedStyle = { ...newStyle };\n\t\tdelete updatedStyle.layout;\n\t\tsetStyle( updatedStyle );\n\n\t\tif ( newStyle.layout !== settings.layout ) {\n\t\t\tsetSettings( {\n\t\t\t\t...rawSettings,\n\t\t\t\tlayout: newStyle.layout,\n\t\t\t} );\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ variation ? currentBlockStyle.label : blockType.title }\n\t\t\t/>\n\t\t\t<BlockPreviewPanel name={ name } variation={ variation } />\n\t\t\t{ hasVariationsPanel && (\n\t\t\t\t<div className=\"edit-site-global-styles-screen-variations\">\n\t\t\t\t\t<VStack spacing={ 3 }>\n\t\t\t\t\t\t<Subtitle>{ __( 'Style Variations' ) }</Subtitle>\n\t\t\t\t\t\t<VariationsPanel name={ name } />\n\t\t\t\t\t</VStack>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ hasColorPanel && (\n\t\t\t\t<StylesColorPanel\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasTypographyPanel && (\n\t\t\t\t<StylesTypographyPanel\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasDimensionsPanel && (\n\t\t\t\t<StylesDimensionsPanel\n\t\t\t\t\tinheritedValue={ inheritedStyleWithLayout }\n\t\t\t\t\tvalue={ styleWithLayout }\n\t\t\t\t\tonChange={ onChangeDimensions }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tincludeLayoutControls\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasBorderPanel && (\n\t\t\t\t<StylesBorderPanel\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasEffectsPanel && (\n\t\t\t\t<StylesEffectsPanel\n\t\t\t\t\tinheritedValue={ inheritedStyleWithLayout }\n\t\t\t\t\tvalue={ styleWithLayout }\n\t\t\t\t\tonChange={ onChangeDimensions }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tincludeLayoutControls\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasFiltersPanel && (\n\t\t\t\t<StylesFiltersPanel\n\t\t\t\t\tinheritedValue={ inheritedStyleWithLayout }\n\t\t\t\t\tvalue={ styleWithLayout }\n\t\t\t\t\tonChange={ onChangeDimensions }\n\t\t\t\t\tsettings={ {\n\t\t\t\t\t\t...settings,\n\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\t...settings.color,\n\t\t\t\t\t\t\tcustomDuotone: false, //TO FIX: Custom duotone only works on the block level right now\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t\tincludeLayoutControls\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ canEditCSS && (\n\t\t\t\t<PanelBody title={ __( 'Advanced' ) } initialOpen={ false }>\n\t\t\t\t\t<p>\n\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t// translators: %s: is the name of a block e.g., 'Image' or 'Table'.\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'Add your own CSS to customize the appearance of the %s block.'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tblockType?.title\n\t\t\t\t\t\t) }\n\t\t\t\t\t</p>\n\t\t\t\t\t<StylesAdvancedPanel\n\t\t\t\t\t\tvalue={ style }\n\t\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default ScreenBlock;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/screen-block.js"],"names":["getBlockType","privateApis","blockEditorPrivateApis","useMemo","useSelect","store","coreStore","PanelBody","__experimentalVStack","VStack","__experimentalHasSplitBorders","hasSplitBorders","__","sprintf","ScreenHeader","BlockPreviewPanel","unlock","Subtitle","useBlockVariations","VariationsPanel","applyFallbackStyle","border","hasColorOrWidth","color","width","style","undefined","applyAllFallbackStyles","top","right","bottom","left","useHasDimensionsPanel","useHasTypographyPanel","useHasBorderPanel","useGlobalSetting","useSettingsForBlockElement","useHasColorPanel","useHasEffectsPanel","useHasFiltersPanel","useGlobalStyle","BorderPanel","StylesBorderPanel","ColorPanel","StylesColorPanel","TypographyPanel","StylesTypographyPanel","DimensionsPanel","StylesDimensionsPanel","EffectsPanel","StylesEffectsPanel","FiltersPanel","StylesFiltersPanel","AdvancedPanel","StylesAdvancedPanel","ScreenBlock","name","variation","prefixParts","concat","prefix","join","shouldDecodeEncode","inheritedStyle","setStyle","rawSettings","setSettings","settings","blockType","blockVariations","hasTypographyPanel","hasColorPanel","hasBorderPanel","hasDimensionsPanel","hasEffectsPanel","hasFiltersPanel","hasVariationsPanel","length","canEditCSS","select","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","_links","currentBlockStyle","find","s","inheritedStyleWithLayout","layout","styleWithLayout","onChangeDimensions","newStyle","updatedStyle","onChangeBorders","radius","newBorder","updatedBorder","label","title","customDuotone"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getBlockType } from '@wordpress/blocks';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tPanelBody,\n\t__experimentalVStack as VStack,\n\t__experimentalHasSplitBorders as hasSplitBorders,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from './header';\nimport BlockPreviewPanel from './block-preview-panel';\nimport { unlock } from '../../private-apis';\nimport Subtitle from './subtitle';\nimport { useBlockVariations, VariationsPanel } from './variations-panel';\n\nfunction applyFallbackStyle( border ) {\n\tif ( ! border ) {\n\t\treturn border;\n\t}\n\n\tconst hasColorOrWidth = border.color || border.width;\n\n\tif ( ! border.style && hasColorOrWidth ) {\n\t\treturn { ...border, style: 'solid' };\n\t}\n\n\tif ( border.style && ! hasColorOrWidth ) {\n\t\treturn undefined;\n\t}\n\n\treturn border;\n}\n\nfunction applyAllFallbackStyles( border ) {\n\tif ( ! border ) {\n\t\treturn border;\n\t}\n\n\tif ( hasSplitBorders( border ) ) {\n\t\treturn {\n\t\t\ttop: applyFallbackStyle( border.top ),\n\t\t\tright: applyFallbackStyle( border.right ),\n\t\t\tbottom: applyFallbackStyle( border.bottom ),\n\t\t\tleft: applyFallbackStyle( border.left ),\n\t\t};\n\t}\n\n\treturn applyFallbackStyle( border );\n}\n\nconst {\n\tuseHasDimensionsPanel,\n\tuseHasTypographyPanel,\n\tuseHasBorderPanel,\n\tuseGlobalSetting,\n\tuseSettingsForBlockElement,\n\tuseHasColorPanel,\n\tuseHasEffectsPanel,\n\tuseHasFiltersPanel,\n\tuseGlobalStyle,\n\tBorderPanel: StylesBorderPanel,\n\tColorPanel: StylesColorPanel,\n\tTypographyPanel: StylesTypographyPanel,\n\tDimensionsPanel: StylesDimensionsPanel,\n\tEffectsPanel: StylesEffectsPanel,\n\tFiltersPanel: StylesFiltersPanel,\n\tAdvancedPanel: StylesAdvancedPanel,\n} = unlock( blockEditorPrivateApis );\n\nfunction ScreenBlock( { name, variation } ) {\n\tlet prefixParts = [];\n\tif ( variation ) {\n\t\tprefixParts = [ 'variations', variation ].concat( prefixParts );\n\t}\n\tconst prefix = prefixParts.join( '.' );\n\n\tconst [ style ] = useGlobalStyle( prefix, name, 'user', {\n\t\tshouldDecodeEncode: false,\n\t} );\n\tconst [ inheritedStyle, setStyle ] = useGlobalStyle( prefix, name, 'all', {\n\t\tshouldDecodeEncode: false,\n\t} );\n\tconst [ rawSettings, setSettings ] = useGlobalSetting( '', name );\n\tconst settings = useSettingsForBlockElement( rawSettings, name );\n\tconst blockType = getBlockType( name );\n\tconst blockVariations = useBlockVariations( name );\n\tconst hasTypographyPanel = useHasTypographyPanel( settings );\n\tconst hasColorPanel = useHasColorPanel( settings );\n\tconst hasBorderPanel = useHasBorderPanel( settings );\n\tconst hasDimensionsPanel = useHasDimensionsPanel( settings );\n\tconst hasEffectsPanel = useHasEffectsPanel( settings );\n\tconst hasFiltersPanel = useHasFiltersPanel( settings );\n\tconst hasVariationsPanel = !! blockVariations?.length && ! variation;\n\tconst { canEditCSS } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\tselect( coreStore );\n\n\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\tconst globalStyles = globalStylesId\n\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\tcanEditCSS:\n\t\t\t\t!! globalStyles?._links?.[ 'wp:action-edit-css' ] ?? false,\n\t\t};\n\t}, [] );\n\tconst currentBlockStyle = variation\n\t\t? blockVariations.find( ( s ) => s.name === variation )\n\t\t: null;\n\n\t// These intermediary objects are needed because the \"layout\" property is stored\n\t// in settings rather than styles.\n\tconst inheritedStyleWithLayout = useMemo( () => {\n\t\treturn {\n\t\t\t...inheritedStyle,\n\t\t\tlayout: settings.layout,\n\t\t};\n\t}, [ inheritedStyle, settings.layout ] );\n\tconst styleWithLayout = useMemo( () => {\n\t\treturn {\n\t\t\t...style,\n\t\t\tlayout: settings.layout,\n\t\t};\n\t}, [ style, settings.layout ] );\n\tconst onChangeDimensions = ( newStyle ) => {\n\t\tconst updatedStyle = { ...newStyle };\n\t\tdelete updatedStyle.layout;\n\t\tsetStyle( updatedStyle );\n\n\t\tif ( newStyle.layout !== settings.layout ) {\n\t\t\tsetSettings( {\n\t\t\t\t...rawSettings,\n\t\t\t\tlayout: newStyle.layout,\n\t\t\t} );\n\t\t}\n\t};\n\tconst onChangeBorders = ( newStyle ) => {\n\t\tif ( ! newStyle?.border ) {\n\t\t\tsetStyle( newStyle );\n\t\t\treturn;\n\t\t}\n\n\t\t// As Global Styles can't conditionally generate styles based on if\n\t\t// other style properties have been set, we need to force split\n\t\t// border definitions for user set global border styles. Border\n\t\t// radius is derived from the same property i.e. `border.radius` if\n\t\t// it is a string that is used. The longhand border radii styles are\n\t\t// only generated if that property is an object.\n\t\t//\n\t\t// For borders (color, style, and width) those are all properties on\n\t\t// the `border` style property. This means if the theme.json defined\n\t\t// split borders and the user condenses them into a flat border or\n\t\t// vice-versa we'd get both sets of styles which would conflict.\n\t\tconst { radius, ...newBorder } = newStyle.border;\n\t\tconst border = applyAllFallbackStyles( newBorder );\n\t\tconst updatedBorder = ! hasSplitBorders( border )\n\t\t\t? {\n\t\t\t\t\ttop: border,\n\t\t\t\t\tright: border,\n\t\t\t\t\tbottom: border,\n\t\t\t\t\tleft: border,\n\t\t\t }\n\t\t\t: {\n\t\t\t\t\tcolor: null,\n\t\t\t\t\tstyle: null,\n\t\t\t\t\twidth: null,\n\t\t\t\t\t...border,\n\t\t\t };\n\n\t\tsetStyle( { ...newStyle, border: { ...updatedBorder, radius } } );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ variation ? currentBlockStyle.label : blockType.title }\n\t\t\t/>\n\t\t\t<BlockPreviewPanel name={ name } variation={ variation } />\n\t\t\t{ hasVariationsPanel && (\n\t\t\t\t<div className=\"edit-site-global-styles-screen-variations\">\n\t\t\t\t\t<VStack spacing={ 3 }>\n\t\t\t\t\t\t<Subtitle>{ __( 'Style Variations' ) }</Subtitle>\n\t\t\t\t\t\t<VariationsPanel name={ name } />\n\t\t\t\t\t</VStack>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ hasColorPanel && (\n\t\t\t\t<StylesColorPanel\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasTypographyPanel && (\n\t\t\t\t<StylesTypographyPanel\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasDimensionsPanel && (\n\t\t\t\t<StylesDimensionsPanel\n\t\t\t\t\tinheritedValue={ inheritedStyleWithLayout }\n\t\t\t\t\tvalue={ styleWithLayout }\n\t\t\t\t\tonChange={ onChangeDimensions }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tincludeLayoutControls\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasBorderPanel && (\n\t\t\t\t<StylesBorderPanel\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ onChangeBorders }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasEffectsPanel && (\n\t\t\t\t<StylesEffectsPanel\n\t\t\t\t\tinheritedValue={ inheritedStyleWithLayout }\n\t\t\t\t\tvalue={ styleWithLayout }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tincludeLayoutControls\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ hasFiltersPanel && (\n\t\t\t\t<StylesFiltersPanel\n\t\t\t\t\tinheritedValue={ inheritedStyleWithLayout }\n\t\t\t\t\tvalue={ styleWithLayout }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tsettings={ {\n\t\t\t\t\t\t...settings,\n\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\t...settings.color,\n\t\t\t\t\t\t\tcustomDuotone: false, //TO FIX: Custom duotone only works on the block level right now\n\t\t\t\t\t\t},\n\t\t\t\t\t} }\n\t\t\t\t\tincludeLayoutControls\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ canEditCSS && (\n\t\t\t\t<PanelBody title={ __( 'Advanced' ) } initialOpen={ false }>\n\t\t\t\t\t<p>\n\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t// translators: %s: is the name of a block e.g., 'Image' or 'Table'.\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'Add your own CSS to customize the appearance of the %s block.'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tblockType?.title\n\t\t\t\t\t\t) }\n\t\t\t\t\t</p>\n\t\t\t\t\t<StylesAdvancedPanel\n\t\t\t\t\t\tvalue={ style }\n\t\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default ScreenBlock;\n"]}
@@ -25,8 +25,6 @@ const {
25
25
  } = unlock(blockEditorPrivateApis);
26
26
 
27
27
  function ScreenRevisions() {
28
- var _revisions$;
29
-
30
28
  const {
31
29
  goBack
32
30
  } = useNavigator();
@@ -48,13 +46,8 @@ function ScreenRevisions() {
48
46
  isLoading,
49
47
  hasUnsavedChanges
50
48
  } = useGlobalStylesRevisions();
49
+ const [selectedRevisionId, setSelectedRevisionId] = useState();
51
50
  const [globalStylesRevision, setGlobalStylesRevision] = useState(userConfig);
52
- const [currentRevisionId, setCurrentRevisionId] = useState(
53
- /*
54
- * We need this for the first render,
55
- * otherwise the unsaved changes haven't been merged into the revisions array yet.
56
- */
57
- hasUnsavedChanges ? 'unsaved' : revisions === null || revisions === void 0 ? void 0 : (_revisions$ = revisions[0]) === null || _revisions$ === void 0 ? void 0 : _revisions$.id);
58
51
  const [isLoadingRevisionWithUnsavedChanges, setIsLoadingRevisionWithUnsavedChanges] = useState(false);
59
52
  const {
60
53
  setEditorCanvasContainerView
@@ -85,7 +78,7 @@ function ScreenRevisions() {
85
78
  settings: revision === null || revision === void 0 ? void 0 : revision.settings,
86
79
  id: revision === null || revision === void 0 ? void 0 : revision.id
87
80
  });
88
- setCurrentRevisionId(revision === null || revision === void 0 ? void 0 : revision.id);
81
+ setSelectedRevisionId(revision === null || revision === void 0 ? void 0 : revision.id);
89
82
  };
90
83
 
91
84
  const isLoadButtonEnabled = !!(globalStylesRevision !== null && globalStylesRevision !== void 0 && globalStylesRevision.id) && !areGlobalStyleConfigsEqual(globalStylesRevision, userConfig);
@@ -102,7 +95,7 @@ function ScreenRevisions() {
102
95
  className: "edit-site-global-styles-screen-revisions"
103
96
  }, createElement(RevisionsButtons, {
104
97
  onChange: selectRevision,
105
- currentRevisionId: currentRevisionId,
98
+ selectedRevisionId: selectedRevisionId,
106
99
  userRevisions: revisions
107
100
  }), isLoadButtonEnabled && createElement(SidebarFixedBottom, null, createElement(Button, {
108
101
  variant: "primary",
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/index.js"],"names":["__","Button","__experimentalUseNavigator","useNavigator","__experimentalConfirmDialog","ConfirmDialog","Spinner","useSelect","useDispatch","useContext","useState","useEffect","privateApis","blockEditorPrivateApis","store","blockEditorStore","ScreenHeader","unlock","Revisions","SidebarFixedBottom","editSiteStore","useGlobalStylesRevisions","RevisionsButtons","GlobalStylesContext","areGlobalStyleConfigsEqual","ScreenRevisions","goBack","user","userConfig","setUserConfig","blocks","editorCanvasContainerView","select","getEditorCanvasContainerView","getBlocks","revisions","isLoading","hasUnsavedChanges","globalStylesRevision","setGlobalStylesRevision","currentRevisionId","setCurrentRevisionId","id","isLoadingRevisionWithUnsavedChanges","setIsLoadingRevisionWithUnsavedChanges","setEditorCanvasContainerView","onCloseRevisions","restoreRevision","revision","styles","settings","selectRevision","isLoadButtonEnabled"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tSpinner,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useContext, useState, useEffect } from '@wordpress/element';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from '../header';\nimport { unlock } from '../../../private-apis';\nimport Revisions from '../../revisions';\nimport SidebarFixedBottom from '../../sidebar-edit-mode/sidebar-fixed-bottom';\nimport { store as editSiteStore } from '../../../store';\nimport useGlobalStylesRevisions from './use-global-styles-revisions';\nimport RevisionsButtons from './revisions-buttons';\n\nconst { GlobalStylesContext, areGlobalStyleConfigsEqual } = unlock(\n\tblockEditorPrivateApis\n);\n\nfunction ScreenRevisions() {\n\tconst { goBack } = useNavigator();\n\tconst { user: userConfig, setUserConfig } =\n\t\tuseContext( GlobalStylesContext );\n\tconst { blocks, editorCanvasContainerView } = useSelect( ( select ) => {\n\t\treturn {\n\t\t\teditorCanvasContainerView: unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t).getEditorCanvasContainerView(),\n\t\t\tblocks: select( blockEditorStore ).getBlocks(),\n\t\t};\n\t}, [] );\n\n\tconst { revisions, isLoading, hasUnsavedChanges } =\n\t\tuseGlobalStylesRevisions();\n\tconst [ globalStylesRevision, setGlobalStylesRevision ] =\n\t\tuseState( userConfig );\n\n\tconst [ currentRevisionId, setCurrentRevisionId ] = useState(\n\t\t/*\n\t\t * We need this for the first render,\n\t\t * otherwise the unsaved changes haven't been merged into the revisions array yet.\n\t\t */\n\t\thasUnsavedChanges ? 'unsaved' : revisions?.[ 0 ]?.id\n\t);\n\tconst [\n\t\tisLoadingRevisionWithUnsavedChanges,\n\t\tsetIsLoadingRevisionWithUnsavedChanges,\n\t] = useState( false );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\n\tuseEffect( () => {\n\t\tif ( editorCanvasContainerView !== 'global-styles-revisions' ) {\n\t\t\tgoBack();\n\t\t\tsetEditorCanvasContainerView( editorCanvasContainerView );\n\t\t}\n\t}, [ editorCanvasContainerView ] );\n\n\tconst onCloseRevisions = () => {\n\t\tgoBack();\n\t};\n\n\tconst restoreRevision = ( revision ) => {\n\t\tsetUserConfig( () => ( {\n\t\t\tstyles: revision?.styles,\n\t\t\tsettings: revision?.settings,\n\t\t} ) );\n\t\tsetIsLoadingRevisionWithUnsavedChanges( false );\n\t\tonCloseRevisions();\n\t};\n\n\tconst selectRevision = ( revision ) => {\n\t\tsetGlobalStylesRevision( {\n\t\t\tstyles: revision?.styles,\n\t\t\tsettings: revision?.settings,\n\t\t\tid: revision?.id,\n\t\t} );\n\t\tsetCurrentRevisionId( revision?.id );\n\t};\n\n\tconst isLoadButtonEnabled =\n\t\t!! globalStylesRevision?.id &&\n\t\t! areGlobalStyleConfigsEqual( globalStylesRevision, userConfig );\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Revisions' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Revisions are added to the timeline when style changes are saved.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t{ isLoading && (\n\t\t\t\t<Spinner className=\"edit-site-global-styles-screen-revisions__loading\" />\n\t\t\t) }\n\t\t\t{ ! isLoading && (\n\t\t\t\t<Revisions\n\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\tuserConfig={ globalStylesRevision }\n\t\t\t\t\tonClose={ onCloseRevisions }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<div className=\"edit-site-global-styles-screen-revisions\">\n\t\t\t\t<RevisionsButtons\n\t\t\t\t\tonChange={ selectRevision }\n\t\t\t\t\tcurrentRevisionId={ currentRevisionId }\n\t\t\t\t\tuserRevisions={ revisions }\n\t\t\t\t/>\n\t\t\t\t{ isLoadButtonEnabled && (\n\t\t\t\t\t<SidebarFixedBottom>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__button\"\n\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t! globalStylesRevision?.id ||\n\t\t\t\t\t\t\t\tglobalStylesRevision?.id === 'unsaved'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tif ( hasUnsavedChanges ) {\n\t\t\t\t\t\t\t\t\tsetIsLoadingRevisionWithUnsavedChanges(\n\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\trestoreRevision( globalStylesRevision );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Apply' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</SidebarFixedBottom>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t\t{ isLoadingRevisionWithUnsavedChanges && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\ttitle={ __(\n\t\t\t\t\t\t'Loading this revision will discard all unsaved changes.'\n\t\t\t\t\t) }\n\t\t\t\t\tisOpen={ isLoadingRevisionWithUnsavedChanges }\n\t\t\t\t\tconfirmButtonText={ __( ' Discard unsaved changes' ) }\n\t\t\t\t\tonConfirm={ () => restoreRevision( globalStylesRevision ) }\n\t\t\t\t\tonCancel={ () =>\n\t\t\t\t\t\tsetIsLoadingRevisionWithUnsavedChanges( false )\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<>\n\t\t\t\t\t\t<h2>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Loading this revision will discard all unsaved changes.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Do you want to replace your unsaved changes in the editor?'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</>\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default ScreenRevisions;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/index.js"],"names":["__","Button","__experimentalUseNavigator","useNavigator","__experimentalConfirmDialog","ConfirmDialog","Spinner","useSelect","useDispatch","useContext","useState","useEffect","privateApis","blockEditorPrivateApis","store","blockEditorStore","ScreenHeader","unlock","Revisions","SidebarFixedBottom","editSiteStore","useGlobalStylesRevisions","RevisionsButtons","GlobalStylesContext","areGlobalStyleConfigsEqual","ScreenRevisions","goBack","user","userConfig","setUserConfig","blocks","editorCanvasContainerView","select","getEditorCanvasContainerView","getBlocks","revisions","isLoading","hasUnsavedChanges","selectedRevisionId","setSelectedRevisionId","globalStylesRevision","setGlobalStylesRevision","isLoadingRevisionWithUnsavedChanges","setIsLoadingRevisionWithUnsavedChanges","setEditorCanvasContainerView","onCloseRevisions","restoreRevision","revision","styles","settings","selectRevision","id","isLoadButtonEnabled"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tSpinner,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useContext, useState, useEffect } from '@wordpress/element';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from '../header';\nimport { unlock } from '../../../private-apis';\nimport Revisions from '../../revisions';\nimport SidebarFixedBottom from '../../sidebar-edit-mode/sidebar-fixed-bottom';\nimport { store as editSiteStore } from '../../../store';\nimport useGlobalStylesRevisions from './use-global-styles-revisions';\nimport RevisionsButtons from './revisions-buttons';\n\nconst { GlobalStylesContext, areGlobalStyleConfigsEqual } = unlock(\n\tblockEditorPrivateApis\n);\n\nfunction ScreenRevisions() {\n\tconst { goBack } = useNavigator();\n\tconst { user: userConfig, setUserConfig } =\n\t\tuseContext( GlobalStylesContext );\n\tconst { blocks, editorCanvasContainerView } = useSelect( ( select ) => {\n\t\treturn {\n\t\t\teditorCanvasContainerView: unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t).getEditorCanvasContainerView(),\n\t\t\tblocks: select( blockEditorStore ).getBlocks(),\n\t\t};\n\t}, [] );\n\tconst { revisions, isLoading, hasUnsavedChanges } =\n\t\tuseGlobalStylesRevisions();\n\tconst [ selectedRevisionId, setSelectedRevisionId ] = useState();\n\tconst [ globalStylesRevision, setGlobalStylesRevision ] =\n\t\tuseState( userConfig );\n\tconst [\n\t\tisLoadingRevisionWithUnsavedChanges,\n\t\tsetIsLoadingRevisionWithUnsavedChanges,\n\t] = useState( false );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\n\tuseEffect( () => {\n\t\tif ( editorCanvasContainerView !== 'global-styles-revisions' ) {\n\t\t\tgoBack();\n\t\t\tsetEditorCanvasContainerView( editorCanvasContainerView );\n\t\t}\n\t}, [ editorCanvasContainerView ] );\n\n\tconst onCloseRevisions = () => {\n\t\tgoBack();\n\t};\n\n\tconst restoreRevision = ( revision ) => {\n\t\tsetUserConfig( () => ( {\n\t\t\tstyles: revision?.styles,\n\t\t\tsettings: revision?.settings,\n\t\t} ) );\n\t\tsetIsLoadingRevisionWithUnsavedChanges( false );\n\t\tonCloseRevisions();\n\t};\n\n\tconst selectRevision = ( revision ) => {\n\t\tsetGlobalStylesRevision( {\n\t\t\tstyles: revision?.styles,\n\t\t\tsettings: revision?.settings,\n\t\t\tid: revision?.id,\n\t\t} );\n\t\tsetSelectedRevisionId( revision?.id );\n\t};\n\n\tconst isLoadButtonEnabled =\n\t\t!! globalStylesRevision?.id &&\n\t\t! areGlobalStyleConfigsEqual( globalStylesRevision, userConfig );\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Revisions' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Revisions are added to the timeline when style changes are saved.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t{ isLoading && (\n\t\t\t\t<Spinner className=\"edit-site-global-styles-screen-revisions__loading\" />\n\t\t\t) }\n\t\t\t{ ! isLoading && (\n\t\t\t\t<Revisions\n\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\tuserConfig={ globalStylesRevision }\n\t\t\t\t\tonClose={ onCloseRevisions }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<div className=\"edit-site-global-styles-screen-revisions\">\n\t\t\t\t<RevisionsButtons\n\t\t\t\t\tonChange={ selectRevision }\n\t\t\t\t\tselectedRevisionId={ selectedRevisionId }\n\t\t\t\t\tuserRevisions={ revisions }\n\t\t\t\t/>\n\t\t\t\t{ isLoadButtonEnabled && (\n\t\t\t\t\t<SidebarFixedBottom>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__button\"\n\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t! globalStylesRevision?.id ||\n\t\t\t\t\t\t\t\tglobalStylesRevision?.id === 'unsaved'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tif ( hasUnsavedChanges ) {\n\t\t\t\t\t\t\t\t\tsetIsLoadingRevisionWithUnsavedChanges(\n\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\trestoreRevision( globalStylesRevision );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Apply' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</SidebarFixedBottom>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t\t{ isLoadingRevisionWithUnsavedChanges && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\ttitle={ __(\n\t\t\t\t\t\t'Loading this revision will discard all unsaved changes.'\n\t\t\t\t\t) }\n\t\t\t\t\tisOpen={ isLoadingRevisionWithUnsavedChanges }\n\t\t\t\t\tconfirmButtonText={ __( ' Discard unsaved changes' ) }\n\t\t\t\t\tonConfirm={ () => restoreRevision( globalStylesRevision ) }\n\t\t\t\t\tonCancel={ () =>\n\t\t\t\t\t\tsetIsLoadingRevisionWithUnsavedChanges( false )\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<>\n\t\t\t\t\t\t<h2>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Loading this revision will discard all unsaved changes.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Do you want to replace your unsaved changes in the editor?'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</>\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default ScreenRevisions;\n"]}
@@ -23,9 +23,7 @@ function getRevisionLabel(revision) {
23
23
 
24
24
  const authorDisplayName = (revision === null || revision === void 0 ? void 0 : (_revision$author = revision.author) === null || _revision$author === void 0 ? void 0 : _revision$author.name) || __('User');
25
25
 
26
- const isUnsaved = 'unsaved' === (revision === null || revision === void 0 ? void 0 : revision.id);
27
-
28
- if (isUnsaved) {
26
+ if ('unsaved' === (revision === null || revision === void 0 ? void 0 : revision.id)) {
29
27
  return sprintf(
30
28
  /* translators: %(name)s author display name */
31
29
  __('Unsaved changes by %(name)s'), {
@@ -50,11 +48,11 @@ function getRevisionLabel(revision) {
50
48
  * Returns a rendered list of revisions buttons.
51
49
  *
52
50
  * @typedef {Object} props
53
- * @property {Array<Object>} userRevisions A collection of user revisions.
54
- * @property {number} currentRevisionId Callback fired when the modal is closed or action cancelled.
55
- * @property {Function} onChange Callback fired when a revision is selected.
51
+ * @property {Array<Object>} userRevisions A collection of user revisions.
52
+ * @property {number} selectedRevisionId The id of the currently-selected revision.
53
+ * @property {Function} onChange Callback fired when a revision is selected.
56
54
  *
57
- * @param {props} Component props.
55
+ * @param {props} Component props.
58
56
  * @return {JSX.Element} The modal component.
59
57
  */
60
58
 
@@ -62,40 +60,35 @@ function getRevisionLabel(revision) {
62
60
  function RevisionsButtons(_ref) {
63
61
  let {
64
62
  userRevisions,
65
- currentRevisionId,
63
+ selectedRevisionId,
66
64
  onChange
67
65
  } = _ref;
68
66
  return createElement("ol", {
69
67
  className: "edit-site-global-styles-screen-revisions__revisions-list",
70
68
  "aria-label": __('Global styles revisions'),
71
69
  role: "group"
72
- }, userRevisions.map(revision => {
70
+ }, userRevisions.map((revision, index) => {
73
71
  var _author$avatar_urls;
74
72
 
75
73
  const {
76
74
  id,
77
75
  author,
78
- isLatest,
79
76
  modified
80
77
  } = revision;
81
78
 
82
79
  const authorDisplayName = (author === null || author === void 0 ? void 0 : author.name) || __('User');
83
80
 
84
81
  const authorAvatar = author === null || author === void 0 ? void 0 : (_author$avatar_urls = author.avatar_urls) === null || _author$avatar_urls === void 0 ? void 0 : _author$avatar_urls['48'];
85
- /*
86
- * If the currentId hasn't been selected yet, the first revision is
87
- * the current one so long as the API returns revisions in descending order.
88
- */
89
-
90
- const isActive = !!currentRevisionId ? id === currentRevisionId : isLatest;
82
+ const isUnsaved = 'unsaved' === (revision === null || revision === void 0 ? void 0 : revision.id);
83
+ const isSelected = selectedRevisionId ? selectedRevisionId === (revision === null || revision === void 0 ? void 0 : revision.id) : index === 0;
91
84
  return createElement("li", {
92
85
  className: classnames('edit-site-global-styles-screen-revisions__revision-item', {
93
- 'is-current': isActive
86
+ 'is-selected': isSelected
94
87
  }),
95
88
  key: id
96
89
  }, createElement(Button, {
97
90
  className: "edit-site-global-styles-screen-revisions__revision-button",
98
- disabled: isActive,
91
+ disabled: isSelected,
99
92
  onClick: () => {
100
93
  onChange(revision);
101
94
  },
@@ -106,7 +99,11 @@ function RevisionsButtons(_ref) {
106
99
  dateTime: modified
107
100
  }, humanTimeDiff(modified)), createElement("span", {
108
101
  className: "edit-site-global-styles-screen-revisions__meta"
109
- }, sprintf(
102
+ }, isUnsaved ? sprintf(
103
+ /* translators: %(name)s author display name */
104
+ __('Unsaved changes by %(name)s'), {
105
+ name: authorDisplayName
106
+ }) : sprintf(
110
107
  /* translators: %(name)s author display name */
111
108
  __('Changes saved by %(name)s'), {
112
109
  name: authorDisplayName
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/revisions-buttons.js"],"names":["classnames","__","sprintf","Button","dateI18n","getDate","humanTimeDiff","getSettings","getRevisionLabel","revision","authorDisplayName","author","name","isUnsaved","id","formattedDate","formats","datetimeAbbreviated","modified","isLatest","date","RevisionsButtons","userRevisions","currentRevisionId","onChange","map","authorAvatar","avatar_urls","isActive"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport { dateI18n, getDate, humanTimeDiff, getSettings } from '@wordpress/date';\n\n/**\n * Returns a button label for the revision.\n *\n * @param {Object} revision A revision object.\n * @return {string} Translated label.\n */\nfunction getRevisionLabel( revision ) {\n\tconst authorDisplayName = revision?.author?.name || __( 'User' );\n\tconst isUnsaved = 'unsaved' === revision?.id;\n\n\tif ( isUnsaved ) {\n\t\treturn sprintf(\n\t\t\t/* translators: %(name)s author display name */\n\t\t\t__( 'Unsaved changes by %(name)s' ),\n\t\t\t{\n\t\t\t\tname: authorDisplayName,\n\t\t\t}\n\t\t);\n\t}\n\tconst formattedDate = dateI18n(\n\t\tgetSettings().formats.datetimeAbbreviated,\n\t\tgetDate( revision?.modified )\n\t);\n\n\treturn revision?.isLatest\n\t\t? sprintf(\n\t\t\t\t/* translators: %(name)s author display name, %(date)s: revision creation date */\n\t\t\t\t__( 'Changes saved by %(name)s on %(date)s (current)' ),\n\t\t\t\t{\n\t\t\t\t\tname: authorDisplayName,\n\t\t\t\t\tdate: formattedDate,\n\t\t\t\t}\n\t\t )\n\t\t: sprintf(\n\t\t\t\t/* translators: %(name)s author display name, %(date)s: revision creation date */\n\t\t\t\t__( 'Changes saved by %(name)s on %(date)s' ),\n\t\t\t\t{\n\t\t\t\t\tname: authorDisplayName,\n\t\t\t\t\tdate: formattedDate,\n\t\t\t\t}\n\t\t );\n}\n\n/**\n * Returns a rendered list of revisions buttons.\n *\n * @typedef {Object} props\n * @property {Array<Object>} userRevisions A collection of user revisions.\n * @property {number} currentRevisionId Callback fired when the modal is closed or action cancelled.\n * @property {Function} onChange Callback fired when a revision is selected.\n *\n * @param {props} Component props.\n * @return {JSX.Element} The modal component.\n */\nfunction RevisionsButtons( { userRevisions, currentRevisionId, onChange } ) {\n\treturn (\n\t\t<ol\n\t\t\tclassName=\"edit-site-global-styles-screen-revisions__revisions-list\"\n\t\t\taria-label={ __( 'Global styles revisions' ) }\n\t\t\trole=\"group\"\n\t\t>\n\t\t\t{ userRevisions.map( ( revision ) => {\n\t\t\t\tconst { id, author, isLatest, modified } = revision;\n\t\t\t\tconst authorDisplayName = author?.name || __( 'User' );\n\t\t\t\tconst authorAvatar = author?.avatar_urls?.[ '48' ];\n\t\t\t\t/*\n\t\t\t\t * If the currentId hasn't been selected yet, the first revision is\n\t\t\t\t * the current one so long as the API returns revisions in descending order.\n\t\t\t\t */\n\t\t\t\tconst isActive = !! currentRevisionId\n\t\t\t\t\t? id === currentRevisionId\n\t\t\t\t\t: isLatest;\n\n\t\t\t\treturn (\n\t\t\t\t\t<li\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'edit-site-global-styles-screen-revisions__revision-item',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'is-current': isActive,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__revision-button\"\n\t\t\t\t\t\t\tdisabled={ isActive }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonChange( revision );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tlabel={ getRevisionLabel( revision ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__description\">\n\t\t\t\t\t\t\t\t<time dateTime={ modified }>\n\t\t\t\t\t\t\t\t\t{ humanTimeDiff( modified ) }\n\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__meta\">\n\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t/* translators: %(name)s author display name */\n\t\t\t\t\t\t\t\t\t\t__( 'Changes saved by %(name)s' ),\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tname: authorDisplayName,\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\t\talt={ author?.name }\n\t\t\t\t\t\t\t\t\t\tsrc={ authorAvatar }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</li>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</ol>\n\t);\n}\n\nexport default RevisionsButtons;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/revisions-buttons.js"],"names":["classnames","__","sprintf","Button","dateI18n","getDate","humanTimeDiff","getSettings","getRevisionLabel","revision","authorDisplayName","author","name","id","formattedDate","formats","datetimeAbbreviated","modified","isLatest","date","RevisionsButtons","userRevisions","selectedRevisionId","onChange","map","index","authorAvatar","avatar_urls","isUnsaved","isSelected"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport { dateI18n, getDate, humanTimeDiff, getSettings } from '@wordpress/date';\n\n/**\n * Returns a button label for the revision.\n *\n * @param {Object} revision A revision object.\n * @return {string} Translated label.\n */\nfunction getRevisionLabel( revision ) {\n\tconst authorDisplayName = revision?.author?.name || __( 'User' );\n\n\tif ( 'unsaved' === revision?.id ) {\n\t\treturn sprintf(\n\t\t\t/* translators: %(name)s author display name */\n\t\t\t__( 'Unsaved changes by %(name)s' ),\n\t\t\t{\n\t\t\t\tname: authorDisplayName,\n\t\t\t}\n\t\t);\n\t}\n\tconst formattedDate = dateI18n(\n\t\tgetSettings().formats.datetimeAbbreviated,\n\t\tgetDate( revision?.modified )\n\t);\n\n\treturn revision?.isLatest\n\t\t? sprintf(\n\t\t\t\t/* translators: %(name)s author display name, %(date)s: revision creation date */\n\t\t\t\t__( 'Changes saved by %(name)s on %(date)s (current)' ),\n\t\t\t\t{\n\t\t\t\t\tname: authorDisplayName,\n\t\t\t\t\tdate: formattedDate,\n\t\t\t\t}\n\t\t )\n\t\t: sprintf(\n\t\t\t\t/* translators: %(name)s author display name, %(date)s: revision creation date */\n\t\t\t\t__( 'Changes saved by %(name)s on %(date)s' ),\n\t\t\t\t{\n\t\t\t\t\tname: authorDisplayName,\n\t\t\t\t\tdate: formattedDate,\n\t\t\t\t}\n\t\t );\n}\n\n/**\n * Returns a rendered list of revisions buttons.\n *\n * @typedef {Object} props\n * @property {Array<Object>} userRevisions A collection of user revisions.\n * @property {number} selectedRevisionId The id of the currently-selected revision.\n * @property {Function} onChange Callback fired when a revision is selected.\n *\n * @param {props} Component props.\n * @return {JSX.Element} The modal component.\n */\nfunction RevisionsButtons( { userRevisions, selectedRevisionId, onChange } ) {\n\treturn (\n\t\t<ol\n\t\t\tclassName=\"edit-site-global-styles-screen-revisions__revisions-list\"\n\t\t\taria-label={ __( 'Global styles revisions' ) }\n\t\t\trole=\"group\"\n\t\t>\n\t\t\t{ userRevisions.map( ( revision, index ) => {\n\t\t\t\tconst { id, author, modified } = revision;\n\t\t\t\tconst authorDisplayName = author?.name || __( 'User' );\n\t\t\t\tconst authorAvatar = author?.avatar_urls?.[ '48' ];\n\t\t\t\tconst isUnsaved = 'unsaved' === revision?.id;\n\t\t\t\tconst isSelected = selectedRevisionId\n\t\t\t\t\t? selectedRevisionId === revision?.id\n\t\t\t\t\t: index === 0;\n\n\t\t\t\treturn (\n\t\t\t\t\t<li\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'edit-site-global-styles-screen-revisions__revision-item',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'is-selected': isSelected,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__revision-button\"\n\t\t\t\t\t\t\tdisabled={ isSelected }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonChange( revision );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tlabel={ getRevisionLabel( revision ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__description\">\n\t\t\t\t\t\t\t\t<time dateTime={ modified }>\n\t\t\t\t\t\t\t\t\t{ humanTimeDiff( modified ) }\n\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__meta\">\n\t\t\t\t\t\t\t\t\t{ isUnsaved\n\t\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t/* translators: %(name)s author display name */\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Unsaved changes by %(name)s'\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\tname: authorDisplayName,\n\t\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\t: sprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t/* translators: %(name)s author display name */\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Changes saved by %(name)s'\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\tname: authorDisplayName,\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t ) }\n\n\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\t\talt={ author?.name }\n\t\t\t\t\t\t\t\t\t\tsrc={ authorAvatar }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</li>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</ol>\n\t);\n}\n\nexport default RevisionsButtons;\n"]}