@wordpress/edit-site 6.19.0 → 6.19.2

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 (128) hide show
  1. package/build/components/add-new-template/utils.js +1 -1
  2. package/build/components/add-new-template/utils.js.map +1 -1
  3. package/build/components/app/index.js +19 -2
  4. package/build/components/app/index.js.map +1 -1
  5. package/build/components/editor/site-preview.js +9 -8
  6. package/build/components/editor/site-preview.js.map +1 -1
  7. package/build/components/editor/use-editor-title.js +3 -2
  8. package/build/components/editor/use-editor-title.js.map +1 -1
  9. package/build/components/layout/index.js +23 -15
  10. package/build/components/layout/index.js.map +1 -1
  11. package/build/components/page-patterns/header.js +1 -1
  12. package/build/components/page-patterns/header.js.map +1 -1
  13. package/build/components/page-patterns/use-patterns.js +3 -2
  14. package/build/components/page-patterns/use-patterns.js.map +1 -1
  15. package/build/components/sidebar/index.js +17 -11
  16. package/build/components/sidebar/index.js.map +1 -1
  17. package/build/components/sidebar-navigation-screen-main/index.js +1 -1
  18. package/build/components/sidebar-navigation-screen-main/index.js.map +1 -1
  19. package/build/components/sidebar-navigation-screen-patterns/index.js +1 -0
  20. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  21. package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +1 -1
  22. package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -1
  23. package/build/components/sidebar-navigation-screen-unsupported/index.js +24 -0
  24. package/build/components/sidebar-navigation-screen-unsupported/index.js.map +1 -0
  25. package/build/components/site-editor-routes/home.js +22 -5
  26. package/build/components/site-editor-routes/home.js.map +1 -1
  27. package/build/components/site-editor-routes/navigation-item.js +21 -5
  28. package/build/components/site-editor-routes/navigation-item.js.map +1 -1
  29. package/build/components/site-editor-routes/navigation.js +21 -5
  30. package/build/components/site-editor-routes/navigation.js.map +1 -1
  31. package/build/components/site-editor-routes/page-item.js +25 -9
  32. package/build/components/site-editor-routes/page-item.js.map +1 -1
  33. package/build/components/site-editor-routes/pages.js +32 -11
  34. package/build/components/site-editor-routes/pages.js.map +1 -1
  35. package/build/components/site-editor-routes/pattern-item.js +10 -3
  36. package/build/components/site-editor-routes/pattern-item.js.map +1 -1
  37. package/build/components/site-editor-routes/patterns.js +23 -24
  38. package/build/components/site-editor-routes/patterns.js.map +1 -1
  39. package/build/components/site-editor-routes/stylebook.js +25 -11
  40. package/build/components/site-editor-routes/stylebook.js.map +1 -1
  41. package/build/components/site-editor-routes/template-item.js +21 -5
  42. package/build/components/site-editor-routes/template-item.js.map +1 -1
  43. package/build/components/site-editor-routes/templates.js +27 -6
  44. package/build/components/site-editor-routes/templates.js.map +1 -1
  45. package/build/components/site-editor-routes/utils.js +20 -0
  46. package/build/components/site-editor-routes/utils.js.map +1 -0
  47. package/build/components/site-hub/index.js +37 -15
  48. package/build/components/site-hub/index.js.map +1 -1
  49. package/build-module/components/add-new-template/utils.js +1 -1
  50. package/build-module/components/add-new-template/utils.js.map +1 -1
  51. package/build-module/components/app/index.js +20 -3
  52. package/build-module/components/app/index.js.map +1 -1
  53. package/build-module/components/editor/site-preview.js +9 -8
  54. package/build-module/components/editor/site-preview.js.map +1 -1
  55. package/build-module/components/editor/use-editor-title.js +3 -2
  56. package/build-module/components/editor/use-editor-title.js.map +1 -1
  57. package/build-module/components/layout/index.js +22 -14
  58. package/build-module/components/layout/index.js.map +1 -1
  59. package/build-module/components/page-patterns/header.js +1 -1
  60. package/build-module/components/page-patterns/header.js.map +1 -1
  61. package/build-module/components/page-patterns/use-patterns.js +3 -2
  62. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  63. package/build-module/components/sidebar/index.js +15 -10
  64. package/build-module/components/sidebar/index.js.map +1 -1
  65. package/build-module/components/sidebar-navigation-screen-main/index.js +1 -1
  66. package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -1
  67. package/build-module/components/sidebar-navigation-screen-patterns/index.js +1 -0
  68. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  69. package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +1 -1
  70. package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -1
  71. package/build-module/components/sidebar-navigation-screen-unsupported/index.js +17 -0
  72. package/build-module/components/sidebar-navigation-screen-unsupported/index.js.map +1 -0
  73. package/build-module/components/site-editor-routes/home.js +22 -5
  74. package/build-module/components/site-editor-routes/home.js.map +1 -1
  75. package/build-module/components/site-editor-routes/navigation-item.js +21 -5
  76. package/build-module/components/site-editor-routes/navigation-item.js.map +1 -1
  77. package/build-module/components/site-editor-routes/navigation.js +21 -5
  78. package/build-module/components/site-editor-routes/navigation.js.map +1 -1
  79. package/build-module/components/site-editor-routes/page-item.js +25 -9
  80. package/build-module/components/site-editor-routes/page-item.js.map +1 -1
  81. package/build-module/components/site-editor-routes/pages.js +32 -11
  82. package/build-module/components/site-editor-routes/pages.js.map +1 -1
  83. package/build-module/components/site-editor-routes/pattern-item.js +10 -3
  84. package/build-module/components/site-editor-routes/pattern-item.js.map +1 -1
  85. package/build-module/components/site-editor-routes/patterns.js +23 -24
  86. package/build-module/components/site-editor-routes/patterns.js.map +1 -1
  87. package/build-module/components/site-editor-routes/stylebook.js +25 -11
  88. package/build-module/components/site-editor-routes/stylebook.js.map +1 -1
  89. package/build-module/components/site-editor-routes/template-item.js +21 -5
  90. package/build-module/components/site-editor-routes/template-item.js.map +1 -1
  91. package/build-module/components/site-editor-routes/templates.js +27 -6
  92. package/build-module/components/site-editor-routes/templates.js.map +1 -1
  93. package/build-module/components/site-editor-routes/utils.js +14 -0
  94. package/build-module/components/site-editor-routes/utils.js.map +1 -0
  95. package/build-module/components/site-hub/index.js +37 -15
  96. package/build-module/components/site-hub/index.js.map +1 -1
  97. package/build-style/posts-rtl.css +7 -10
  98. package/build-style/posts.css +7 -10
  99. package/build-style/style-rtl.css +7 -10
  100. package/build-style/style.css +7 -10
  101. package/package.json +42 -42
  102. package/src/components/add-new-template/utils.js +1 -2
  103. package/src/components/app/index.js +18 -3
  104. package/src/components/editor/site-preview.js +9 -14
  105. package/src/components/editor/use-editor-title.js +6 -6
  106. package/src/components/layout/index.js +36 -22
  107. package/src/components/layout/style.scss +2 -0
  108. package/src/components/page/style.scss +1 -5
  109. package/src/components/page-patterns/header.js +1 -1
  110. package/src/components/page-patterns/use-patterns.js +7 -7
  111. package/src/components/sidebar/index.js +15 -13
  112. package/src/components/sidebar-navigation-screen-main/index.js +1 -1
  113. package/src/components/sidebar-navigation-screen-patterns/index.js +1 -0
  114. package/src/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +1 -1
  115. package/src/components/sidebar-navigation-screen-unsupported/index.js +17 -0
  116. package/src/components/site-editor-routes/home.js +27 -3
  117. package/src/components/site-editor-routes/navigation-item.js +25 -5
  118. package/src/components/site-editor-routes/navigation.js +21 -3
  119. package/src/components/site-editor-routes/page-item.js +29 -9
  120. package/src/components/site-editor-routes/pages.js +30 -10
  121. package/src/components/site-editor-routes/pattern-item.js +9 -1
  122. package/src/components/site-editor-routes/patterns.js +22 -21
  123. package/src/components/site-editor-routes/stylebook.js +25 -11
  124. package/src/components/site-editor-routes/template-item.js +25 -3
  125. package/src/components/site-editor-routes/templates.js +26 -4
  126. package/src/components/site-editor-routes/utils.js +14 -0
  127. package/src/components/site-hub/index.js +49 -16
  128. package/tsconfig.tsbuildinfo +1 -1
@@ -3,19 +3,41 @@
3
3
  */
4
4
  import Editor from '../editor';
5
5
  import SidebarNavigationScreenTemplatesBrowse from '../sidebar-navigation-screen-templates-browse';
6
+ import SidebarNavigationScreenUnsupported from '../sidebar-navigation-screen-unsupported';
6
7
  import PageTemplates from '../page-templates';
7
8
 
8
9
  export const templatesRoute = {
9
10
  name: 'templates',
10
11
  path: '/template',
11
12
  areas: {
12
- sidebar: <SidebarNavigationScreenTemplatesBrowse backPath="/" />,
13
- content: <PageTemplates />,
14
- preview( { query } ) {
13
+ sidebar( { siteData } ) {
14
+ const isBlockTheme = siteData.currentTheme?.is_block_theme;
15
+ return isBlockTheme ? (
16
+ <SidebarNavigationScreenTemplatesBrowse backPath="/" />
17
+ ) : (
18
+ <SidebarNavigationScreenUnsupported />
19
+ );
20
+ },
21
+ content( { siteData } ) {
22
+ const isBlockTheme = siteData.currentTheme?.is_block_theme;
23
+ return isBlockTheme ? <PageTemplates /> : undefined;
24
+ },
25
+ preview( { query, siteData } ) {
26
+ const isBlockTheme = siteData.currentTheme?.is_block_theme;
27
+ if ( ! isBlockTheme ) {
28
+ return undefined;
29
+ }
15
30
  const isListView = query.layout === 'list';
16
31
  return isListView ? <Editor /> : undefined;
17
32
  },
18
- mobile: <PageTemplates />,
33
+ mobile( { siteData } ) {
34
+ const isBlockTheme = siteData.currentTheme?.is_block_theme;
35
+ return isBlockTheme ? (
36
+ <PageTemplates />
37
+ ) : (
38
+ <SidebarNavigationScreenUnsupported />
39
+ );
40
+ },
19
41
  },
20
42
  widths: {
21
43
  content( { query } ) {
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Check if the classic theme supports the stylebook.
3
+ *
4
+ * @param {Object} siteData - The site data provided by the site editor route area resolvers.
5
+ * @return {boolean} True if the stylebook is supported, false otherwise.
6
+ */
7
+ export function isClassicThemeWithStyleBookSupport( siteData ) {
8
+ const isBlockTheme = siteData.currentTheme?.is_block_theme;
9
+ const supportsEditorStyles =
10
+ siteData.currentTheme?.theme_supports[ 'editor-styles' ];
11
+ // This is a temp solution until the has_theme_json value is available for the current theme.
12
+ const hasThemeJson = siteData.editorSettings?.supportsLayout;
13
+ return ! isBlockTheme && ( supportsEditorStyles || hasThemeJson );
14
+ }
@@ -121,21 +121,65 @@ export const SiteHubMobile = memo(
121
121
  const history = useHistory();
122
122
  const { navigate } = useContext( SidebarNavigationContext );
123
123
 
124
- const { dashboardLink, homeUrl, siteTitle } = useSelect( ( select ) => {
124
+ const {
125
+ dashboardLink,
126
+ homeUrl,
127
+ siteTitle,
128
+ isBlockTheme,
129
+ isClassicThemeWithStyleBookSupport,
130
+ } = useSelect( ( select ) => {
125
131
  const { getSettings } = unlock( select( editSiteStore ) );
126
- const { getEntityRecord } = select( coreStore );
132
+ const { getEntityRecord, getCurrentTheme } = select( coreStore );
127
133
  const _site = getEntityRecord( 'root', 'site' );
134
+ const currentTheme = getCurrentTheme();
135
+ const settings = getSettings();
136
+ const supportsEditorStyles =
137
+ currentTheme.theme_supports[ 'editor-styles' ];
138
+ // This is a temp solution until the has_theme_json value is available for the current theme.
139
+ const hasThemeJson = settings.supportsLayout;
140
+
128
141
  return {
129
- dashboardLink: getSettings().__experimentalDashboardLink,
142
+ dashboardLink: settings.__experimentalDashboardLink,
130
143
  homeUrl: getEntityRecord( 'root', '__unstableBase' )?.home,
131
144
  siteTitle:
132
145
  ! _site?.title && !! _site?.url
133
146
  ? filterURLForDisplay( _site?.url )
134
147
  : _site?.title,
148
+ isBlockTheme: currentTheme?.is_block_theme,
149
+ isClassicThemeWithStyleBookSupport:
150
+ ! currentTheme?.is_block_theme &&
151
+ ( supportsEditorStyles || hasThemeJson ),
135
152
  };
136
153
  }, [] );
137
154
  const { open: openCommandCenter } = useDispatch( commandsStore );
138
- const isRoot = path === '/';
155
+
156
+ let backPath;
157
+
158
+ // If the current path is not the root page, find a page to back to.
159
+ if ( path !== '/' ) {
160
+ if ( isBlockTheme || isClassicThemeWithStyleBookSupport ) {
161
+ // If the current theme is a block theme or a classic theme that supports StyleBook,
162
+ // back to the Design screen.
163
+ backPath = '/';
164
+ } else if ( path !== '/pattern' ) {
165
+ // If the current theme is a classic theme that does not support StyleBook,
166
+ // back to the Patterns page.
167
+ backPath = '/pattern';
168
+ }
169
+ }
170
+
171
+ const backButtonProps = {
172
+ href: !! backPath ? undefined : dashboardLink,
173
+ label: !! backPath
174
+ ? __( 'Go to Site Editor' )
175
+ : __( 'Go to the Dashboard' ),
176
+ onClick: !! backPath
177
+ ? () => {
178
+ history.navigate( backPath );
179
+ navigate( 'back' );
180
+ }
181
+ : undefined,
182
+ };
139
183
 
140
184
  return (
141
185
  <div className="edit-site-site-hub">
@@ -156,18 +200,7 @@ export const SiteHubMobile = memo(
156
200
  transform: 'scale(0.5)',
157
201
  borderRadius: 4,
158
202
  } }
159
- { ...( isRoot
160
- ? {
161
- href: dashboardLink,
162
- label: __( 'Go to the Dashboard' ),
163
- }
164
- : {
165
- onClick: () => {
166
- history.navigate( '/' );
167
- navigate( 'back' );
168
- },
169
- label: __( 'Go to Site Editor' ),
170
- } ) }
203
+ { ...backButtonProps }
171
204
  >
172
205
  <SiteIcon className="edit-site-layout__view-mode-toggle-icon" />
173
206
  </Button>