@wordpress/edit-site 5.25.0 → 5.26.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 (433) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/LICENSE.md +1 -1
  3. package/build/components/block-editor/back-button.js +3 -2
  4. package/build/components/block-editor/back-button.js.map +1 -1
  5. package/build/components/block-editor/resizable-editor.js +2 -2
  6. package/build/components/block-editor/resizable-editor.js.map +1 -1
  7. package/build/components/block-editor/use-post-link-props.js +27 -0
  8. package/build/components/block-editor/use-post-link-props.js.map +1 -0
  9. package/build/components/block-editor/use-site-editor-settings.js +7 -24
  10. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  11. package/build/components/create-template-part-modal/index.js +15 -7
  12. package/build/components/create-template-part-modal/index.js.map +1 -1
  13. package/build/components/editor/index.js +15 -16
  14. package/build/components/editor/index.js.map +1 -1
  15. package/build/components/editor-canvas-container/index.js +9 -7
  16. package/build/components/editor-canvas-container/index.js.map +1 -1
  17. package/build/components/global-styles/font-library-modal/collection-font-variant.js +5 -2
  18. package/build/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
  19. package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js +3 -3
  20. package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -1
  21. package/build/components/global-styles/font-library-modal/context.js +5 -5
  22. package/build/components/global-styles/font-library-modal/context.js.map +1 -1
  23. package/build/components/global-styles/font-library-modal/font-collection.js +8 -4
  24. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  25. package/build/components/global-styles/font-library-modal/index.js +38 -21
  26. package/build/components/global-styles/font-library-modal/index.js.map +1 -1
  27. package/build/components/global-styles/font-library-modal/installed-fonts.js +2 -2
  28. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  29. package/build/components/global-styles/font-library-modal/library-font-variant.js +5 -2
  30. package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  31. package/build/components/global-styles/font-library-modal/local-fonts.js +26 -10
  32. package/build/components/global-styles/font-library-modal/local-fonts.js.map +1 -1
  33. package/build/components/global-styles/font-library-modal/resolvers.js +6 -6
  34. package/build/components/global-styles/font-library-modal/resolvers.js.map +1 -1
  35. package/build/components/global-styles/font-library-modal/{tab-layout.js → tab-panel-layout.js} +4 -4
  36. package/build/components/global-styles/font-library-modal/tab-panel-layout.js.map +1 -0
  37. package/build/components/global-styles/font-library-modal/utils/index.js +35 -38
  38. package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  39. package/build/components/global-styles/preview.js +43 -1
  40. package/build/components/global-styles/preview.js.map +1 -1
  41. package/build/components/global-styles/screen-color-palette.js +16 -12
  42. package/build/components/global-styles/screen-color-palette.js.map +1 -1
  43. package/build/components/global-styles/screen-revisions/index.js +52 -52
  44. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  45. package/build/components/global-styles/screen-revisions/revisions-buttons.js +26 -35
  46. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  47. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +40 -22
  48. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  49. package/build/components/global-styles/ui.js +13 -62
  50. package/build/components/global-styles/ui.js.map +1 -1
  51. package/build/components/header-edit-mode/document-tools/index.js +8 -106
  52. package/build/components/header-edit-mode/document-tools/index.js.map +1 -1
  53. package/build/components/header-edit-mode/index.js +7 -11
  54. package/build/components/header-edit-mode/index.js.map +1 -1
  55. package/build/components/header-edit-mode/mode-switcher/index.js +0 -2
  56. package/build/components/header-edit-mode/mode-switcher/index.js.map +1 -1
  57. package/build/components/header-edit-mode/more-menu/index.js +10 -7
  58. package/build/components/header-edit-mode/more-menu/index.js.map +1 -1
  59. package/build/components/keyboard-shortcuts/edit-mode.js +0 -23
  60. package/build/components/keyboard-shortcuts/edit-mode.js.map +1 -1
  61. package/build/components/keyboard-shortcuts/register.js +0 -36
  62. package/build/components/keyboard-shortcuts/register.js.map +1 -1
  63. package/build/components/layout/index.js +6 -13
  64. package/build/components/layout/index.js.map +1 -1
  65. package/build/components/page-main/index.js +4 -4
  66. package/build/components/page-main/index.js.map +1 -1
  67. package/build/components/page-pages/index.js +84 -37
  68. package/build/components/page-pages/index.js.map +1 -1
  69. package/build/components/page-patterns/dataviews-pattern-actions.js +305 -0
  70. package/build/components/page-patterns/dataviews-pattern-actions.js.map +1 -0
  71. package/build/components/page-patterns/dataviews-patterns.js +307 -0
  72. package/build/components/page-patterns/dataviews-patterns.js.map +1 -0
  73. package/build/components/page-patterns/duplicate-menu-item.js +1 -1
  74. package/build/components/page-patterns/duplicate-menu-item.js.map +1 -1
  75. package/build/components/page-patterns/grid-item.js +4 -3
  76. package/build/components/page-patterns/grid-item.js.map +1 -1
  77. package/build/components/page-patterns/patterns-list.js +2 -1
  78. package/build/components/page-patterns/patterns-list.js.map +1 -1
  79. package/build/components/page-patterns/use-patterns.js +23 -13
  80. package/build/components/page-patterns/use-patterns.js.map +1 -1
  81. package/build/components/page-templates/index.js +312 -36
  82. package/build/components/page-templates/index.js.map +1 -1
  83. package/build/components/{page-patterns/pagination.js → pagination/index.js} +25 -12
  84. package/build/components/pagination/index.js.map +1 -0
  85. package/build/components/{page-pages/side-editor.js → post-preview/index.js} +8 -4
  86. package/build/components/post-preview/index.js.map +1 -0
  87. package/build/components/preferences-modal/enable-feature.js +3 -2
  88. package/build/components/preferences-modal/enable-feature.js.map +1 -1
  89. package/build/components/preferences-modal/enable-panel-option.js +33 -0
  90. package/build/components/preferences-modal/enable-panel-option.js.map +1 -0
  91. package/build/components/preferences-modal/index.js +57 -9
  92. package/build/components/preferences-modal/index.js.map +1 -1
  93. package/build/components/revisions/index.js +3 -7
  94. package/build/components/revisions/index.js.map +1 -1
  95. package/build/components/routes/link.js +6 -2
  96. package/build/components/routes/link.js.map +1 -1
  97. package/build/components/save-button/index.js +6 -3
  98. package/build/components/save-button/index.js.map +1 -1
  99. package/build/components/sidebar/index.js +3 -11
  100. package/build/components/sidebar/index.js.map +1 -1
  101. package/build/components/sidebar-dataviews/add-new-view.js +2 -2
  102. package/build/components/sidebar-dataviews/add-new-view.js.map +1 -1
  103. package/build/components/sidebar-dataviews/default-views.js +18 -5
  104. package/build/components/sidebar-dataviews/default-views.js.map +1 -1
  105. package/build/components/sidebar-dataviews/index.js +3 -3
  106. package/build/components/sidebar-dataviews/index.js.map +1 -1
  107. package/build/components/sidebar-edit-mode/default-sidebar.js +1 -5
  108. package/build/components/sidebar-edit-mode/default-sidebar.js.map +1 -1
  109. package/build/components/sidebar-edit-mode/global-styles-sidebar.js +62 -10
  110. package/build/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -1
  111. package/build/components/sidebar-edit-mode/page-panels/index.js +1 -1
  112. package/build/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  113. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js +0 -4
  114. package/build/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
  115. package/build/components/sidebar-edit-mode/template-panel/index.js +4 -13
  116. package/build/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  117. package/build/components/sidebar-navigation-screen-details-footer/index.js +1 -1
  118. package/build/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
  119. package/build/components/sidebar-navigation-screen-global-styles/index.js +5 -2
  120. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  121. package/build/components/sidebar-navigation-screen-page/index.js +4 -1
  122. package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
  123. package/build/components/sidebar-navigation-screen-pages-dataviews/index.js +69 -0
  124. package/build/components/sidebar-navigation-screen-pages-dataviews/index.js.map +1 -0
  125. package/build/components/style-book/index.js +38 -8
  126. package/build/components/style-book/index.js.map +1 -1
  127. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +1 -1
  128. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  129. package/build/hooks/commands/use-edit-mode-commands.js +11 -6
  130. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  131. package/build/index.js +12 -7
  132. package/build/index.js.map +1 -1
  133. package/build/store/actions.js +39 -44
  134. package/build/store/actions.js.map +1 -1
  135. package/build/store/private-actions.js +6 -2
  136. package/build/store/private-actions.js.map +1 -1
  137. package/build/store/reducer.js +0 -46
  138. package/build/store/reducer.js.map +1 -1
  139. package/build/store/selectors.js +32 -41
  140. package/build/store/selectors.js.map +1 -1
  141. package/build/utils/get-is-list-page.js +1 -1
  142. package/build/utils/get-is-list-page.js.map +1 -1
  143. package/build-module/components/block-editor/back-button.js +4 -3
  144. package/build-module/components/block-editor/back-button.js.map +1 -1
  145. package/build-module/components/block-editor/resizable-editor.js +2 -2
  146. package/build-module/components/block-editor/resizable-editor.js.map +1 -1
  147. package/build-module/components/block-editor/use-post-link-props.js +20 -0
  148. package/build-module/components/block-editor/use-post-link-props.js.map +1 -0
  149. package/build-module/components/block-editor/use-site-editor-settings.js +8 -25
  150. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  151. package/build-module/components/create-template-part-modal/index.js +14 -7
  152. package/build-module/components/create-template-part-modal/index.js.map +1 -1
  153. package/build-module/components/editor/index.js +16 -17
  154. package/build-module/components/editor/index.js.map +1 -1
  155. package/build-module/components/editor-canvas-container/index.js +9 -7
  156. package/build-module/components/editor-canvas-container/index.js.map +1 -1
  157. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js +5 -2
  158. package/build-module/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
  159. package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js +3 -3
  160. package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -1
  161. package/build-module/components/global-styles/font-library-modal/context.js +7 -7
  162. package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
  163. package/build-module/components/global-styles/font-library-modal/font-collection.js +8 -4
  164. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  165. package/build-module/components/global-styles/font-library-modal/index.js +39 -22
  166. package/build-module/components/global-styles/font-library-modal/index.js.map +1 -1
  167. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +2 -2
  168. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  169. package/build-module/components/global-styles/font-library-modal/library-font-variant.js +5 -2
  170. package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
  171. package/build-module/components/global-styles/font-library-modal/local-fonts.js +27 -11
  172. package/build-module/components/global-styles/font-library-modal/local-fonts.js.map +1 -1
  173. package/build-module/components/global-styles/font-library-modal/resolvers.js +5 -5
  174. package/build-module/components/global-styles/font-library-modal/resolvers.js.map +1 -1
  175. package/build-module/components/global-styles/font-library-modal/{tab-layout.js → tab-panel-layout.js} +4 -4
  176. package/build-module/components/global-styles/font-library-modal/tab-panel-layout.js.map +1 -0
  177. package/build-module/components/global-styles/font-library-modal/utils/index.js +34 -36
  178. package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  179. package/build-module/components/global-styles/preview.js +45 -3
  180. package/build-module/components/global-styles/preview.js.map +1 -1
  181. package/build-module/components/global-styles/screen-color-palette.js +17 -13
  182. package/build-module/components/global-styles/screen-color-palette.js.map +1 -1
  183. package/build-module/components/global-styles/screen-revisions/index.js +53 -53
  184. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  185. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +27 -36
  186. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  187. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +40 -22
  188. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  189. package/build-module/components/global-styles/ui.js +15 -64
  190. package/build-module/components/global-styles/ui.js.map +1 -1
  191. package/build-module/components/header-edit-mode/document-tools/index.js +13 -110
  192. package/build-module/components/header-edit-mode/document-tools/index.js.map +1 -1
  193. package/build-module/components/header-edit-mode/index.js +7 -11
  194. package/build-module/components/header-edit-mode/index.js.map +1 -1
  195. package/build-module/components/header-edit-mode/mode-switcher/index.js +0 -2
  196. package/build-module/components/header-edit-mode/mode-switcher/index.js.map +1 -1
  197. package/build-module/components/header-edit-mode/more-menu/index.js +10 -7
  198. package/build-module/components/header-edit-mode/more-menu/index.js.map +1 -1
  199. package/build-module/components/keyboard-shortcuts/edit-mode.js +0 -23
  200. package/build-module/components/keyboard-shortcuts/edit-mode.js.map +1 -1
  201. package/build-module/components/keyboard-shortcuts/register.js +0 -36
  202. package/build-module/components/keyboard-shortcuts/register.js.map +1 -1
  203. package/build-module/components/layout/index.js +6 -13
  204. package/build-module/components/layout/index.js.map +1 -1
  205. package/build-module/components/page-main/index.js +4 -4
  206. package/build-module/components/page-main/index.js.map +1 -1
  207. package/build-module/components/page-pages/index.js +83 -36
  208. package/build-module/components/page-pages/index.js.map +1 -1
  209. package/build-module/components/page-patterns/dataviews-pattern-actions.js +292 -0
  210. package/build-module/components/page-patterns/dataviews-pattern-actions.js.map +1 -0
  211. package/build-module/components/page-patterns/dataviews-patterns.js +299 -0
  212. package/build-module/components/page-patterns/dataviews-patterns.js.map +1 -0
  213. package/build-module/components/page-patterns/duplicate-menu-item.js +1 -1
  214. package/build-module/components/page-patterns/duplicate-menu-item.js.map +1 -1
  215. package/build-module/components/page-patterns/grid-item.js +4 -3
  216. package/build-module/components/page-patterns/grid-item.js.map +1 -1
  217. package/build-module/components/page-patterns/patterns-list.js +2 -1
  218. package/build-module/components/page-patterns/patterns-list.js.map +1 -1
  219. package/build-module/components/page-patterns/use-patterns.js +23 -13
  220. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  221. package/build-module/components/page-templates/index.js +314 -38
  222. package/build-module/components/page-templates/index.js.map +1 -1
  223. package/build-module/components/{page-patterns/pagination.js → pagination/index.js} +24 -12
  224. package/build-module/components/pagination/index.js.map +1 -0
  225. package/build-module/components/{page-pages/side-editor.js → post-preview/index.js} +7 -3
  226. package/build-module/components/post-preview/index.js.map +1 -0
  227. package/build-module/components/preferences-modal/enable-feature.js +3 -2
  228. package/build-module/components/preferences-modal/enable-feature.js.map +1 -1
  229. package/build-module/components/preferences-modal/enable-panel-option.js +26 -0
  230. package/build-module/components/preferences-modal/enable-panel-option.js.map +1 -0
  231. package/build-module/components/preferences-modal/index.js +57 -9
  232. package/build-module/components/preferences-modal/index.js.map +1 -1
  233. package/build-module/components/revisions/index.js +4 -8
  234. package/build-module/components/revisions/index.js.map +1 -1
  235. package/build-module/components/routes/link.js +5 -2
  236. package/build-module/components/routes/link.js.map +1 -1
  237. package/build-module/components/save-button/index.js +6 -3
  238. package/build-module/components/save-button/index.js.map +1 -1
  239. package/build-module/components/sidebar/index.js +3 -11
  240. package/build-module/components/sidebar/index.js.map +1 -1
  241. package/build-module/components/sidebar-dataviews/add-new-view.js +1 -1
  242. package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -1
  243. package/build-module/components/sidebar-dataviews/default-views.js +17 -5
  244. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
  245. package/build-module/components/sidebar-dataviews/index.js +2 -2
  246. package/build-module/components/sidebar-dataviews/index.js.map +1 -1
  247. package/build-module/components/sidebar-edit-mode/default-sidebar.js +1 -5
  248. package/build-module/components/sidebar-edit-mode/default-sidebar.js.map +1 -1
  249. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js +64 -12
  250. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -1
  251. package/build-module/components/sidebar-edit-mode/page-panels/index.js +2 -2
  252. package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
  253. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js +0 -4
  254. package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
  255. package/build-module/components/sidebar-edit-mode/template-panel/index.js +6 -15
  256. package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  257. package/build-module/components/sidebar-navigation-screen-details-footer/index.js +1 -1
  258. package/build-module/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
  259. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +5 -2
  260. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  261. package/build-module/components/sidebar-navigation-screen-page/index.js +4 -1
  262. package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
  263. package/build-module/components/sidebar-navigation-screen-pages-dataviews/index.js +61 -0
  264. package/build-module/components/sidebar-navigation-screen-pages-dataviews/index.js.map +1 -0
  265. package/build-module/components/style-book/index.js +40 -10
  266. package/build-module/components/style-book/index.js.map +1 -1
  267. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +1 -1
  268. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  269. package/build-module/hooks/commands/use-edit-mode-commands.js +11 -6
  270. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  271. package/build-module/index.js +12 -7
  272. package/build-module/index.js.map +1 -1
  273. package/build-module/store/actions.js +36 -41
  274. package/build-module/store/actions.js.map +1 -1
  275. package/build-module/store/private-actions.js +6 -2
  276. package/build-module/store/private-actions.js.map +1 -1
  277. package/build-module/store/reducer.js +0 -44
  278. package/build-module/store/reducer.js.map +1 -1
  279. package/build-module/store/selectors.js +30 -38
  280. package/build-module/store/selectors.js.map +1 -1
  281. package/build-module/utils/get-is-list-page.js +1 -1
  282. package/build-module/utils/get-is-list-page.js.map +1 -1
  283. package/build-style/style-rtl.css +357 -268
  284. package/build-style/style.css +357 -268
  285. package/package.json +42 -42
  286. package/src/components/add-new-template/style.scss +2 -1
  287. package/src/components/block-editor/back-button.js +4 -2
  288. package/src/components/block-editor/resizable-editor.js +1 -1
  289. package/src/components/block-editor/style.scss +1 -2
  290. package/src/components/block-editor/use-post-link-props.js +20 -0
  291. package/src/components/block-editor/use-site-editor-settings.js +10 -41
  292. package/src/components/code-editor/style.scss +0 -4
  293. package/src/components/create-template-part-modal/index.js +83 -82
  294. package/src/components/editor/index.js +24 -31
  295. package/src/components/editor-canvas-container/index.js +8 -6
  296. package/src/components/global-styles/font-library-modal/collection-font-variant.js +7 -2
  297. package/src/components/global-styles/font-library-modal/confirm-delete-dialog.js +3 -3
  298. package/src/components/global-styles/font-library-modal/context.js +7 -7
  299. package/src/components/global-styles/font-library-modal/font-collection.js +10 -5
  300. package/src/components/global-styles/font-library-modal/index.js +44 -24
  301. package/src/components/global-styles/font-library-modal/installed-fonts.js +3 -3
  302. package/src/components/global-styles/font-library-modal/library-font-variant.js +7 -2
  303. package/src/components/global-styles/font-library-modal/local-fonts.js +53 -26
  304. package/src/components/global-styles/font-library-modal/resolvers.js +5 -5
  305. package/src/components/global-styles/font-library-modal/style.scss +5 -2
  306. package/src/components/global-styles/font-library-modal/{tab-layout.js → tab-panel-layout.js} +9 -3
  307. package/src/components/global-styles/font-library-modal/utils/index.js +21 -23
  308. package/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamily.spec.js +58 -0
  309. package/src/components/global-styles/preview.js +55 -3
  310. package/src/components/global-styles/screen-color-palette.js +16 -26
  311. package/src/components/global-styles/screen-revisions/index.js +91 -92
  312. package/src/components/global-styles/screen-revisions/revisions-buttons.js +37 -38
  313. package/src/components/global-styles/screen-revisions/style.scss +77 -20
  314. package/src/components/global-styles/screen-revisions/test/use-global-styles-revisions.js +67 -0
  315. package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +73 -46
  316. package/src/components/global-styles/ui.js +13 -74
  317. package/src/components/header-edit-mode/document-tools/index.js +33 -165
  318. package/src/components/header-edit-mode/index.js +6 -17
  319. package/src/components/header-edit-mode/mode-switcher/index.js +0 -4
  320. package/src/components/header-edit-mode/more-menu/index.js +9 -7
  321. package/src/components/header-edit-mode/style.scss +0 -47
  322. package/src/components/keyboard-shortcuts/edit-mode.js +1 -26
  323. package/src/components/keyboard-shortcuts/register.js +0 -43
  324. package/src/components/layout/index.js +8 -27
  325. package/src/components/layout/style.scss +10 -3
  326. package/src/components/list/style.scss +0 -5
  327. package/src/components/page/style.scss +1 -1
  328. package/src/components/page-main/index.js +8 -8
  329. package/src/components/page-pages/index.js +112 -41
  330. package/src/components/page-pages/style.scss +3 -2
  331. package/src/components/page-patterns/dataviews-pattern-actions.js +329 -0
  332. package/src/components/page-patterns/dataviews-patterns.js +380 -0
  333. package/src/components/page-patterns/duplicate-menu-item.js +1 -1
  334. package/src/components/page-patterns/grid-item.js +3 -2
  335. package/src/components/page-patterns/patterns-list.js +2 -1
  336. package/src/components/page-patterns/style.scss +89 -26
  337. package/src/components/page-patterns/use-patterns.js +24 -15
  338. package/src/components/page-templates/index.js +399 -64
  339. package/src/components/{page-patterns/pagination.js → pagination/index.js} +21 -10
  340. package/src/components/pagination/style.scss +5 -0
  341. package/src/components/post-preview/index.js +16 -0
  342. package/src/components/preferences-modal/enable-feature.js +9 -5
  343. package/src/components/preferences-modal/enable-panel-option.js +23 -0
  344. package/src/components/preferences-modal/index.js +107 -22
  345. package/src/components/revisions/index.js +8 -15
  346. package/src/components/routes/link.js +11 -3
  347. package/src/components/save-button/index.js +16 -3
  348. package/src/components/sidebar/index.js +6 -13
  349. package/src/components/sidebar-dataviews/add-new-view.js +1 -1
  350. package/src/components/sidebar-dataviews/default-views.js +23 -6
  351. package/src/components/sidebar-dataviews/index.js +2 -2
  352. package/src/components/sidebar-edit-mode/default-sidebar.js +0 -12
  353. package/src/components/sidebar-edit-mode/global-styles-sidebar.js +85 -14
  354. package/src/components/sidebar-edit-mode/page-panels/index.js +15 -1
  355. package/src/components/sidebar-edit-mode/plugin-sidebar/index.js +0 -12
  356. package/src/components/sidebar-edit-mode/style.scss +0 -10
  357. package/src/components/sidebar-edit-mode/template-panel/index.js +44 -40
  358. package/src/components/sidebar-edit-mode/template-panel/style.scss +0 -4
  359. package/src/components/sidebar-navigation-screen-details-footer/index.js +1 -1
  360. package/src/components/sidebar-navigation-screen-global-styles/index.js +3 -2
  361. package/src/components/sidebar-navigation-screen-page/index.js +2 -1
  362. package/src/components/sidebar-navigation-screen-pages-dataviews/index.js +77 -0
  363. package/src/components/site-hub/style.scss +5 -2
  364. package/src/components/style-book/index.js +65 -21
  365. package/src/components/style-book/style.scss +3 -3
  366. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +4 -1
  367. package/src/hooks/commands/use-edit-mode-commands.js +8 -12
  368. package/src/index.js +11 -5
  369. package/src/store/actions.js +35 -45
  370. package/src/store/private-actions.js +7 -3
  371. package/src/store/reducer.js +0 -44
  372. package/src/store/selectors.js +32 -38
  373. package/src/store/test/actions.js +11 -39
  374. package/src/store/test/reducer.js +1 -82
  375. package/src/store/test/selectors.js +0 -24
  376. package/src/style.scss +1 -1
  377. package/src/utils/get-is-list-page.js +2 -3
  378. package/build/components/global-styles/font-library-modal/tab-layout.js.map +0 -1
  379. package/build/components/global-styles/screen-revisions/get-revision-changes.js +0 -146
  380. package/build/components/global-styles/screen-revisions/get-revision-changes.js.map +0 -1
  381. package/build/components/header-edit-mode/undo-redo/redo.js +0 -41
  382. package/build/components/header-edit-mode/undo-redo/redo.js.map +0 -1
  383. package/build/components/header-edit-mode/undo-redo/undo.js +0 -40
  384. package/build/components/header-edit-mode/undo-redo/undo.js.map +0 -1
  385. package/build/components/page-pages/side-editor.js.map +0 -1
  386. package/build/components/page-patterns/pagination.js.map +0 -1
  387. package/build/components/page-templates/dataviews-templates.js +0 -317
  388. package/build/components/page-templates/dataviews-templates.js.map +0 -1
  389. package/build/components/secondary-sidebar/inserter-sidebar.js +0 -60
  390. package/build/components/secondary-sidebar/inserter-sidebar.js.map +0 -1
  391. package/build/components/secondary-sidebar/list-view-sidebar.js +0 -109
  392. package/build/components/secondary-sidebar/list-view-sidebar.js.map +0 -1
  393. package/build/components/sidebar-edit-mode/sidebar-fixed-bottom.js +0 -35
  394. package/build/components/sidebar-edit-mode/sidebar-fixed-bottom.js.map +0 -1
  395. package/build/components/sidebar-edit-mode/template-panel/last-revision.js +0 -73
  396. package/build/components/sidebar-edit-mode/template-panel/last-revision.js.map +0 -1
  397. package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js +0 -219
  398. package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +0 -1
  399. package/build-module/components/global-styles/font-library-modal/tab-layout.js.map +0 -1
  400. package/build-module/components/global-styles/screen-revisions/get-revision-changes.js +0 -139
  401. package/build-module/components/global-styles/screen-revisions/get-revision-changes.js.map +0 -1
  402. package/build-module/components/header-edit-mode/undo-redo/redo.js +0 -33
  403. package/build-module/components/header-edit-mode/undo-redo/redo.js.map +0 -1
  404. package/build-module/components/header-edit-mode/undo-redo/undo.js +0 -32
  405. package/build-module/components/header-edit-mode/undo-redo/undo.js.map +0 -1
  406. package/build-module/components/page-pages/side-editor.js.map +0 -1
  407. package/build-module/components/page-patterns/pagination.js.map +0 -1
  408. package/build-module/components/page-templates/dataviews-templates.js +0 -309
  409. package/build-module/components/page-templates/dataviews-templates.js.map +0 -1
  410. package/build-module/components/secondary-sidebar/inserter-sidebar.js +0 -53
  411. package/build-module/components/secondary-sidebar/inserter-sidebar.js.map +0 -1
  412. package/build-module/components/secondary-sidebar/list-view-sidebar.js +0 -102
  413. package/build-module/components/secondary-sidebar/list-view-sidebar.js.map +0 -1
  414. package/build-module/components/sidebar-edit-mode/sidebar-fixed-bottom.js +0 -27
  415. package/build-module/components/sidebar-edit-mode/sidebar-fixed-bottom.js.map +0 -1
  416. package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js +0 -65
  417. package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js.map +0 -1
  418. package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js +0 -209
  419. package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +0 -1
  420. package/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js +0 -62
  421. package/src/components/global-styles/font-library-modal/utils/test/wpKebabCase.spec.js +0 -28
  422. package/src/components/global-styles/screen-revisions/get-revision-changes.js +0 -171
  423. package/src/components/global-styles/screen-revisions/test/get-revision-changes.js +0 -191
  424. package/src/components/header-edit-mode/undo-redo/redo.js +0 -38
  425. package/src/components/header-edit-mode/undo-redo/undo.js +0 -34
  426. package/src/components/page-pages/side-editor.js +0 -14
  427. package/src/components/page-templates/dataviews-templates.js +0 -360
  428. package/src/components/secondary-sidebar/inserter-sidebar.js +0 -66
  429. package/src/components/secondary-sidebar/list-view-sidebar.js +0 -123
  430. package/src/components/secondary-sidebar/style.scss +0 -65
  431. package/src/components/sidebar-edit-mode/sidebar-fixed-bottom.js +0 -26
  432. package/src/components/sidebar-edit-mode/template-panel/last-revision.js +0 -82
  433. package/src/components/sidebar-edit-mode/template-panel/pattern-categories.js +0 -279
@@ -23,72 +23,86 @@ const SITE_EDITOR_AUTHORS_QUERY = {
23
23
  context: 'view',
24
24
  capabilities: ['edit_theme_options']
25
25
  };
26
+ const DEFAULT_QUERY = {
27
+ per_page: 100,
28
+ page: 1
29
+ };
26
30
  const EMPTY_ARRAY = [];
27
31
  const {
28
32
  GlobalStylesContext
29
33
  } = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
30
- function useGlobalStylesRevisions() {
34
+ function useGlobalStylesRevisions({
35
+ query
36
+ } = {}) {
31
37
  const {
32
38
  user: userConfig
33
39
  } = (0, _element.useContext)(GlobalStylesContext);
40
+ const _query = {
41
+ ...DEFAULT_QUERY,
42
+ ...query
43
+ };
34
44
  const {
35
45
  authors,
36
46
  currentUser,
37
47
  isDirty,
38
48
  revisions,
39
- isLoadingGlobalStylesRevisions
49
+ isLoadingGlobalStylesRevisions,
50
+ revisionsCount
40
51
  } = (0, _data.useSelect)(select => {
52
+ var _globalStyles$_links$;
41
53
  const {
42
54
  __experimentalGetDirtyEntityRecords,
43
55
  getCurrentUser,
44
56
  getUsers,
45
57
  getRevisions,
46
58
  __experimentalGetCurrentGlobalStylesId,
59
+ getEntityRecord,
47
60
  isResolving
48
61
  } = select(_coreData.store);
49
62
  const dirtyEntityRecords = __experimentalGetDirtyEntityRecords();
50
63
  const _currentUser = getCurrentUser();
51
64
  const _isDirty = dirtyEntityRecords.length > 0;
52
- const query = {
53
- per_page: 100
54
- };
55
65
  const globalStylesId = __experimentalGetCurrentGlobalStylesId();
56
- const globalStylesRevisions = getRevisions('root', 'globalStyles', globalStylesId, query) || EMPTY_ARRAY;
66
+ const globalStyles = globalStylesId ? getEntityRecord('root', 'globalStyles', globalStylesId) : undefined;
67
+ const _revisionsCount = (_globalStyles$_links$ = globalStyles?._links?.['version-history']?.[0]?.count) !== null && _globalStyles$_links$ !== void 0 ? _globalStyles$_links$ : 0;
68
+ const globalStylesRevisions = getRevisions('root', 'globalStyles', globalStylesId, _query) || EMPTY_ARRAY;
57
69
  const _authors = getUsers(SITE_EDITOR_AUTHORS_QUERY) || EMPTY_ARRAY;
58
- const _isResolving = isResolving('getRevisions', ['root', 'globalStyles', globalStylesId, query]);
70
+ const _isResolving = isResolving('getRevisions', ['root', 'globalStyles', globalStylesId, _query]);
59
71
  return {
60
72
  authors: _authors,
61
73
  currentUser: _currentUser,
62
74
  isDirty: _isDirty,
63
75
  revisions: globalStylesRevisions,
64
- isLoadingGlobalStylesRevisions: _isResolving
76
+ isLoadingGlobalStylesRevisions: _isResolving,
77
+ revisionsCount: _revisionsCount
65
78
  };
66
- }, []);
79
+ }, [query]);
67
80
  return (0, _element.useMemo)(() => {
68
- let _modifiedRevisions = [];
69
81
  if (!authors.length || isLoadingGlobalStylesRevisions) {
70
82
  return {
71
- revisions: _modifiedRevisions,
83
+ revisions: EMPTY_ARRAY,
72
84
  hasUnsavedChanges: isDirty,
73
- isLoading: true
85
+ isLoading: true,
86
+ revisionsCount
74
87
  };
75
88
  }
76
89
 
77
90
  // Adds author details to each revision.
78
- _modifiedRevisions = revisions.map(revision => {
91
+ const _modifiedRevisions = revisions.map(revision => {
79
92
  return {
80
93
  ...revision,
81
94
  author: authors.find(author => author.id === revision.author)
82
95
  };
83
96
  });
84
- if (_modifiedRevisions.length) {
97
+ const fetchedRevisionsCount = revisions.length;
98
+ if (fetchedRevisionsCount) {
85
99
  // Flags the most current saved revision.
86
- if (_modifiedRevisions[0].id !== 'unsaved') {
100
+ if (_modifiedRevisions[0].id !== 'unsaved' && _query.page === 1) {
87
101
  _modifiedRevisions[0].isLatest = true;
88
102
  }
89
103
 
90
104
  // Adds an item for unsaved changes.
91
- if (isDirty && userConfig && Object.keys(userConfig).length > 0 && currentUser) {
105
+ if (isDirty && userConfig && Object.keys(userConfig).length > 0 && currentUser && _query.page === 1) {
92
106
  const unsavedRevision = {
93
107
  id: 'unsaved',
94
108
  styles: userConfig?.styles,
@@ -101,16 +115,20 @@ function useGlobalStylesRevisions() {
101
115
  };
102
116
  _modifiedRevisions.unshift(unsavedRevision);
103
117
  }
104
- _modifiedRevisions.push({
105
- id: 'parent',
106
- styles: {},
107
- settings: {}
108
- });
118
+ if (_query.page === Math.ceil(revisionsCount / _query.per_page)) {
119
+ // Adds an item for the default theme styles.
120
+ _modifiedRevisions.push({
121
+ id: 'parent',
122
+ styles: {},
123
+ settings: {}
124
+ });
125
+ }
109
126
  }
110
127
  return {
111
128
  revisions: _modifiedRevisions,
112
129
  hasUnsavedChanges: isDirty,
113
- isLoading: false
130
+ isLoading: false,
131
+ revisionsCount
114
132
  };
115
133
  }, [isDirty, revisions, currentUser, authors, userConfig, isLoadingGlobalStylesRevisions]);
116
134
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_coreData","_element","_blockEditor","_lockUnlock","SITE_EDITOR_AUTHORS_QUERY","per_page","_fields","context","capabilities","EMPTY_ARRAY","GlobalStylesContext","unlock","blockEditorPrivateApis","useGlobalStylesRevisions","user","userConfig","useContext","authors","currentUser","isDirty","revisions","isLoadingGlobalStylesRevisions","useSelect","select","__experimentalGetDirtyEntityRecords","getCurrentUser","getUsers","getRevisions","__experimentalGetCurrentGlobalStylesId","isResolving","coreStore","dirtyEntityRecords","_currentUser","_isDirty","length","query","globalStylesId","globalStylesRevisions","_authors","_isResolving","useMemo","_modifiedRevisions","hasUnsavedChanges","isLoading","map","revision","author","find","id","isLatest","Object","keys","unsavedRevision","styles","settings","name","avatar_urls","modified","Date","unshift","push"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/use-global-styles-revisions.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useContext, useMemo } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\n\nconst SITE_EDITOR_AUTHORS_QUERY = {\n\tper_page: -1,\n\t_fields: 'id,name,avatar_urls',\n\tcontext: 'view',\n\tcapabilities: [ 'edit_theme_options' ],\n};\nconst EMPTY_ARRAY = [];\nconst { GlobalStylesContext } = unlock( blockEditorPrivateApis );\nexport default function useGlobalStylesRevisions() {\n\tconst { user: userConfig } = useContext( GlobalStylesContext );\n\tconst {\n\t\tauthors,\n\t\tcurrentUser,\n\t\tisDirty,\n\t\trevisions,\n\t\tisLoadingGlobalStylesRevisions,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\t__experimentalGetDirtyEntityRecords,\n\t\t\tgetCurrentUser,\n\t\t\tgetUsers,\n\t\t\tgetRevisions,\n\t\t\t__experimentalGetCurrentGlobalStylesId,\n\t\t\tisResolving,\n\t\t} = select( coreStore );\n\t\tconst dirtyEntityRecords = __experimentalGetDirtyEntityRecords();\n\t\tconst _currentUser = getCurrentUser();\n\t\tconst _isDirty = dirtyEntityRecords.length > 0;\n\t\tconst query = {\n\t\t\tper_page: 100,\n\t\t};\n\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\tconst globalStylesRevisions =\n\t\t\tgetRevisions( 'root', 'globalStyles', globalStylesId, query ) ||\n\t\t\tEMPTY_ARRAY;\n\t\tconst _authors = getUsers( SITE_EDITOR_AUTHORS_QUERY ) || EMPTY_ARRAY;\n\t\tconst _isResolving = isResolving( 'getRevisions', [\n\t\t\t'root',\n\t\t\t'globalStyles',\n\t\t\tglobalStylesId,\n\t\t\tquery,\n\t\t] );\n\t\treturn {\n\t\t\tauthors: _authors,\n\t\t\tcurrentUser: _currentUser,\n\t\t\tisDirty: _isDirty,\n\t\t\trevisions: globalStylesRevisions,\n\t\t\tisLoadingGlobalStylesRevisions: _isResolving,\n\t\t};\n\t}, [] );\n\treturn useMemo( () => {\n\t\tlet _modifiedRevisions = [];\n\t\tif ( ! authors.length || isLoadingGlobalStylesRevisions ) {\n\t\t\treturn {\n\t\t\t\trevisions: _modifiedRevisions,\n\t\t\t\thasUnsavedChanges: isDirty,\n\t\t\t\tisLoading: true,\n\t\t\t};\n\t\t}\n\n\t\t// Adds author details to each revision.\n\t\t_modifiedRevisions = revisions.map( ( revision ) => {\n\t\t\treturn {\n\t\t\t\t...revision,\n\t\t\t\tauthor: authors.find(\n\t\t\t\t\t( author ) => author.id === revision.author\n\t\t\t\t),\n\t\t\t};\n\t\t} );\n\n\t\tif ( _modifiedRevisions.length ) {\n\t\t\t// Flags the most current saved revision.\n\t\t\tif ( _modifiedRevisions[ 0 ].id !== 'unsaved' ) {\n\t\t\t\t_modifiedRevisions[ 0 ].isLatest = true;\n\t\t\t}\n\n\t\t\t// Adds an item for unsaved changes.\n\t\t\tif (\n\t\t\t\tisDirty &&\n\t\t\t\tuserConfig &&\n\t\t\t\tObject.keys( userConfig ).length > 0 &&\n\t\t\t\tcurrentUser\n\t\t\t) {\n\t\t\t\tconst unsavedRevision = {\n\t\t\t\t\tid: 'unsaved',\n\t\t\t\t\tstyles: userConfig?.styles,\n\t\t\t\t\tsettings: userConfig?.settings,\n\t\t\t\t\tauthor: {\n\t\t\t\t\t\tname: currentUser?.name,\n\t\t\t\t\t\tavatar_urls: currentUser?.avatar_urls,\n\t\t\t\t\t},\n\t\t\t\t\tmodified: new Date(),\n\t\t\t\t};\n\n\t\t\t\t_modifiedRevisions.unshift( unsavedRevision );\n\t\t\t}\n\n\t\t\t_modifiedRevisions.push( {\n\t\t\t\tid: 'parent',\n\t\t\t\tstyles: {},\n\t\t\t\tsettings: {},\n\t\t\t} );\n\t\t}\n\n\t\treturn {\n\t\t\trevisions: _modifiedRevisions,\n\t\t\thasUnsavedChanges: isDirty,\n\t\t\tisLoading: false,\n\t\t};\n\t}, [\n\t\tisDirty,\n\t\trevisions,\n\t\tcurrentUser,\n\t\tauthors,\n\t\tuserConfig,\n\t\tisLoadingGlobalStylesRevisions,\n\t] );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_data","require","_coreData","_element","_blockEditor","_lockUnlock","SITE_EDITOR_AUTHORS_QUERY","per_page","_fields","context","capabilities","DEFAULT_QUERY","page","EMPTY_ARRAY","GlobalStylesContext","unlock","blockEditorPrivateApis","useGlobalStylesRevisions","query","user","userConfig","useContext","_query","authors","currentUser","isDirty","revisions","isLoadingGlobalStylesRevisions","revisionsCount","useSelect","select","_globalStyles$_links$","__experimentalGetDirtyEntityRecords","getCurrentUser","getUsers","getRevisions","__experimentalGetCurrentGlobalStylesId","getEntityRecord","isResolving","coreStore","dirtyEntityRecords","_currentUser","_isDirty","length","globalStylesId","globalStyles","undefined","_revisionsCount","_links","count","globalStylesRevisions","_authors","_isResolving","useMemo","hasUnsavedChanges","isLoading","_modifiedRevisions","map","revision","author","find","id","fetchedRevisionsCount","isLatest","Object","keys","unsavedRevision","styles","settings","name","avatar_urls","modified","Date","unshift","Math","ceil","push"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/use-global-styles-revisions.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useContext, useMemo } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\n\nconst SITE_EDITOR_AUTHORS_QUERY = {\n\tper_page: -1,\n\t_fields: 'id,name,avatar_urls',\n\tcontext: 'view',\n\tcapabilities: [ 'edit_theme_options' ],\n};\nconst DEFAULT_QUERY = { per_page: 100, page: 1 };\nconst EMPTY_ARRAY = [];\nconst { GlobalStylesContext } = unlock( blockEditorPrivateApis );\nexport default function useGlobalStylesRevisions( { query } = {} ) {\n\tconst { user: userConfig } = useContext( GlobalStylesContext );\n\tconst _query = { ...DEFAULT_QUERY, ...query };\n\tconst {\n\t\tauthors,\n\t\tcurrentUser,\n\t\tisDirty,\n\t\trevisions,\n\t\tisLoadingGlobalStylesRevisions,\n\t\trevisionsCount,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\t__experimentalGetDirtyEntityRecords,\n\t\t\t\tgetCurrentUser,\n\t\t\t\tgetUsers,\n\t\t\t\tgetRevisions,\n\t\t\t\t__experimentalGetCurrentGlobalStylesId,\n\t\t\t\tgetEntityRecord,\n\t\t\t\tisResolving,\n\t\t\t} = select( coreStore );\n\t\t\tconst dirtyEntityRecords = __experimentalGetDirtyEntityRecords();\n\t\t\tconst _currentUser = getCurrentUser();\n\t\t\tconst _isDirty = dirtyEntityRecords.length > 0;\n\t\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\t\tconst globalStyles = globalStylesId\n\t\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t\t: undefined;\n\t\t\tconst _revisionsCount =\n\t\t\t\tglobalStyles?._links?.[ 'version-history' ]?.[ 0 ]?.count ?? 0;\n\t\t\tconst globalStylesRevisions =\n\t\t\t\tgetRevisions(\n\t\t\t\t\t'root',\n\t\t\t\t\t'globalStyles',\n\t\t\t\t\tglobalStylesId,\n\t\t\t\t\t_query\n\t\t\t\t) || EMPTY_ARRAY;\n\t\t\tconst _authors =\n\t\t\t\tgetUsers( SITE_EDITOR_AUTHORS_QUERY ) || EMPTY_ARRAY;\n\t\t\tconst _isResolving = isResolving( 'getRevisions', [\n\t\t\t\t'root',\n\t\t\t\t'globalStyles',\n\t\t\t\tglobalStylesId,\n\t\t\t\t_query,\n\t\t\t] );\n\t\t\treturn {\n\t\t\t\tauthors: _authors,\n\t\t\t\tcurrentUser: _currentUser,\n\t\t\t\tisDirty: _isDirty,\n\t\t\t\trevisions: globalStylesRevisions,\n\t\t\t\tisLoadingGlobalStylesRevisions: _isResolving,\n\t\t\t\trevisionsCount: _revisionsCount,\n\t\t\t};\n\t\t},\n\t\t[ query ]\n\t);\n\treturn useMemo( () => {\n\t\tif ( ! authors.length || isLoadingGlobalStylesRevisions ) {\n\t\t\treturn {\n\t\t\t\trevisions: EMPTY_ARRAY,\n\t\t\t\thasUnsavedChanges: isDirty,\n\t\t\t\tisLoading: true,\n\t\t\t\trevisionsCount,\n\t\t\t};\n\t\t}\n\n\t\t// Adds author details to each revision.\n\t\tconst _modifiedRevisions = revisions.map( ( revision ) => {\n\t\t\treturn {\n\t\t\t\t...revision,\n\t\t\t\tauthor: authors.find(\n\t\t\t\t\t( author ) => author.id === revision.author\n\t\t\t\t),\n\t\t\t};\n\t\t} );\n\n\t\tconst fetchedRevisionsCount = revisions.length;\n\n\t\tif ( fetchedRevisionsCount ) {\n\t\t\t// Flags the most current saved revision.\n\t\t\tif (\n\t\t\t\t_modifiedRevisions[ 0 ].id !== 'unsaved' &&\n\t\t\t\t_query.page === 1\n\t\t\t) {\n\t\t\t\t_modifiedRevisions[ 0 ].isLatest = true;\n\t\t\t}\n\n\t\t\t// Adds an item for unsaved changes.\n\t\t\tif (\n\t\t\t\tisDirty &&\n\t\t\t\tuserConfig &&\n\t\t\t\tObject.keys( userConfig ).length > 0 &&\n\t\t\t\tcurrentUser &&\n\t\t\t\t_query.page === 1\n\t\t\t) {\n\t\t\t\tconst unsavedRevision = {\n\t\t\t\t\tid: 'unsaved',\n\t\t\t\t\tstyles: userConfig?.styles,\n\t\t\t\t\tsettings: userConfig?.settings,\n\t\t\t\t\tauthor: {\n\t\t\t\t\t\tname: currentUser?.name,\n\t\t\t\t\t\tavatar_urls: currentUser?.avatar_urls,\n\t\t\t\t\t},\n\t\t\t\t\tmodified: new Date(),\n\t\t\t\t};\n\n\t\t\t\t_modifiedRevisions.unshift( unsavedRevision );\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t_query.page === Math.ceil( revisionsCount / _query.per_page )\n\t\t\t) {\n\t\t\t\t// Adds an item for the default theme styles.\n\t\t\t\t_modifiedRevisions.push( {\n\t\t\t\t\tid: 'parent',\n\t\t\t\t\tstyles: {},\n\t\t\t\t\tsettings: {},\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\trevisions: _modifiedRevisions,\n\t\t\thasUnsavedChanges: isDirty,\n\t\t\tisLoading: false,\n\t\t\trevisionsCount,\n\t\t};\n\t}, [\n\t\tisDirty,\n\t\trevisions,\n\t\tcurrentUser,\n\t\tauthors,\n\t\tuserConfig,\n\t\tisLoadingGlobalStylesRevisions,\n\t] );\n}\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAKA,IAAAI,WAAA,GAAAJ,OAAA;AAXA;AACA;AACA;;AAMA;AACA;AACA;;AAGA,MAAMK,yBAAyB,GAAG;EACjCC,QAAQ,EAAE,CAAC,CAAC;EACZC,OAAO,EAAE,qBAAqB;EAC9BC,OAAO,EAAE,MAAM;EACfC,YAAY,EAAE,CAAE,oBAAoB;AACrC,CAAC;AACD,MAAMC,aAAa,GAAG;EAAEJ,QAAQ,EAAE,GAAG;EAAEK,IAAI,EAAE;AAAE,CAAC;AAChD,MAAMC,WAAW,GAAG,EAAE;AACtB,MAAM;EAAEC;AAAoB,CAAC,GAAG,IAAAC,kBAAM,EAAEC,wBAAuB,CAAC;AACjD,SAASC,wBAAwBA,CAAE;EAAEC;AAAM,CAAC,GAAG,CAAC,CAAC,EAAG;EAClE,MAAM;IAAEC,IAAI,EAAEC;EAAW,CAAC,GAAG,IAAAC,mBAAU,EAAEP,mBAAoB,CAAC;EAC9D,MAAMQ,MAAM,GAAG;IAAE,GAAGX,aAAa;IAAE,GAAGO;EAAM,CAAC;EAC7C,MAAM;IACLK,OAAO;IACPC,WAAW;IACXC,OAAO;IACPC,SAAS;IACTC,8BAA8B;IAC9BC;EACD,CAAC,GAAG,IAAAC,eAAS,EACVC,MAAM,IAAM;IAAA,IAAAC,qBAAA;IACb,MAAM;MACLC,mCAAmC;MACnCC,cAAc;MACdC,QAAQ;MACRC,YAAY;MACZC,sCAAsC;MACtCC,eAAe;MACfC;IACD,CAAC,GAAGR,MAAM,CAAES,eAAU,CAAC;IACvB,MAAMC,kBAAkB,GAAGR,mCAAmC,CAAC,CAAC;IAChE,MAAMS,YAAY,GAAGR,cAAc,CAAC,CAAC;IACrC,MAAMS,QAAQ,GAAGF,kBAAkB,CAACG,MAAM,GAAG,CAAC;IAC9C,MAAMC,cAAc,GAAGR,sCAAsC,CAAC,CAAC;IAC/D,MAAMS,YAAY,GAAGD,cAAc,GAChCP,eAAe,CAAE,MAAM,EAAE,cAAc,EAAEO,cAAe,CAAC,GACzDE,SAAS;IACZ,MAAMC,eAAe,IAAAhB,qBAAA,GACpBc,YAAY,EAAEG,MAAM,GAAI,iBAAiB,CAAE,GAAI,CAAC,CAAE,EAAEC,KAAK,cAAAlB,qBAAA,cAAAA,qBAAA,GAAI,CAAC;IAC/D,MAAMmB,qBAAqB,GAC1Bf,YAAY,CACX,MAAM,EACN,cAAc,EACdS,cAAc,EACdtB,MACD,CAAC,IAAIT,WAAW;IACjB,MAAMsC,QAAQ,GACbjB,QAAQ,CAAE5B,yBAA0B,CAAC,IAAIO,WAAW;IACrD,MAAMuC,YAAY,GAAGd,WAAW,CAAE,cAAc,EAAE,CACjD,MAAM,EACN,cAAc,EACdM,cAAc,EACdtB,MAAM,CACL,CAAC;IACH,OAAO;MACNC,OAAO,EAAE4B,QAAQ;MACjB3B,WAAW,EAAEiB,YAAY;MACzBhB,OAAO,EAAEiB,QAAQ;MACjBhB,SAAS,EAAEwB,qBAAqB;MAChCvB,8BAA8B,EAAEyB,YAAY;MAC5CxB,cAAc,EAAEmB;IACjB,CAAC;EACF,CAAC,EACD,CAAE7B,KAAK,CACR,CAAC;EACD,OAAO,IAAAmC,gBAAO,EAAE,MAAM;IACrB,IAAK,CAAE9B,OAAO,CAACoB,MAAM,IAAIhB,8BAA8B,EAAG;MACzD,OAAO;QACND,SAAS,EAAEb,WAAW;QACtByC,iBAAiB,EAAE7B,OAAO;QAC1B8B,SAAS,EAAE,IAAI;QACf3B;MACD,CAAC;IACF;;IAEA;IACA,MAAM4B,kBAAkB,GAAG9B,SAAS,CAAC+B,GAAG,CAAIC,QAAQ,IAAM;MACzD,OAAO;QACN,GAAGA,QAAQ;QACXC,MAAM,EAAEpC,OAAO,CAACqC,IAAI,CACjBD,MAAM,IAAMA,MAAM,CAACE,EAAE,KAAKH,QAAQ,CAACC,MACtC;MACD,CAAC;IACF,CAAE,CAAC;IAEH,MAAMG,qBAAqB,GAAGpC,SAAS,CAACiB,MAAM;IAE9C,IAAKmB,qBAAqB,EAAG;MAC5B;MACA,IACCN,kBAAkB,CAAE,CAAC,CAAE,CAACK,EAAE,KAAK,SAAS,IACxCvC,MAAM,CAACV,IAAI,KAAK,CAAC,EAChB;QACD4C,kBAAkB,CAAE,CAAC,CAAE,CAACO,QAAQ,GAAG,IAAI;MACxC;;MAEA;MACA,IACCtC,OAAO,IACPL,UAAU,IACV4C,MAAM,CAACC,IAAI,CAAE7C,UAAW,CAAC,CAACuB,MAAM,GAAG,CAAC,IACpCnB,WAAW,IACXF,MAAM,CAACV,IAAI,KAAK,CAAC,EAChB;QACD,MAAMsD,eAAe,GAAG;UACvBL,EAAE,EAAE,SAAS;UACbM,MAAM,EAAE/C,UAAU,EAAE+C,MAAM;UAC1BC,QAAQ,EAAEhD,UAAU,EAAEgD,QAAQ;UAC9BT,MAAM,EAAE;YACPU,IAAI,EAAE7C,WAAW,EAAE6C,IAAI;YACvBC,WAAW,EAAE9C,WAAW,EAAE8C;UAC3B,CAAC;UACDC,QAAQ,EAAE,IAAIC,IAAI,CAAC;QACpB,CAAC;QAEDhB,kBAAkB,CAACiB,OAAO,CAAEP,eAAgB,CAAC;MAC9C;MAEA,IACC5C,MAAM,CAACV,IAAI,KAAK8D,IAAI,CAACC,IAAI,CAAE/C,cAAc,GAAGN,MAAM,CAACf,QAAS,CAAC,EAC5D;QACD;QACAiD,kBAAkB,CAACoB,IAAI,CAAE;UACxBf,EAAE,EAAE,QAAQ;UACZM,MAAM,EAAE,CAAC,CAAC;UACVC,QAAQ,EAAE,CAAC;QACZ,CAAE,CAAC;MACJ;IACD;IAEA,OAAO;MACN1C,SAAS,EAAE8B,kBAAkB;MAC7BF,iBAAiB,EAAE7B,OAAO;MAC1B8B,SAAS,EAAE,KAAK;MAChB3B;IACD,CAAC;EACF,CAAC,EAAE,CACFH,OAAO,EACPC,SAAS,EACTF,WAAW,EACXD,OAAO,EACPH,UAAU,EACVO,8BAA8B,CAC7B,CAAC;AACJ"}
@@ -96,50 +96,6 @@ function GlobalStylesActionMenu() {
96
96
  disabled: !canReset
97
97
  }, (0, _i18n.__)('Reset styles'))))));
98
98
  }
99
- function GlobalStylesRevisionsMenu() {
100
- const {
101
- setIsListViewOpened
102
- } = (0, _data.useDispatch)(_store.store);
103
- const {
104
- revisionsCount
105
- } = (0, _data.useSelect)(select => {
106
- var _globalStyles$_links$;
107
- const {
108
- getEntityRecord,
109
- __experimentalGetCurrentGlobalStylesId
110
- } = select(_coreData.store);
111
- const globalStylesId = __experimentalGetCurrentGlobalStylesId();
112
- const globalStyles = globalStylesId ? getEntityRecord('root', 'globalStyles', globalStylesId) : undefined;
113
- return {
114
- revisionsCount: (_globalStyles$_links$ = globalStyles?._links?.['version-history']?.[0]?.count) !== null && _globalStyles$_links$ !== void 0 ? _globalStyles$_links$ : 0
115
- };
116
- }, []);
117
- const {
118
- goTo
119
- } = (0, _components.__experimentalUseNavigator)();
120
- const {
121
- setEditorCanvasContainerView
122
- } = (0, _lockUnlock.unlock)((0, _data.useDispatch)(_store.store));
123
- const isRevisionsOpened = (0, _data.useSelect)(select => 'global-styles-revisions' === (0, _lockUnlock.unlock)(select(_store.store)).getEditorCanvasContainerView(), []);
124
- const loadRevisions = () => {
125
- setIsListViewOpened(false);
126
- if (!isRevisionsOpened) {
127
- goTo('/revisions');
128
- setEditorCanvasContainerView('global-styles-revisions');
129
- } else {
130
- goTo('/');
131
- setEditorCanvasContainerView(undefined);
132
- }
133
- };
134
- const hasRevisions = revisionsCount > 0;
135
- return (0, _react.createElement)(GlobalStylesMenuFill, null, (0, _react.createElement)(_components.Button, {
136
- label: (0, _i18n.__)('Revisions'),
137
- icon: _icons.backup,
138
- onClick: loadRevisions,
139
- disabled: !hasRevisions,
140
- isPressed: isRevisionsOpened
141
- }));
142
- }
143
99
  function GlobalStylesNavigationScreen({
144
100
  className,
145
101
  ...props
@@ -237,8 +193,7 @@ function GlobalStylesBlockLink() {
237
193
  }
238
194
  function GlobalStylesEditorCanvasContainerLink() {
239
195
  const {
240
- goTo,
241
- location
196
+ goTo
242
197
  } = (0, _components.__experimentalUseNavigator)();
243
198
  const editorCanvasContainerView = (0, _data.useSelect)(select => (0, _lockUnlock.unlock)(select(_store.store)).getEditorCanvasContainerView(), []);
244
199
 
@@ -246,22 +201,18 @@ function GlobalStylesEditorCanvasContainerLink() {
246
201
  // to the appropriate screen. This effectively allows deep linking to the
247
202
  // desired screens from outside the global styles navigation provider.
248
203
  (0, _element.useEffect)(() => {
249
- if (editorCanvasContainerView === 'global-styles-revisions') {
250
- // Switching to the revisions container view should
251
- // redirect to the revisions screen.
252
- goTo('/revisions');
253
- } else if (!!editorCanvasContainerView && location?.path === '/revisions') {
254
- // Switching to any container other than revisions should
255
- // redirect from the revisions screen to the root global styles screen.
256
- goTo('/');
257
- } else if (editorCanvasContainerView === 'global-styles-css') {
258
- goTo('/css');
204
+ switch (editorCanvasContainerView) {
205
+ case 'global-styles-revisions':
206
+ case 'global-styles-revisions:style-book':
207
+ goTo('/revisions');
208
+ break;
209
+ case 'global-styles-css':
210
+ goTo('/css');
211
+ break;
212
+ default:
213
+ goTo('/');
214
+ break;
259
215
  }
260
-
261
- // location?.path is not a dependency because we don't want to track it.
262
- // Doing so will cause an infinite loop. We could abstract logic to avoid
263
- // having to disable the check later.
264
- // eslint-disable-next-line react-hooks/exhaustive-deps
265
216
  }, [editorCanvasContainerView, goTo]);
266
217
  }
267
218
  function GlobalStylesUI() {
@@ -315,7 +266,7 @@ function GlobalStylesUI() {
315
266
  key: 'screens-block-' + block.name,
316
267
  name: block.name,
317
268
  parentMenu: '/blocks/' + encodeURIComponent(block.name)
318
- })), 'style-book' === editorCanvasContainerView && (0, _react.createElement)(GlobalStylesStyleBook, null), (0, _react.createElement)(GlobalStylesRevisionsMenu, null), (0, _react.createElement)(GlobalStylesActionMenu, null), (0, _react.createElement)(GlobalStylesBlockLink, null), (0, _react.createElement)(GlobalStylesEditorCanvasContainerLink, null));
269
+ })), 'style-book' === editorCanvasContainerView && (0, _react.createElement)(GlobalStylesStyleBook, null), (0, _react.createElement)(GlobalStylesActionMenu, null), (0, _react.createElement)(GlobalStylesBlockLink, null), (0, _react.createElement)(GlobalStylesEditorCanvasContainerLink, null));
319
270
  }
320
271
  var _default = GlobalStylesUI;
321
272
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_blocks","_data","_blockEditor","_i18n","_preferences","_icons","_coreData","_element","_screenRoot","_interopRequireDefault","_screenBlockList","_interopRequireWildcard","_screenBlock","_screenTypography","_screenTypographyElement","_screenColors","_screenColorPalette","_screenLayout","_screenStyleVariations","_styleBook","_screenCss","_screenRevisions","_lockUnlock","_store","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","SLOT_FILL_NAME","useGlobalStylesReset","unlock","blockEditorPrivateApis","Slot","GlobalStylesMenuSlot","Fill","GlobalStylesMenuFill","createSlotFill","exports","GlobalStylesActionMenu","canReset","onReset","toggle","useDispatch","preferencesStore","canEditCSS","useSelect","select","getEntityRecord","__experimentalGetCurrentGlobalStylesId","coreStore","globalStylesId","globalStyles","undefined","_links","setEditorCanvasContainerView","editSiteStore","goTo","useNavigator","loadCustomCSS","_react","createElement","DropdownMenu","icon","moreVertical","label","__","onClose","Fragment","MenuGroup","MenuItem","onClick","disabled","GlobalStylesRevisionsMenu","setIsListViewOpened","revisionsCount","_globalStyles$_links$","count","isRevisionsOpened","getEditorCanvasContainerView","loadRevisions","hasRevisions","Button","backup","isPressed","GlobalStylesNavigationScreen","className","props","__experimentalNavigatorScreen","filter","Boolean","join","BlockStylesNavigationScreens","parentMenu","blockStyles","blockName","map","style","index","path","name","variation","ContextScreens","blockStyleVariations","getBlockStyles","blocksStore","length","GlobalStylesStyleBook","navigator","location","isSelected","encodeURIComponent","startsWith","onSelect","GlobalStylesBlockLink","selectedBlockName","selectedBlockClientId","getSelectedBlockClientId","getBlockName","blockEditorStore","clientId","blockHasGlobalStyles","useBlockHasGlobalStyles","useEffect","currentPath","newPath","skipFocus","GlobalStylesEditorCanvasContainerLink","editorCanvasContainerView","GlobalStylesUI","blocks","getBlockTypes","__experimentalNavigatorProvider","initialPath","element","block","_default"],"sources":["@wordpress/edit-site/src/components/global-styles/ui.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalNavigatorProvider as NavigatorProvider,\n\t__experimentalNavigatorScreen as NavigatorScreen,\n\t__experimentalUseNavigator as useNavigator,\n\tcreateSlotFill,\n\tButton,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n} from '@wordpress/components';\nimport { getBlockTypes, store as blocksStore } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { backup, moreVertical } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ScreenRoot from './screen-root';\nimport {\n\tuseBlockHasGlobalStyles,\n\tdefault as ScreenBlockList,\n} from './screen-block-list';\nimport ScreenBlock from './screen-block';\nimport ScreenTypography from './screen-typography';\nimport ScreenTypographyElement from './screen-typography-element';\nimport ScreenColors from './screen-colors';\nimport ScreenColorPalette from './screen-color-palette';\nimport ScreenLayout from './screen-layout';\nimport ScreenStyleVariations from './screen-style-variations';\nimport StyleBook from '../style-book';\nimport ScreenCSS from './screen-css';\nimport ScreenRevisions from './screen-revisions';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\n\nconst SLOT_FILL_NAME = 'GlobalStylesMenu';\nconst { useGlobalStylesReset } = unlock( blockEditorPrivateApis );\nconst { Slot: GlobalStylesMenuSlot, Fill: GlobalStylesMenuFill } =\n\tcreateSlotFill( SLOT_FILL_NAME );\n\nfunction GlobalStylesActionMenu() {\n\tconst [ canReset, onReset ] = useGlobalStylesReset();\n\tconst { toggle } = useDispatch( preferencesStore );\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: !! globalStyles?._links?.[ 'wp:action-edit-css' ],\n\t\t};\n\t}, [] );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst { goTo } = useNavigator();\n\tconst loadCustomCSS = () => {\n\t\tsetEditorCanvasContainerView( 'global-styles-css' );\n\t\tgoTo( '/css' );\n\t};\n\n\treturn (\n\t\t<GlobalStylesMenuFill>\n\t\t\t<DropdownMenu icon={ moreVertical } label={ __( 'More' ) }>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t{ canEditCSS && (\n\t\t\t\t\t\t\t\t<MenuItem onClick={ loadCustomCSS }>\n\t\t\t\t\t\t\t\t\t{ __( 'Additional CSS' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\ttoggle(\n\t\t\t\t\t\t\t\t\t\t'core/edit-site',\n\t\t\t\t\t\t\t\t\t\t'welcomeGuideStyles'\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Welcome Guide' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonReset();\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tdisabled={ ! canReset }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Reset styles' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</DropdownMenu>\n\t\t</GlobalStylesMenuFill>\n\t);\n}\n\nfunction GlobalStylesRevisionsMenu() {\n\tconst { setIsListViewOpened } = useDispatch( editSiteStore );\n\tconst { revisionsCount } = 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\trevisionsCount:\n\t\t\t\tglobalStyles?._links?.[ 'version-history' ]?.[ 0 ]?.count ?? 0,\n\t\t};\n\t}, [] );\n\tconst { goTo } = useNavigator();\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst isRevisionsOpened = useSelect(\n\t\t( select ) =>\n\t\t\t'global-styles-revisions' ===\n\t\t\tunlock( select( editSiteStore ) ).getEditorCanvasContainerView(),\n\t\t[]\n\t);\n\tconst loadRevisions = () => {\n\t\tsetIsListViewOpened( false );\n\n\t\tif ( ! isRevisionsOpened ) {\n\t\t\tgoTo( '/revisions' );\n\t\t\tsetEditorCanvasContainerView( 'global-styles-revisions' );\n\t\t} else {\n\t\t\tgoTo( '/' );\n\t\t\tsetEditorCanvasContainerView( undefined );\n\t\t}\n\t};\n\tconst hasRevisions = revisionsCount > 0;\n\n\treturn (\n\t\t<GlobalStylesMenuFill>\n\t\t\t<Button\n\t\t\t\tlabel={ __( 'Revisions' ) }\n\t\t\t\ticon={ backup }\n\t\t\t\tonClick={ loadRevisions }\n\t\t\t\tdisabled={ ! hasRevisions }\n\t\t\t\tisPressed={ isRevisionsOpened }\n\t\t\t/>\n\t\t</GlobalStylesMenuFill>\n\t);\n}\n\nfunction GlobalStylesNavigationScreen( { className, ...props } ) {\n\treturn (\n\t\t<NavigatorScreen\n\t\t\tclassName={ [\n\t\t\t\t'edit-site-global-styles-sidebar__navigator-screen',\n\t\t\t\tclassName,\n\t\t\t]\n\t\t\t\t.filter( Boolean )\n\t\t\t\t.join( ' ' ) }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nfunction BlockStylesNavigationScreens( {\n\tparentMenu,\n\tblockStyles,\n\tblockName,\n} ) {\n\treturn blockStyles.map( ( style, index ) => (\n\t\t<GlobalStylesNavigationScreen\n\t\t\tkey={ index }\n\t\t\tpath={ parentMenu + '/variations/' + style.name }\n\t\t>\n\t\t\t<ScreenBlock name={ blockName } variation={ style.name } />\n\t\t</GlobalStylesNavigationScreen>\n\t) );\n}\n\nfunction ContextScreens( { name, parentMenu = '' } ) {\n\tconst blockStyleVariations = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockStyles } = select( blocksStore );\n\t\t\treturn getBlockStyles( name );\n\t\t},\n\t\t[ name ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<GlobalStylesNavigationScreen\n\t\t\t\tpath={ parentMenu + '/colors/palette' }\n\t\t\t>\n\t\t\t\t<ScreenColorPalette name={ name } />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t{ !! blockStyleVariations?.length && (\n\t\t\t\t<BlockStylesNavigationScreens\n\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\tblockStyles={ blockStyleVariations }\n\t\t\t\t\tblockName={ name }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction GlobalStylesStyleBook() {\n\tconst navigator = useNavigator();\n\tconst { path } = navigator.location;\n\treturn (\n\t\t<StyleBook\n\t\t\tisSelected={ ( blockName ) =>\n\t\t\t\t// Match '/blocks/core%2Fbutton' and\n\t\t\t\t// '/blocks/core%2Fbutton/typography', but not\n\t\t\t\t// '/blocks/core%2Fbuttons'.\n\t\t\t\tpath === `/blocks/${ encodeURIComponent( blockName ) }` ||\n\t\t\t\tpath.startsWith(\n\t\t\t\t\t`/blocks/${ encodeURIComponent( blockName ) }/`\n\t\t\t\t)\n\t\t\t}\n\t\t\tonSelect={ ( blockName ) => {\n\t\t\t\t// Now go to the selected block.\n\t\t\t\tnavigator.goTo( '/blocks/' + encodeURIComponent( blockName ) );\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction GlobalStylesBlockLink() {\n\tconst navigator = useNavigator();\n\tconst { selectedBlockName, selectedBlockClientId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSelectedBlockClientId, getBlockName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst clientId = getSelectedBlockClientId();\n\t\t\treturn {\n\t\t\t\tselectedBlockName: getBlockName( clientId ),\n\t\t\t\tselectedBlockClientId: clientId,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst blockHasGlobalStyles = useBlockHasGlobalStyles( selectedBlockName );\n\t// When we're in the `Blocks` screen enable deep linking to the selected block.\n\tuseEffect( () => {\n\t\tif ( ! selectedBlockClientId || ! blockHasGlobalStyles ) {\n\t\t\treturn;\n\t\t}\n\t\tconst currentPath = navigator.location.path;\n\t\tif (\n\t\t\tcurrentPath !== '/blocks' &&\n\t\t\t! currentPath.startsWith( '/blocks/' )\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tconst newPath = '/blocks/' + encodeURIComponent( selectedBlockName );\n\t\t// Avoid navigating to the same path. This can happen when selecting\n\t\t// a new block of the same type.\n\t\tif ( newPath !== currentPath ) {\n\t\t\tnavigator.goTo( newPath, { skipFocus: true } );\n\t\t}\n\t}, [ selectedBlockClientId, selectedBlockName, blockHasGlobalStyles ] );\n}\n\nfunction GlobalStylesEditorCanvasContainerLink() {\n\tconst { goTo, location } = useNavigator();\n\tconst editorCanvasContainerView = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( editSiteStore ) ).getEditorCanvasContainerView(),\n\t\t[]\n\t);\n\n\t// If the user switches the editor canvas container view, redirect\n\t// to the appropriate screen. This effectively allows deep linking to the\n\t// desired screens from outside the global styles navigation provider.\n\tuseEffect( () => {\n\t\tif ( editorCanvasContainerView === 'global-styles-revisions' ) {\n\t\t\t// Switching to the revisions container view should\n\t\t\t// redirect to the revisions screen.\n\t\t\tgoTo( '/revisions' );\n\t\t} else if (\n\t\t\t!! editorCanvasContainerView &&\n\t\t\tlocation?.path === '/revisions'\n\t\t) {\n\t\t\t// Switching to any container other than revisions should\n\t\t\t// redirect from the revisions screen to the root global styles screen.\n\t\t\tgoTo( '/' );\n\t\t} else if ( editorCanvasContainerView === 'global-styles-css' ) {\n\t\t\tgoTo( '/css' );\n\t\t}\n\n\t\t// location?.path is not a dependency because we don't want to track it.\n\t\t// Doing so will cause an infinite loop. We could abstract logic to avoid\n\t\t// having to disable the check later.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ editorCanvasContainerView, goTo ] );\n}\n\nfunction GlobalStylesUI() {\n\tconst blocks = getBlockTypes();\n\tconst editorCanvasContainerView = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( editSiteStore ) ).getEditorCanvasContainerView(),\n\t\t[]\n\t);\n\treturn (\n\t\t<NavigatorProvider\n\t\t\tclassName=\"edit-site-global-styles-sidebar__navigator-provider\"\n\t\t\tinitialPath=\"/\"\n\t\t>\n\t\t\t<GlobalStylesNavigationScreen path=\"/\">\n\t\t\t\t<ScreenRoot />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/variations\">\n\t\t\t\t<ScreenStyleVariations />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/blocks\">\n\t\t\t\t<ScreenBlockList />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography\">\n\t\t\t\t<ScreenTypography />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/text\">\n\t\t\t\t<ScreenTypographyElement element=\"text\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/link\">\n\t\t\t\t<ScreenTypographyElement element=\"link\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/heading\">\n\t\t\t\t<ScreenTypographyElement element=\"heading\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/caption\">\n\t\t\t\t<ScreenTypographyElement element=\"caption\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/button\">\n\t\t\t\t<ScreenTypographyElement element=\"button\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/colors\">\n\t\t\t\t<ScreenColors />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/layout\">\n\t\t\t\t<ScreenLayout />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/css\">\n\t\t\t\t<ScreenCSS />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path={ '/revisions' }>\n\t\t\t\t<ScreenRevisions />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t{ blocks.map( ( block ) => (\n\t\t\t\t<GlobalStylesNavigationScreen\n\t\t\t\t\tkey={ 'menu-block-' + block.name }\n\t\t\t\t\tpath={ '/blocks/' + encodeURIComponent( block.name ) }\n\t\t\t\t>\n\t\t\t\t\t<ScreenBlock name={ block.name } />\n\t\t\t\t</GlobalStylesNavigationScreen>\n\t\t\t) ) }\n\n\t\t\t<ContextScreens />\n\n\t\t\t{ blocks.map( ( block ) => (\n\t\t\t\t<ContextScreens\n\t\t\t\t\tkey={ 'screens-block-' + block.name }\n\t\t\t\t\tname={ block.name }\n\t\t\t\t\tparentMenu={ '/blocks/' + encodeURIComponent( block.name ) }\n\t\t\t\t/>\n\t\t\t) ) }\n\n\t\t\t{ 'style-book' === editorCanvasContainerView && (\n\t\t\t\t<GlobalStylesStyleBook />\n\t\t\t) }\n\n\t\t\t<GlobalStylesRevisionsMenu />\n\t\t\t<GlobalStylesActionMenu />\n\t\t\t<GlobalStylesBlockLink />\n\t\t\t<GlobalStylesEditorCanvasContainerLink />\n\t\t</NavigatorProvider>\n\t);\n}\nexport { GlobalStylesMenuSlot };\nexport default GlobalStylesUI;\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAUA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAIA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,YAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AAKA,IAAAS,WAAA,GAAAC,sBAAA,CAAAV,OAAA;AACA,IAAAW,gBAAA,GAAAC,uBAAA,CAAAZ,OAAA;AAIA,IAAAa,YAAA,GAAAH,sBAAA,CAAAV,OAAA;AACA,IAAAc,iBAAA,GAAAJ,sBAAA,CAAAV,OAAA;AACA,IAAAe,wBAAA,GAAAL,sBAAA,CAAAV,OAAA;AACA,IAAAgB,aAAA,GAAAN,sBAAA,CAAAV,OAAA;AACA,IAAAiB,mBAAA,GAAAP,sBAAA,CAAAV,OAAA;AACA,IAAAkB,aAAA,GAAAR,sBAAA,CAAAV,OAAA;AACA,IAAAmB,sBAAA,GAAAT,sBAAA,CAAAV,OAAA;AACA,IAAAoB,UAAA,GAAAV,sBAAA,CAAAV,OAAA;AACA,IAAAqB,UAAA,GAAAX,sBAAA,CAAAV,OAAA;AACA,IAAAsB,gBAAA,GAAAZ,sBAAA,CAAAV,OAAA;AACA,IAAAuB,WAAA,GAAAvB,OAAA;AACA,IAAAwB,MAAA,GAAAxB,OAAA;AAAqD,SAAAyB,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAd,wBAAAkB,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AA5CrD;AACA;AACA;;AAuBA;AACA;AACA;;AAmBA,MAAMW,cAAc,GAAG,kBAAkB;AACzC,MAAM;EAAEC;AAAqB,CAAC,GAAG,IAAAC,kBAAM,EAAEC,wBAAuB,CAAC;AACjE,MAAM;EAAEC,IAAI,EAAEC,oBAAoB;EAAEC,IAAI,EAAEC;AAAqB,CAAC,GAC/D,IAAAC,0BAAc,EAAER,cAAe,CAAC;AAACS,OAAA,CAAAJ,oBAAA,GAAAA,oBAAA;AAElC,SAASK,sBAAsBA,CAAA,EAAG;EACjC,MAAM,CAAEC,QAAQ,EAAEC,OAAO,CAAE,GAAGX,oBAAoB,CAAC,CAAC;EACpD,MAAM;IAAEY;EAAO,CAAC,GAAG,IAAAC,iBAAW,EAAEC,kBAAiB,CAAC;EAClD,MAAM;IAAEC;EAAW,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAC/C,MAAM;MAAEC,eAAe;MAAEC;IAAuC,CAAC,GAChEF,MAAM,CAAEG,eAAU,CAAC;IAEpB,MAAMC,cAAc,GAAGF,sCAAsC,CAAC,CAAC;IAC/D,MAAMG,YAAY,GAAGD,cAAc,GAChCH,eAAe,CAAE,MAAM,EAAE,cAAc,EAAEG,cAAe,CAAC,GACzDE,SAAS;IAEZ,OAAO;MACNR,UAAU,EAAE,CAAC,CAAEO,YAAY,EAAEE,MAAM,GAAI,oBAAoB;IAC5D,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,MAAM;IAAEC;EAA6B,CAAC,GAAG,IAAAxB,kBAAM,EAC9C,IAAAY,iBAAW,EAAEa,YAAc,CAC5B,CAAC;EACD,MAAM;IAAEC;EAAK,CAAC,GAAG,IAAAC,sCAAY,EAAC,CAAC;EAC/B,MAAMC,aAAa,GAAGA,CAAA,KAAM;IAC3BJ,4BAA4B,CAAE,mBAAoB,CAAC;IACnDE,IAAI,CAAE,MAAO,CAAC;EACf,CAAC;EAED,OACC,IAAAG,MAAA,CAAAC,aAAA,EAACzB,oBAAoB,QACpB,IAAAwB,MAAA,CAAAC,aAAA,EAAChF,WAAA,CAAAiF,YAAY;IAACC,IAAI,EAAGC,mBAAc;IAACC,KAAK,EAAG,IAAAC,QAAE,EAAE,MAAO;EAAG,GACvD,CAAE;IAAEC;EAAQ,CAAC,KACd,IAAAP,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAQ,QAAA,QACC,IAAAR,MAAA,CAAAC,aAAA,EAAChF,WAAA,CAAAwF,SAAS,QACPxB,UAAU,IACX,IAAAe,MAAA,CAAAC,aAAA,EAAChF,WAAA,CAAAyF,QAAQ;IAACC,OAAO,EAAGZ;EAAe,GAChC,IAAAO,QAAE,EAAE,gBAAiB,CACd,CACV,EACD,IAAAN,MAAA,CAAAC,aAAA,EAAChF,WAAA,CAAAyF,QAAQ;IACRC,OAAO,EAAGA,CAAA,KAAM;MACf7B,MAAM,CACL,gBAAgB,EAChB,oBACD,CAAC;MACDyB,OAAO,CAAC,CAAC;IACV;EAAG,GAED,IAAAD,QAAE,EAAE,eAAgB,CACb,CACA,CAAC,EACZ,IAAAN,MAAA,CAAAC,aAAA,EAAChF,WAAA,CAAAwF,SAAS,QACT,IAAAT,MAAA,CAAAC,aAAA,EAAChF,WAAA,CAAAyF,QAAQ;IACRC,OAAO,EAAGA,CAAA,KAAM;MACf9B,OAAO,CAAC,CAAC;MACT0B,OAAO,CAAC,CAAC;IACV,CAAG;IACHK,QAAQ,EAAG,CAAEhC;EAAU,GAErB,IAAA0B,QAAE,EAAE,cAAe,CACZ,CACA,CACV,CAEU,CACO,CAAC;AAEzB;AAEA,SAASO,yBAAyBA,CAAA,EAAG;EACpC,MAAM;IAAEC;EAAoB,CAAC,GAAG,IAAA/B,iBAAW,EAAEa,YAAc,CAAC;EAC5D,MAAM;IAAEmB;EAAe,CAAC,GAAG,IAAA7B,eAAS,EAAIC,MAAM,IAAM;IAAA,IAAA6B,qBAAA;IACnD,MAAM;MAAE5B,eAAe;MAAEC;IAAuC,CAAC,GAChEF,MAAM,CAAEG,eAAU,CAAC;IAEpB,MAAMC,cAAc,GAAGF,sCAAsC,CAAC,CAAC;IAC/D,MAAMG,YAAY,GAAGD,cAAc,GAChCH,eAAe,CAAE,MAAM,EAAE,cAAc,EAAEG,cAAe,CAAC,GACzDE,SAAS;IAEZ,OAAO;MACNsB,cAAc,GAAAC,qBAAA,GACbxB,YAAY,EAAEE,MAAM,GAAI,iBAAiB,CAAE,GAAI,CAAC,CAAE,EAAEuB,KAAK,cAAAD,qBAAA,cAAAA,qBAAA,GAAI;IAC/D,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,MAAM;IAAEnB;EAAK,CAAC,GAAG,IAAAC,sCAAY,EAAC,CAAC;EAC/B,MAAM;IAAEH;EAA6B,CAAC,GAAG,IAAAxB,kBAAM,EAC9C,IAAAY,iBAAW,EAAEa,YAAc,CAC5B,CAAC;EACD,MAAMsB,iBAAiB,GAAG,IAAAhC,eAAS,EAChCC,MAAM,IACP,yBAAyB,KACzB,IAAAhB,kBAAM,EAAEgB,MAAM,CAAES,YAAc,CAAE,CAAC,CAACuB,4BAA4B,CAAC,CAAC,EACjE,EACD,CAAC;EACD,MAAMC,aAAa,GAAGA,CAAA,KAAM;IAC3BN,mBAAmB,CAAE,KAAM,CAAC;IAE5B,IAAK,CAAEI,iBAAiB,EAAG;MAC1BrB,IAAI,CAAE,YAAa,CAAC;MACpBF,4BAA4B,CAAE,yBAA0B,CAAC;IAC1D,CAAC,MAAM;MACNE,IAAI,CAAE,GAAI,CAAC;MACXF,4BAA4B,CAAEF,SAAU,CAAC;IAC1C;EACD,CAAC;EACD,MAAM4B,YAAY,GAAGN,cAAc,GAAG,CAAC;EAEvC,OACC,IAAAf,MAAA,CAAAC,aAAA,EAACzB,oBAAoB,QACpB,IAAAwB,MAAA,CAAAC,aAAA,EAAChF,WAAA,CAAAqG,MAAM;IACNjB,KAAK,EAAG,IAAAC,QAAE,EAAE,WAAY,CAAG;IAC3BH,IAAI,EAAGoB,aAAQ;IACfZ,OAAO,EAAGS,aAAe;IACzBR,QAAQ,EAAG,CAAES,YAAc;IAC3BG,SAAS,EAAGN;EAAmB,CAC/B,CACoB,CAAC;AAEzB;AAEA,SAASO,4BAA4BA,CAAE;EAAEC,SAAS;EAAE,GAAGC;AAAM,CAAC,EAAG;EAChE,OACC,IAAA3B,MAAA,CAAAC,aAAA,EAAChF,WAAA,CAAA2G,6BAAe;IACfF,SAAS,EAAG,CACX,mDAAmD,EACnDA,SAAS,CACT,CACCG,MAAM,CAAEC,OAAQ,CAAC,CACjBC,IAAI,CAAE,GAAI,CAAG;IAAA,GACVJ;EAAK,CACV,CAAC;AAEJ;AAEA,SAASK,4BAA4BA,CAAE;EACtCC,UAAU;EACVC,WAAW;EACXC;AACD,CAAC,EAAG;EACH,OAAOD,WAAW,CAACE,GAAG,CAAE,CAAEC,KAAK,EAAEC,KAAK,KACrC,IAAAtC,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAC5B9D,GAAG,EAAG2E,KAAO;IACbC,IAAI,EAAGN,UAAU,GAAG,cAAc,GAAGI,KAAK,CAACG;EAAM,GAEjD,IAAAxC,MAAA,CAAAC,aAAA,EAAClE,YAAA,CAAAmB,OAAW;IAACsF,IAAI,EAAGL,SAAW;IAACM,SAAS,EAAGJ,KAAK,CAACG;EAAM,CAAE,CAC7B,CAC7B,CAAC;AACJ;AAEA,SAASE,cAAcA,CAAE;EAAEF,IAAI;EAAEP,UAAU,GAAG;AAAG,CAAC,EAAG;EACpD,MAAMU,oBAAoB,GAAG,IAAAzD,eAAS,EACnCC,MAAM,IAAM;IACb,MAAM;MAAEyD;IAAe,CAAC,GAAGzD,MAAM,CAAE0D,aAAY,CAAC;IAChD,OAAOD,cAAc,CAAEJ,IAAK,CAAC;EAC9B,CAAC,EACD,CAAEA,IAAI,CACP,CAAC;EAED,OACC,IAAAxC,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAQ,QAAA,QACC,IAAAR,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAC5Bc,IAAI,EAAGN,UAAU,GAAG;EAAmB,GAEvC,IAAAjC,MAAA,CAAAC,aAAA,EAAC9D,mBAAA,CAAAe,OAAkB;IAACsF,IAAI,EAAGA;EAAM,CAAE,CACN,CAAC,EAE7B,CAAC,CAAEG,oBAAoB,EAAEG,MAAM,IAChC,IAAA9C,MAAA,CAAAC,aAAA,EAAC+B,4BAA4B;IAC5BC,UAAU,EAAGA,UAAY;IACzBC,WAAW,EAAGS,oBAAsB;IACpCR,SAAS,EAAGK;EAAM,CAClB,CAED,CAAC;AAEL;AAEA,SAASO,qBAAqBA,CAAA,EAAG;EAChC,MAAMC,SAAS,GAAG,IAAAlD,sCAAY,EAAC,CAAC;EAChC,MAAM;IAAEyC;EAAK,CAAC,GAAGS,SAAS,CAACC,QAAQ;EACnC,OACC,IAAAjD,MAAA,CAAAC,aAAA,EAAC3D,UAAA,CAAAY,OAAS;IACTgG,UAAU,EAAKf,SAAS;IACvB;IACA;IACA;IACAI,IAAI,KAAM,WAAWY,kBAAkB,CAAEhB,SAAU,CAAG,EAAC,IACvDI,IAAI,CAACa,UAAU,CACb,WAAWD,kBAAkB,CAAEhB,SAAU,CAAG,GAC9C,CACA;IACDkB,QAAQ,EAAKlB,SAAS,IAAM;MAC3B;MACAa,SAAS,CAACnD,IAAI,CAAE,UAAU,GAAGsD,kBAAkB,CAAEhB,SAAU,CAAE,CAAC;IAC/D;EAAG,CACH,CAAC;AAEJ;AAEA,SAASmB,qBAAqBA,CAAA,EAAG;EAChC,MAAMN,SAAS,GAAG,IAAAlD,sCAAY,EAAC,CAAC;EAChC,MAAM;IAAEyD,iBAAiB;IAAEC;EAAsB,CAAC,GAAG,IAAAtE,eAAS,EAC3DC,MAAM,IAAM;IACb,MAAM;MAAEsE,wBAAwB;MAAEC;IAAa,CAAC,GAC/CvE,MAAM,CAAEwE,kBAAiB,CAAC;IAC3B,MAAMC,QAAQ,GAAGH,wBAAwB,CAAC,CAAC;IAC3C,OAAO;MACNF,iBAAiB,EAAEG,YAAY,CAAEE,QAAS,CAAC;MAC3CJ,qBAAqB,EAAEI;IACxB,CAAC;EACF,CAAC,EACD,EACD,CAAC;EACD,MAAMC,oBAAoB,GAAG,IAAAC,wCAAuB,EAAEP,iBAAkB,CAAC;EACzE;EACA,IAAAQ,kBAAS,EAAE,MAAM;IAChB,IAAK,CAAEP,qBAAqB,IAAI,CAAEK,oBAAoB,EAAG;MACxD;IACD;IACA,MAAMG,WAAW,GAAGhB,SAAS,CAACC,QAAQ,CAACV,IAAI;IAC3C,IACCyB,WAAW,KAAK,SAAS,IACzB,CAAEA,WAAW,CAACZ,UAAU,CAAE,UAAW,CAAC,EACrC;MACD;IACD;IACA,MAAMa,OAAO,GAAG,UAAU,GAAGd,kBAAkB,CAAEI,iBAAkB,CAAC;IACpE;IACA;IACA,IAAKU,OAAO,KAAKD,WAAW,EAAG;MAC9BhB,SAAS,CAACnD,IAAI,CAAEoE,OAAO,EAAE;QAAEC,SAAS,EAAE;MAAK,CAAE,CAAC;IAC/C;EACD,CAAC,EAAE,CAAEV,qBAAqB,EAAED,iBAAiB,EAAEM,oBAAoB,CAAG,CAAC;AACxE;AAEA,SAASM,qCAAqCA,CAAA,EAAG;EAChD,MAAM;IAAEtE,IAAI;IAAEoD;EAAS,CAAC,GAAG,IAAAnD,sCAAY,EAAC,CAAC;EACzC,MAAMsE,yBAAyB,GAAG,IAAAlF,eAAS,EACxCC,MAAM,IACP,IAAAhB,kBAAM,EAAEgB,MAAM,CAAES,YAAc,CAAE,CAAC,CAACuB,4BAA4B,CAAC,CAAC,EACjE,EACD,CAAC;;EAED;EACA;EACA;EACA,IAAA4C,kBAAS,EAAE,MAAM;IAChB,IAAKK,yBAAyB,KAAK,yBAAyB,EAAG;MAC9D;MACA;MACAvE,IAAI,CAAE,YAAa,CAAC;IACrB,CAAC,MAAM,IACN,CAAC,CAAEuE,yBAAyB,IAC5BnB,QAAQ,EAAEV,IAAI,KAAK,YAAY,EAC9B;MACD;MACA;MACA1C,IAAI,CAAE,GAAI,CAAC;IACZ,CAAC,MAAM,IAAKuE,yBAAyB,KAAK,mBAAmB,EAAG;MAC/DvE,IAAI,CAAE,MAAO,CAAC;IACf;;IAEA;IACA;IACA;IACA;EACD,CAAC,EAAE,CAAEuE,yBAAyB,EAAEvE,IAAI,CAAG,CAAC;AACzC;AAEA,SAASwE,cAAcA,CAAA,EAAG;EACzB,MAAMC,MAAM,GAAG,IAAAC,qBAAa,EAAC,CAAC;EAC9B,MAAMH,yBAAyB,GAAG,IAAAlF,eAAS,EACxCC,MAAM,IACP,IAAAhB,kBAAM,EAAEgB,MAAM,CAAES,YAAc,CAAE,CAAC,CAACuB,4BAA4B,CAAC,CAAC,EACjE,EACD,CAAC;EACD,OACC,IAAAnB,MAAA,CAAAC,aAAA,EAAChF,WAAA,CAAAuJ,+BAAiB;IACjB9C,SAAS,EAAC,qDAAqD;IAC/D+C,WAAW,EAAC;EAAG,GAEf,IAAAzE,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAACc,IAAI,EAAC;EAAG,GACrC,IAAAvC,MAAA,CAAAC,aAAA,EAACtE,WAAA,CAAAuB,OAAU,MAAE,CACgB,CAAC,EAE/B,IAAA8C,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAACc,IAAI,EAAC;EAAa,GAC/C,IAAAvC,MAAA,CAAAC,aAAA,EAAC5D,sBAAA,CAAAa,OAAqB,MAAE,CACK,CAAC,EAE/B,IAAA8C,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAACc,IAAI,EAAC;EAAS,GAC3C,IAAAvC,MAAA,CAAAC,aAAA,EAACpE,gBAAA,CAAAqB,OAAe,MAAE,CACW,CAAC,EAE/B,IAAA8C,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAACc,IAAI,EAAC;EAAa,GAC/C,IAAAvC,MAAA,CAAAC,aAAA,EAACjE,iBAAA,CAAAkB,OAAgB,MAAE,CACU,CAAC,EAE/B,IAAA8C,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAACc,IAAI,EAAC;EAAkB,GACpD,IAAAvC,MAAA,CAAAC,aAAA,EAAChE,wBAAA,CAAAiB,OAAuB;IAACwH,OAAO,EAAC;EAAM,CAAE,CACZ,CAAC,EAE/B,IAAA1E,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAACc,IAAI,EAAC;EAAkB,GACpD,IAAAvC,MAAA,CAAAC,aAAA,EAAChE,wBAAA,CAAAiB,OAAuB;IAACwH,OAAO,EAAC;EAAM,CAAE,CACZ,CAAC,EAE/B,IAAA1E,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAACc,IAAI,EAAC;EAAqB,GACvD,IAAAvC,MAAA,CAAAC,aAAA,EAAChE,wBAAA,CAAAiB,OAAuB;IAACwH,OAAO,EAAC;EAAS,CAAE,CACf,CAAC,EAE/B,IAAA1E,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAACc,IAAI,EAAC;EAAqB,GACvD,IAAAvC,MAAA,CAAAC,aAAA,EAAChE,wBAAA,CAAAiB,OAAuB;IAACwH,OAAO,EAAC;EAAS,CAAE,CACf,CAAC,EAE/B,IAAA1E,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAACc,IAAI,EAAC;EAAoB,GACtD,IAAAvC,MAAA,CAAAC,aAAA,EAAChE,wBAAA,CAAAiB,OAAuB;IAACwH,OAAO,EAAC;EAAQ,CAAE,CACd,CAAC,EAE/B,IAAA1E,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAACc,IAAI,EAAC;EAAS,GAC3C,IAAAvC,MAAA,CAAAC,aAAA,EAAC/D,aAAA,CAAAgB,OAAY,MAAE,CACc,CAAC,EAE/B,IAAA8C,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAACc,IAAI,EAAC;EAAS,GAC3C,IAAAvC,MAAA,CAAAC,aAAA,EAAC7D,aAAA,CAAAc,OAAY,MAAE,CACc,CAAC,EAE/B,IAAA8C,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAACc,IAAI,EAAC;EAAM,GACxC,IAAAvC,MAAA,CAAAC,aAAA,EAAC1D,UAAA,CAAAW,OAAS,MAAE,CACiB,CAAC,EAE/B,IAAA8C,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAACc,IAAI,EAAG;EAAc,GAClD,IAAAvC,MAAA,CAAAC,aAAA,EAACzD,gBAAA,CAAAU,OAAe,MAAE,CACW,CAAC,EAE7BoH,MAAM,CAAClC,GAAG,CAAIuC,KAAK,IACpB,IAAA3E,MAAA,CAAAC,aAAA,EAACwB,4BAA4B;IAC5B9D,GAAG,EAAG,aAAa,GAAGgH,KAAK,CAACnC,IAAM;IAClCD,IAAI,EAAG,UAAU,GAAGY,kBAAkB,CAAEwB,KAAK,CAACnC,IAAK;EAAG,GAEtD,IAAAxC,MAAA,CAAAC,aAAA,EAAClE,YAAA,CAAAmB,OAAW;IAACsF,IAAI,EAAGmC,KAAK,CAACnC;EAAM,CAAE,CACL,CAC7B,CAAC,EAEH,IAAAxC,MAAA,CAAAC,aAAA,EAACyC,cAAc,MAAE,CAAC,EAEhB4B,MAAM,CAAClC,GAAG,CAAIuC,KAAK,IACpB,IAAA3E,MAAA,CAAAC,aAAA,EAACyC,cAAc;IACd/E,GAAG,EAAG,gBAAgB,GAAGgH,KAAK,CAACnC,IAAM;IACrCA,IAAI,EAAGmC,KAAK,CAACnC,IAAM;IACnBP,UAAU,EAAG,UAAU,GAAGkB,kBAAkB,CAAEwB,KAAK,CAACnC,IAAK;EAAG,CAC5D,CACA,CAAC,EAED,YAAY,KAAK4B,yBAAyB,IAC3C,IAAApE,MAAA,CAAAC,aAAA,EAAC8C,qBAAqB,MAAE,CACxB,EAED,IAAA/C,MAAA,CAAAC,aAAA,EAACY,yBAAyB,MAAE,CAAC,EAC7B,IAAAb,MAAA,CAAAC,aAAA,EAACtB,sBAAsB,MAAE,CAAC,EAC1B,IAAAqB,MAAA,CAAAC,aAAA,EAACqD,qBAAqB,MAAE,CAAC,EACzB,IAAAtD,MAAA,CAAAC,aAAA,EAACkE,qCAAqC,MAAE,CACtB,CAAC;AAEtB;AAAC,IAAAS,QAAA,GAEcP,cAAc;AAAA3F,OAAA,CAAAxB,OAAA,GAAA0H,QAAA"}
1
+ {"version":3,"names":["_components","require","_blocks","_data","_blockEditor","_i18n","_preferences","_icons","_coreData","_element","_screenRoot","_interopRequireDefault","_screenBlockList","_interopRequireWildcard","_screenBlock","_screenTypography","_screenTypographyElement","_screenColors","_screenColorPalette","_screenLayout","_screenStyleVariations","_styleBook","_screenCss","_screenRevisions","_lockUnlock","_store","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","SLOT_FILL_NAME","useGlobalStylesReset","unlock","blockEditorPrivateApis","Slot","GlobalStylesMenuSlot","Fill","GlobalStylesMenuFill","createSlotFill","exports","GlobalStylesActionMenu","canReset","onReset","toggle","useDispatch","preferencesStore","canEditCSS","useSelect","select","getEntityRecord","__experimentalGetCurrentGlobalStylesId","coreStore","globalStylesId","globalStyles","undefined","_links","setEditorCanvasContainerView","editSiteStore","goTo","useNavigator","loadCustomCSS","_react","createElement","DropdownMenu","icon","moreVertical","label","__","onClose","Fragment","MenuGroup","MenuItem","onClick","disabled","GlobalStylesNavigationScreen","className","props","__experimentalNavigatorScreen","filter","Boolean","join","BlockStylesNavigationScreens","parentMenu","blockStyles","blockName","map","style","index","path","name","variation","ContextScreens","blockStyleVariations","getBlockStyles","blocksStore","length","GlobalStylesStyleBook","navigator","location","isSelected","encodeURIComponent","startsWith","onSelect","GlobalStylesBlockLink","selectedBlockName","selectedBlockClientId","getSelectedBlockClientId","getBlockName","blockEditorStore","clientId","blockHasGlobalStyles","useBlockHasGlobalStyles","useEffect","currentPath","newPath","skipFocus","GlobalStylesEditorCanvasContainerLink","editorCanvasContainerView","getEditorCanvasContainerView","GlobalStylesUI","blocks","getBlockTypes","__experimentalNavigatorProvider","initialPath","element","block","_default"],"sources":["@wordpress/edit-site/src/components/global-styles/ui.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalNavigatorProvider as NavigatorProvider,\n\t__experimentalNavigatorScreen as NavigatorScreen,\n\t__experimentalUseNavigator as useNavigator,\n\tcreateSlotFill,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n} from '@wordpress/components';\nimport { getBlockTypes, store as blocksStore } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { moreVertical } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ScreenRoot from './screen-root';\nimport {\n\tuseBlockHasGlobalStyles,\n\tdefault as ScreenBlockList,\n} from './screen-block-list';\nimport ScreenBlock from './screen-block';\nimport ScreenTypography from './screen-typography';\nimport ScreenTypographyElement from './screen-typography-element';\nimport ScreenColors from './screen-colors';\nimport ScreenColorPalette from './screen-color-palette';\nimport ScreenLayout from './screen-layout';\nimport ScreenStyleVariations from './screen-style-variations';\nimport StyleBook from '../style-book';\nimport ScreenCSS from './screen-css';\nimport ScreenRevisions from './screen-revisions';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\n\nconst SLOT_FILL_NAME = 'GlobalStylesMenu';\nconst { useGlobalStylesReset } = unlock( blockEditorPrivateApis );\nconst { Slot: GlobalStylesMenuSlot, Fill: GlobalStylesMenuFill } =\n\tcreateSlotFill( SLOT_FILL_NAME );\n\nfunction GlobalStylesActionMenu() {\n\tconst [ canReset, onReset ] = useGlobalStylesReset();\n\tconst { toggle } = useDispatch( preferencesStore );\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: !! globalStyles?._links?.[ 'wp:action-edit-css' ],\n\t\t};\n\t}, [] );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst { goTo } = useNavigator();\n\tconst loadCustomCSS = () => {\n\t\tsetEditorCanvasContainerView( 'global-styles-css' );\n\t\tgoTo( '/css' );\n\t};\n\n\treturn (\n\t\t<GlobalStylesMenuFill>\n\t\t\t<DropdownMenu icon={ moreVertical } label={ __( 'More' ) }>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t{ canEditCSS && (\n\t\t\t\t\t\t\t\t<MenuItem onClick={ loadCustomCSS }>\n\t\t\t\t\t\t\t\t\t{ __( 'Additional CSS' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\ttoggle(\n\t\t\t\t\t\t\t\t\t\t'core/edit-site',\n\t\t\t\t\t\t\t\t\t\t'welcomeGuideStyles'\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Welcome Guide' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonReset();\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tdisabled={ ! canReset }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Reset styles' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</DropdownMenu>\n\t\t</GlobalStylesMenuFill>\n\t);\n}\n\nfunction GlobalStylesNavigationScreen( { className, ...props } ) {\n\treturn (\n\t\t<NavigatorScreen\n\t\t\tclassName={ [\n\t\t\t\t'edit-site-global-styles-sidebar__navigator-screen',\n\t\t\t\tclassName,\n\t\t\t]\n\t\t\t\t.filter( Boolean )\n\t\t\t\t.join( ' ' ) }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nfunction BlockStylesNavigationScreens( {\n\tparentMenu,\n\tblockStyles,\n\tblockName,\n} ) {\n\treturn blockStyles.map( ( style, index ) => (\n\t\t<GlobalStylesNavigationScreen\n\t\t\tkey={ index }\n\t\t\tpath={ parentMenu + '/variations/' + style.name }\n\t\t>\n\t\t\t<ScreenBlock name={ blockName } variation={ style.name } />\n\t\t</GlobalStylesNavigationScreen>\n\t) );\n}\n\nfunction ContextScreens( { name, parentMenu = '' } ) {\n\tconst blockStyleVariations = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockStyles } = select( blocksStore );\n\t\t\treturn getBlockStyles( name );\n\t\t},\n\t\t[ name ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<GlobalStylesNavigationScreen\n\t\t\t\tpath={ parentMenu + '/colors/palette' }\n\t\t\t>\n\t\t\t\t<ScreenColorPalette name={ name } />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t{ !! blockStyleVariations?.length && (\n\t\t\t\t<BlockStylesNavigationScreens\n\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\tblockStyles={ blockStyleVariations }\n\t\t\t\t\tblockName={ name }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction GlobalStylesStyleBook() {\n\tconst navigator = useNavigator();\n\tconst { path } = navigator.location;\n\treturn (\n\t\t<StyleBook\n\t\t\tisSelected={ ( blockName ) =>\n\t\t\t\t// Match '/blocks/core%2Fbutton' and\n\t\t\t\t// '/blocks/core%2Fbutton/typography', but not\n\t\t\t\t// '/blocks/core%2Fbuttons'.\n\t\t\t\tpath === `/blocks/${ encodeURIComponent( blockName ) }` ||\n\t\t\t\tpath.startsWith(\n\t\t\t\t\t`/blocks/${ encodeURIComponent( blockName ) }/`\n\t\t\t\t)\n\t\t\t}\n\t\t\tonSelect={ ( blockName ) => {\n\t\t\t\t// Now go to the selected block.\n\t\t\t\tnavigator.goTo( '/blocks/' + encodeURIComponent( blockName ) );\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction GlobalStylesBlockLink() {\n\tconst navigator = useNavigator();\n\tconst { selectedBlockName, selectedBlockClientId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSelectedBlockClientId, getBlockName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst clientId = getSelectedBlockClientId();\n\t\t\treturn {\n\t\t\t\tselectedBlockName: getBlockName( clientId ),\n\t\t\t\tselectedBlockClientId: clientId,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst blockHasGlobalStyles = useBlockHasGlobalStyles( selectedBlockName );\n\t// When we're in the `Blocks` screen enable deep linking to the selected block.\n\tuseEffect( () => {\n\t\tif ( ! selectedBlockClientId || ! blockHasGlobalStyles ) {\n\t\t\treturn;\n\t\t}\n\t\tconst currentPath = navigator.location.path;\n\t\tif (\n\t\t\tcurrentPath !== '/blocks' &&\n\t\t\t! currentPath.startsWith( '/blocks/' )\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tconst newPath = '/blocks/' + encodeURIComponent( selectedBlockName );\n\t\t// Avoid navigating to the same path. This can happen when selecting\n\t\t// a new block of the same type.\n\t\tif ( newPath !== currentPath ) {\n\t\t\tnavigator.goTo( newPath, { skipFocus: true } );\n\t\t}\n\t}, [ selectedBlockClientId, selectedBlockName, blockHasGlobalStyles ] );\n}\n\nfunction GlobalStylesEditorCanvasContainerLink() {\n\tconst { goTo } = useNavigator();\n\tconst editorCanvasContainerView = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( editSiteStore ) ).getEditorCanvasContainerView(),\n\t\t[]\n\t);\n\n\t// If the user switches the editor canvas container view, redirect\n\t// to the appropriate screen. This effectively allows deep linking to the\n\t// desired screens from outside the global styles navigation provider.\n\tuseEffect( () => {\n\t\tswitch ( editorCanvasContainerView ) {\n\t\t\tcase 'global-styles-revisions':\n\t\t\tcase 'global-styles-revisions:style-book':\n\t\t\t\tgoTo( '/revisions' );\n\t\t\t\tbreak;\n\t\t\tcase 'global-styles-css':\n\t\t\t\tgoTo( '/css' );\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tgoTo( '/' );\n\t\t\t\tbreak;\n\t\t}\n\t}, [ editorCanvasContainerView, goTo ] );\n}\n\nfunction GlobalStylesUI() {\n\tconst blocks = getBlockTypes();\n\tconst editorCanvasContainerView = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( editSiteStore ) ).getEditorCanvasContainerView(),\n\t\t[]\n\t);\n\treturn (\n\t\t<NavigatorProvider\n\t\t\tclassName=\"edit-site-global-styles-sidebar__navigator-provider\"\n\t\t\tinitialPath=\"/\"\n\t\t>\n\t\t\t<GlobalStylesNavigationScreen path=\"/\">\n\t\t\t\t<ScreenRoot />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/variations\">\n\t\t\t\t<ScreenStyleVariations />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/blocks\">\n\t\t\t\t<ScreenBlockList />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography\">\n\t\t\t\t<ScreenTypography />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/text\">\n\t\t\t\t<ScreenTypographyElement element=\"text\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/link\">\n\t\t\t\t<ScreenTypographyElement element=\"link\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/heading\">\n\t\t\t\t<ScreenTypographyElement element=\"heading\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/caption\">\n\t\t\t\t<ScreenTypographyElement element=\"caption\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/button\">\n\t\t\t\t<ScreenTypographyElement element=\"button\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/colors\">\n\t\t\t\t<ScreenColors />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/layout\">\n\t\t\t\t<ScreenLayout />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/css\">\n\t\t\t\t<ScreenCSS />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path={ '/revisions' }>\n\t\t\t\t<ScreenRevisions />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t{ blocks.map( ( block ) => (\n\t\t\t\t<GlobalStylesNavigationScreen\n\t\t\t\t\tkey={ 'menu-block-' + block.name }\n\t\t\t\t\tpath={ '/blocks/' + encodeURIComponent( block.name ) }\n\t\t\t\t>\n\t\t\t\t\t<ScreenBlock name={ block.name } />\n\t\t\t\t</GlobalStylesNavigationScreen>\n\t\t\t) ) }\n\n\t\t\t<ContextScreens />\n\n\t\t\t{ blocks.map( ( block ) => (\n\t\t\t\t<ContextScreens\n\t\t\t\t\tkey={ 'screens-block-' + block.name }\n\t\t\t\t\tname={ block.name }\n\t\t\t\t\tparentMenu={ '/blocks/' + encodeURIComponent( block.name ) }\n\t\t\t\t/>\n\t\t\t) ) }\n\n\t\t\t{ 'style-book' === editorCanvasContainerView && (\n\t\t\t\t<GlobalStylesStyleBook />\n\t\t\t) }\n\n\t\t\t<GlobalStylesActionMenu />\n\t\t\t<GlobalStylesBlockLink />\n\t\t\t<GlobalStylesEditorCanvasContainerLink />\n\t\t</NavigatorProvider>\n\t);\n}\nexport { GlobalStylesMenuSlot };\nexport default GlobalStylesUI;\n"],"mappings":"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"}
@@ -1,22 +1,17 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports.default = DocumentTools;
8
7
  var _react = require("react");
9
- var _element = require("@wordpress/element");
10
8
  var _compose = require("@wordpress/compose");
11
9
  var _blockEditor = require("@wordpress/block-editor");
12
10
  var _data = require("@wordpress/data");
13
11
  var _i18n = require("@wordpress/i18n");
14
12
  var _icons = require("@wordpress/icons");
15
13
  var _components = require("@wordpress/components");
16
- var _keyboardShortcuts = require("@wordpress/keyboard-shortcuts");
17
14
  var _editor = require("@wordpress/editor");
18
- var _undo = _interopRequireDefault(require("../undo-redo/undo"));
19
- var _redo = _interopRequireDefault(require("../undo-redo/redo"));
20
15
  var _store = require("../../../store");
21
16
  var _lockUnlock = require("../../../lock-unlock");
22
17
  /**
@@ -28,44 +23,23 @@ var _lockUnlock = require("../../../lock-unlock");
28
23
  */
29
24
 
30
25
  const {
31
- useShouldContextualToolbarShow
32
- } = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
33
- const preventDefault = event => {
34
- event.preventDefault();
35
- };
26
+ DocumentTools: EditorDocumentTools
27
+ } = (0, _lockUnlock.unlock)(_editor.privateApis);
36
28
  function DocumentTools({
37
29
  blockEditorMode,
38
30
  hasFixedToolbar,
39
- isDistractionFree,
40
- showIconLabels,
41
- setListViewToggleElement
31
+ isDistractionFree
42
32
  }) {
43
- const inserterButton = (0, _element.useRef)();
44
33
  const {
45
- isInserterOpen,
46
- isListViewOpen,
47
- listViewShortcut,
48
34
  isVisualMode
49
35
  } = (0, _data.useSelect)(select => {
50
36
  const {
51
- isInserterOpened,
52
- isListViewOpened,
53
37
  getEditorMode
54
38
  } = select(_store.store);
55
- const {
56
- getShortcutRepresentation
57
- } = select(_keyboardShortcuts.store);
58
39
  return {
59
- isInserterOpen: isInserterOpened(),
60
- isListViewOpen: isListViewOpened(),
61
- listViewShortcut: getShortcutRepresentation('core/edit-site/toggle-list-view'),
62
40
  isVisualMode: getEditorMode() === 'visual'
63
41
  };
64
42
  }, []);
65
- const {
66
- setIsInserterOpened,
67
- setIsListViewOpened
68
- } = (0, _data.useDispatch)(_store.store);
69
43
  const {
70
44
  __unstableSetEditorMode
71
45
  } = (0, _data.useDispatch)(_blockEditor.store);
@@ -73,84 +47,12 @@ function DocumentTools({
73
47
  setDeviceType
74
48
  } = (0, _data.useDispatch)(_editor.store);
75
49
  const isLargeViewport = (0, _compose.useViewportMatch)('medium');
76
- const toggleInserter = (0, _element.useCallback)(() => {
77
- if (isInserterOpen) {
78
- // Focusing the inserter button should close the inserter popover.
79
- // However, there are some cases it won't close when the focus is lost.
80
- // See https://github.com/WordPress/gutenberg/issues/43090 for more details.
81
- inserterButton.current.focus();
82
- setIsInserterOpened(false);
83
- } else {
84
- setIsInserterOpened(true);
85
- }
86
- }, [isInserterOpen, setIsInserterOpened]);
87
- const toggleListView = (0, _element.useCallback)(() => setIsListViewOpened(!isListViewOpen), [setIsListViewOpened, isListViewOpen]);
88
- const {
89
- shouldShowContextualToolbar,
90
- canFocusHiddenToolbar,
91
- fixedToolbarCanBeFocused
92
- } = useShouldContextualToolbarShow();
93
- // If there's a block toolbar to be focused, disable the focus shortcut for the document toolbar.
94
- // There's a fixed block toolbar when the fixed toolbar option is enabled or when the browser width is less than the large viewport.
95
- const blockToolbarCanBeFocused = shouldShowContextualToolbar || canFocusHiddenToolbar || fixedToolbarCanBeFocused;
96
-
97
- /* translators: button label text should, if possible, be under 16 characters. */
98
- const longLabel = (0, _i18n._x)('Toggle block inserter', 'Generic label for block inserter button');
99
- const shortLabel = !isInserterOpen ? (0, _i18n.__)('Add') : (0, _i18n.__)('Close');
100
50
  const isZoomedOutViewExperimentEnabled = window?.__experimentalEnableZoomedOutView && isVisualMode;
101
51
  const isZoomedOutView = blockEditorMode === 'zoom-out';
102
- return (0, _react.createElement)(_blockEditor.NavigableToolbar, {
103
- className: "edit-site-header-edit-mode__document-tools",
104
- "aria-label": (0, _i18n.__)('Document tools'),
105
- shouldUseKeyboardFocusShortcut: !blockToolbarCanBeFocused
106
- }, (0, _react.createElement)("div", {
107
- className: "edit-site-header-edit-mode__toolbar"
108
- }, !isDistractionFree && (0, _react.createElement)(_components.ToolbarItem, {
109
- ref: inserterButton,
110
- as: _components.Button,
111
- className: "edit-site-header-edit-mode__inserter-toggle",
112
- variant: "primary",
113
- isPressed: isInserterOpen,
114
- onMouseDown: preventDefault,
115
- onClick: toggleInserter,
116
- disabled: !isVisualMode,
117
- icon: _icons.plus,
118
- label: showIconLabels ? shortLabel : longLabel,
119
- showTooltip: !showIconLabels,
120
- "aria-expanded": isInserterOpen,
121
- size: "compact"
122
- }), isLargeViewport && (0, _react.createElement)(_react.Fragment, null, !hasFixedToolbar && (0, _react.createElement)(_components.ToolbarItem, {
123
- as: _blockEditor.ToolSelector,
124
- showTooltip: !showIconLabels,
125
- variant: showIconLabels ? 'tertiary' : undefined,
126
- disabled: !isVisualMode,
127
- size: "compact"
128
- }), (0, _react.createElement)(_components.ToolbarItem, {
129
- as: _undo.default,
130
- showTooltip: !showIconLabels,
131
- variant: showIconLabels ? 'tertiary' : undefined,
132
- size: "compact"
133
- }), (0, _react.createElement)(_components.ToolbarItem, {
134
- as: _redo.default,
135
- showTooltip: !showIconLabels,
136
- variant: showIconLabels ? 'tertiary' : undefined,
137
- size: "compact"
138
- }), !isDistractionFree && (0, _react.createElement)(_components.ToolbarItem, {
139
- as: _components.Button,
140
- className: "edit-site-header-edit-mode__list-view-toggle",
141
- disabled: !isVisualMode || isZoomedOutView,
142
- icon: _icons.listView,
143
- isPressed: isListViewOpen
144
- /* translators: button label text should, if possible, be under 16 characters. */,
145
- label: (0, _i18n.__)('List View'),
146
- onClick: toggleListView,
147
- ref: setListViewToggleElement,
148
- shortcut: listViewShortcut,
149
- showTooltip: !showIconLabels,
150
- variant: showIconLabels ? 'tertiary' : undefined,
151
- "aria-expanded": isListViewOpen,
152
- size: "compact"
153
- }), isZoomedOutViewExperimentEnabled && !isDistractionFree && !hasFixedToolbar && (0, _react.createElement)(_components.ToolbarItem, {
52
+ return (0, _react.createElement)(EditorDocumentTools, {
53
+ disableBlockTools: !isVisualMode,
54
+ listViewLabel: (0, _i18n.__)('List View')
55
+ }, isZoomedOutViewExperimentEnabled && isLargeViewport && !isDistractionFree && !hasFixedToolbar && (0, _react.createElement)(_components.ToolbarItem, {
154
56
  as: _components.Button,
155
57
  className: "edit-site-header-edit-mode__zoom-out-view-toggle",
156
58
  icon: _icons.chevronUpDown,
@@ -162,6 +64,6 @@ function DocumentTools({
162
64
  __unstableSetEditorMode(isZoomedOutView ? 'edit' : 'zoom-out');
163
65
  },
164
66
  size: "compact"
165
- }))));
67
+ }));
166
68
  }
167
69
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_compose","_blockEditor","_data","_i18n","_icons","_components","_keyboardShortcuts","_editor","_undo","_interopRequireDefault","_redo","_store","_lockUnlock","useShouldContextualToolbarShow","unlock","blockEditorPrivateApis","preventDefault","event","DocumentTools","blockEditorMode","hasFixedToolbar","isDistractionFree","showIconLabels","setListViewToggleElement","inserterButton","useRef","isInserterOpen","isListViewOpen","listViewShortcut","isVisualMode","useSelect","select","isInserterOpened","isListViewOpened","getEditorMode","editSiteStore","getShortcutRepresentation","keyboardShortcutsStore","setIsInserterOpened","setIsListViewOpened","useDispatch","__unstableSetEditorMode","blockEditorStore","setDeviceType","editorStore","isLargeViewport","useViewportMatch","toggleInserter","useCallback","current","focus","toggleListView","shouldShowContextualToolbar","canFocusHiddenToolbar","fixedToolbarCanBeFocused","blockToolbarCanBeFocused","longLabel","_x","shortLabel","__","isZoomedOutViewExperimentEnabled","window","__experimentalEnableZoomedOutView","isZoomedOutView","_react","createElement","NavigableToolbar","className","shouldUseKeyboardFocusShortcut","ToolbarItem","ref","as","Button","variant","isPressed","onMouseDown","onClick","disabled","icon","plus","label","showTooltip","size","Fragment","ToolSelector","undefined","UndoButton","RedoButton","listView","shortcut","chevronUpDown"],"sources":["@wordpress/edit-site/src/components/header-edit-mode/document-tools/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback, useRef } from '@wordpress/element';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tToolSelector,\n\tNavigableToolbar,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { _x, __ } from '@wordpress/i18n';\nimport { listView, plus, chevronUpDown } from '@wordpress/icons';\nimport { Button, ToolbarItem } from '@wordpress/components';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport UndoButton from '../undo-redo/undo';\nimport RedoButton from '../undo-redo/redo';\nimport { store as editSiteStore } from '../../../store';\nimport { unlock } from '../../../lock-unlock';\n\nconst { useShouldContextualToolbarShow } = unlock( blockEditorPrivateApis );\n\nconst preventDefault = ( event ) => {\n\tevent.preventDefault();\n};\n\nexport default function DocumentTools( {\n\tblockEditorMode,\n\thasFixedToolbar,\n\tisDistractionFree,\n\tshowIconLabels,\n\tsetListViewToggleElement,\n} ) {\n\tconst inserterButton = useRef();\n\tconst { isInserterOpen, isListViewOpen, listViewShortcut, isVisualMode } =\n\t\tuseSelect( ( select ) => {\n\t\t\tconst { isInserterOpened, isListViewOpened, getEditorMode } =\n\t\t\t\tselect( editSiteStore );\n\t\t\tconst { getShortcutRepresentation } = select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tisInserterOpen: isInserterOpened(),\n\t\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\t\tlistViewShortcut: getShortcutRepresentation(\n\t\t\t\t\t'core/edit-site/toggle-list-view'\n\t\t\t\t),\n\t\t\t\tisVisualMode: getEditorMode() === 'visual',\n\t\t\t};\n\t\t}, [] );\n\n\tconst { setIsInserterOpened, setIsListViewOpened } =\n\t\tuseDispatch( editSiteStore );\n\tconst { __unstableSetEditorMode } = useDispatch( blockEditorStore );\n\tconst { setDeviceType } = useDispatch( editorStore );\n\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\n\tconst toggleInserter = useCallback( () => {\n\t\tif ( isInserterOpen ) {\n\t\t\t// Focusing the inserter button should close the inserter popover.\n\t\t\t// However, there are some cases it won't close when the focus is lost.\n\t\t\t// See https://github.com/WordPress/gutenberg/issues/43090 for more details.\n\t\t\tinserterButton.current.focus();\n\t\t\tsetIsInserterOpened( false );\n\t\t} else {\n\t\t\tsetIsInserterOpened( true );\n\t\t}\n\t}, [ isInserterOpen, setIsInserterOpened ] );\n\n\tconst toggleListView = useCallback(\n\t\t() => setIsListViewOpened( ! isListViewOpen ),\n\t\t[ setIsListViewOpened, isListViewOpen ]\n\t);\n\n\tconst {\n\t\tshouldShowContextualToolbar,\n\t\tcanFocusHiddenToolbar,\n\t\tfixedToolbarCanBeFocused,\n\t} = useShouldContextualToolbarShow();\n\t// If there's a block toolbar to be focused, disable the focus shortcut for the document toolbar.\n\t// There's a fixed block toolbar when the fixed toolbar option is enabled or when the browser width is less than the large viewport.\n\tconst blockToolbarCanBeFocused =\n\t\tshouldShowContextualToolbar ||\n\t\tcanFocusHiddenToolbar ||\n\t\tfixedToolbarCanBeFocused;\n\n\t/* translators: button label text should, if possible, be under 16 characters. */\n\tconst longLabel = _x(\n\t\t'Toggle block inserter',\n\t\t'Generic label for block inserter button'\n\t);\n\tconst shortLabel = ! isInserterOpen ? __( 'Add' ) : __( 'Close' );\n\n\tconst isZoomedOutViewExperimentEnabled =\n\t\twindow?.__experimentalEnableZoomedOutView && isVisualMode;\n\tconst isZoomedOutView = blockEditorMode === 'zoom-out';\n\n\treturn (\n\t\t<NavigableToolbar\n\t\t\tclassName=\"edit-site-header-edit-mode__document-tools\"\n\t\t\taria-label={ __( 'Document tools' ) }\n\t\t\tshouldUseKeyboardFocusShortcut={ ! blockToolbarCanBeFocused }\n\t\t>\n\t\t\t<div className=\"edit-site-header-edit-mode__toolbar\">\n\t\t\t\t{ ! isDistractionFree && (\n\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\tref={ inserterButton }\n\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\tclassName=\"edit-site-header-edit-mode__inserter-toggle\"\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tisPressed={ isInserterOpen }\n\t\t\t\t\t\tonMouseDown={ preventDefault }\n\t\t\t\t\t\tonClick={ toggleInserter }\n\t\t\t\t\t\tdisabled={ ! isVisualMode }\n\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\tlabel={ showIconLabels ? shortLabel : longLabel }\n\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\taria-expanded={ isInserterOpen }\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isLargeViewport && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ ! hasFixedToolbar && (\n\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\tas={ ToolSelector }\n\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\tshowIconLabels ? 'tertiary' : undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tdisabled={ ! isVisualMode }\n\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ UndoButton }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\tas={ RedoButton }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ ! isDistractionFree && (\n\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\t\tclassName=\"edit-site-header-edit-mode__list-view-toggle\"\n\t\t\t\t\t\t\t\tdisabled={ ! isVisualMode || isZoomedOutView }\n\t\t\t\t\t\t\t\ticon={ listView }\n\t\t\t\t\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\t\t\tlabel={ __( 'List View' ) }\n\t\t\t\t\t\t\t\tonClick={ toggleListView }\n\t\t\t\t\t\t\t\tref={ setListViewToggleElement }\n\t\t\t\t\t\t\t\tshortcut={ listViewShortcut }\n\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\tshowIconLabels ? 'tertiary' : undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\taria-expanded={ isListViewOpen }\n\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isZoomedOutViewExperimentEnabled &&\n\t\t\t\t\t\t\t! isDistractionFree &&\n\t\t\t\t\t\t\t! hasFixedToolbar && (\n\t\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-header-edit-mode__zoom-out-view-toggle\"\n\t\t\t\t\t\t\t\t\ticon={ chevronUpDown }\n\t\t\t\t\t\t\t\t\tisPressed={ isZoomedOutView }\n\t\t\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Zoom-out View' ) }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetDeviceType( 'Desktop' );\n\t\t\t\t\t\t\t\t\t\t__unstableSetEditorMode(\n\t\t\t\t\t\t\t\t\t\t\tisZoomedOutView\n\t\t\t\t\t\t\t\t\t\t\t\t? 'edit'\n\t\t\t\t\t\t\t\t\t\t\t\t: 'zoom-out'\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_compose","require","_blockEditor","_data","_i18n","_icons","_components","_editor","_store","_lockUnlock","DocumentTools","EditorDocumentTools","unlock","editorPrivateApis","blockEditorMode","hasFixedToolbar","isDistractionFree","isVisualMode","useSelect","select","getEditorMode","editSiteStore","__unstableSetEditorMode","useDispatch","blockEditorStore","setDeviceType","editorStore","isLargeViewport","useViewportMatch","isZoomedOutViewExperimentEnabled","window","__experimentalEnableZoomedOutView","isZoomedOutView","_react","createElement","disableBlockTools","listViewLabel","__","ToolbarItem","as","Button","className","icon","chevronUpDown","isPressed","label","onClick","size"],"sources":["@wordpress/edit-site/src/components/header-edit-mode/document-tools/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useViewportMatch } from '@wordpress/compose';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { chevronUpDown } from '@wordpress/icons';\nimport { Button, ToolbarItem } from '@wordpress/components';\nimport {\n\tstore as editorStore,\n\tprivateApis as editorPrivateApis,\n} from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../../store';\nimport { unlock } from '../../../lock-unlock';\n\nconst { DocumentTools: EditorDocumentTools } = unlock( editorPrivateApis );\n\nexport default function DocumentTools( {\n\tblockEditorMode,\n\thasFixedToolbar,\n\tisDistractionFree,\n} ) {\n\tconst { isVisualMode } = useSelect( ( select ) => {\n\t\tconst { getEditorMode } = select( editSiteStore );\n\n\t\treturn {\n\t\t\tisVisualMode: getEditorMode() === 'visual',\n\t\t};\n\t}, [] );\n\tconst { __unstableSetEditorMode } = useDispatch( blockEditorStore );\n\tconst { setDeviceType } = useDispatch( editorStore );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isZoomedOutViewExperimentEnabled =\n\t\twindow?.__experimentalEnableZoomedOutView && isVisualMode;\n\tconst isZoomedOutView = blockEditorMode === 'zoom-out';\n\n\treturn (\n\t\t<EditorDocumentTools\n\t\t\tdisableBlockTools={ ! isVisualMode }\n\t\t\tlistViewLabel={ __( 'List View' ) }\n\t\t>\n\t\t\t{ isZoomedOutViewExperimentEnabled &&\n\t\t\t\tisLargeViewport &&\n\t\t\t\t! isDistractionFree &&\n\t\t\t\t! hasFixedToolbar && (\n\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\tclassName=\"edit-site-header-edit-mode__zoom-out-view-toggle\"\n\t\t\t\t\t\ticon={ chevronUpDown }\n\t\t\t\t\t\tisPressed={ isZoomedOutView }\n\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\tlabel={ __( 'Zoom-out View' ) }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tsetDeviceType( 'Desktop' );\n\t\t\t\t\t\t\t__unstableSetEditorMode(\n\t\t\t\t\t\t\t\tisZoomedOutView ? 'edit' : 'zoom-out'\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t</EditorDocumentTools>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AAQA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,WAAA,GAAAR,OAAA;AAlBA;AACA;AACA;;AAYA;AACA;AACA;;AAIA,MAAM;EAAES,aAAa,EAAEC;AAAoB,CAAC,GAAG,IAAAC,kBAAM,EAAEC,mBAAkB,CAAC;AAE3D,SAASH,aAAaA,CAAE;EACtCI,eAAe;EACfC,eAAe;EACfC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC;EAAa,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACjD,MAAM;MAAEC;IAAc,CAAC,GAAGD,MAAM,CAAEE,YAAc,CAAC;IAEjD,OAAO;MACNJ,YAAY,EAAEG,aAAa,CAAC,CAAC,KAAK;IACnC,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,MAAM;IAAEE;EAAwB,CAAC,GAAG,IAAAC,iBAAW,EAAEC,kBAAiB,CAAC;EACnE,MAAM;IAAEC;EAAc,CAAC,GAAG,IAAAF,iBAAW,EAAEG,aAAY,CAAC;EACpD,MAAMC,eAAe,GAAG,IAAAC,yBAAgB,EAAE,QAAS,CAAC;EACpD,MAAMC,gCAAgC,GACrCC,MAAM,EAAEC,iCAAiC,IAAId,YAAY;EAC1D,MAAMe,eAAe,GAAGlB,eAAe,KAAK,UAAU;EAEtD,OACC,IAAAmB,MAAA,CAAAC,aAAA,EAACvB,mBAAmB;IACnBwB,iBAAiB,EAAG,CAAElB,YAAc;IACpCmB,aAAa,EAAG,IAAAC,QAAE,EAAE,WAAY;EAAG,GAEjCR,gCAAgC,IACjCF,eAAe,IACf,CAAEX,iBAAiB,IACnB,CAAED,eAAe,IAChB,IAAAkB,MAAA,CAAAC,aAAA,EAAC5B,WAAA,CAAAgC,WAAW;IACXC,EAAE,EAAGC,kBAAQ;IACbC,SAAS,EAAC,kDAAkD;IAC5DC,IAAI,EAAGC,oBAAe;IACtBC,SAAS,EAAGZ;IACZ;IACAa,KAAK,EAAG,IAAAR,QAAE,EAAE,eAAgB,CAAG;IAC/BS,OAAO,EAAGA,CAAA,KAAM;MACfrB,aAAa,CAAE,SAAU,CAAC;MAC1BH,uBAAuB,CACtBU,eAAe,GAAG,MAAM,GAAG,UAC5B,CAAC;IACF,CAAG;IACHe,IAAI,EAAC;EAAS,CACd,CAEiB,CAAC;AAExB"}